:root {
  color-scheme: dark;
  --bg:#0b1020; --panel:#121a2c; --panel2:#182238; --line:#26334f;
  --text:#eef4ff; --muted:#97a6c4; --accent:#70e1b6; --accent2:#8ab4ff;
  --warn:#ffd166; --bad:#ff7b7b; --ok:#70e1b6;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box} html,body,#app{margin:0;min-height:100%;background:var(--bg);color:var(--text)}
body{min-height:100dvh} button,input,select,textarea{font:inherit} button{cursor:pointer}
a{color:var(--accent2)}
.shell{min-height:100dvh;display:flex;flex-direction:column}
.topbar{height:58px;display:flex;align-items:center;gap:14px;padding:0 max(14px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:rgba(11,16,32,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}
.brand{font-weight:800;letter-spacing:.2px;white-space:nowrap}.brand span{color:var(--accent)}
.top-spacer{flex:1}.timer{font:800 24px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1px}.timer.danger{color:var(--bad)}
.btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:9px 13px;border-radius:10px;font-weight:700}.btn:hover{border-color:#3d4e74}.btn.primary{background:var(--accent);border-color:var(--accent);color:#082018}.btn.warn{background:#433918;border-color:#6f5b1d;color:#ffe7a0}.btn.danger{background:#472224;border-color:#7e3a3e;color:#ffc3c3}.btn.ghost{background:transparent}.btn:disabled{opacity:.45;cursor:not-allowed}
.main{width:min(1180px,100%);margin:0 auto;padding:24px 16px calc(24px + env(safe-area-inset-bottom))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px}.card + .card{margin-top:14px}
.hero{padding:34px}.hero h1{font-size:clamp(28px,5vw,46px);margin:0 0 10px}.hero p{margin:0;color:var(--muted);font-size:17px;line-height:1.7}.accent{color:var(--accent)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:13px;color:var(--muted);font-weight:700}.field input,.field select{width:100%;padding:11px 12px;border:1px solid var(--line);background:#0d1527;color:var(--text);border-radius:10px;outline:none}.field input:focus,.field select:focus{border-color:var(--accent2)}
.preset-row{display:flex;gap:8px;flex-wrap:wrap}.preset{min-width:74px}.preset.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--line)}.switch-row:first-child{border-top:0}.switch{width:44px;height:26px;border-radius:20px;background:#34415d;position:relative;flex:none}.switch::after{content:"";position:absolute;width:20px;height:20px;top:3px;left:3px;border-radius:50%;background:white;transition:.18s}.switch.on{background:var(--accent)}.switch.on::after{left:21px}
.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.muted{color:var(--muted)}.small{font-size:13px}.status-line{margin-top:10px;color:var(--muted);min-height:20px}
.history-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.history-heading h3{margin:0}.history-table-wrap{overflow-x:auto}.history-delete{padding:5px 9px;font-size:12px;white-space:nowrap}
.memo-panel{position:fixed;z-index:80;top:0;right:0;width:min(500px,100vw);height:100dvh;display:flex;flex-direction:column;background:var(--panel);border-left:1px solid var(--line);box-shadow:-14px 0 40px #0008;transform:translateX(105%);transition:transform .2s ease}.memo-panel.open{transform:translateX(0)}.memo-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);font-size:16px}.memo-editor{padding:12px;border-bottom:1px solid var(--line);overflow:auto;max-height:58dvh}.memo-editor input,.memo-editor select,.memo-editor textarea{width:100%;border:1px solid var(--line);background:#0d1527;color:var(--text);border-radius:9px;padding:9px 10px;outline:0}.memo-editor select{margin-top:8px}.memo-editor input:focus,.memo-editor select:focus,.memo-editor textarea:focus{border-color:var(--accent2)}.memo-editor textarea{min-height:130px;resize:vertical;margin-top:8px;line-height:1.45}.memo-actions,.memo-file-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.memo-preview-label{margin-top:12px}.memo-preview{margin-top:5px;min-height:34px;max-height:190px;overflow:auto;background:#070c16;border:1px solid var(--line);border-radius:7px;padding:9px;white-space:pre-wrap;line-height:1.45}.memo-preview p{margin:.35em 0}.memo-preview h1,.memo-preview h2,.memo-preview h3,.memo-preview h4,.memo-preview h5,.memo-preview h6{margin:.35em 0}.memo-preview ul,.memo-preview ol{padding-left:20px}.memo-preview code{background:#182238;border-radius:4px;padding:1px 4px}.memo-preview .memo-code{white-space:pre-wrap;background:#0d1527;padding:8px;border-radius:6px}.memo-rendered{margin:8px 0 0;background:#070c16;border-radius:7px;padding:8px;max-height:180px;overflow:auto;line-height:1.4}.memo-rendered p{margin:.25em 0}.memo-rendered h1,.memo-rendered h2,.memo-rendered h3,.memo-rendered h4,.memo-rendered h5,.memo-rendered h6{margin:.25em 0}.memo-rendered ul,.memo-rendered ol{padding-left:20px}.memo-rendered pre{white-space:pre-wrap;background:#0d1527;padding:7px;border-radius:6px}.memo-format{display:inline-block;margin-left:7px;padding:2px 5px;border:1px solid var(--line);border-radius:5px;color:var(--muted);font:10px ui-monospace,SFMono-Regular,monospace;vertical-align:middle}.memo-item .inline-copy{font-size:12px;margin-left:7px}
.memo-panel{width:min(580px,100vw)}.memo-list{overflow:auto;padding:14px;display:flex;flex-direction:column;gap:14px}.memo-item{padding:15px 16px;border:1px solid #304160;border-radius:15px;background:linear-gradient(145deg,#111d32,#0b1425);box-shadow:0 8px 22px #0003;min-height:150px}.memo-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:11px;border-bottom:1px solid #263653}.memo-item-title{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:7px}.memo-item-title b{font-size:17px;line-height:1.35;overflow-wrap:anywhere}.memo-item-actions{display:flex;gap:8px;flex:none;white-space:nowrap}.memo-item-actions .inline-copy{margin:0;padding:5px 7px;border:1px solid #344766;border-radius:7px;background:#18253c;font-size:12px}.memo-item-actions .memo-delete{color:#ff9b9b}.memo-updated{font-size:11px;color:var(--muted);white-space:nowrap}.memo-format{margin-left:0;padding:3px 7px;font-size:11px;background:#16243a}.memo-rendered{margin-top:13px;padding:13px;max-height:310px;border:1px solid #263653;border-radius:10px;background:#070d19;font-size:14px;line-height:1.65}.memo-rendered pre{margin:0;padding:0;background:transparent;font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.memo-rendered p{margin:.55em 0}.memo-rendered h1,.memo-rendered h2,.memo-rendered h3,.memo-rendered h4,.memo-rendered h5,.memo-rendered h6{line-height:1.35;margin:.5em 0}.memo-rendered .memo-code{background:#111d32;padding:10px;border-radius:8px}.memo-list>.muted{padding:22px 10px;text-align:center}
.memo-head-actions{display:flex;align-items:center;gap:10px}.memo-scale-control{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;white-space:nowrap}.memo-scale-control input{width:86px;accent-color:var(--accent)}.memo-html-options{display:none;align-items:center;gap:7px;margin-top:8px;padding:8px 10px;border:1px solid #66551f;border-radius:8px;background:#2a2412;color:#ffe5a0;font-size:12px}.memo-html-options input{width:auto}.memo-item-title b{font-size:calc(17px * var(--memo-scale,1))}.memo-rendered{font-size:calc(14px * var(--memo-scale,1));line-height:calc(1.65 * var(--memo-scale,1))}.memo-rendered pre{font-size:calc(13px * var(--memo-scale,1))}.memo-html-frame{display:block;width:100%;height:360px;min-height:220px;resize:vertical;border:0;border-radius:8px;background:#fff}.memo-preview .memo-html-frame{height:300px;min-height:180px;border:1px solid var(--line)}
.match-layout{display:grid;grid-template-columns:minmax(280px,calc((100% - 34px) * var(--problem-ratio,.46))) 10px minmax(380px,1fr);gap:12px;height:calc(100dvh - 74px);padding:8px 10px 10px;min-height:600px}
.memo-panel{resize:horizontal;min-width:380px;max-width:90vw;overflow:hidden}.memo-head-actions{display:flex;align-items:center;gap:6px}.memo-head-actions .btn{padding:6px 8px;font-size:11px}.memo-editor-collapsed .memo-editor{display:none}.memo-list-collapsed .memo-list{display:none}.memo-item-title b{font-size:17px}.memo-rendered{font-size:14px;line-height:1.65}.memo-rendered pre{font-size:13px}.memo-item.memo-collapsed .memo-rendered{display:none}.memo-item.memo-expanded .memo-rendered{max-height:70dvh}.memo-item.memo-expanded .memo-html-frame{height:65dvh;min-height:320px}
.memo-panel{resize:none}.memo-panel-resize-handle{position:absolute;z-index:3;left:0;top:0;bottom:0;width:12px;display:flex;align-items:center;justify-content:center;color:#7f92b4;background:linear-gradient(90deg,#263b5b,#17253c00);cursor:col-resize;opacity:.75;transition:opacity .15s}.memo-panel-resize-handle:hover,.memo-panel-resize-handle:active{opacity:1;color:var(--accent);background:#263b5b}.memo-panel-resize-handle span{font-size:13px;writing-mode:vertical-rl;line-height:1}.memo-head{padding-left:20px}.memo-resize-handle{display:flex;align-items:center;justify-content:center;gap:6px;height:25px;margin:5px -4px -7px;border-radius:6px;color:#7386a8;font-size:11px;cursor:ns-resize;user-select:none}.memo-resize-handle:hover{background:#18263d;color:var(--accent)}.memo-resize-handle span{font-size:15px}.memo-item.memo-collapsed .memo-resize-handle{display:none}.memo-item.memo-expanded .memo-resize-handle{color:var(--accent)}body.memo-resizing,body.memo-resizing *{user-select:none}.memo-panel .memo-item-title b{font-size:17px}.memo-panel .memo-rendered{font-size:14px;line-height:1.65}.memo-panel .memo-rendered pre{font-size:13px}
.memo-item .memo-html-frame{resize:none}.memo-rendered[style] .memo-html-frame{height:100%;min-height:0}
.memo-item{flex:none;overflow:visible}.memo-item.memo-collapsed{min-height:0;padding-bottom:10px}.memo-item.memo-collapsed .memo-item-head{padding-bottom:0;border-bottom:0}.memo-item .memo-rendered{max-height:min(310px,calc(100dvh - 240px))}.memo-item .memo-rendered[style]{max-height:min(70dvh,calc(100dvh - 240px))}
.memo-title-toggle{display:flex;align-items:flex-start;gap:7px;flex:1;min-width:0;padding:0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.memo-title-toggle:hover .memo-item-title b{text-decoration:underline;text-underline-offset:3px}.memo-chevron{display:inline-block;width:16px;flex:none;color:var(--accent);font-size:25px;line-height:1;transform:translateY(-2px);transition:transform .15s}.memo-item:not(.memo-collapsed) .memo-chevron{transform:rotate(90deg) translateX(-2px)}.memo-title-toggle .memo-item-title{min-width:0}
.memo-drag-handle{display:grid;place-items:center;width:20px;min-width:20px;height:26px;color:#7386a8;font-size:18px;line-height:1;cursor:grab;user-select:none;border-radius:6px}.memo-drag-handle:hover{background:#18263d;color:var(--accent)}.memo-drag-handle:active{cursor:grabbing}.memo-item.memo-dragging{opacity:.45;border-style:dashed}.memo-item.memo-dragging .memo-drag-handle{cursor:grabbing}
.problem-pane,.code-pane{min-height:0;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.match-resize-handle{align-self:stretch;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:7px;color:#7083a5;cursor:col-resize;user-select:none;touch-action:none}.match-resize-handle:hover,.match-resize-handle:active{border-color:var(--line);background:#18263d;color:var(--accent)}.match-resize-handle span{font-size:20px;line-height:1}.match-resizing,.match-resizing *{user-select:none!important;cursor:col-resize!important}
.statement-static{flex:0 0 auto;min-height:0;display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-start;gap:12px;padding:16px 18px;background:var(--panel2);color:var(--text)}.statement-static h3,.statement-static p{margin:0;max-width:540px}.statement-static h3{font-size:15px}.statement-static-icon{display:grid;place-items:center;flex:none;width:32px;height:32px;border:1px solid var(--line);border-radius:9px;color:var(--accent);font-size:18px}.statement-static-copy{min-width:0}.statement-static .btn{display:inline-block;margin-top:9px;padding:7px 10px;font-size:12px}.problem-pane.problem-unavailable{align-self:start;height:max-content;min-height:0}
.problem-tabs{display:flex;gap:6px;padding:10px;border-bottom:1px solid var(--line);overflow:auto}.problem-tab{padding:8px 11px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--muted);font-weight:800;white-space:nowrap}.problem-tab.active{background:var(--panel2);border-color:var(--line);color:var(--text)}.problem-tab.solved{color:var(--ok)}
.problem-meta{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);min-height:48px}.problem-name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.problem-meta .spacer{flex:1}.pill{font-size:12px;padding:4px 8px;border-radius:999px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.pill.ok{color:var(--ok);border-color:#28715c}.pill.bad{color:var(--bad);border-color:#7e3a3e}.pill.warn{color:var(--warn);border-color:#715c21}
.statement{width:100%;border:0;flex:1;background:white}.statement-fallback{padding:30px;color:var(--muted)}
.code-toolbar{display:flex;gap:8px;padding:10px;border-bottom:1px solid var(--line);align-items:center;flex-wrap:wrap}.code-toolbar .spacer{flex:1}.py-status{font-size:12px;color:var(--muted)}
.editor-shell{display:flex;flex:1;min-height:210px;min-width:0;background:#09101e;overflow:hidden}.editor-gutter{width:52px;flex:none;overflow:hidden;padding:14px 0;background:#0c1526;border-right:1px solid var(--line);color:#5f6e8c;font:14.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-align:right;user-select:none}.editor-line-number{display:block;height:22.475px;padding-right:12px}.editor-line-number.active{color:var(--accent);background:#16233a}.editor-layer{position:relative;flex:1;min-width:0;min-height:210px;overflow:hidden}.editor-indent-guides{position:absolute;z-index:0;top:0;left:0;width:max-content;min-width:100%;height:max-content;min-height:100%;background-image:repeating-linear-gradient(to right,transparent 0,transparent 34px,rgba(112,225,182,.16) 34px,rgba(112,225,182,.16) 35px);background-position:16px 0;background-repeat:repeat;pointer-events:none;will-change:transform}.editor-highlight{position:absolute;z-index:1;top:0;left:0;width:max-content;min-width:100%;min-height:100%;margin:0;padding:14px 16px;color:#d4d4d4;font:14.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;tab-size:4;white-space:pre;pointer-events:none;will-change:transform}.editor{position:relative;z-index:2;flex:1;min-width:0;width:100%;height:100%;min-height:210px;resize:none;border:0;outline:0;background:transparent;color:transparent;-webkit-text-fill-color:transparent;caret-color:#f8f8f2;padding:14px 16px;font:14.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;tab-size:4;white-space:pre;overflow:auto}.editor::selection{background:#264f78;color:transparent}.editor:focus{box-shadow:inset 0 0 0 1px #284267}.editor-status{display:flex;align-items:center;gap:10px;min-height:28px;padding:4px 10px;border-top:1px solid var(--line);background:#0d1729;color:#aebbd4;font:12px ui-monospace,SFMono-Regular,Menlo,monospace}.editor-status .spacer{flex:1}.editor-tool{border:0;background:transparent;color:var(--accent2);font:inherit;cursor:pointer;padding:2px 5px}.editor-tool:hover{text-decoration:underline}.editor-find{display:flex;align-items:center;gap:7px;padding:6px 10px;border-top:1px solid var(--line);background:#121e34}.editor-find input{min-width:0;flex:1;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:#09101e;color:var(--text);outline:0}.editor-find input:focus{border-color:var(--accent2)}
.editor-find[hidden]{display:none}.editor-highlight .token-keyword{color:#c586c0}.editor-highlight .token-builtin{color:#4ec9b0}.editor-highlight .token-string{color:#ce9178}.editor-highlight .token-number{color:#b5cea8}.editor-highlight .token-comment{color:#6a9955}.editor-highlight .token-function{color:#dcdcaa}.editor-highlight .token-class-name{color:#4ec9b0}.editor-highlight .token-decorator{color:#d7ba7d}.editor-highlight .token-variable{color:#9cdcfe}.editor-highlight .token-operator{color:#d4d4d4}.editor-highlight .token-punctuation{color:#d4d4d4}.editor-highlight .token-reference{background:#264f78;border-radius:3px;box-shadow:0 0 0 1px #4f78a8;color:#fff}
.editor-indent-guides{background-image:none!important;background-position:0 0!important}.editor-indent-line{position:absolute;display:block;width:1px;background:rgba(112,225,182,.18);pointer-events:none}.editor-indent-line.active{background:rgba(112,225,182,.62);box-shadow:0 0 4px rgba(112,225,182,.18)}
.test-panel{border-top:1px solid var(--line);max-height:42%;min-height:170px;display:flex;flex-direction:column}.test-head{display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid var(--line)}.test-list{overflow:auto;padding:8px;display:flex;flex-direction:column;gap:7px}.test-row{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#0d1527}.test-row summary{cursor:pointer;display:flex;gap:8px;align-items:center;list-style:none;font-weight:700}.test-row summary::-webkit-details-marker{display:none}.verdict{margin-left:auto;font:800 12px ui-monospace,SFMono-Regular,monospace}.verdict.AC{color:var(--ok)}.verdict.WA,.verdict.RE,.verdict.TLE{color:var(--bad)}.io-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.io-box{white-space:pre-wrap;background:#070c16;border-radius:8px;padding:8px;font:12px/1.45 ui-monospace,SFMono-Regular,monospace;overflow:auto;max-height:130px}.io-box strong{display:block;color:var(--muted);font-family:inherit;margin-bottom:4px}.io-template-details{border-bottom:1px solid var(--line);padding:8px 10px}.io-template-details summary{cursor:pointer;display:flex;align-items:center;gap:8px;list-style:none}.io-template-details summary::-webkit-details-marker{display:none}.io-template-details summary .muted{margin-left:auto}.io-template-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.io-template-card{min-width:0;border:1px solid var(--line);border-radius:9px;background:#0d1527;padding:8px}.io-template-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.io-template-card pre{margin:0;white-space:pre-wrap;overflow:auto;max-height:110px;background:#070c16;border-radius:7px;padding:8px;font:12px/1.45 ui-monospace,SFMono-Regular,monospace}.inline-copy{float:right;border:0;background:transparent;color:var(--accent2);cursor:pointer;padding:0;font:inherit}.inline-copy:hover{text-decoration:underline}
.mobile-view-tabs{display:none}.result-wrap{width:min(900px,100%);margin:0 auto;padding:26px 16px}.result-hero{text-align:center;padding:28px}.perf{font-size:64px;font-weight:900;letter-spacing:-2px;color:var(--accent)}.delta.up{color:var(--ok)}.delta.down{color:var(--bad)}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.score-item{background:#0d1527;border:1px solid var(--line);border-radius:12px;padding:14px;text-align:center}.score-item b{display:block;font-size:24px}.history-table{width:100%;border-collapse:collapse}.history-table th,.history-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left}.history-table th{color:var(--muted);font-size:12px}
.code-lab{width:min(1400px,100%);margin:0 auto;padding:14px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:12px;height:calc(100dvh - 58px)}.code-lab-editor,.code-lab-runtime{min-height:0;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.code-lab-editor .editor-shell{min-height:0}.code-lab-runtime{padding:14px;gap:8px}.runtime-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.code-lab-runtime label{font-size:12px;color:var(--muted);font-weight:700;margin-top:4px}.code-lab-runtime textarea{min-height:150px;resize:vertical;background:#09101e;color:var(--text);border:1px solid var(--line);border-radius:9px;padding:10px;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.code-lab-runtime pre{flex:1;min-height:170px;overflow:auto;margin:0;background:#070c16;border:1px solid var(--line);border-radius:9px;padding:10px;white-space:pre-wrap;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}
.toast{position:fixed;left:50%;bottom:calc(22px + env(safe-area-inset-bottom));transform:translate(-50%,16px);background:#eaf3ff;color:#0a1324;padding:10px 14px;border-radius:10px;opacity:0;pointer-events:none;transition:.2s;z-index:100;font-weight:700;box-shadow:0 8px 30px #0007}.toast.show{opacity:1;transform:translate(-50%,0)}
.loader{display:inline-block;width:15px;height:15px;border:2px solid #ffffff40;border-top-color:white;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.memo-code-block{margin:10px 0;background:#111d32;border:1px solid #263653;border-radius:8px;overflow:hidden}.memo-code-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px;border-bottom:1px solid #263653;color:var(--muted);font:11px ui-monospace,SFMono-Regular,monospace}.memo-code-copy{padding:3px 8px;border:1px solid #344766;border-radius:6px;background:#18253c;color:var(--text);font:inherit;cursor:pointer}.memo-code-copy:hover{border-color:var(--accent);color:var(--accent)}.memo-code-block .memo-code{margin:0;border-radius:0;background:transparent}
@media(max-width:820px){
  .topbar{height:54px}.brand{font-size:14px}.timer{font-size:20px}.topbar .hide-mobile{display:none}
  .main{padding:14px 10px}.hero{padding:22px}.form-grid{grid-template-columns:1fr}.score-grid{grid-template-columns:1fr 1fr}
  .match-layout{display:block;height:calc(100dvh - 54px);padding:0}.problem-pane,.code-pane{height:100%;border-radius:0;border-left:0;border-right:0}.match-resize-handle{display:none}.mobile-hidden{display:none!important}.mobile-view-tabs{display:flex;gap:5px}.statement{min-height:0}.test-panel{max-height:44%}.editor{font-size:14px}.problem-name{max-width:45vw}
  .code-lab{display:flex;flex-direction:column;height:calc(100dvh - 54px);padding:8px}.code-lab-editor{height:55%;min-height:340px}.code-lab-runtime{flex:1;min-height:360px}.code-lab-runtime textarea{min-height:90px}.code-lab-runtime pre{min-height:100px}
  .memo-panel{min-width:calc(100vw - 8px);max-width:100vw}.memo-head-actions .btn{padding:5px 6px;font-size:10px}.memo-item{padding:12px}.memo-item-actions{gap:4px;flex-wrap:wrap;justify-content:flex-end}.memo-item-actions .inline-copy{padding:4px 5px;font-size:11px}
}
