@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;450;500;600;700&family=Noto+Sans+KR:wght@400;450;500;550;600;650;700;750;800&display=swap";
:root{--light-canvas:#f5f7fb;--light-panel:#fff;--light-raised:#eef2f7;--light-hover:#e2e8f0;--light-text:#182334;--light-muted:#4b5c73;--light-line:#bac6d5;--light-strong-line:#738399;--light-blue:#1d4f9e;--light-green:#196347;--light-amber:#805000;--light-red:#ad292f;--light-purple:#6540a4;--light-cyan:#146176;--light-blue-soft:#e8f0fc;--light-green-soft:#e9f4ed;--light-amber-soft:#fff3d9;--light-red-soft:#fcecee;--light-purple-soft:#f1ecfb;--light-cyan-soft:#e7f4f7;--light-on-accent:#fff;--art-blend:normal;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#0e1219);--sidebar:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#121722);--line:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#343e4e);--surface:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#171d28);--surface-raised:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#202938);--surface-hover:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#283448);--radius-control:12px;--radius-panel:22px;--radius-small:8px;--text:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#f0f3f8);--muted:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b3bdcc);--accent:var(--lightningcss-light,var(--light-blue))var(--lightningcss-dark,#99c5ff);--warning:var(--lightningcss-light,var(--light-amber))var(--lightningcss-dark,#f2c879);--danger:var(--lightningcss-light,var(--light-red))var(--lightningcss-dark,#ff9a9a);--action:var(--lightningcss-light,var(--light-blue))var(--lightningcss-dark,#93c5fd);--success:var(--lightningcss-light,var(--light-green))var(--lightningcss-dark,#7dd3ac);--ai:var(--lightningcss-light,var(--light-purple))var(--lightningcss-dark,#c4b5fd);--mono:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--sans:"Noto Sans KR", system-ui, -apple-system, "Segoe UI", sans-serif;--text-caption:.8125rem;--text-small:.875rem;--text-ui:.9375rem;--text-body:1rem;--text-reading:1rem;--text-input:var(--text-body);--control-size:44px;--motion-fast:.16s;--motion-enter:.22s;--black:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#000);--white:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#fff);--action-soft:var(--lightningcss-light,var(--light-blue))var(--lightningcss-dark,#bfdbfe);--handoff-border:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#34373d);--handoff-surface:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#14161a);--handoff-input:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#0c0e12);--handoff-card:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#111318);--handoff-accent:var(--lightningcss-light,var(--light-cyan))var(--lightningcss-dark,#b7dce4);--handoff-muted:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b3b7c2);--handoff-help:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a9adb7);--handoff-placeholder:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#858b97);--handoff-outline:var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#45515b);--handoff-focus:var(--lightningcss-light,var(--light-cyan))var(--lightningcss-dark,#87cfe0)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--art-blend:lighten;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.theme-select{color:var(--muted);font-size:var(--text-small);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.theme-select select{max-width:100%;min-height:44px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:8px 30px 8px 10px}@media (prefers-color-scheme:dark){:root:not([data-theme]){--art-blend:lighten}}
*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;margin:0}body{font-family:var(--sans);font-size:var(--text-body);word-break:keep-all;overflow-wrap:anywhere;color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.65}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}a{color:inherit;text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}button:not(:disabled),a,input,textarea,select{transition:background .16s,color .16s,border-color .16s,box-shadow .16s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button svg,a svg{flex-shrink:0}p,h1,h2,h3{margin:0}:where(main,dialog,[role=dialog]) :where(h1,h2,h3,h4)+p,:where(main,dialog,[role=dialog]) :where(p)+p{margin-block-start:12px}:where(details[open])>:where(summary)+:is(p,div,ul,ol){margin-block-start:16px}input,textarea,select{color:var(--text);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#141414);border:1px solid var(--line);border-radius:var(--radius-control)}input::placeholder,textarea::placeholder{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a0a0a0)}select{cursor:pointer}fieldset{border:0;min-width:0;margin:0;padding:0}pre,code,kbd,.mono{font-family:var(--mono)}pre{word-break:normal;tab-size:2}kbd{font-size:var(--text-caption);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#3e3e3e);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#212121);border-radius:var(--radius-control);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#adadad);white-space:nowrap;padding:1px 5px}small{font-size:var(--text-small)}.muted{color:var(--muted)}.accent,.success-text{color:var(--accent)}.warning-text{color:var(--warning)}.full-width{width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--accent);color:var(--lightningcss-light,var(--light-on-accent))var(--lightningcss-dark,#111);padding:12px 20px;position:fixed;top:-80px;left:240px}.skip-link:focus{top:8px}.icon-button{width:var(--control-size);height:var(--control-size);border-radius:var(--radius-control);color:var(--muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#2d2d2d);color:var(--text)}.icon-button.active{color:var(--accent)}.primary-button,.secondary-button{border-radius:var(--radius-control);min-height:44px;font-size:var(--text-ui);white-space:normal;text-align:center;justify-content:center;align-items:center;gap:9px;padding:10px 16px;font-weight:650;display:inline-flex}.primary-button{border:1px solid var(--accent)}.primary-button:hover:not(:disabled){box-shadow:none}.secondary-button{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#444)}.primary-button.small{min-height:40px;font-size:var(--text-ui);gap:7px;padding:7px 12px}.text-button{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b2b2b2);font-size:var(--text-small);align-items:center;gap:6px;padding:4px 0;font-weight:500;display:inline-flex}.text-button:hover:not(:disabled){color:var(--accent)}.status-dot{border-radius:var(--radius-control);width:6px;height:6px;box-shadow:none;flex-shrink:0;display:inline-block}.eyebrow{font:500 var(--text-caption)/1.5 var(--mono);letter-spacing:1.5px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b9b9b9);align-items:center;gap:9px;display:flex}.spin{animation:1s linear infinite spin}.blink{animation:1.2s step-end infinite blink}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:0}}.lab-shell{min-height:100vh;display:flex}
.sidebar{z-index:40;background:var(--sidebar);border-right:1px solid var(--line);width:240px;padding:29px 16px max(24px, env(safe-area-inset-bottom));flex-direction:column;flex-shrink:0;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.brand-logo{font:600 24px/1.1 var(--mono);letter-spacing:-1px;color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#f3f3f3);flex-shrink:0;align-items:center;gap:11px;display:flex}.brand-icon{object-fit:contain;border-radius:22%;flex-shrink:0;display:block}.brand-logo small{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8c8c8c);margin-top:7px;font-weight:400;display:block}.brand-cursor{color:var(--accent)}.sidebar-workspace{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;align-items:stretch;gap:8px;margin:32px 0 28px;padding:16px;display:flex}.sidebar-workspace strong{font:600 var(--text-ui)/1.5 var(--sans);overflow-wrap:anywhere}.sidebar-workspace small{font:400 var(--text-caption)/1.6 var(--sans);color:var(--muted);word-break:keep-all}.sidebar-workspace .workspace-login{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#42474e);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#20242a);min-height:40px;color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#f2f4f7);font:550 var(--text-caption)/1.5 var(--sans);border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:4px;display:flex}.sidebar-workspace .workspace-login:hover{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#2c3139);border-color:var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#737b87)}.nav-caption{font:450 var(--text-caption) var(--mono);letter-spacing:1.3px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#818181);justify-content:space-between;margin-bottom:11px;padding:0 11px;display:flex}.nav-caption>span{color:var(--muted);font-size:var(--text-caption)}.nav-item{width:100%;min-height:44px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a1a1a1);font-size:var(--text-ui);text-align:left;white-space:normal;border:1px solid #0000;border-radius:6px;align-items:center;gap:10px;margin-bottom:4px;padding:11px 12px;font-weight:450;display:flex}.nav-item svg{opacity:.82}.nav-item>span{flex:1}.nav-item small{font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b2b2b2)}.nav-item:hover{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#222);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#e1e1e1)}.nav-item.active svg{color:var(--accent);opacity:1}.domains-caption{margin-top:31px;margin-bottom:9px}.domain-nav{min-height:44px;font-size:var(--text-ui);margin-bottom:3px;padding:9px 12px}.sidebar-bottom{border-top:1px solid var(--line);flex-shrink:0;margin-top:auto;padding-top:12px}.sidebar-note{border:1px dashed var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#3d3d3d);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a3a3a3);font-size:var(--text-caption);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#191919);border-radius:6px;gap:10px;margin-bottom:16px;padding:13px 11px;line-height:1.9;display:flex}.sidebar-note svg{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#929292);margin-top:2px}.sidebar-note strong{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c2c2c2);font-weight:450}.sidebar-bottom>.nav-item{padding-left:10px}.sidebar-version{border-top:1px solid var(--line);font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#7b7b7b);justify-content:space-between;padding:17px 0;display:flex}.sidebar-version>span:last-child{font-size:var(--text-caption);align-items:center;gap:5px;display:flex}.sidebar-version i{background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#929292);border-radius:6px;width:4px;height:4px}.main-shell{flex-direction:column;flex:1;min-width:0;min-height:100vh;margin-left:240px;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--lightningcss-light,color-mix(in srgb, var(--light-panel) 86.67%, transparent))var(--lightningcss-dark,#151515dd);flex-shrink:0;justify-content:space-between;align-items:center;gap:15px;height:66px;padding:0 35px;display:flex}.topbar-path{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#606060);font-size:var(--text-small);align-items:center;gap:12px;min-width:0;display:flex}.path-root{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8c8c8c);font-size:var(--text-caption)}.path-root .brand-icon{display:none}.topbar-path strong{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c5c5c5);white-space:normal;font-weight:500}.topbar-actions{align-items:center;gap:18px;display:flex}.connection{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9c9c9c);font-size:var(--text-caption);white-space:normal;align-items:center;gap:7px;display:flex}.new-label{font:600 var(--text-caption) var(--mono);border-left:1px solid var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#8c8c8c);margin-left:2px;padding-left:8px}.help-button{margin-right:-5px}.mobile-menu,.sidebar-close{display:none}.sidebar>nav{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0;margin:-4px -4px 12px;padding:4px;overflow-y:auto}.sidebar-workspace{flex-shrink:0}
.library-main{flex:1;width:100%;max-width:1520px;margin:0 auto;padding:34px 36px 0}.stats-row{border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface);grid-template-columns:repeat(4,1fr);min-height:120px;margin-bottom:34px;display:grid}.stats-row>div{min-width:0;padding:19px 23px;position:relative}.stats-row>div+div{border-left:1px solid var(--line)}.stats-row>div>span:first-child{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#aaa);align-items:center;gap:8px;display:flex}.stats-row>div>span:first-child svg{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#949494);width:14px}.stats-row strong{font:500 28px/1.2 var(--mono);letter-spacing:-1px;margin:11px 0 9px;display:block}.stats-row strong small{font:var(--text-caption) var(--sans);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#848484);letter-spacing:0;margin-left:7px}.stat-note{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8b8b8b);white-space:nowrap;align-items:center;gap:5px;display:flex}.stat-note .status-dot{background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#a8a8a8);width:4px;height:4px}.stat-progress{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#323232);border-radius:0;max-width:140px;height:3px;margin-top:12px;overflow:hidden}.stat-progress i{min-width:0;height:100%;display:block}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:19px;display:flex}.section-heading h2{letter-spacing:-.6px;align-items:center;gap:9px;font-size:22px;font-weight:650;display:flex}.section-heading h2 span{font:var(--text-caption) var(--mono);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#424242);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#bfbfbf);background:var(--surface-raised);border-radius:var(--radius-small);letter-spacing:0;border-color:var(--line);padding:3px 6px}.section-heading p{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8a8a8a);font-size:var(--text-caption);margin-top:6px}.section-heading>.text-button{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9e9e9e)}.section-heading>.text-button:hover{color:var(--accent)}.filter-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.search-box{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#3a3a3a);background:var(--surface);border-radius:var(--radius-control);max-width:420px;min-height:52px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#989898);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#454e5b);flex:1;align-items:center;gap:10px;padding:0 16px;display:flex}.search-box:focus-within{border-color:var(--action);box-shadow:0 0 0 3px #93c5fd20}.search-box input{width:100%;min-width:0;font-size:var(--text-input);background:0 0;border:0;outline:none;padding:10px 0}.search-box input:focus-visible{outline:none}.search-box kbd{font-size:var(--text-small);text-align:center;min-width:20px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#888);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#262626)}.type-filters{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#343434);border-radius:var(--radius-control);background:var(--surface);border-color:var(--line);flex-shrink:0;gap:4px;padding:4px;display:flex}.type-filters button{font-size:var(--text-ui);white-space:nowrap;border-radius:var(--radius-small);min-height:40px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#999);padding:8px 12px}.type-filters button.selected{color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#d4d4d4);background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#393939);box-shadow:none}.type-filters button:hover{color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#e8e8e8)}.filter-bottom{justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px;display:flex}.select-filters{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.select-filters>label,.sort-select{align-items:center;display:flex;position:relative}.select-filters select,.sort-select select{appearance:none;border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#333);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#1a1a1a);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#ababab);font-size:var(--text-input);border-radius:0;max-width:220px;min-height:40px;padding:6px 25px 6px 10px}.select-filters>label>svg,.sort-select>svg{pointer-events:none;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#848484);position:absolute;right:8px}.sort-select select{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9b9b9b);font-size:var(--text-input);background:0 0;border-color:#0000;padding-right:19px}.sort-select>svg{right:1px}.clear-filters{font-size:var(--text-caption);margin-left:4px}.problem-table{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#353535);border-radius:var(--radius-panel);border-color:var(--line);overflow:hidden}.table-header,.problem-row{grid-template-columns:43px minmax(200px,1fr) 90px 77px 80px 36px;align-items:center;column-gap:9px;padding:0 15px;display:grid}.table-header{background:var(--surface-raised);height:44px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b8c0ce);font-size:var(--text-caption);border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#353535);border-bottom-color:var(--line);font-weight:500}.table-header>span:first-child{text-align:center}.problem-row{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#171717);min-height:92px}.problem-row+.problem-row{border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#2d2d2d)}.problem-status{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b7b7b7);justify-content:center;align-items:center;display:flex}.problem-status.new{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#656565)}.problem-status.in-progress{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b5b5b5)}.empty-status{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#606060);border-radius:0;width:14px;height:14px;display:block}.problem-link{min-width:0;padding:18px 0;display:block}.problem-link>div{align-items:center;gap:6px;display:flex}.problem-link h3{font-size:var(--text-reading);letter-spacing:-.12px;color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#dfdfdf);white-space:normal;overflow-wrap:anywhere;font-weight:600;line-height:1.5}.problem-link:hover h3{color:var(--accent)}.problem-link>span{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8e8e8e);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;line-height:1.4;display:flex}.problem-link>span>svg{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#818181)}.problem-link>span>i{background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#7f7f7f);border-radius:0;width:2px;height:2px;margin:0 1px}.row-tags{flex-wrap:wrap;gap:5px;margin-left:5px;display:flex}.row-tags>span{font:var(--text-caption)/1.3 var(--mono);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#393939);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#909090);border-radius:0;padding:2px 4px}.kind-label{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,silver);white-space:nowrap}.badge{font-size:var(--text-caption);border-radius:var(--radius-small);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#2d2d2d);width:max-content;min-width:47px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c1c1c1);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#434343);justify-content:center;align-items:center;gap:6px;padding:4px 7px;line-height:1.3;display:inline-flex}.level-bars{align-items:flex-end;gap:2px;height:10px;display:flex}.level-bars i{opacity:.25;background:currentColor;border-radius:0;width:3px;height:4px}.level-bars i:nth-child(2){height:7px}.level-bars i:nth-child(3){height:10px}.level-하 .level-bars i:first-child,.level-중 .level-bars i:not(:last-child),.level-상 .level-bars i{opacity:1}.row-time{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b1b1b1)}.row-time small{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8e8e8e)}.bookmark-button{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#727272)}.ai-tag{font:var(--text-caption) var(--mono);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#525252);border-radius:0;align-items:center;gap:2px;padding:2px 3px;display:flex}.table-footer{font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b6b6b6);justify-content:space-between;align-items:center;padding:13px 0 0;display:flex}.pagination{align-items:center;gap:9px;display:flex}.pagination>.icon-button{height:var(--control-size);width:var(--control-size);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#363636)}.pagination>span{text-align:center;min-width:29px}.library-bottom-note{border-top:1px dashed var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#353535);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8c8c8c);font-size:var(--text-caption);justify-content:space-between;align-items:center;gap:15px;margin-top:24px;padding-top:15px;display:flex}.library-bottom-note>span{align-items:center;gap:7px;display:flex}.library-bottom-note .text-button{font-size:var(--text-caption)}.app-footer{color:var(--muted);font-size:var(--text-small);justify-content:space-between;gap:20px;margin-top:auto;padding:31px 36px 21px;display:flex}.app-footer>.mono{font-size:var(--text-caption);letter-spacing:.8px}.app-footer>span:last-child{font-size:var(--text-caption);gap:10px;display:flex}.app-footer>span:last-child>span{color:var(--muted)}.page-title{padding:14px 0 29px}.page-title h1{letter-spacing:-1.3px;margin:12px 0 11px;font-size:29px;font-weight:700;line-height:1.5}.page-title p{color:var(--muted);font-size:var(--text-ui);line-height:1.8}.empty-state{text-align:center;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a1a1a1);flex-direction:column;align-items:center;gap:14px;padding:65px 24px;display:flex}.empty-state h1,.empty-state h2{color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#dedede);letter-spacing:-.5px;font-size:20px}.empty-state h3{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#d0d0d0)}.empty-state p{max-width:480px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#939393);line-height:1.9;font-size:var(--text-small)}.empty-state .secondary-button,.empty-state .primary-button{margin-top:9px}.empty-state>a:not(.primary-button):not(.secondary-button){font-size:var(--text-small);text-decoration:underline}.bordered{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#373737);border-radius:var(--radius-panel)}.content-loader{min-height:65vh;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#bcbcbc);flex-direction:column;justify-content:center;align-items:center;gap:19px;display:flex}.content-loader p{color:var(--muted);font-size:var(--text-ui)}.content-loader>.mono{font-size:var(--text-small);letter-spacing:1px}.terminal-icon{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#545454);width:53px;height:53px;color:var(--accent);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#2e2e2e);border-radius:0;justify-content:center;align-items:center;display:flex}.history-stats{margin-bottom:35px}.history-stats strong{margin-bottom:0}.history-section{margin-top:10px}.timeline{border:1px solid var(--line);border-radius:var(--radius-panel);overflow:hidden}.timeline-item{background:var(--surface);align-items:center;gap:18px;padding:22px;display:flex}.timeline-item+.timeline-item{border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#363636)}.timeline-item:hover{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#262626)}.timeline-icon{background:var(--surface-raised);width:36px;height:36px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#bebebe);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.timeline-icon.solved{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#353535);color:var(--accent)}.timeline-item>div{flex:1;min-width:0}.timeline-item>div>div{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9e9e9e);align-items:center;gap:12px;display:flex}.timeline-item>div>div>span:first-child{font-size:var(--text-caption)}.timeline-item h3{font-size:var(--text-body);margin:8px 0;font-weight:550}.timeline-item p{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9a9a9a);text-overflow:ellipsis;white-space:nowrap;max-width:650px;line-height:1.7;overflow:hidden}.timeline-item>strong{font:500 19px var(--mono)}.timeline-item>svg{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#747474)}
.practice-main{flex:1;padding:25px 28px 0}.workspace-breadcrumb{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#828282);font-size:var(--text-caption);align-items:center;gap:11px;display:flex}.workspace-breadcrumb a{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a9a9a9);align-items:center;gap:7px;display:flex}.workspace-breadcrumb a:hover{color:var(--accent)}.workspace-id{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#7e7e7e);letter-spacing:1px;margin-left:auto}.workspace-heading{justify-content:space-between;align-items:center;gap:16px;margin:22px 0 24px;display:flex}.workspace-heading h1{letter-spacing:-1px;margin-top:12px;font-size:24px;font-weight:650;line-height:1.55}.problem-meta{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9e9e9e);font-size:var(--text-caption);flex-wrap:wrap;align-items:center;gap:13px;display:flex}.problem-meta>span{align-items:center;gap:4px;display:flex}.problem-meta>.badge{font-size:var(--text-caption);min-width:42px;padding:3px 6px}.workspace-heading-actions{gap:8px;display:flex}.workspace-heading-actions .icon-button{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);width:34px;height:34px}.workbench{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#171717);border-radius:0;grid-template-columns:minmax(310px,.92fr) minmax(420px,1.3fr);align-items:start;display:grid;overflow:hidden}.problem-pane{border-right:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);align-self:stretch;min-width:0}.problem-tabs{border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#222);gap:2px;height:46px;padding:0 9px;display:flex}.problem-tabs button{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#999);font-size:var(--text-ui);white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:6px;padding:0 13px;display:flex;position:relative}.problem-tabs button[aria-selected=true]:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:11px;right:11px}.problem-tabs small{font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a4a4a4);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#353535);border-radius:0;padding:2px 4px}.problem-content{scrollbar-width:thin;scrollbar-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#474747) transparent;min-height:680px;max-height:calc(100vh - 240px);padding:26px 25px;overflow:auto}.section-marker{font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#909090);letter-spacing:.8px;align-items:center;gap:10px;margin-bottom:15px;display:flex}.section-marker>span{color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#ddd);font:550 var(--text-ui) var(--sans);letter-spacing:0}.scenario{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b1b1b1);white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere;line-height:2}.scenario+.section-marker{margin-top:30px}.requirements{flex-direction:column;gap:13px;margin:0 0 30px;padding:0;list-style:none;display:flex}.requirements li{align-items:flex-start;gap:10px;display:flex}.requirements li>span{font:var(--text-caption) var(--mono);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4a4a4a);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#2b2b2b);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a8a8a8);border-radius:0;flex-shrink:0;margin-top:2px;padding:4px}.requirements li>p{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b9b9b9);word-break:keep-all;overflow-wrap:anywhere;line-height:1.9}.example-box{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#1f1f1f);border-radius:0;margin-bottom:12px;padding:15px}.example-box>div{flex-direction:column;gap:7px;margin-bottom:13px;display:flex}.example-box>div>span{font:var(--text-caption) var(--mono);letter-spacing:1px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#979797)}.example-box code{font-size:var(--text-ui);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cdcdcd);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.example-box p{font-size:var(--text-ui);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#949494);border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#3e3e3e);padding-top:10px;line-height:1.8}.problem-tags{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a0a0a0);font-size:var(--text-caption);flex-wrap:wrap;gap:9px;margin:22px 0;display:flex}.help-nudge{border:1px dashed var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4f4f4f);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#252525);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b0b0b0);font-size:var(--text-caption);border-radius:0;align-items:center;gap:9px;padding:13px;line-height:1.8;display:flex}.help-nudge>svg{flex-shrink:0}.help-nudge>span{flex:1}.help-nudge>button{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#bdbdbd);padding:2px;display:flex}.editor-pane{min-width:0}.editor-topbar{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#222);border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);justify-content:space-between;align-items:center;gap:6px;height:46px;padding:0 14px;display:flex}.editor-topbar>span{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#adadad);font:var(--text-caption) var(--mono);letter-spacing:.6px;align-items:center;gap:7px;display:flex}.editor-topbar>span>.status-dot{width:5px;height:5px}.editor-topbar>div{align-items:center;gap:10px;display:flex}.save-indicator{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9e9e9e);font-size:var(--text-caption);align-items:center;gap:4px;display:flex}.editor-topbar .text-button{font-size:var(--text-caption)}.editor-topbar .icon-button{width:var(--control-size);min-height:var(--control-size)}.code-editor{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#121212)}.editor-filebar{border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#313131);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#1b1b1b);flex-wrap:wrap;justify-content:space-between;align-items:center;min-height:40px;padding-right:9px;display:flex}.editor-filebar>span{border-right:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#373737);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#121212);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a7a7a7);min-height:40px;font-size:var(--text-caption);align-items:center;gap:7px;padding:11px 16px;display:flex}.editor-filebar strong{font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b9b9b9)}.file-dot{background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#747474);border-radius:0;width:5px;height:5px;margin-left:8px}.editor-filebar>div{gap:2px;display:flex}.editor-filebar .icon-button{width:var(--control-size);min-height:var(--control-size)}.monaco-shell{min-width:0;height:438px;overflow:hidden}.editor-loading{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#121212);height:100%;min-height:438px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a6a6a6);font:var(--text-small) var(--mono);justify-content:center;align-items:center;gap:10px;display:flex}.editor-statusbar{min-height:var(--control-size);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#1a1a1a);border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#313131);font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8d8d8d);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:0 13px;display:flex}.editor-statusbar>span{gap:14px;display:flex}.review-action{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#1f1f1f);border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#424242);border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px;display:flex}.review-action>span{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#989898);white-space:nowrap}.review-action>span>small{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8e8e8e);margin-top:7px;display:block}.review-action .primary-button{font-size:var(--text-small);min-height:37px;padding:9px 13px}.review-console{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#181818)}.console-heading{border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#393939);min-height:44px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a5a5a5);font-size:var(--text-caption);flex-wrap:wrap;align-items:center;gap:7px;padding:0 16px;display:flex}.console-heading strong{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cecece);font-weight:500}.console-heading>span{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8b8b8b);font-size:var(--text-caption);margin-left:auto}.console-idle{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#999);font-size:var(--text-small);min-height:147px;padding:23px 21px 26px}.console-idle>.mono{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c3c3c3)}.console-idle p{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9c9c9c);align-items:center;gap:7px;margin-top:15px;line-height:1.8;display:flex}.console-idle small{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#878787);font-size:var(--text-caption);margin-top:8px;line-height:1.7;display:block}.review-result{padding:20px 21px}.review-result-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.review-result-title>span{align-items:center;gap:8px;display:flex}.review-result-title strong{font-size:var(--text-ui);font-weight:550}.review-result-title>b{font:500 24px var(--mono);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#d6d6d6)}.review-result-title>b>small{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a1a1a1)}.review-result>p{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b1b1b1);font-size:var(--text-body);line-height:1.9}.review-stale{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#2c2c2c);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#444);border-radius:0;align-items:center;gap:6px;margin-top:12px;padding:9px 10px;display:flex;font-size:var(--text-caption)!important}.review-criteria{margin:18px 0 0;padding:0;list-style:none}.review-criteria li{border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#373737);align-items:flex-start;gap:9px;padding:12px 0;display:flex}.review-criteria li>svg{flex-shrink:0;margin-top:2px}.review-criteria strong{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cecece);font-weight:500}.review-criteria p{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a3a3a3);margin-top:5px;line-height:1.9}.review-improvements{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#434343);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#282828);border-radius:0;margin-top:9px;padding:13px}.review-improvements>strong{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cfcfcf);font-weight:500}.review-improvements ul{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#aaa);font-size:var(--text-caption);margin:8px 0 0;padding-left:15px;line-height:1.9}.submitted-code{border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#3d3d3d);font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b5b5b5);margin-top:16px;padding-top:14px}.submitted-code summary{cursor:pointer}.submitted-code summary span{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#838383);margin-left:10px}.submitted-code pre{font-size:var(--text-caption);white-space:pre-wrap;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b5b5b5);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#141414);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#363636);overflow-wrap:anywhere;border-radius:0;padding:12px;line-height:1.8}.problem-content h2{letter-spacing:-.5px;margin:12px 0;font-size:18px;font-weight:600;line-height:1.6}.problem-content>.muted{font-size:var(--text-small);line-height:1.9}.hints-list{flex-direction:column;gap:12px;margin:26px 0 18px;display:flex}.hint-card{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4c4c4c);border-radius:0;padding:16px}.hint-card>div{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#bbb);font-size:var(--text-caption);justify-content:space-between;align-items:center;gap:15px;display:flex}.hint-card .mono{font-size:var(--text-caption);letter-spacing:.8px}.hint-card p{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c6c6c6);white-space:pre-wrap;margin-top:13px;line-height:1.9}.hint-card.locked{border-style:dashed}.hint-card.locked>div,.hint-card.locked p{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#8b8b8b)}.solution-locked{text-align:center;flex-direction:column;align-items:center;gap:15px;padding:55px 0;display:flex}.solution-locked h2{margin:3px 0 0;font-size:17px}.solution-locked p{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a4a4a4);line-height:2}.solution-locked small{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#898989);font-size:var(--text-caption);margin-top:7px;line-height:1.8}.solution-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.solution-title .eyebrow{font-size:var(--text-caption);letter-spacing:.8px}.solution-code{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#454545);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#141414);white-space:pre;font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c6c6c6);scrollbar-width:thin;scrollbar-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#575757) transparent;border-radius:0;margin:20px 0 27px;padding:17px 15px;line-height:1.9;overflow:auto}.tab-empty{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a2a2a2);flex-direction:column;align-items:center;gap:16px;padding:60px 0;display:flex}.tab-empty p{font-size:var(--text-ui)}.tab-empty small{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#838383)}.attempts-list{flex-direction:column;gap:9px;margin-top:25px;display:flex}.attempts-list>button{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#252525);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#464646);text-align:left;border-radius:0;justify-content:space-between;align-items:center;gap:15px;padding:14px;display:flex}.attempts-list>button.selected{border-color:var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#a3a3a3);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#323232)}.attempts-list>button>span:first-child{flex-direction:column;gap:7px;display:flex}.attempts-list strong{font-size:var(--text-ui);font-weight:550}.attempts-list small{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9f9f9f);line-height:1.6}.attempts-list>button>span:last-child{font:var(--text-body) var(--mono);align-items:center;gap:10px;display:flex}.workspace-error{border-radius:0;align-items:center;gap:8px;display:flex;border-left:0!important;border-right:0!important;margin:0!important}.workspace-error>svg{flex-shrink:0}.workspace-error>button{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#acacac);margin-left:auto;font-size:21px}.focus-mode .sidebar{display:none}.focus-mode .main-shell{margin-left:0}.focus-mode .practice-main{padding:18px 24px 0}.focus-mode .workspace-heading{margin:15px 0 18px}.focus-mode .monaco-shell{height:510px}.focus-mode .problem-content{max-height:calc(100vh - 215px)}.draft-conflict,.draft-recovery{border:1px solid var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#9a7838);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#171510);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#e6e2d8);font-size:var(--text-body);border-radius:8px;margin:12px;padding:16px}.draft-conflict p,.draft-recovery p{margin:0 0 12px;line-height:1.65}.draft-conflict summary,.draft-recovery summary{cursor:pointer;padding:6px 0}.draft-conflict small{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c3bba9);margin-top:10px;display:block}.draft-comparison{grid-template-columns:1fr 1fr;gap:12px;margin:12px 0;display:grid}.draft-comparison label,.draft-recovery label{min-width:0;display:block}.draft-comparison textarea,.draft-recovery textarea{resize:vertical;width:100%;height:220px;color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#eee);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#0c0c0d);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#666);font:var(--text-ui)/1.6 Consolas, monospace;font-size:var(--text-input);border-radius:4px;margin-top:8px;padding:10px}.draft-conflict :focus-visible,.draft-recovery :focus-visible{outline:2px solid var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#e3b967);outline-offset:3px}@media (max-width:600px){.draft-comparison{grid-template-columns:1fr}.draft-conflict .secondary-button{white-space:normal}}
.modal{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#505050);border-radius:var(--radius-panel);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#1c1c1c);color:var(--text);scrollbar-width:thin;scrollbar-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4f4f4f) transparent;border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#444c59);width:560px;max-width:min(640px,100vw - 32px);max-height:calc(100dvh - 48px);padding:0;overflow:auto;box-shadow:0 24px 80px #0009}.modal-heading{border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#414141);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#272727);z-index:2;justify-content:space-between;align-items:center;padding:12px 18px;display:flex;position:sticky;top:0}.modal-heading>.mono{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b7b7b7);letter-spacing:1.3px}.modal-heading .icon-button{width:var(--control-size);height:var(--control-size)}.generator-modal{width:600px}.generator-modal form{padding:25px 28px 27px}.generator-intro .terminal-icon{width:43px;height:43px;margin-bottom:17px}.generator-intro h2{letter-spacing:-.7px;margin-top:8px;font-size:22px;font-weight:650}.generator-intro p{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a9a9a9);margin-top:10px;line-height:1.9}.generator-fields{margin-top:25px}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-row label{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cecece);flex-direction:column;gap:9px;font-weight:500;display:flex}.form-row select{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#161616);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4a4a4a);min-height:44px;color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cecece);font-size:var(--text-input);padding:0 11px}.field-label{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cecece);margin:20px 0 9px;font-weight:500;display:block}.segmented{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#161616);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4a4a4a);border-radius:0;gap:5px;padding:4px;display:flex}.segmented>button{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a2a2a2);border-radius:0;flex:1;justify-content:center;gap:6px;padding:9px;display:flex}.segmented>button.selected{background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#444);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#ddd)}.difficulty-options{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.difficulty-options>button{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#444);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#1a1a1a);text-align:left;border-radius:0;grid-template-rows:1fr auto;place-content:stretch;gap:8px;padding:12px 10px;display:grid}.difficulty-options>button.selected{box-shadow:none}.difficulty-options strong{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#cdcdcd);font-weight:550;display:block}.difficulty-options strong span{font-size:var(--text-caption);white-space:nowrap;margin-top:7px;font-weight:400;display:block}.difficulty-options small{font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#909090);margin-top:7px;display:block}.topic-label{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#ccc);flex-wrap:wrap;justify-content:space-between;gap:9px;margin-top:22px;font-weight:500;display:flex}.topic-label>span{font:var(--text-caption) var(--mono);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#868686)}.topic-label>textarea{resize:vertical;border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4a4a4a);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#161616);width:100%;line-height:1.9;font-size:var(--text-small);min-height:87px;padding:11px}.topic-suggestions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.topic-suggestions>button{min-height:36px;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a0a0a0);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#292929);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#444);font-size:var(--text-caption);border-radius:0;padding:5px 7px}.topic-suggestions>button:hover{border-color:var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#a1a1a1);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#d4d4d4)}.generation-note{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9d9d9d);font-size:var(--text-caption);align-items:center;gap:7px;margin:23px 0 17px;line-height:1.8;display:flex}.generate-submit{width:100%;font-size:var(--text-ui);min-height:43px}.generate-submit>svg:last-child,.generate-submit>svg:first-child{margin-left:auto}.generation-progress{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4d4d4d);border-radius:0;gap:10px;margin-bottom:15px;padding:13px;display:flex}.generation-progress>svg{flex-shrink:0;margin-top:2px}.generation-progress strong{font-size:var(--text-small);font-weight:500;line-height:1.8;display:block}.generation-progress>div>span{font-size:var(--text-caption);margin-top:5px;line-height:1.8;display:block}.inline-error{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#424242);font-size:var(--text-small);overflow-wrap:anywhere;border-radius:0;margin:16px 0;padding:12px;line-height:1.9}.inline-warning{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#2b2b2b);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#4a4a4a);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b7b7b7);font-size:var(--text-small);border-radius:0;margin:16px 0;padding:12px;line-height:1.9}.confirm-modal{width:440px}.confirm-content{padding:28px}.confirm-content h2{letter-spacing:-.5px;font-size:20px;font-weight:600}.confirm-content>p{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b4b4b4);margin-top:15px;line-height:1.9}.modal-buttons{justify-content:flex-end;gap:9px;margin-top:25px;display:flex}.modal-buttons button{font-size:var(--text-small)}.settings-content,.help-content{padding:27px}.settings-content h2,.help-content h2{letter-spacing:-.7px;margin:11px 0 27px;font-size:22px;font-weight:600}.font-setting{font-size:var(--text-ui);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#ccc);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:17px;display:flex}.settings-content>.theme-select{justify-content:space-between;margin-bottom:24px;display:flex}.font-setting>strong{font:var(--text-body) var(--mono);color:var(--accent)}.font-setting input{width:100%}.font-preview{font-size:var(--text-body);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#131313);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#454545);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#ccc);white-space:nowrap;border-radius:0;margin:17px 0 25px;padding:20px 14px;overflow:auto}.settings-info{border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#424242);font-size:var(--text-small);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.settings-info>span{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a7a7a7);align-items:center;gap:8px;display:flex}.settings-info strong{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#ccc);font-weight:400}.settings-content>p{font-size:var(--text-body);margin:5px 0 21px;line-height:1.9}.help-content ol{flex-direction:column;gap:25px;margin:0;padding:0;list-style:none;display:flex}.help-content li{align-items:flex-start;gap:13px;display:flex}.help-content li>span{white-space:nowrap;font:var(--text-caption) var(--mono);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#606060);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#363636);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#c4c4c4);border-radius:0;flex-shrink:0;padding:6px}.help-content li strong{font-size:var(--text-ui);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#dbdbdb);font-weight:550}.help-content li p{font-size:var(--text-body);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a9a9a9);margin-top:7px;line-height:1.9}.shortcut-help{border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#444);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a1a1a1);font-size:var(--text-caption);flex-wrap:wrap;gap:20px;margin-top:28px;padding:17px 0 0;display:flex}.shortcut-help>span{align-items:center;gap:7px;display:flex}.shortcut-help kbd{font-size:var(--text-caption)}.toast{border:1px solid var(--lightningcss-light,var(--light-strong-line))var(--lightningcss-dark,#747474);background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#353535);max-width:calc(100vw - 36px);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#dedede);z-index:100;box-shadow:none;font-size:var(--text-ui);border-radius:0;align-items:center;gap:10px;padding:12px 12px 12px 17px;display:flex;position:fixed;bottom:26px;left:calc(50% + 108px);transform:translate(-50%)}.toast>span{line-height:1.8}.toast>svg{flex-shrink:0}.sidebar-backdrop{display:none}
@media (max-width:1230px){.brand-symbol{width:30px;height:32px}}@media (max-width:1000px){.brand-symbol{width:29px;height:30px}}@media (max-width:760px){.skip-link{left:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.import-button{background:0 0;margin-top:10px}@media (max-width:760px){:root{--control-size:44px;--text-input:var(--text-reading)}.primary-button,.primary-button.small,.secondary-button{min-height:44px}}
@media (min-width:1550px){.nav-item,.domain-nav{font-size:var(--text-ui)}}@media (max-width:1230px){.sidebar{width:220px;padding-left:12px;padding-right:12px}.main-shell{margin-left:220px}.brand-logo{gap:9px;font-size:21px}.nav-item,.domain-nav{font-size:var(--text-ui)}.sidebar-workspace{padding:10px 8px}.sidebar-note,.sidebar-version,.sidebar-version>span:last-child{font-size:var(--text-caption)}.topbar{padding:0 25px}}@media (max-width:1000px){.sidebar{width:220px;padding:25px 10px 0}.main-shell{margin-left:220px}.sidebar .brand-logo{gap:7px;font-size:19px}.brand-logo small{font-size:var(--text-caption);letter-spacing:1.3px}.sidebar-workspace{font-size:var(--text-ui);gap:7px;margin-top:28px}.sidebar-workspace small{font-size:var(--text-caption)}.nav-caption{font-size:var(--text-caption);letter-spacing:1px;padding:0 8px}.nav-item{gap:8px;padding:10px 8px}.nav-item svg{width:15px}.domains-caption{margin-top:25px}.sidebar-note{gap:7px;padding:11px 7px}.sidebar-note svg{width:14px}.connection{display:none}}@media (max-width:760px){.sidebar{width:min(280px,88vw);padding:28px 17px 0;transition:transform .2s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar .brand-logo{gap:10px;font-size:24px}.brand-logo small{font-size:var(--text-caption);letter-spacing:1.7px}.sidebar .brand-symbol{width:34px;height:35px}.sidebar-close{width:var(--control-size);height:var(--control-size);display:flex;position:absolute;top:12px;right:8px}.sidebar .nav-item{font-size:var(--text-ui);padding:10px 11px}.sidebar .nav-caption{font-size:var(--text-caption);padding:0 11px}.sidebar .sidebar-workspace{font-size:var(--text-ui);gap:10px}.sidebar .sidebar-workspace small{font-size:var(--text-caption)}.sidebar-note{font-size:var(--text-caption);gap:10px;padding:12px}.sidebar-version,.sidebar-version>span:last-child{font-size:var(--text-caption)}.main-shell{margin-left:0}.mobile-menu{width:var(--control-size);height:var(--control-size);display:flex}.topbar{gap:10px;height:58px;padding:0 18px}.topbar-path{font-size:var(--text-caption);gap:9px}.path-root{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}.path-root .brand-icon{display:block}.path-root>span,.topbar-path>span:nth-child(3){display:none}.topbar-actions{gap:10px}.help-button{width:var(--control-size);margin:0}.new-label{display:none}}@media (max-width:540px){.topbar{padding:0 13px}.topbar-path strong{font-size:var(--text-caption)}.topbar-actions{gap:5px}.topbar-actions>.help-button{width:var(--control-size);margin-right:4px}}@media (min-width:1001px){.nav-item,.domain-nav{font-size:var(--text-ui)}}@media (max-width:540px){.topbar{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}}@media (max-width:760px){.sidebar{visibility:hidden}.sidebar.open{visibility:visible}}@media (max-height:850px){.sidebar-note{display:none}.sidebar-workspace{margin-block:24px 20px}.sidebar-version{padding-block:12px}}@media (max-height:500px){.sidebar{overflow-y:auto}.sidebar>nav{flex:none;overflow:visible}}@media (max-width:420px){.topbar-path>strong{display:none}.topbar-actions{margin-left:auto}.topbar .secondary-button{white-space:nowrap;flex-shrink:0}}.sidebar{padding-bottom:max(24px, env(safe-area-inset-bottom))}
@media (min-width:1550px){.library-main{padding-top:43px;padding-left:48px;padding-right:48px}.problem-row{min-height:86px}.problem-link h3{font-size:var(--text-body)}.problem-link>span{font-size:var(--text-caption)}.table-header,.problem-row{grid-template-columns:45px minmax(200px,1fr) 105px 88px 91px 36px}.row-tags>span{font-size:var(--text-caption)}.stats-row>div{padding:21px 28px}.stats-row{min-height:133px}.stats-row>div>span:first-child{font-size:var(--text-small)}.stat-note{font-size:var(--text-caption)}}@media (max-width:1230px){.library-main{padding:30px 26px 0}.stats-row>div{padding:17px}.stat-note{font-size:var(--text-caption)}.stats-row strong{font-size:25px}.table-header,.problem-row{grid-template-columns:32px minmax(180px,1fr) 69px 60px 65px 30px;gap:7px;padding:0 11px}.row-tags{display:none}.type-filters button{font-size:var(--text-ui);padding:8px 9px}.section-heading>.text-button{font-size:var(--text-caption)}.filter-top{gap:12px}.search-box{max-width:340px}}@media (max-width:1000px){.library-main{padding:25px 24px 0}.stats-row>div{padding:15px 12px}.stats-row>div>span:first-child{font-size:var(--text-caption);gap:5px}.stats-row strong{font-size:24px}.stat-note{white-space:normal;font-size:var(--text-caption);line-height:1.8}.stats-row{min-height:115px;margin-bottom:28px}.filter-top{flex-wrap:wrap}.search-box{flex-basis:100%;max-width:none}.type-filters{width:100%}.type-filters button{font-size:var(--text-ui);flex:1;padding:8px}.section-heading>.text-button{text-align:right;max-width:140px;line-height:1.8}.section-heading>.text-button svg:first-child{display:none}.table-header,.problem-row{grid-template-columns:26px minmax(160px,1fr) 63px 56px 30px;gap:6px;padding:0 9px}.table-header>span:nth-child(5),.problem-row>.row-time{display:none}.problem-link h3{font-size:var(--text-body)}.kind-label{font-size:var(--text-caption)}.badge{font-size:var(--text-caption);min-width:44px;padding:4px 5px}.problem-link>span{font-size:var(--text-caption)}.problem-row{min-height:77px}.select-filters{gap:5px}.select-filters select{font-size:var(--text-input);max-width:220px;padding-left:8px}.sort-select select{font-size:var(--text-input)}.library-bottom-note{font-size:var(--text-caption);gap:9px}.library-bottom-note .text-button{font-size:var(--text-caption);white-space:nowrap}.app-footer{font-size:var(--text-caption);padding-left:24px;padding-right:24px}}@media (max-width:760px){.primary-button.small{font-size:var(--text-caption);padding:7px 10px}.library-main{padding:25px 20px 0}.stats-row>div{padding:16px 13px}.stats-row strong{font-size:25px}.filter-top{flex-wrap:wrap}.search-box{flex-basis:auto;min-width:170px;max-width:300px}.type-filters{gap:2px;width:auto}.type-filters button{font-size:var(--text-ui);padding:8px 7px}.section-heading>.text-button{max-width:none;font-size:var(--text-caption)}.section-heading>.text-button svg:first-child{display:block}.table-header,.problem-row{grid-template-columns:27px minmax(170px,1fr) 66px 56px 30px;gap:7px;padding:0 12px}.problem-link h3{font-size:var(--text-body)}.problem-link>span,.library-bottom-note{font-size:var(--text-caption)}.app-footer{padding:26px 20px 18px}.page-title h1{font-size:26px}.timeline-item{gap:13px;padding:18px}.timeline-item h3{font-size:var(--text-ui)}.timeline-item>div>div{font-size:var(--text-caption)}.timeline-item>strong{font-size:17px}}@media (max-width:540px){.library-main{padding:23px 17px 0}.stats-row{grid-template-columns:1fr 1fr;margin-bottom:28px}.stats-row>div{min-height:116px;padding:17px 18px}.stats-row>div+div{border-left:0}.stats-row>div:nth-child(2n){border-left:1px solid var(--line)}.stats-row>div:nth-child(n+3){border-top:1px solid var(--line)}.stats-row>div>span:first-child{font-size:var(--text-caption)}.stats-row strong{font-size:28px}.stat-note{font-size:var(--text-caption)}.stats-row>div>span:first-child svg{width:15px}.section-heading{align-items:flex-start;gap:10px}.section-heading h2{font-size:17px}.section-heading p{font-size:var(--text-caption);margin-top:7px}.section-heading>.text-button{text-align:right;max-width:123px;font-size:var(--text-caption);padding-top:0;line-height:1.8}.section-heading>.text-button svg:first-child{display:none}.filter-top{flex-wrap:wrap;gap:12px}.search-box{flex-basis:100%;max-width:none;min-height:48px}.search-box input{font-size:var(--text-input)}.type-filters{width:100%;padding:4px}.type-filters button{font-size:var(--text-ui);padding:8px 5px}.filter-bottom{align-items:flex-start;gap:7px}.select-filters{flex:1;gap:6px}.select-filters select{font-size:var(--text-input);max-width:220px;min-height:44px;padding:6px 23px 6px 8px}.sort-select{margin-top:1px}.sort-select select{font-size:var(--text-input);padding:6px 16px 6px 0}.sort-select>svg{width:10px}.clear-filters{font-size:var(--text-caption);padding:5px 0}.table-header{display:none}.problem-row{grid-template-rows:auto auto;grid-template-columns:20px minmax(0,1fr) max-content 44px;gap:6px 7px;min-height:104px;padding:15px 11px;position:relative}.problem-status{grid-area:1/1;align-self:start;padding-top:3px}.empty-status{width:13px;height:13px}.problem-link{grid-area:1/2/auto/4;padding:0}.problem-link h3{font-size:var(--text-body);white-space:normal;letter-spacing:-.25px;line-height:1.65}.problem-link>span{font-size:var(--text-caption);gap:5px;margin-top:7px}.problem-row>.kind-label{font-size:var(--text-caption);grid-area:2/2;width:max-content;padding-top:2px}.problem-row>.badge{font-size:var(--text-caption);grid-area:2/3;justify-self:end;gap:5px;min-width:38px;padding:2px 5px;position:static}.problem-row>.badge .level-bars{height:8px}.problem-row>.badge .level-bars i{width:2px;height:3px}.problem-row>.badge .level-bars i:nth-child(2){height:5px}.problem-row>.badge .level-bars i:nth-child(3){height:8px}.bookmark-button{width:var(--control-size);height:var(--control-size);grid-area:1/4;align-self:start}.table-footer{padding-top:12px}.table-footer .pagination{gap:8px}.library-bottom-note{font-size:var(--text-caption);align-items:flex-start;margin-top:22px;line-height:1.9}.library-bottom-note>span{align-items:flex-start;gap:5px;max-width:210px}.library-bottom-note>span svg{flex-shrink:0;margin-top:2px}.library-bottom-note>.text-button{font-size:var(--text-caption);gap:4px}.library-bottom-note>.text-button svg{width:11px}.app-footer{gap:9px;padding:26px 17px 18px}.app-footer>.mono{font-size:var(--text-caption);letter-spacing:.2px}.app-footer>span:last-child{font-size:var(--text-caption);gap:6px}.primary-button.small{font-size:var(--text-caption);gap:5px}.primary-button.small>svg{width:13px}.page-title{padding:8px 0 24px}.page-title h1{letter-spacing:-1.1px;margin-top:11px;font-size:25px}.page-title p{font-size:var(--text-small);line-height:1.9}.page-title .eyebrow{font-size:var(--text-caption)}.history-stats>div{min-height:102px}.history-section>.section-heading>.muted{font-size:var(--text-caption)}.timeline-item{gap:9px;padding:17px 12px}.timeline-icon{width:var(--control-size);height:29px}.timeline-icon svg{width:17px}.timeline-item>div>div{font-size:var(--text-caption);flex-direction:column;align-items:flex-start;gap:5px}.timeline-item h3{font-size:var(--text-small);line-height:1.7}.timeline-item>div>p{font-size:var(--text-caption);max-width:200px}.timeline-item>svg{display:none}.timeline-item>strong{font-size:var(--text-body)}.empty-state{padding:48px 19px}.empty-state h1,.empty-state h2{font-size:18px}.empty-state h3{font-size:var(--text-body)}.empty-state p{font-size:var(--text-caption);line-height:1.9}}@media (prefers-reduced-motion:reduce){.blink{opacity:1}}@media (min-width:1001px){.problem-link h3{font-size:var(--text-body)}.problem-link>span{font-size:var(--text-caption)}.type-filters button{font-size:var(--text-ui)}.search-box input,.select-filters select,.sort-select select{font-size:var(--text-input)}.table-header{font-size:var(--text-caption)}.kind-label{font-size:var(--text-small)}.row-tags>span,.stat-note{font-size:var(--text-caption)}.stats-row>div>span:first-child,.section-heading p{font-size:var(--text-small)}}@media (max-width:540px){.stats-row>div>span:first-child{font-size:var(--text-ui)}.stat-note{font-size:var(--text-caption)}.stats-row strong small{font-size:var(--text-small)}.section-heading p{font-size:var(--text-ui)}.section-heading>.text-button{font-size:var(--text-caption)}.search-box input{font-size:var(--text-input)}.type-filters button{font-size:var(--text-ui)}.select-filters select{font-size:var(--text-input);max-width:143px;height:33px}.sort-select select{font-size:var(--text-input)}.problem-row{row-gap:10px;min-height:119px;padding-top:16px;padding-bottom:18px}.problem-link h3{font-size:var(--text-body)}.problem-link>span{font-size:var(--text-caption);line-height:1.6}.problem-row>.kind-label{font-size:var(--text-caption)}.problem-row>.badge{font-size:var(--text-caption);min-width:42px;padding:3px 5px;bottom:17px;left:104px}.badge,.table-footer{font-size:var(--text-caption)}.library-bottom-note{font-size:var(--text-caption);flex-direction:column;gap:9px}.library-bottom-note>span{align-items:center;max-width:none}.library-bottom-note>.text-button{font-size:var(--text-caption);align-self:flex-end}.empty-state p{font-size:var(--text-ui)}}@media (max-width:760px){.filter-top,.filter-bottom{flex-wrap:wrap}.search-box{flex-basis:100%;max-width:none}.select-filters{flex-basis:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.select-filters>label{min-width:0}.select-filters select{width:100%;max-width:none;font-size:var(--text-input)}.sort-select{margin-left:auto}.sort-select select{min-height:44px}.type-filters{width:100%}.type-filters button{white-space:normal;min-height:44px}.section-heading>.text-button{max-width:150px}.library-bottom-note{flex-wrap:wrap}}@media (max-width:360px){.section-heading{flex-wrap:wrap}.section-heading>.text-button{text-align:left;max-width:none}}
@media (min-width:1550px){.workspace-heading h1{font-size:28px}.practice-main{padding:30px 35px 0}.monaco-shell{height:500px}.problem-content{min-height:730px}.scenario,.requirements li>p{font-size:var(--text-body)}}@media (max-width:1230px){.workbench{grid-template-columns:minmax(280px,.9fr) minmax(340px,1.1fr)}.problem-content{padding:22px 19px}.practice-main{padding:23px 20px 0}.problem-tabs button{font-size:var(--text-ui);gap:4px;padding:0 6px}.problem-tabs button svg{width:13px}.workspace-heading h1{font-size:21px}.review-action>span kbd{font-size:var(--text-caption);padding:1px 3px}.review-action .primary-button{font-size:var(--text-caption);gap:6px;padding:9px}.review-action{gap:5px;padding:11px}.review-action>span,.review-action>span>small,.editor-topbar>span{font-size:var(--text-caption)}.editor-topbar{padding:0 11px}.editor-topbar>div{gap:6px}.console-heading>span{font-size:var(--text-caption)}}@media (max-width:1000px){.workbench{grid-template-columns:1fr}.problem-pane{border-right:0;border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#494949)}.problem-content{min-height:290px;max-height:430px}.problem-tabs button{font-size:var(--text-ui);flex:0 auto;padding:0 20px}.workspace-heading h1{font-size:22px}.monaco-shell{height:450px}.editor-topbar>span{font-size:var(--text-caption)}.review-action .primary-button{font-size:var(--text-ui);padding:10px 15px}.review-action>span kbd{font-size:var(--text-caption)}.review-action{padding:14px}.review-action>span>small,.console-heading>span{font-size:var(--text-caption)}.focus-mode .workbench{grid-template-columns:minmax(300px,1fr) minmax(360px,1.2fr)}.focus-mode .problem-content{min-height:720px;max-height:calc(100vh - 220px)}.focus-mode .problem-pane{border-right:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#494949);border-bottom:0}.focus-mode .problem-tabs button{font-size:var(--text-ui);padding:0 9px}}@media (max-width:760px){.practice-main{padding:20px 18px 0}.workspace-heading h1{font-size:22px}.workspace-heading{margin:18px 0 21px}.workspace-id{font-size:var(--text-caption)}.problem-content{min-height:280px;max-height:420px;padding:24px}.problem-tabs{padding-left:10px}.scenario{font-size:var(--text-body)}.problem-tabs button{padding:0 18px}.focus-mode .workbench{grid-template-columns:1fr}.focus-mode .problem-content{min-height:280px;max-height:420px}.focus-mode .problem-pane{border-right:0}}@media (max-width:540px){.practice-main,.focus-mode .practice-main{padding:17px 12px 0}.workspace-breadcrumb{font-size:var(--text-caption);gap:7px}.workspace-breadcrumb a>svg{width:13px}.workspace-id{display:none}.workspace-heading{align-items:flex-start;gap:10px;margin:20px 0 18px}.workspace-heading h1{letter-spacing:-.7px;margin-top:10px;font-size:20px;line-height:1.6}.workspace-heading-actions{flex-direction:column;gap:6px}.workspace-heading-actions .icon-button{width:var(--control-size);height:var(--control-size)}.workspace-heading-actions .icon-button svg{width:16px}.problem-meta{font-size:var(--text-caption);gap:8px}.problem-meta>.kind-label,.problem-meta>span:last-child{font-size:var(--text-caption)}.problem-meta>span:last-child svg{width:11px}.workbench{border-radius:0}.problem-tabs{min-height:48px;padding:0 5px}.problem-tabs button,.focus-mode .problem-tabs button{font-size:var(--text-ui);flex:1;gap:5px;padding:0 8px}.problem-tabs button svg{width:14px}.problem-tabs small{font-size:var(--text-caption)}.problem-content{min-height:290px;max-height:440px;padding:22px 18px}.scenario{font-size:var(--text-body);line-height:1.95}.requirements li>p{font-size:var(--text-body);line-height:1.9}.section-marker>span{font-size:var(--text-small)}.example-box{padding:12px}.example-box code,.example-box p{font-size:var(--text-ui)}.problem-tags{font-size:var(--text-caption)}.help-nudge{font-size:var(--text-caption);padding:11px}.editor-topbar{min-height:48px;padding:0 11px}.editor-topbar>span,.save-indicator{font-size:var(--text-caption)}.editor-topbar>div{gap:4px}.monaco-shell,.focus-mode .monaco-shell{height:390px}.editor-filebar>span{font-size:var(--text-caption);padding:10px 13px}.editor-filebar strong{font-size:var(--text-caption)}.editor-statusbar{font-size:var(--text-caption);padding:0 10px}.editor-statusbar>span{gap:8px}.editor-statusbar>span:first-child>span{display:none}.review-action{flex-wrap:wrap;gap:7px;padding:11px 10px}.review-action>span{font-size:var(--text-caption)}.review-action>span kbd{font-size:var(--text-caption);padding:1px 3px}.review-action>span>small{font-size:var(--text-caption)}.review-action .primary-button{font-size:var(--text-caption);gap:6px;min-height:38px;padding:9px 11px}.review-action .primary-button>svg{width:13px}.console-heading{font-size:var(--text-caption);padding:0 12px}.console-heading>span,.console-heading strong{font-size:var(--text-caption)}.console-idle{padding:21px 16px}.console-idle>.mono{font-size:var(--text-caption)}.console-idle p{font-size:var(--text-body)}.review-result{padding:17px 15px}.review-result-title strong{font-size:var(--text-small)}.review-result-title>b{font-size:22px}.review-result-title>span>svg{width:19px}.review-result>p,.review-criteria p{font-size:var(--text-body)}.review-result-title{gap:7px}.solution-locked{padding:35px 0}.solution-locked p,.solution-locked small{font-size:var(--text-caption)}.problem-content h2{font-size:17px}.problem-content>.eyebrow,.problem-content>.muted{font-size:var(--text-caption)}.hint-card p{font-size:var(--text-body)}.tab-empty small{font-size:var(--text-caption)}}@media (min-width:1001px){.problem-tabs button{font-size:var(--text-ui)}.scenario,.requirements li>p{font-size:var(--text-body)}.example-box code,.example-box p{font-size:var(--text-ui)}.review-criteria p,.review-result>p{font-size:var(--text-body)}.review-criteria strong{font-size:var(--text-small)}.console-idle p{font-size:var(--text-body)}.console-idle small{font-size:var(--text-caption)}}@media (max-width:540px){.scenario,.requirements li>p{font-size:var(--text-body)}.section-marker>span,.example-box code,.example-box p{font-size:var(--text-ui)}.help-nudge{font-size:var(--text-small)}.problem-content>.muted{font-size:var(--text-ui)}.problem-tabs button,.focus-mode .problem-tabs button{font-size:var(--text-ui);gap:5px;padding:0 6px}.hint-card p{font-size:var(--text-body)}.solution-locked p{font-size:var(--text-ui)}.solution-locked small{font-size:var(--text-caption)}.solution-code{font-size:var(--text-small)}.review-result>p,.review-criteria p{font-size:var(--text-body)}.review-criteria strong{font-size:var(--text-small)}.review-result-title strong{font-size:var(--text-ui)}.console-idle p{font-size:var(--text-body)}.console-idle small{font-size:var(--text-caption)}.review-action .primary-button{font-size:var(--text-ui)}.review-improvements ul{font-size:var(--text-small)}.problem-meta,.problem-meta>.kind-label,.problem-meta>span:last-child{font-size:var(--text-caption)}}@media (max-width:760px){.editor-filebar{padding-right:0}.editor-filebar>span{border-right:0;padding:10px 12px}.editor-filebar>div{border-top:1px solid var(--line);flex-basis:100%;justify-content:flex-end;padding:4px 8px}.editor-filebar .icon-button{width:var(--control-size);height:var(--control-size)}.editor-topbar{flex-wrap:wrap;gap:8px;height:auto;padding-block:6px}.console-heading{height:auto;padding-block:10px}.review-action>.primary-button{min-height:44px}}
@media (max-width:1230px){.toast{left:calc(50% + 97px)}}@media (max-width:1000px){.toast{left:calc(50% + 90px)}}@media (max-width:760px){.sidebar-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:39;background:#0008;display:block;position:fixed;inset:0}.toast{left:50%}}@media (max-width:540px){.modal{border-radius:0;max-width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}.modal-heading{padding:10px 14px}.modal-heading>.mono{font-size:var(--text-caption)}.generator-modal form{padding:21px 19px}.generator-intro h2{font-size:20px;line-height:1.5}.generator-intro p{font-size:var(--text-body)}.generator-intro>.eyebrow{font-size:var(--text-caption);letter-spacing:1px}.generator-fields{margin-top:21px}.form-row{gap:10px}.form-row label{font-size:var(--text-caption)}.form-row select{font-size:var(--text-input);height:39px;padding-left:8px}.difficulty-options{gap:7px}.difficulty-options>button{padding:11px 9px}.difficulty-options strong{font-size:var(--text-ui)}.difficulty-options strong span,.difficulty-options small,.topic-label{font-size:var(--text-caption)}.topic-label textarea{font-size:var(--text-input);padding:10px}.topic-suggestions{gap:5px}.topic-suggestions>button{font-size:var(--text-caption);padding:5px 6px}.generation-note{font-size:var(--text-caption);align-items:flex-start;margin:19px 0 16px}.generation-note>svg{flex-shrink:0;width:13px;margin-top:2px}.generator-intro .terminal-icon{width:39px;height:39px;margin-bottom:15px}.confirm-content{padding:23px 20px}.confirm-content h2{font-size:19px}.confirm-content>p{font-size:var(--text-body)}.modal-buttons{flex-wrap:wrap;gap:8px}.modal-buttons button{font-size:var(--text-caption);padding:9px 12px}.settings-content,.help-content{padding:23px 20px}.settings-content h2,.help-content h2{margin-bottom:25px;font-size:20px}.settings-content .eyebrow,.help-content .eyebrow,.settings-info,.settings-info strong{font-size:var(--text-caption)}.settings-content>p{font-size:var(--text-body)}.settings-content>.secondary-button{font-size:var(--text-caption)}.help-content li strong{font-size:var(--text-small)}.help-content li p{font-size:var(--text-body)}.shortcut-help{font-size:var(--text-caption);gap:14px}.shortcut-help kbd{font-size:var(--text-caption)}.toast{font-size:var(--text-small);width:max-content;min-width:250px;max-width:calc(100vw - 25px);padding:10px 10px 10px 13px;bottom:16px}}.settings-content>.import-note{font-size:var(--text-caption);text-align:center;color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#919191);margin:10px 0 0;line-height:1.8}@media (max-width:540px){.generator-intro p{font-size:var(--text-body)}.form-row label,.field-label,.topic-label{font-size:var(--text-ui)}.form-row select{font-size:var(--text-input)}.segmented>button{font-size:var(--text-ui)}.difficulty-options strong span{font-size:var(--text-caption);white-space:normal;min-height:34px;line-height:1.7}.difficulty-options small{font-size:var(--text-caption)}.topic-label textarea{font-size:var(--text-input)}.topic-suggestions>button{font-size:var(--text-caption)}.generation-note{font-size:var(--text-small)}.settings-content>p{font-size:var(--text-body)}.settings-info,.settings-info strong,.settings-content>.secondary-button{font-size:var(--text-ui)}.help-content li strong,.help-content li p{font-size:var(--text-body)}.settings-content>.import-note{font-size:var(--text-caption)}.confirm-content>p{font-size:var(--text-body)}}
.topbar,.editor-loading{background:var(--black)}.topbar{-webkit-backdrop-filter:none;backdrop-filter:none}.modal-heading{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#191c22);color:var(--text);border-bottom-color:var(--line)}.modal-heading>.mono,.modal-heading .icon-button{color:var(--text)}.modal-heading .icon-button:hover{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#30343c);color:var(--text)}.secondary-button{background:var(--surface);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#48515f);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#d0d0d0)}.secondary-button:hover:not(:disabled){background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#242424)}.nav-item.active{background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#182333);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#344b68);color:var(--action-soft)}.nav-item.active svg,.nav-item.active small{color:var(--action-soft)}.domain-active{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#242424);color:var(--white)}.difficulty-options>button.selected{background:var(--lightningcss-light,var(--light-raised))var(--lightningcss-dark,#242424)}.difficulty-options>button.selected strong{color:var(--white)}.problem-row,.modal,.review-console{background:var(--surface)}.problem-row:hover{background:var(--surface-hover)}.editor-topbar,.editor-filebar,.editor-statusbar,.review-action{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#101010)}.monaco-shell,.solution-code,.submitted-code pre,.font-preview{background:var(--black)}.hint-card{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#141414);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#555)}.hint-card.locked{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#080808);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#333)}.inline-error{border-left-width:3px}.modal::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000c}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:var(--action)}::selection{background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#244363);color:var(--white)}.primary-button{background:var(--action);border-color:var(--action);color:var(--lightningcss-light,var(--light-on-accent))var(--lightningcss-dark,#080808)}.primary-button:hover:not(:disabled){background:var(--action-soft);border-color:var(--action-soft)}.secondary-button:hover:not(:disabled){border-color:var(--action)}.text-button:hover:not(:disabled),.icon-button.active{color:var(--action)}.domain-active{border-left-color:var(--action)}.domain-active svg{color:var(--action)}.type-filters button.selected,.segmented>button.selected{background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#152334);color:var(--action-soft)}.type-filters button.selected:hover{color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#dbeafe)}.problem-tabs button[aria-selected=true]{border-bottom-color:var(--action);color:var(--action-soft)}.success-text,.problem-status.solved{color:var(--success)}.warning-text,.problem-status.in-progress{color:var(--warning)}.status-dot{background:var(--success)}.status-dot.waiting{background:var(--warning)}.eyebrow .status-dot{background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#a0a0a0)}.stat-progress i{background:var(--success)}.kind-implementation{color:var(--action)}.kind-debugging{color:var(--warning)}.kind-refactoring{color:var(--ai)}.level-하{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#101e18);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#2d5443);color:var(--success)}.level-중{background:var(--lightningcss-light,var(--light-amber-soft))var(--lightningcss-dark,#211b10);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#5b4826);color:var(--warning)}.level-상{background:var(--lightningcss-light,var(--light-red-soft))var(--lightningcss-dark,#251515);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#603737);color:var(--danger)}.ai-tag{color:var(--ai);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#504369);background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#19151f)}.bookmark-button.active,.workspace-heading-actions .icon-button.active{color:var(--warning)}.difficulty-options>button[data-difficulty=하]{--level-color:var(--success)}.difficulty-options>button[data-difficulty=중]{--level-color:var(--warning)}.difficulty-options>button[data-difficulty=상]{--level-color:var(--danger)}.difficulty-options>button strong,.difficulty-options>button.selected strong{color:var(--level-color)}.difficulty-options>button.selected{border-color:var(--level-color)}.difficulty-options strong span{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b0b0b0)}.hint-card:not(.locked){border-left:3px solid var(--action)}.hint-card:not(.locked) .mono{color:var(--action)}.generation-progress{background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#131c29);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#344b68);color:var(--action-soft)}.generation-progress>div>span{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b0b0b0)}.inline-error{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#211314);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#704044);color:var(--lightningcss-light,var(--light-red))var(--lightningcss-dark,#ffb4b4)}.inline-warning,.review-stale{background:var(--lightningcss-light,var(--light-amber-soft))var(--lightningcss-dark,#211c12);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#66502d);color:var(--warning)}.review-stale{color:var(--warning)!important}.save-indicator.failed{color:var(--danger)}.save-indicator .lucide-check{color:var(--success)}.font-setting input{accent-color:var(--action)}.toast>svg{color:var(--success)}
.brand-logo small{font-family:var(--sans);font-size:var(--text-caption);letter-spacing:0}.draft-notice,.editor-notice{background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#131c29);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#344b68);color:var(--action-soft);font-size:var(--text-ui);align-items:center;gap:10px;padding:12px 16px;line-height:1.7;display:flex}.draft-notice{flex-wrap:wrap;margin-bottom:16px}.draft-notice>span{flex:1;min-width:150px}.draft-notice>svg{flex-shrink:0}.editor-notice{font-size:var(--text-small);padding:7px 12px}.editor-notice>span{flex:1}.editor-notice button{color:inherit;cursor:pointer;background:0 0;border:0;padding:4px}.review-strengths{color:var(--success);font-size:var(--text-ui);margin:20px 0;line-height:1.9}.review-strengths ul{padding-left:18px}.submitted-code>.secondary-button{margin:12px 0}.reauth-field{font-size:var(--text-ui);flex-direction:column;gap:8px;margin:20px 0;display:flex}.reauth-field input{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#080808);color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#eee);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#606060);font-size:var(--text-input);padding:12px}.training-overview{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);justify-content:space-between;align-items:center;gap:24px;margin:24px 0 32px;padding:24px;display:flex}.training-overview h2{margin:10px 0;font-size:20px}.training-overview p{font-size:var(--text-ui);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b0b0b0);margin:8px 0}.training-overview small{font-size:var(--text-caption);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#909090)}.training-week{flex-shrink:0;gap:7px;display:flex}.training-week>span{flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex}.training-week svg{box-sizing:content-box;border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#333);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#151515);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#454545);padding:12px}.training-week>.active svg{color:var(--success);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#101e18);border-color:var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#2d5443)}.training-week small{text-align:center;max-width:48px;line-height:1.5}@media (max-width:900px){.training-overview{flex-direction:column;align-items:flex-start}.training-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;width:100%;display:grid}.training-week svg{box-sizing:border-box;width:100%;max-width:40px;height:auto;padding:8px}.editor-filebar>span{min-width:0}.editor-filebar>span>strong{text-overflow:ellipsis;max-width:110px;overflow:hidden}.editor-filebar>div{flex-shrink:0;gap:2px}.editor-filebar .icon-button{width:var(--control-size)}}.toast-error>svg{color:var(--danger)}
.usage-panel{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:20px 0;padding:18px}.usage-panel h3{font-size:var(--text-body);margin:0 0 15px}.usage-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.usage-grid>div{gap:8px;display:grid}.usage-grid strong{font-size:22px}.usage-grid small{font-size:var(--text-small);color:var(--muted);font-weight:400}.usage-panel p{font-size:var(--text-small);line-height:1.8}.quality-page{max-width:940px;margin:auto;padding:48px 28px 80px}.quality-page header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:60px;display:flex}.quality-page h1{letter-spacing:-1.5px;margin:16px 0;font-size:clamp(30px,5vw,46px);line-height:1.25}.quality-page h2{margin:0 0 18px;font-size:22px}.quality-page p,.quality-page li{font-size:var(--text-reading);color:var(--muted);line-height:1.9}.quality-page section{border-top:1px solid var(--line);margin-top:40px;padding-top:28px}.quality-metrics{grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0;display:grid}.quality-metrics>div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);padding:24px 18px}.quality-metrics strong{font-size:32px;font-family:var(--mono);margin:14px 0 8px;display:block}.quality-metrics small{color:var(--muted);line-height:1.5}.quality-page a{text-underline-offset:4px}@media (max-width:640px){.quality-page{padding:24px 20px 60px}.quality-page header{margin-bottom:36px}.quality-metrics{grid-template-columns:1fr}.quality-metrics>div{padding:18px}.app-footer{flex-wrap:wrap;gap:14px}}
.account-page{max-width:1024px;margin:0 auto;padding:32px 32px 80px}.account-page>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:64px;display:flex}.account-page>header .brand-logo{gap:10px;padding:0}.account-page .text-button{align-items:center;gap:7px;display:inline-flex}.auth-card{background:var(--surface);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#303036);border-radius:var(--radius-panel);border-color:var(--line);max-width:550px;margin:0 auto;overflow:hidden}.account-terminal-bar{border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#2b2b30);background:var(--surface-raised);align-items:center;gap:7px;padding:14px 20px;display:flex}.account-terminal-bar>span{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#666);border-radius:50%;width:7px;height:7px}.account-terminal-bar small{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a0a0aa);font-family:var(--mono);font-size:var(--text-caption);letter-spacing:1px;margin-left:auto}.auth-card-content{padding:38px}.account-page h1{letter-spacing:-1.3px;margin:12px 0 16px;font-size:clamp(25px,4vw,34px);line-height:1.5}.auth-card-content>p,.auth-public-note p{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a8a8b2);font-size:var(--text-body);line-height:1.85}.oauth-providers{gap:12px;margin:28px 0 20px;display:grid}.oauth-button{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#18181b);justify-content:flex-start;width:100%;min-height:49px}.oauth-button>span{text-align:left;flex:1}.oauth-button small{font-size:var(--text-small)}.auth-card-content .auth-privacy{font-size:var(--text-small);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9999a5)}.auth-privacy a,.privacy-copy a{color:var(--lightningcss-light,var(--light-blue))var(--lightningcss-dark,#9abaff);text-underline-offset:3px;text-decoration:underline}.auth-public-note{text-align:center;max-width:520px;margin:30px auto 0;padding:0 20px}.auth-public-note strong{font-size:var(--text-body)}.profile-stats{border-bottom:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#2b2b30);gap:40px;margin-bottom:24px;padding:25px 0;display:flex}.profile-stats>div{gap:8px;display:grid}.profile-stats strong{font:600 30px/1 var(--mono)}.profile-stats span{font-size:var(--text-ui);color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a8a8b2)}.profile-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.profile-panel{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#101012);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#303036);border-radius:8px;padding:25px}.profile-panel h2{font-size:var(--text-reading);margin:0 0 22px}.profile-panel label{font-size:var(--text-body);gap:9px;margin-bottom:20px;display:grid}.profile-panel input,.profile-panel textarea{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#09090b);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#393941);width:100%;color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#e7e7ee);font:inherit;resize:vertical;font-size:var(--text-input);border-radius:5px;padding:11px 12px}.profile-panel label small{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#9696a1);text-align:right}.profile-saved{color:var(--lightningcss-light,var(--light-green))var(--lightningcss-dark,#8dd7a8);font-size:var(--text-ui);align-items:center;gap:6px;display:flex}.profile-content .usage-panel{margin-top:24px}.profile-content>.muted{overflow-wrap:anywhere}.profile-signout{align-items:center;gap:24px;margin-top:30px;display:flex}.privacy-copy{max-width:760px;margin:auto}.privacy-copy h2{margin-top:36px;font-size:19px}.privacy-copy p{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b5b5bf);font-size:var(--text-body);line-height:1.9}.generation-allowance{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#353544);font-size:var(--text-ui);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin:18px 0;padding:12px 15px;display:flex}.generation-allowance strong{color:var(--lightningcss-light,var(--light-blue))var(--lightningcss-dark,#b6caff)}.generation-allowance small{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#a8a8b2)}.generator-login{padding:24px}.generator-login h2{font-size:24px;line-height:1.5}.generator-login p{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#aaaab5);font-size:var(--text-body);line-height:1.8}.generator-login .primary-button{width:100%;margin-top:20px}.sidebar-workspace a{color:inherit}@media (max-width:640px){.account-page{padding:22px 20px 50px}.account-page>header{margin-bottom:35px}.auth-card-content{padding:28px 22px}.profile-grid{grid-template-columns:1fr}.profile-panel{padding:22px}.profile-stats{gap:25px}.profile-signout{flex-wrap:wrap;gap:16px}.generation-allowance{flex-wrap:wrap}}.provider-icon{object-fit:contain;flex-shrink:0}.provider-google{background:var(--lightningcss-light,var(--light-hover))var(--lightningcss-dark,#fff);border-radius:50%}.guest-login{border:1px solid var(--line);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#111418);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 24px;padding:18px 22px;display:flex}.guest-login-link{color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#f4f4f5);align-items:center;gap:12px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.guest-login-link:hover{text-underline-offset:4px;text-decoration:underline}.guest-login-providers,.guest-login-providers>span{align-items:center;gap:8px;display:inline-flex}.guest-login-providers{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#b8bec8);gap:18px;font-size:13px}.learn-progress+.guest-login{margin-bottom:24px}.generator-login .guest-login,.project-guest .guest-login{margin:20px 0}@media (max-width:480px){.guest-login{padding:16px}.guest-login-link{font-size:14px}}
.handoff-page{max-width:1200px;margin:auto;padding:32px}.handoff-page>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.handoff-intro{max-width:800px;padding:20px 0 28px}.handoff-intro h1{letter-spacing:-1.5px;margin:18px 0;font-size:clamp(28px,3.5vw,40px);line-height:1.2}.handoff-intro p,.handoff-quality p,.handoff-progress p,.handoff-guide p{line-height:1.8}.handoff-intro ol{flex-wrap:wrap;gap:12px;margin:24px 0;padding-left:20px;display:flex}.handoff-intro li{color:var(--handoff-accent);margin-right:26px}.handoff-progress,.handoff-quality,.handoff-guide{border:1px solid var(--handoff-border);background:var(--handoff-surface);border-radius:8px;margin-bottom:24px;padding:24px}.handoff-progress h2,.handoff-quality h2,.handoff-guide h2{margin:8px 0;font-size:20px}.handoff-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;margin-bottom:32px;display:grid}.handoff-card{background:var(--handoff-card);border:1px solid var(--handoff-border);border-radius:var(--radius-panel);flex-direction:column;align-items:flex-start;gap:16px;min-width:0;padding:28px;display:flex}.handoff-card h2{margin:0;font-size:21px}.handoff-card p{overflow-wrap:anywhere;margin:0;line-height:1.7}.handoff-card .primary-button{margin-top:auto}.handoff-skill{color:var(--handoff-accent);font-size:var(--text-body)}.handoff-feedback{border-top:1px solid var(--handoff-border);width:100%;font-size:var(--text-body);padding-top:16px}.handoff-feedback p,.handoff-feedback details{margin:10px 0}.handoff-feedback summary{cursor:pointer;color:var(--handoff-accent)}.handoff-feedback ul{padding-left:18px}.handoff-guide nav{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.handoff-guide small,.handoff-fields small{color:var(--handoff-help);line-height:1.6}.handoff-fields{border-bottom:1px solid var(--handoff-border);gap:20px;padding:20px;display:grid}.handoff-fields label{flex-direction:column;gap:8px;min-width:0;display:flex}.handoff-fields strong{color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#e4e6eb);font-size:var(--text-body)}.handoff-fields label>span{font-size:var(--text-body);color:var(--handoff-muted);line-height:1.6}.handoff-fields textarea{resize:vertical;background:var(--handoff-input);width:100%;min-height:90px;color:var(--lightningcss-light,var(--light-text))var(--lightningcss-dark,#e5e7ed);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#454a54);line-height:1.7;font:inherit;font-size:var(--text-input);border-radius:4px;padding:12px}.handoff-fields textarea:focus-visible,.handoff-page a:focus-visible,.handoff-guide button:focus-visible{outline:2px solid var(--handoff-focus);outline-offset:3px}.draft-comparison>div{min-width:0}.draft-comparison .handoff-fields{padding:0}@media (max-width:700px){.handoff-page{padding:20px 16px}.handoff-grid{grid-template-columns:1fr}.handoff-intro{padding-top:36px}.handoff-card,.handoff-progress,.handoff-guide{padding:18px}.handoff-fields{padding:16px}.handoff-page>header .brand-logo{font-size:var(--text-reading)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.handoff-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0;display:grid}.handoff-metrics dt{font-size:var(--text-body);color:var(--handoff-muted);line-height:1.6}.handoff-metrics dd{margin:8px 0 0;font-size:28px}.handoff-next-reason{font-size:var(--text-body);color:var(--handoff-muted)}.handoff-measurement summary,.handoff-original summary{cursor:pointer;color:var(--handoff-accent);line-height:1.8}.handoff-measurement p{font-size:var(--text-body)}.handoff-exercise-links{flex-wrap:wrap;gap:14px;margin-top:auto;display:flex}.handoff-original{margin:16px 0}.handoff-original pre{background:var(--handoff-input);max-height:320px;font-size:var(--text-body);padding:16px;line-height:1.8;overflow:auto}.handoff-readiness{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#151a20);border-top:1px solid var(--handoff-border);padding:18px 20px}.handoff-readiness p{font-size:var(--text-body);color:var(--handoff-muted);margin:8px 0;line-height:1.7}.handoff-readiness button{margin:4px 16px 4px 0}.handoff-fields textarea::placeholder{color:var(--handoff-placeholder)}@media (max-width:700px){.handoff-metrics{grid-template-columns:1fr;gap:12px}.handoff-metrics>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.handoff-metrics dd{margin:0;font-size:22px}}.handoff-export{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 20px;display:flex}.handoff-export small{color:var(--handoff-help);font-size:var(--text-ui)}
.learning-lab{border:1px solid var(--line);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#0b0b0b);margin-bottom:16px}.lab-intro{color:var(--muted);font-size:var(--text-ui);border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:18px 22px;display:flex}.lab-intro .eyebrow{color:var(--action)}.lab-steps{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.lab-steps button{color:var(--muted);border:0;border-right:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;justify-content:flex-start;align-items:center;gap:12px;padding:20px 18px;display:flex}.lab-steps button:last-child{border-right:0}.lab-steps button[aria-current]{background:var(--lightningcss-light,var(--light-canvas))var(--lightningcss-dark,#191d24);color:var(--text);box-shadow:inset 0 -2px var(--action)}.lab-step-number{border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#555);width:26px;height:26px;font-size:var(--text-ui);flex-shrink:0;place-items:center;display:grid}.lab-steps button[aria-current] .lab-step-number{border-color:var(--action);color:var(--action)}.lab-steps strong{font-size:var(--text-body);font-weight:600}.lab-steps small{font-size:var(--text-small);color:var(--muted);margin-top:5px;line-height:1.6;display:block}.lab-stage-header{padding:26px 24px 18px}.lab-stage-header h2{margin:0 0 10px;scroll-margin-top:24px;font-size:20px}.lab-stage-header p{font-size:var(--text-body);color:var(--muted);margin:0;line-height:1.8}.lab-prediction-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:24px;padding:0 24px 24px;display:grid}.lab-source{border:1px solid var(--line);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#070707);min-width:0}.lab-source-title{color:var(--muted);font-size:var(--text-small);border-bottom:1px solid var(--line);justify-content:space-between;padding:12px 16px;display:flex}.lab-source pre,.lab-test-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:var(--text-ui);margin:0;padding:16px;overflow:auto}.lab-source details{border-top:1px solid var(--line)}.lab-source summary{color:var(--action);font-size:var(--text-ui);cursor:pointer;padding:12px 16px}.lab-source>p{font-size:var(--text-ui);color:var(--muted);padding:0 16px 16px;line-height:1.8}.lab-prediction{flex-direction:column;gap:12px;min-width:0;display:flex}.lab-prediction fieldset{border:0;min-width:0;margin:0;padding:0}.lab-prediction legend{font-size:var(--text-reading);margin-bottom:14px;padding:0;font-weight:600;line-height:1.8}.lab-choice{border:1px solid var(--line);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#131313);cursor:pointer;font-size:var(--text-body);align-items:center;gap:10px;margin-bottom:8px;padding:13px;line-height:1.6;display:flex}.lab-choice.selected{border-color:var(--action);background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#18222e)}.lab-choice input{accent-color:var(--action);flex-shrink:0;width:16px;height:16px}.lab-prediction>label{font-size:var(--text-body);margin-top:4px}.lab-prediction textarea{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#0b0b0b);color:var(--text);border:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#555);font:inherit;font-size:var(--text-input);resize:vertical;width:100%;min-height:95px;padding:12px;line-height:1.8}.lab-prediction textarea::placeholder{color:var(--lightningcss-light,var(--light-muted))var(--lightningcss-dark,#929292)}.lab-prediction small,.lab-coach>small,.lab-tests>small{color:var(--muted);line-height:1.8;font-size:var(--text-small);display:block}.lab-prediction .primary-button{align-self:flex-start;min-height:44px}.lab-saved-prediction{color:var(--success);font-size:var(--text-ui);gap:8px;line-height:1.8;display:flex}.lab-saved-prediction svg{flex-shrink:0;margin-top:3px}.lab-observation{padding:0 24px 26px}.lab-comparison{border:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lab-comparison>div{min-width:0;padding:20px}.lab-comparison>div+div{border-left:1px solid var(--line);background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#131b22)}.lab-comparison span{font-size:var(--text-ui);color:var(--muted);margin-bottom:12px;display:block}.lab-comparison strong{font-size:var(--text-body)}.lab-comparison p,.lab-evidence-note,.lab-coach p{font-size:var(--text-body);overflow-wrap:anywhere;line-height:1.85}.lab-comparison pre{overflow-wrap:anywhere;white-space:pre-wrap;margin:0 0 12px;font-size:20px}.lab-comparison .matches strong{color:var(--success)}.lab-comparison .differs strong{color:var(--warning)}.lab-evidence-note{color:var(--muted);margin:14px 0 22px}.lab-coach{border-left:2px solid var(--ai);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#14121a);margin-bottom:22px;padding:18px 20px}.lab-coach .eyebrow{color:var(--ai)}.lab-coach>small{margin-top:12px}.lab-ai-question{border-top:1px solid var(--lightningcss-light,var(--light-line))var(--lightningcss-dark,#484150);padding:18px 0}.lab-ai-question small{color:var(--muted);line-height:1.8}.lab-empty{color:var(--muted);padding:16px 0}.lab-error{padding:12px 24px}.lab-cancel{margin:0 24px 20px}.lab-workbench:not(.lab-stage-2){display:block}.lab-workbench:not(.lab-stage-2)>.problem-pane,.lab-workbench:not(.lab-stage-2) .workspace-code-section,.lab-workbench:not(.lab-stage-3) .workspace-report-section{display:none}.lab-workbench .editor-pane{min-height:0}.lab-workbench .editor-topbar{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#101010)}.lab-workbench.lab-stage-3{max-width:900px;margin-inline:auto}.lab-tests{border-top:1px solid var(--line);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#101010);padding:20px}.lab-tests-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.lab-tests h3{font-size:var(--text-body);margin:0 0 6px}.lab-tests p{font-size:var(--text-ui);line-height:1.8}.lab-tests-heading p{color:var(--muted);margin:0}.lab-tests>small{margin:14px 0}.lab-test-summary{color:var(--success)}.lab-test-list{border:1px solid var(--line)}.lab-test-list details+details{border-top:1px solid var(--line)}.lab-test-list summary{font-size:var(--text-ui);cursor:pointer;padding:12px;line-height:1.8}.lab-pass,.lab-fail{min-width:36px;margin-right:10px;display:inline-block}.lab-pass{color:var(--success)}.lab-fail{color:var(--warning)}.lab-test-detail{padding:0 12px 12px}.lab-test-detail pre{background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#050505);padding:10px}.lab-transfer{border-top:1px solid var(--line);background:var(--lightningcss-light,var(--light-blue-soft))var(--lightningcss-dark,#111821);padding:24px 20px}.lab-transfer .eyebrow{color:var(--action)}.lab-transfer h3{margin:12px 0;font-size:17px}.lab-transfer p{color:var(--muted);font-size:var(--text-body);line-height:1.8}.training-conflict-record{white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;font-size:var(--text-ui);background:var(--lightningcss-light,var(--light-panel))var(--lightningcss-dark,#050505);padding:12px;line-height:1.8;overflow:auto}.learning-lab :is(button,textarea,input,pre,summary):focus-visible,.lab-tests :is(button,summary):focus-visible{outline:2px solid var(--action);outline-offset:3px}@media (max-width:1000px){.lab-prediction-layout{grid-template-columns:1fr}.lab-steps small{display:none}.lab-steps button{gap:8px;padding:16px 12px}}@media (max-width:600px){.lab-intro{flex-direction:column;gap:8px;padding:14px 16px}.lab-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-steps button:nth-child(2){border-right:0}.lab-steps button:nth-child(-n+2){border-bottom:1px solid var(--line)}.lab-stage-header{padding:20px 16px 16px}.lab-prediction-layout,.lab-observation{gap:18px;padding:0 16px 20px}.lab-comparison{grid-template-columns:1fr}.lab-comparison>div+div{border-left:0;border-top:1px solid var(--line)}.lab-coach,.lab-comparison>div{padding:16px}.lab-prediction .primary-button{width:100%}}.lab-learning-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 24px 24px;display:grid}.lab-learning-summary>div{border:1px solid var(--line);flex-direction:column;gap:10px;padding:16px;display:flex}.lab-learning-summary span{font-size:var(--text-ui);color:var(--muted)}.lab-learning-summary strong{font-size:var(--text-body)}.lab-learning-summary button{align-self:flex-start}@media (max-width:600px){.lab-learning-summary{grid-template-columns:1fr;padding:0 16px 20px}}.lab-history-action{border-bottom:1px solid var(--line);padding:14px 20px}.lab-experiment{border:1px solid var(--line);min-width:0;margin-bottom:22px;padding:20px}.lab-experiment h3{font-size:var(--text-body);align-items:center;gap:8px;margin:0 0 12px;display:flex}.lab-experiment p,.lab-experiment small{font-size:var(--text-ui);overflow-wrap:anywhere;line-height:1.8}.lab-experiment small{color:var(--muted);margin:8px 0 16px;display:block}.lab-experiment details{margin:12px 0}.lab-experiment summary{cursor:pointer;line-height:1.8}.lab-experiment label{margin:16px 0 8px;display:block}.lab-experiment textarea{resize:vertical;border:1px solid var(--line);background:var(--bg);width:100%;min-width:0;color:var(--text);border-radius:6px;padding:12px;font-size:16px;line-height:1.6}.lab-experiment #experiment-expression{font-family:var(--mono)}.lab-experiment pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.lab-experiment-results{border-top:1px solid var(--line);padding-top:18px}.lab-experiment .lab-comparison>div{padding:12px}@media (max-width:600px){.lab-experiment{padding:14px}}.lab-coach-focus{border-left:2px solid var(--line);margin:14px 0;padding:4px 0 4px 14px}.lab-coach-focus blockquote{font-size:var(--text-body);white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0;line-height:1.8}.lab-coach-focus p{margin:8px 0}.lab-experiment-reflection{border-top:1px solid var(--line);gap:12px;margin-top:20px;padding-top:20px;display:grid}.lab-experiment-reflection p{margin:0}
