.web-ctf-index .web-challenge-section{padding-top:38px}.web-ctf-index-hero{background:radial-gradient(circle at 80% -25%,#2a6ac570,#0000 45%),linear-gradient(125deg,#12243e,#0d1b30);border:1px solid #29405f;border-radius:18px;justify-content:space-between;align-items:flex-end;gap:30px;max-width:1180px;margin:8px 0 32px;padding:42px 46px;display:flex}.web-ctf-index-hero span{color:#65acff;letter-spacing:.19em;font-size:11px;font-weight:900}.web-ctf-index-hero h1{color:#fff;letter-spacing:-.05em;margin:10px 0;font-size:clamp(36px,5vw,62px)}.web-ctf-index-hero p{color:#aebfd3;max-width:700px;font-size:15px;line-height:1.7}.web-ctf-index-hero strong{color:#fff;font-size:58px;line-height:.9}.web-ctf-index-hero strong small{color:#74b4ff;letter-spacing:.2em;margin-top:12px;font-size:9px;display:block}.web-ctf-index .web-section-nav{color:#a9bdd4;background:#15243a;border:1px solid #283c57;border-radius:10px;max-width:1180px;margin-bottom:18px;padding:12px 16px}.web-ctf-index .ctf-challenge-list{background:0 0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:1180px;display:grid;overflow:visible}.web-ctf-index .ctf-challenge-list>li{background:#14243b;border:1px solid #2b405b;border-radius:12px;min-width:0;padding:22px;transition:transform .2s,border-color .2s,box-shadow .2s}.web-ctf-index .ctf-challenge-list>li:hover{border-color:#5798e9;transform:translateY(-3px);box-shadow:0 14px 30px #0003}.web-ctf-index .ctf-challenge-row{grid-template-columns:46px minmax(0,1fr) auto;align-items:start}.web-ctf-index .ctf-challenge-row>span{color:#68aaff;font:800 20px ui-monospace,Consolas,monospace}.web-ctf-index .ctf-challenge-row>a{color:#f2f7fd;font-size:16px;line-height:1.4}.web-ctf-index .ctf-challenge-row>a:hover{color:#83bfff;text-decoration:none}.web-ctf-index .ctf-challenge-row>a small{color:#819ab7;margin-top:8px;font-size:11px;font-weight:600;display:block}.web-ctf-index .ctf-challenge-row em{color:#8fc5ff;white-space:nowrap;background:#25426a}.web-ctf-index .ctf-flag-row{grid-template-columns:46px minmax(0,1fr) auto;margin:20px 0 0}.web-ctf-index .ctf-flag-row input{color:#d9e8fa;background:#0d1d32;border-color:#385574;min-width:0}.web-ctf-index .ctf-flag-row button{background:#276dc8}.web-ctf-index .ctf-flag-row b,.web-ctf-index .ctf-flag-row small{grid-column:2/-1}.ctf-challenge-page.ctf-challenge-page{color:#dceafb;background:#0d1728;max-width:none;padding:36px max(18px,50vw - 680px) 80px}.ctf-challenge-page .ctf-challenge-heading{margin-bottom:26px}.ctf-challenge-page .ctf-challenge-heading>a{color:#88add6;font-size:13px}.ctf-challenge-page .ctf-challenge-heading>div{align-items:center;gap:18px}.ctf-challenge-page .ctf-challenge-heading span{color:#7bb8ff;background:#193457;border:1px solid #416ea8;border-radius:12px;flex:none;place-items:center;width:56px;height:56px;font:800 21px ui-monospace,Consolas,monospace;display:grid}.ctf-challenge-page .ctf-challenge-heading h1{color:#f7fbff;font-size:clamp(23px,3vw,36px)}.ctf-challenge-page .ctf-problem-description{color:#aec2d9;background:#16283f;border:1px solid #304868;border-left:3px solid #55a4ff;border-radius:10px;max-width:1100px;margin:22px 0 26px;padding:21px 24px;font-size:14px;line-height:1.8}.ctf-challenge-page .ctf-problem-description b{color:#69b0ff;letter-spacing:.17em;margin-bottom:5px;font:900 10px ui-monospace,Consolas,monospace}.ctf-challenge-page .ctf-vulnerable-site{color:#1b334d;background:#fff;border:1px solid #36516e;border-radius:12px;overflow:hidden;box-shadow:0 22px 60px #0004}.ctf-challenge-page>.web-flag-submit{color:#e9f2fc;background:#142840;border-color:#355070;border-radius:12px;max-width:none;margin-top:22px}.web-ctf-toast{z-index:1500;color:#0e5238;background:#f0fff6;border:1px solid #b6ddc9;border-radius:12px;gap:5px;width:min(470px,100vw - 32px);padding:18px 20px 21px;animation:.25s both web-ctf-enter,.3s 2.7s forwards web-ctf-exit;display:grid;position:fixed;top:24px;right:24px;overflow:hidden;box-shadow:0 18px 50px #06162e50}.web-ctf-toast.is-error{color:#8b2222;background:#fff2f2;border-color:#f0aaaa}.web-ctf-toast b{font-size:14px}.web-ctf-toast span{white-space:pre-wrap;font-size:13px;line-height:1.55}.web-ctf-toast i{transform-origin:0;background:#23a26d;width:100%;height:3px;animation:3s linear forwards web-ctf-progress;position:absolute;bottom:0;left:0}.web-ctf-toast.is-error i{background:#db4545}@keyframes web-ctf-enter{0%{opacity:0;transform:translateY(-13px)scale(.98)}to{opacity:1;transform:none}}@keyframes web-ctf-exit{to{opacity:0;transform:translateY(-8px)}}@keyframes web-ctf-progress{to{transform:scaleX(0)}}.vuln-community-grid aside span.vuln-side-active{color:#174d8e;background:#e3f0ff;border-radius:8px;padding:11px 12px;font-weight:800}.vuln-community-grid aside small,.web-board-app aside small{color:#7a8ea4;margin:12px;font-size:11px;line-height:1.6}.vuln-page-head{border-bottom:1px solid #dce5ef;justify-content:space-between;align-items:center;gap:16px;padding-bottom:20px;display:flex}.vuln-page-head small{color:#2b73c7;letter-spacing:.16em;font-size:10px;font-weight:900}.vuln-page-head h2{color:#173a5e;margin:5px 0 0;font-size:25px}.vuln-page-head>span{color:#8ba0b4;font-size:11px}.vuln-editor-title{justify-content:space-between;align-items:center;margin-top:28px;display:flex}.vuln-editor-title h3{font-size:18px}.vuln-editor-title span{color:#8192a4;font-size:12px}.vuln-board-callout{background:#f4f9ff;border:1px solid #d8e6f4;border-radius:8px;justify-content:space-between;gap:12px;margin-top:23px;padding:17px;display:flex}.vuln-board-callout span{color:#6d8297;font-size:12px}.vuln-community-app .vuln-notice-table{margin-top:22px}.vuln-community-app form{max-width:none}.vuln-community-app form .vuln-primary{width:max-content}.web-board-app .vuln-support-layout{grid-template-columns:185px minmax(0,1fr)}.web-board-app aside{gap:4px}.web-board-app aside b{color:#294c72;letter-spacing:.13em;margin:0 10px 12px;font-size:11px}.web-board-app aside button{color:#5a7189;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:42px;padding:10px 12px}.web-board-app aside button.active{color:#165cb4;background:#e1efff;font-weight:800}.web-board-app main{min-width:0;padding:30px 34px}.web-board-notice{background:#f5f9fe;border:1px solid #d3e1ef;border-radius:8px;align-items:center;gap:14px;margin:20px 0;padding:13px 16px;font-size:12px;display:flex}.web-board-notice b{color:#2168be;background:#e0edff;border-radius:4px;padding:3px 7px}.web-board-notice span{flex:1}.web-board-notice time{color:#8094a9}.web-board-toolbar{color:#6e8297;justify-content:space-between;align-items:end;gap:20px;margin:23px 0 10px;font-size:12px;display:flex}.web-board-toolbar label{align-items:center;gap:8px;display:flex}.web-board-toolbar select{background:#fff;border:1px solid #c8d7e7;border-radius:6px;min-height:36px;padding:5px 9px}.web-board-list{border-collapse:collapse;width:100%}.web-board-list th,.web-board-list td{text-align:left;border-bottom:1px solid #e0e8f0;padding:14px 13px;font-size:12px}.web-board-list th{color:#55718d;background:#edf3f9}.web-board-list td:first-child{color:#758fa9;font-family:ui-monospace,monospace}.web-board-list td:last-child{color:#899cb0}.web-board-list tr.selected td{background:#f6faff}.web-board-list button{color:#21496f;text-align:left;cursor:pointer;background:0 0;border:0;font-weight:750}.web-board-list button:hover{color:#1368c9;text-decoration:underline}.web-board-detail,.web-board-editor{background:#fff;border:1px solid #d9e4ef;border-radius:9px;margin-top:24px;padding:23px}.web-board-detail h3{color:#173b60;font-size:18px}.web-board-detail p,.web-board-editor p{color:#6a8095;margin:9px 0;font-size:12px;line-height:1.65}.web-board-detail-head{justify-content:space-between;align-items:start;gap:20px;display:flex}.web-board-detail-head form{margin:0}.web-board-detail form,.web-board-editor form{gap:12px;margin-top:17px;display:grid}.web-board-detail label,.web-board-editor label{color:#33536f;gap:6px;font-size:12px;font-weight:800;display:grid}.web-board-detail input,.web-board-detail textarea,.web-board-editor input,.web-board-editor textarea,.web-board-editor select{background:#fff;border:1px solid #c3d2e2;border-radius:6px;width:100%;min-height:42px;padding:10px 12px}.web-board-detail textarea,.web-board-editor textarea{resize:vertical;min-height:145px}.web-board-detail .vuln-primary,.web-board-editor .vuln-primary{width:max-content}.web-board-danger{color:#b62929;cursor:pointer;background:#fff5f5;border:1px solid #e8b7b7;border-radius:6px;padding:8px 12px}.web-board-comments{background:#f6f9fc;border-radius:8px;margin-top:20px;padding:18px}.web-board-comments h4{font-size:13px}.web-board-comments p{gap:10px;padding-top:10px;display:flex}.web-board-write-button{margin-top:20px}.web-inquiry-app>main{max-width:900px;min-height:500px;margin:0 auto;padding:30px}.web-inquiry-app form{gap:16px;display:grid}.web-inquiry-app textarea{min-height:220px}.web-inquiry-app .vuln-primary{width:max-content}.web-jwt-app{background:#f1f5fa;min-height:600px}.web-jwt-app>header{color:#edf5ff;background:#101f34;justify-content:space-between;align-items:center;min-height:76px;padding:0 38px;display:flex}.web-jwt-app>header b{letter-spacing:.08em;font-size:19px;display:block}.web-jwt-app>header b span{color:#6fb4ff}.web-jwt-app>header small{color:#7d9cbb;letter-spacing:.18em;font-size:9px}.web-jwt-app>header nav{color:#9db5d0;font-size:12px}.web-jwt-app>header nav i{vertical-align:middle;border-left:1px solid #3d5570;height:14px;margin:0 14px;display:inline-block}.web-jwt-app>main{max-width:1080px;margin:auto;padding:34px}.web-jwt-hero{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.web-jwt-hero small,.web-jwt-grid section>small{color:#3878bf;letter-spacing:.14em;font-size:10px;font-weight:900}.web-jwt-hero h2{color:#153555;margin:5px 0;font-size:27px}.web-jwt-hero p{color:#6d8197;font-size:13px}.web-jwt-hero>span{color:#177354;background:#e0f5e9;border-radius:99px;padding:8px 12px;font-size:12px;font-weight:800}.web-jwt-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.web-jwt-grid section{background:#fff;border:1px solid #d5e1ed;border-radius:12px;min-width:0;padding:27px;box-shadow:0 5px 18px #1335560a}.web-jwt-grid h3{color:#1b3d5e;margin:12px 0 4px;font-size:20px}.web-jwt-grid p{color:#6d8094;font-size:12px;line-height:1.6}.web-jwt-avatar{color:#2c70bf;background:#e9f2fc;border-radius:13px;place-items:center;width:52px;height:52px;margin-top:20px;display:grid}.web-jwt-avatar svg{width:28px}.web-jwt-grid dl{border-top:1px solid #e3eaf1;margin:22px 0}.web-jwt-grid dl div{border-bottom:1px solid #e3eaf1;justify-content:space-between;padding:10px 0;font-size:12px;display:flex}.web-jwt-grid dt{color:#8296a9}.web-jwt-grid dd{color:#244460;font-weight:750}.web-jwt-grid form{margin-top:22px}.web-jwt-endpoint{background:#f6f9fd;border:1px solid #d4e0eb;border-radius:7px;align-items:center;gap:9px;margin-top:25px;padding:14px;display:flex}.web-jwt-endpoint span{color:#fff;background:#2177b3;border-radius:4px;padding:4px 6px;font-size:10px;font-weight:900}.web-jwt-endpoint code{overflow-wrap:anywhere;font-size:11px}.web-jwt-token{border-top:1px solid #e3eaf1;margin-top:26px;padding-top:16px}.web-jwt-token summary{color:#54718c;cursor:pointer;font-size:12px}.web-jwt-token textarea{overflow-wrap:anywhere;resize:vertical;border:1px solid #d2deea;border-radius:6px;width:100%;min-height:95px;margin-top:12px;padding:10px;font:11px/1.5 ui-monospace,Consolas,monospace;display:block}@media (max-width:900px){.web-ctf-index .ctf-challenge-list,.web-jwt-grid,.web-board-app .vuln-support-layout{grid-template-columns:1fr}.web-board-app aside{border-bottom:1px solid #d8e1ea;border-right:0;display:flex;overflow:auto}.web-board-app aside b,.web-board-app aside small{display:none}}@media (max-width:620px){.web-ctf-index-hero{padding:28px}.web-ctf-index-hero strong{display:none}.ctf-challenge-page.ctf-challenge-page{padding:22px 10px 55px}.ctf-challenge-heading>div{align-items:flex-start}.ctf-challenge-heading span{width:42px;height:42px;font-size:15px}.ctf-problem-description{padding:16px}.web-board-app main,.web-jwt-app>main{padding:20px 14px}.web-jwt-app>header{padding:0 17px}.web-board-list th,.web-board-list td{padding:11px 5px}.web-board-list th:last-child,.web-board-list td:last-child{display:none}.web-ctf-toast{top:12px;right:16px}}@media (prefers-reduced-motion:reduce){.web-ctf-toast,.web-ctf-toast i{animation:none}}.web-ctf-index{color:#173453;background:#f3f7fb}.web-ctf-index .web-back{color:#466b94}.web-ctf-index-hero{background:linear-gradient(120deg,#fff,#eaf3fd);border-color:#d3e1ef}.web-ctf-index-hero span,.web-ctf-index-hero strong small{color:#2974ca}.web-ctf-index-hero h1,.web-ctf-index-hero strong{color:#163a60}.web-ctf-index-hero p{color:#587492}.web-ctf-index .web-section-nav{color:#4c6988;background:#fff;border-color:#d5e2ef}.web-ctf-index .web-section-nav label{color:#3a5876}.web-ctf-index .web-section-nav select{color:#183b5f;background:#f7faff;border-color:#b9cfe6}.web-ctf-index .ctf-challenge-list>li{background:#fff;border-color:#d5e2ef;box-shadow:0 4px 16px #193a5e08}.web-ctf-index .ctf-challenge-list>li:hover{border-color:#6a9cd6;box-shadow:0 12px 28px #193a5e16}.web-ctf-index .ctf-challenge-list>li.complete{background:#f0faf5;border-color:#8ccab0}.web-ctf-index .ctf-challenge-row>span{color:#2b75c7}.web-ctf-index .ctf-challenge-row>a{color:#193b60}.web-ctf-index .ctf-challenge-row>a:hover{color:#155faf}.web-ctf-index .ctf-challenge-row>a small{color:#6986a4}.web-ctf-index .ctf-challenge-row em{color:#2465a9;background:#e8f2fe}.web-ctf-index .ctf-flag-row label{color:#38618a}.web-ctf-index .ctf-flag-row input{color:#173b60;background:#fff;border-color:#c7d9eb}.ctf-challenge-page.ctf-challenge-page{color:#1d3b5b;background:#f3f7fb}.ctf-challenge-page .ctf-challenge-heading>a{color:#4b749e}.ctf-challenge-page .ctf-challenge-heading>div>span{color:#2773c6;background:#e8f2fd;border-color:#b8d4ef}.ctf-challenge-page .ctf-challenge-heading h1{color:#173a5e}.ctf-challenge-page .ctf-problem-description{color:#466785;background:#fff;border-color:#d1e0ef #d1e0ef #d1e0ef #438ede}.ctf-challenge-page .ctf-problem-description b{color:#2d73be}.ctf-challenge-page .ctf-vulnerable-site{border-color:#cfdeed;box-shadow:0 16px 40px #173a5e12}.ctf-challenge-page>.web-flag-submit{color:#284966;background:#fff;border-color:#d1e0ef}.ctf-challenge-page .web-flag-submit b{color:#193d61}.ctf-challenge-page .web-flag-submit input{color:#173b5f;background:#fff;border-color:#bbd0e5}.web-csrf-board .web-board-toolbar{align-items:center}.web-csrf-board .web-board-toolbar .vuln-primary{width:auto;min-height:38px;padding:8px 14px}.web-csrf-board .web-csrf-post-body{color:#284763;white-space:pre-wrap;overflow-wrap:anywhere;background:#f9fbfe;border:1px solid #e0e8f0;border-radius:7px;margin:20px 0;padding:18px;font-size:13px;line-height:1.75}.web-csrf-board .web-board-comments p{align-items:baseline}.web-csrf-board .web-csrf-account-role{color:#476887;background:#f4f8fd;border:1px solid #d9e5f1;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding:17px 19px;font-size:13px;display:flex}.web-csrf-board .web-csrf-account-role b{color:#1d65ad;background:#e1efff;border-radius:6px;padding:7px 12px;font:800 13px ui-monospace,Consolas,monospace}.web-challenge-hints{background:#fff;border:1px solid #cfdfef;border-radius:11px;margin-top:20px;box-shadow:0 6px 20px #173a5e09}.web-challenge-hints>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:18px 22px;list-style:none;display:flex}.web-challenge-hints>summary::-webkit-details-marker{display:none}.web-challenge-hints>summary span{color:#1b466d;align-items:center;gap:9px;font-size:15px;font-weight:800;display:flex}.web-challenge-hints>summary svg{color:#2876c8;width:19px;height:19px}.web-challenge-hints>summary small{color:#6b86a1;font-size:12px}.web-challenge-hints[open]>summary{border-bottom:1px solid #e2eaf3}.web-hint-content{padding:20px 22px 22px}.web-hint-content>p{color:#6a8096;margin:0 0 16px;font-size:12px}.web-hint-content ol{gap:9px;margin:0;padding:0;list-style:none;display:grid}.web-hint-content li{background:#f8fbfe;border:1px solid #e0e9f2;border-radius:8px;gap:12px;padding:14px;display:flex}.web-hint-content li.revealed{background:#f3f9ff;border-color:#c4dcf3}.web-hint-content li>span{color:#2a6eaf;background:#e5f1ff;border-radius:7px;flex:none;place-items:center;width:27px;height:27px;font:800 12px ui-monospace,Consolas,monospace;display:grid}.web-hint-content li b{color:#284f73;font-size:12px;display:block}.web-hint-content li p{color:#617d99;margin:5px 0 0;font-size:13px;line-height:1.6}.web-hint-content li.revealed p{color:#274c6c}.web-hint-actions{flex-wrap:wrap;gap:9px;margin-top:17px;display:flex}.web-hint-actions button{color:#fff;cursor:pointer;background:#286cc3;border:1px solid #286cc3;border-radius:7px;min-height:37px;padding:8px 13px;font-size:12px;font-weight:800}.web-hint-actions button.secondary{color:#416789;background:#fff;border-color:#c3d5e7}.web-hint-actions button:disabled{opacity:.55;cursor:default}@media (max-width:620px){.web-challenge-hints>summary{flex-direction:column;align-items:flex-start;padding:16px}.web-hint-content{padding:16px}}
