:root{color-scheme:dark;--bg:#0c1017;--panel:#121821;--line:#242c38;--muted:#8c99ad;--text:#e7edf5;--green:#bbf976;--mono:Consolas,'Cascadia Code',monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.7 -apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}header{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:65px;padding:0 5vw;background:#0c1017ee;position:sticky;top:0;z-index:10;backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:800;letter-spacing:1px;white-space:nowrap}.brand-icon{display:inline-flex;justify-content:center;align-items:center;background:var(--green);color:#17210e;font:italic bold 35px Georgia;width:34px;height:34px;border-radius:9px}.brand-sub{color:var(--muted);font-size:12px;font-weight:500;align-self:end;padding-bottom:4px}nav{display:flex;gap:34px;height:100%;align-items:center}nav a{position:relative;color:var(--muted);font-size:13px;height:100%;display:flex;align-items:center}nav a.active{color:var(--text)}nav a.active:after{content:'';position:absolute;height:2px;background:var(--green);bottom:0;left:0;right:0}.header-right{margin-left:auto;display:flex;align-items:center;gap:24px}.java-badge{font:10px var(--mono);letter-spacing:1px;color:var(--muted);border:1px solid var(--line);padding:5px 8px;border-radius:4px}.account{border:0;background:none;font-size:13px}.account span{color:var(--green);margin-left:10px}main{max-width:1440px;margin:auto;padding:48px 5vw 70px;min-height:calc(100vh - 170px)}.hero{display:grid;grid-template-columns:1.65fr 1fr;gap:40px;align-items:center;margin-bottom:40px}.eyebrow{font:10px var(--mono);color:var(--green);letter-spacing:3px;margin-bottom:17px}.eyebrow:before{content:'';display:inline-block;width:6px;height:6px;background:var(--green);border-radius:100%;margin-right:10px;vertical-align:1px}h1{font-size:43px;line-height:1.3;letter-spacing:-1.5px;margin:0 0 18px;font-weight:650}h1 span{color:var(--green)}.hero p{color:var(--muted);font-size:13px;line-height:1.9;margin:0}.hero .hero-sub{margin-top:23px;font:10px var(--mono);letter-spacing:1.4px;color:#64748b}.code-card{border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,#182327,#111820);padding:18px 24px;position:relative;transform:rotate(-2deg);max-width:420px;justify-self:end;width:100%}.window-bar{display:flex;align-items:center;gap:6px;border-bottom:1px solid #ffffff0b;padding-bottom:14px}.dot{width:7px;height:7px;border-radius:50%;background:#51606d}.dot:first-child{background:#d27d76}.dot:nth-child(2){background:#d5bd75}.dot:nth-child(3){background:#9bbc83}.window-bar span{font:10px var(--mono);color:#748898;margin-left:auto}.code-card pre{font:12px/2 var(--mono);color:#b3c3d7;margin:20px 0}.syntax{color:#c6a3ef}.code-green{color:var(--green)}.code-note{position:absolute;right:15px;bottom:-15px;padding:8px 14px;border:1px solid #3d5130;background:#1b2c20;font:11px var(--mono);color:var(--green);border-radius:7px;transform:rotate(2deg)}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;background:#10161e;margin:38px 0 35px;padding:22px 0}.stat{padding:0 25px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat-label{font-size:11px;color:var(--muted);margin-bottom:5px}.stat-value{font:26px var(--mono);letter-spacing:-1px}.stat-value small{font-size:12px;color:#6d7a8b;letter-spacing:0;margin-left:8px}.stat-value.green{color:var(--green)}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:28px}.section-head{display:flex;align-items:center;gap:12px;margin-bottom:20px}.section-head h2{font-size:18px;margin:0}.counter{font:10px var(--mono);color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 6px}.section-head>span:last-child{margin-left:auto;font-size:11px;color:var(--muted)}.filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.search{position:relative;flex:1;min-width:160px}.search span{position:absolute;left:13px;top:8px;color:var(--muted);font-size:18px}.search input{padding-left:38px;width:100%}input,select{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:9px 12px;font-size:12px}input::placeholder{color:#657489}select{max-width:145px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}.tag-button{border:1px solid var(--line);background:transparent;color:var(--muted);font-size:11px;border-radius:5px;padding:4px 10px}.tag-button.selected{background:#25351d;border-color:#4b6335;color:var(--green)}.table-wrap{border:1px solid var(--line);border-radius:9px;overflow:hidden}table{border-collapse:collapse;width:100%;text-align:left}th{font-size:10px;color:#738096;background:#10161e;font-weight:400;letter-spacing:1px;padding:13px 15px;border-bottom:1px solid var(--line)}td{padding:16px 15px;border-bottom:1px solid #202733;font-size:12px}tbody tr:last-child td{border:0}tbody tr:hover{background:#171e28}td.problem-name{font-size:13px}.problem-link{display:block}.problem-link:hover{color:var(--green)}.problem-tags{font-size:10px;color:#738196;margin-top:3px}.num{color:#586679;font:10px var(--mono);margin-right:10px}.status-icon{font-size:15px;color:#455363}.status-icon.solved{color:var(--green)}.difficulty{display:inline-block;font-size:10px;border-radius:4px;padding:2px 8px;white-space:nowrap}.difficulty.easy{color:#80d0af;background:#18322c}.difficulty.medium{color:#e3bd79;background:#332b1d}.difficulty.hard{color:#e397a2;background:#35212b}.table-foot{display:flex;align-items:center;justify-content:space-between;color:#6c798c;font-size:11px;margin-top:16px}.subtle{color:var(--muted);font-size:11px}.aside-card{border:1px solid var(--line);border-radius:10px;padding:21px;background:var(--panel);margin-bottom:20px}.aside-card h3{font-size:14px;margin:0 0 16px}.aside-label{font:9px var(--mono);letter-spacing:1.8px;color:#81906d;margin-bottom:10px}.challenge{background:linear-gradient(145deg,#1c2921,#131b21);border-color:#354232}.challenge h3{font-size:19px;margin:12px 0}.challenge p{color:#8fa091;font-size:11px;margin-bottom:22px}.primary{background:var(--green);color:#20301b;border:1px solid var(--green);border-radius:6px;padding:10px 18px;font-weight:650;font-size:12px}.primary:hover{background:#d1ff9c}.primary:disabled{opacity:.45;cursor:wait}.challenge a{display:flex;justify-content:space-between;align-items:center}.progress-track{height:5px;border-radius:5px;background:#29313b;overflow:hidden;margin:12px 0 8px}.progress-track span{display:block;height:100%;background:var(--green)}.aside-row{display:flex;justify-content:space-between;margin:14px 0 5px;font-size:11px}.mini-track{height:3px;background:#252e39}.mini-track span{height:3px;display:block;background:#638a70}.tip p{color:var(--muted);font-size:11px;line-height:1.9;margin-bottom:0}footer{border-top:1px solid var(--line);padding:26px 5vw;display:flex;gap:35px;align-items:center;color:#69798d;font-size:10px;letter-spacing:.4px}footer span:last-child{margin-left:auto}.footer-brand{font-weight:750;font-size:12px;color:#acb7c7}.breadcrumb{color:#7c899c;font-size:11px;margin-bottom:24px}.breadcrumb a:hover{color:var(--green)}.workspace-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.workspace-head h1{font-size:25px;margin:0}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;align-items:start}.description-panel,.editor-panel{border:1px solid var(--line);background:#10161e;border-radius:10px;overflow:hidden}.tabs{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--line);background:#131a23}.tabs button{border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:12px;padding:15px 20px}.tabs button.active{color:var(--green);border-bottom-color:var(--green)}.problem-content{padding:24px;font-size:13px;line-height:1.95;min-height:520px}.problem-content h3{font-size:13px;margin:26px 0 8px}.problem-content p{color:#aab7c9}.sample{background:#1a222e;border-left:2px solid #536575;padding:12px 15px;border-radius:0 5px 5px 0;margin-bottom:12px}.sample b{font-size:10px;color:#8093ac;font-weight:400}.sample pre{margin:5px 0 12px;font:12px/1.8 var(--mono);color:#d1dce9;white-space:pre-wrap}.sample pre:last-child{margin-bottom:0}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--line);font:11px var(--mono);color:#96a5ba}.editor-toolbar button{border:0;background:none;color:var(--muted);font:11px var(--mono)}.editor{display:flex;height:445px;background:#0e141c;padding:16px 0;overflow:hidden}.line-numbers{font:12px/23px var(--mono);text-align:right;min-width:43px;padding-right:14px;color:#3c4b60;white-space:pre;overflow:hidden;user-select:none}.editor textarea{resize:none;border:0;outline:0;flex:1;background:transparent;color:#c5d7e9;font:12px/23px var(--mono);tab-size:4;white-space:pre;overflow:auto;padding:0 15px 0 0;width:100%;height:100%}.editor-actions{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:14px 16px;border-top:1px solid var(--line)}.secondary{background:#202a36;border:1px solid #344152;border-radius:6px;padding:9px 15px;font-size:12px}.actions-right{display:flex;gap:10px}.editor-hint{font:9px var(--mono);color:#65748a}.result{border-top:1px solid var(--line);padding:18px 20px;min-height:100px}.result h3{margin:0 0 8px;font:14px var(--mono)}.result.accepted h3{color:var(--green)}.result.failed h3{color:#ed929d}.result p{color:var(--muted);font-size:11px}.result pre,.solution-code{font:11px/1.8 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;color:#b8c9de}.empty{text-align:center;padding:65px 20px;color:var(--muted);font-size:12px}.empty strong{display:block;color:var(--text);font-size:20px;margin-bottom:10px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.plan-grid .aside-card{margin:0}.plan-grid h3{font-size:18px}.plan-links{display:grid;gap:10px;margin-top:22px}.plan-links a{border-top:1px solid var(--line);padding-top:10px;font-size:12px;color:#a6b6c9}.plan-links a:hover{color:var(--green)}dialog{border:1px solid #344152;border-radius:12px;background:#121b26;color:var(--text);padding:35px;width:420px;max-width:90vw}dialog::backdrop{background:#000a;backdrop-filter:blur(6px)}dialog h2{font-size:28px;margin:12px 0}dialog label{display:block;font-size:11px;color:var(--muted);margin-top:16px}dialog input{display:block;width:100%;margin-top:6px;padding:12px}dialog .primary{width:100%}.dialog-close{position:absolute;right:15px;top:8px;border:0;background:none;font-size:24px;color:#7f8a9b}.text-button{border:0;background:none;width:100%;color:var(--muted);font-size:11px;margin-top:16px}.error{color:#f399a4;font-size:11px;min-height:20px}.muted{color:var(--muted)}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);padding:12px 22px;border-radius:8px;border:1px solid #50633d;background:#1d2b20;color:var(--green);z-index:99;font-size:12px;display:none}.row-click{cursor:pointer}.tag-caption{font:10px var(--mono);color:#6d7b8c}.record-status{font:11px var(--mono)}.record-status.ok{color:var(--green)}.record-status.bad{color:#e99b9b}@media(min-width:1600px){main{padding-left:30px;padding-right:30px}}@media(max-width:1000px){header{gap:28px;padding:0 3vw}nav{gap:20px}.java-badge{display:none}main{padding:35px 3vw}.hero{gap:25px}h1{font-size:35px}.content-grid{grid-template-columns:minmax(0,1fr) 230px;gap:18px}td,th{padding:13px 10px}.stat{padding:0 18px}.editor-hint{display:none}}@media(max-width:760px){header{height:68px;gap:20px}.brand{font-size:16px}.brand-icon{height:28px;width:28px}.brand-sub{display:none}nav{gap:14px}nav a{font-size:11px}.header-right{gap:0}.account{font-size:10px;padding:0}.account span{display:none}main{padding:28px 4vw}.hero{grid-template-columns:1fr}.hero h1{font-size:34px}.code-card{display:none}.stats{margin-top:25px;padding:17px 0}.stat{padding:0 12px}.stat-label{font-size:10px}.stat-value{font-size:21px}.stat-value small{display:none}.content-grid{grid-template-columns:1fr}aside{display:grid;grid-template-columns:1fr 1fr;gap:12px}.aside-card{margin:0}.tip{display:none}.table-wrap{overflow:auto}td.problem-name{min-width:180px}.workspace{grid-template-columns:1fr}.problem-content{min-height:0}.workspace-head h1{font-size:21px}.editor{height:360px}.plan-grid{grid-template-columns:1fr}footer{padding:22px 4vw;gap:20px}footer span:last-child{display:none}.filters{gap:7px}select{max-width:110px}.hero p{font-size:12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.admin-tabs{border:1px solid var(--line);border-radius:8px;margin:22px 0;overflow:auto}.admin-tools{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:22px 0}.admin-tools input{min-width:260px}.admin-form{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:26px;margin:26px 0;scroll-margin-top:100px}.admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-form label{display:block;color:var(--muted);font-size:12px;margin:12px 0}.admin-form input,.admin-form select,.admin-form textarea{display:block;width:100%;max-width:none;margin-top:7px}.admin-form textarea{background:#0d141e;color:#c4d2e3;border:1px solid #303d4f;border-radius:6px;font:12px/1.8 var(--mono);padding:12px;resize:vertical;min-height:70px}.case-row{border:1px solid var(--line);padding:12px 18px;margin:14px 0;border-radius:7px}.case-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#b6c4d7}.case-label button{width:auto;margin:0;color:#d9999e}.admin-callout{border:1px solid #3d4b31;background:#202b1c;border-radius:6px;padding:12px 16px;color:#becbac;font-size:12px;margin:16px 0}.admin-form .section-head{justify-content:space-between}.admin-form>textarea{width:100%}.admin-tabs button{white-space:nowrap}.admin-form h3{margin-top:28px}#admin-content .table-wrap{overflow:auto}button:disabled{opacity:.4;cursor:not-allowed}@media(max-width:760px){.admin-fields{grid-template-columns:1fr}.admin-form{padding:16px}.admin-tools{flex-wrap:wrap}.admin-tools input{min-width:0;width:100%}.admin-tabs button{padding:12px}.header-right{margin-left:auto}nav{gap:9px}header{gap:12px}.brand{font-size:14px}}

.problem-body-text{white-space:pre-wrap;overflow-wrap:anywhere}.problem-content a{color:var(--green)}

.chapter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.chapter-card{margin:0;display:flex;flex-direction:column}.chapter-card h2{font-size:24px}.chapter-sections{display:grid;gap:8px;margin:20px 0;flex:1}.chapter-section{display:flex;justify-content:space-between;text-align:left;gap:10px;background:transparent;border:0;border-top:1px solid var(--line);padding:10px 0;color:#a4b4c8;font-size:12px}.chapter-section:hover{color:var(--green)}.chapter-actions{display:flex;gap:10px;justify-content:space-between;margin-top:16px}.exam-chapter-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.admin-form .chapter-option{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:16px;border-radius:7px;cursor:pointer;margin:0}.chapter-option:has(input:checked){background:#22311e;border-color:#6a8a4e}.admin-form .chapter-option input{width:16px;height:16px;accent-color:var(--green);margin:0}.chapter-option strong{display:block;color:var(--text);font-size:15px}.chapter-option small{display:block;color:var(--muted);font-size:10px}.chapter-option.unavailable{opacity:.4;cursor:not-allowed}.exam-strip{display:flex;align-items:center;gap:24px;padding:20px;border:1px solid #3a4c31;background:#161f19;border-radius:9px;margin-bottom:14px}.exam-strip .eyebrow{margin-bottom:8px}.exam-strip p{margin:6px 0 0}.exam-strip .exam-clock{margin-left:auto;font:30px var(--mono);color:var(--green)}.exam-navigation{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:25px}.exam-number{display:inline-flex;justify-content:center;align-items:center;width:32px;height:32px;border:1px solid #354254;border-radius:5px;font:11px var(--mono);color:#8da0b7;background:#141c26}.exam-number.current{border-color:var(--green);color:var(--green)}.exam-number.passed{background:#2d4122;color:var(--green)}.exam-number.attempted{background:#382e1e;color:#e7c68f}.exam-navigation>span{margin-left:auto}.exam-bottom-navigation{display:flex;justify-content:space-between;margin-top:22px}.paper-builder{max-width:1000px}.chapter-grid+.subtle a{color:var(--green)}@media(max-width:1100px){.chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-chapter-options{grid-template-columns:repeat(3,minmax(0,1fr))}header{gap:25px}nav{gap:20px}}@media(max-width:760px){.chapter-grid{grid-template-columns:1fr}.exam-chapter-options{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-strip{flex-wrap:wrap;gap:12px;padding:16px}.exam-strip>div:first-child{width:100%}.exam-strip .exam-clock{margin-left:0}.exam-strip button{margin-left:auto}.exam-navigation>span{width:100%;margin-top:8px}.workspace-head{flex-wrap:wrap;gap:12px}nav{overflow-x:auto;white-space:nowrap;gap:14px;flex:1;min-width:0}.header-right{flex-shrink:0}.brand{gap:6px}header{gap:14px}nav a{flex-shrink:0}.admin-form .chapter-option{padding:12px;gap:9px}}
