:root{--bg-primary:#090d16;--bg-secondary:#0f172a;--bg-tertiary:#1e293b;--bg-card:#0f172abf;--bg-card-hover:#1e293bcc;--bg-input:#0b1120;--border-subtle:#1e293b;--border-strong:#334155;--border-focus:#00d8ff;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--text-inverse:#090d16;--react-cyan:#00d8ff;--react-cyan-glow:#00d8ff40;--accent-blue:#3b82f6;--accent-purple:#8b5cf6;--accent-purple-glow:#8b5cf64d;--accent-green:#10b981;--accent-green-glow:#10b98140;--accent-amber:#f59e0b;--accent-rose:#f43f5e;--nav-height:60px;--sidebar-width:320px;--drawer-width:420px;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", Menlo, Monaco, Consolas, monospace;--glass-blur:blur(12px);--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 12px -2px #0006;--shadow-lg:0 10px 25px -3px #00000080;--shadow-glow:0 0 20px var(--react-cyan-glow);--shadow-ai-glow:0 0 25px var(--accent-purple-glow);--scrollbar-thumb:#334155;--scrollbar-track:#090d16;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-primary,#38bdf8);outline-offset:2px}#root{flex-direction:column;height:100vh;display:flex;overflow:hidden}@supports not (scrollbar-color:auto){::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}}.navbar{height:var(--nav-height);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border-subtle);z-index:40;background:#0f172ad9;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.nav-brand{letter-spacing:-.02em;color:var(--text-primary);align-items:center;gap:12px;font-size:1.15rem;font-weight:700;display:flex}.nav-brand svg{color:var(--react-cyan);filter:drop-shadow(0 0 8px var(--react-cyan-glow));animation:20s linear infinite spinSlow}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.brand-badge{text-transform:uppercase;letter-spacing:.08em;color:var(--react-cyan);background:#00d8ff1f;border:1px solid #00d8ff4d;border-radius:9999px;padding:2px 8px;font-size:.65rem;font-weight:700}.nav-actions{align-items:center;gap:16px;display:flex}.progress-pill{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:9999px;align-items:center;gap:10px;padding:6px 14px;font-size:.85rem;font-weight:600;display:flex}.progress-bar-inline{background:#ffffff1a;border-radius:3px;width:70px;height:6px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--react-cyan), var(--accent-green));height:100%;transition:width .3s}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--react-cyan);color:var(--text-inverse);box-shadow:0 0 15px var(--react-cyan-glow)}.btn-primary:hover{background:#38bdf8;transform:translateY(-1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-strong)}.btn-secondary:hover{background:#334155;border-color:#475569}.btn-ai{color:#fff;box-shadow:0 0 16px var(--accent-purple-glow);background:linear-gradient(135deg,#7c3aed,#9333ea);border:1px solid #a855f766}.btn-ai:hover{background:linear-gradient(135deg,#6d28d9,#7e22ce);transform:translateY(-1px);box-shadow:0 0 20px #a855f780}.btn-sm{padding:5px 10px;font-size:.775rem}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.app-container{height:calc(100vh - var(--nav-height));flex:1;display:flex;position:relative;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;transition:width .2s;display:flex;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px;display:flex}.sidebar-header h3{color:var(--text-primary);font-size:.95rem;font-weight:700}.sidebar-content{flex:1;padding:12px;overflow-y:auto}.module-item{border:1px solid var(--border-subtle);background:#0f172a66;border-radius:8px;margin-bottom:12px;overflow:hidden}.module-header{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary);background:#1e293b66;justify-content:space-between;align-items:center;padding:10px 14px;font-size:.85rem;font-weight:600;transition:background .15s;display:flex}.module-header:hover{color:var(--text-primary);background:#33415580}.lesson-list{padding:6px;list-style:none}.lesson-item{color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:10px;margin-bottom:2px;padding:8px 10px;font-size:.825rem;transition:all .15s;display:flex}.lesson-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.lesson-item.active{color:var(--react-cyan);background:#00d8ff1a;border:1px solid #00d8ff40;font-weight:600}.lesson-item.completed{color:var(--text-muted)}.lesson-item.completed .lesson-check{color:var(--accent-green)}.content-area{flex:1;display:flex;overflow:hidden}.lesson-pane{background:var(--bg-primary);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.lesson-inner{padding:24px}.lesson-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--accent-blue);margin-bottom:6px;font-size:.725rem;font-weight:700;display:inline-block}.lesson-title{letter-spacing:-.02em;color:#fff;margin-bottom:16px;font-size:1.5rem;font-weight:800}.concept-box{background:var(--bg-secondary);border-left:3px solid var(--react-cyan);border-radius:0 8px 8px 0;margin-bottom:20px;padding:16px;font-size:.95rem;line-height:1.6}.importance-card{border:1px dashed var(--border-strong);background:#1e293b80;border-radius:8px;margin-bottom:24px;padding:14px}.importance-card h4{color:var(--accent-amber);align-items:center;gap:6px;margin-bottom:6px;font-size:.85rem;display:flex}.importance-card p{color:var(--text-secondary);font-size:.875rem}.section-title{color:var(--text-primary);align-items:center;gap:8px;margin:20px 0 12px;font-size:1rem;font-weight:700;display:flex}.code-example-card{border:1px solid var(--border-subtle);background:#090d16;border-radius:8px;margin-bottom:16px;overflow:hidden;box-shadow:0 4px 12px #00000040}.code-example-header{border-bottom:1px solid var(--border-subtle);background:#111a2e;justify-content:space-between;align-items:center;padding:6px 14px;display:flex}.code-example-title{color:#94a3b8;font-size:.775rem;font-weight:600;font-family:var(--font-mono)}.code-copy-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-family:inherit;font-size:.725rem;transition:all .15s;display:inline-flex}.code-copy-btn:hover{color:#e2e8f0;background:#ffffff12}.code-example-pre{font-family:var(--font-mono);tab-size:2;color:#e2e8f0;background:#080c14;margin:0;padding:14px 16px;font-size:.84rem;line-height:1.6;overflow-x:auto}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#94a3b8!important;font-style:italic!important}.token.punctuation{color:#94a3b8!important}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol{font-weight:500;color:#f43f5e!important}.token.selector,.token.attr-name{color:#38bdf8!important}.token.string,.token.char,.token.builtin{color:#34d399!important}.token.operator,.token.entity,.token.url{color:#38bdf8!important}.token.atrule,.token.attr-value{color:#34d399!important}.token.keyword{font-weight:600;color:#c084fc!important}.token.function,.token.class-name{font-weight:600;color:#60a5fa!important}.token.regex,.token.important,.token.variable{color:#fb923c!important}.challenge-card{border:1px solid var(--border-strong);background:linear-gradient(#1e293bb3,#0f172ae6);border-radius:10px;margin-top:24px;padding:18px}.challenge-card h4{color:var(--accent-green);align-items:center;gap:8px;margin-bottom:8px;font-size:.95rem;display:flex}.challenge-card p{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.coding-pane{background:#090d16;flex-direction:column;flex:1;display:flex;overflow:hidden}.editor-toolbar{border-bottom:1px solid var(--border-subtle);background:#0d131f;justify-content:space-between;align-items:center;height:44px;padding:0 16px;display:flex}.file-tab{font-size:.8rem;font-family:var(--font-mono);color:var(--text-primary);align-items:center;gap:8px;font-weight:500;display:flex}.toolbar-actions{align-items:center;gap:10px;display:flex}.editor-workspace{flex-direction:column;flex:1;display:flex;overflow:hidden}.monaco-container{flex:1;min-height:250px;position:relative}.bottom-dock{border-top:1px solid var(--border-strong);background:#0d131f;flex-direction:column;height:320px;display:flex}.dock-header{border-bottom:1px solid var(--border-subtle);background:#131b2c;justify-content:space-between;align-items:center;height:38px;padding:0 14px;display:flex}.dock-tabs{gap:4px;display:flex}.dock-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .15s;display:flex}.dock-tab:hover{color:var(--text-primary);background:#ffffff0d}.dock-tab.active{color:var(--react-cyan);background:#00d8ff1a}.dock-content{flex:1;position:relative;overflow:auto}.preview-iframe{background:#fff;border:none;width:100%;height:100%}.test-suite{padding:16px}.test-item{background:var(--bg-secondary);border-left:3px solid #0000;border-radius:6px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:10px;font-size:.85rem;display:flex}.test-item.passed{border-left-color:var(--accent-green)}.test-item.failed{border-left-color:var(--accent-rose)}.test-status-icon{margin-top:2px}.ai-drawer{top:var(--nav-height);width:var(--drawer-width);height:calc(100vh - var(--nav-height));-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-left:1px solid var(--border-strong);z-index:50;background:#0f172af2;flex-direction:column;transition:transform .25s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;right:0;transform:translate(100%);box-shadow:-10px 0 30px #0009}.ai-drawer.open{transform:translate(0)}.ai-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.ai-brand{color:#fff;align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.ai-brand svg{color:var(--accent-purple)}.ai-tabs{border-bottom:1px solid var(--border-subtle);padding:0 16px;display:flex}.ai-tab{text-align:center;color:var(--text-muted);cursor:pointer;border-bottom:2px solid #0000;flex:1;padding:10px 0;font-size:.8rem;font-weight:600;transition:all .15s}.ai-tab.active{color:var(--accent-purple);border-bottom-color:var(--accent-purple)}.ai-body{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.chat-bubble{border-radius:10px;max-width:90%;padding:12px 16px;font-size:.875rem;line-height:1.5}.chat-bubble.user{background:var(--bg-tertiary);color:var(--text-primary);border-bottom-right-radius:2px;align-self:flex-end}.chat-bubble.mentor{color:#e2e8f0;background:#8b5cf61f;border:1px solid #8b5cf64d;border-bottom-left-radius:2px;align-self:flex-start}.ai-chat-input-bar{border-top:1px solid var(--border-subtle);gap:8px;padding:14px;display:flex}.ai-chat-input{background:var(--bg-input);border:1px solid var(--border-strong);color:#fff;border-radius:6px;outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:.85rem}.ai-chat-input:focus{border-color:var(--accent-purple)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--bg-secondary);border:1px solid var(--border-strong);width:90%;max-width:540px;box-shadow:var(--shadow-lg);border-radius:12px;animation:.15s ease-out modalIn;overflow:hidden}@keyframes modalIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.modal-header h3{font-size:1.1rem;font-weight:700}.modal-body{flex-direction:column;gap:18px;padding:24px;display:flex}.modal-footer{border-top:1px solid var(--border-subtle);background:#0f172a80;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.form-group input{background:var(--bg-input);border:1px solid var(--border-strong);color:#fff;border-radius:6px;outline:none;padding:10px 12px;font-family:inherit;font-size:.875rem}.form-group input:focus{border-color:var(--react-cyan)}.form-group small{color:var(--text-muted);font-size:.775rem}.challenge-goal-banner{border-bottom:1px solid var(--border-subtle);background:linear-gradient(90deg,#111a2e,#131b2c);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:8px 16px;display:flex}.goal-text{align-items:center;gap:10px;display:flex;overflow:hidden}.goal-tag{color:var(--react-cyan);text-transform:uppercase;letter-spacing:.05em;background:#00d8ff26;border:1px solid #00d8ff4d;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:800}.goal-text p{color:#e2e8f0;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.goal-status{flex-shrink:0;align-items:center;gap:10px;display:flex}.status-badge{border-radius:9999px;align-items:center;gap:6px;padding:3px 10px;font-size:.775rem;font-weight:700;display:flex}.status-badge.passed{color:var(--accent-green);border:1px solid var(--accent-green);background:#10b98126}.status-badge.failed{color:var(--accent-rose);border:1px solid var(--accent-rose);background:#f43f5e26}.status-badge.ready{color:var(--accent-blue);background:#3b82f626;border:1px solid #3b82f666}.btn-hint-pill{color:#c4b5fd;cursor:pointer;background:#8b5cf633;border:1px solid #8b5cf666;border-radius:9999px;align-items:center;gap:5px;padding:3px 9px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-hint-pill:hover{color:#fff;box-shadow:0 0 10px var(--accent-purple-glow);background:#8b5cf659}.toolbar-left-actions{align-items:center;gap:8px;display:flex}.btn-icon{color:#94a3b8;cursor:pointer;background:#141d2e;border:1px solid #28374f;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;transition:all .15s;display:inline-flex;position:relative}.btn-icon:hover{color:#f8fafc;background:#1e2c45;border-color:#3b4f71;transform:translateY(-1px)}.btn-icon:active{transform:translateY(0)scale(.96)}.btn-icon.active-zap{color:var(--react-cyan);box-shadow:0 0 12px var(--react-cyan-glow);background:#00d8ff26;border-color:#00d8ff80}.btn-icon.btn-reset:hover{color:#fb7185;background:#f43f5e26;border-color:#f43f5e80}.btn-run{color:#090d16;box-shadow:0 0 15px var(--react-cyan-glow);background:linear-gradient(135deg,#0284c7,#00d8ff);font-weight:700}.btn-run:hover{filter:brightness(1.1);transform:translateY(-1px)}.kbd-shortcut{font-size:.65rem;font-family:var(--font-mono);background:#0000004d;border-radius:4px;margin-left:4px;padding:2px 5px}.btn-solution{color:#fde68a;border-color:#f59e0b66}.btn-solution:hover{border-color:var(--accent-amber);background:#f59e0b26}.editor-toast{border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);color:#f8fafc;z-index:30;background:#0f172a;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:.825rem;font-weight:600;animation:.2s ease-out fadeInDown;display:flex;position:absolute;top:60px;left:50%;transform:translate(-50%)}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.editor-statusbar{border-top:1px solid var(--border-subtle);z-index:10;background:#090d16;justify-content:flex-end;align-items:center;gap:16px;height:22px;padding:0 16px;display:flex;position:absolute;bottom:0;left:0;right:0}.status-item{font-family:var(--font-mono);color:var(--text-muted);font-size:.7rem}.layout-split{display:flex;flex-direction:row!important}.layout-split .coding-pane{flex:1.2}.layout-split .bottom-dock{border-top:none;border-left:1px solid var(--border-strong);flex:1;height:auto!important}.resizer{background:var(--border-subtle);z-index:25;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:background .15s,box-shadow .15s;position:relative}.resizer-col{cursor:col-resize;border-left:1px solid #ffffff0a;border-right:1px solid #0006;width:6px}.resizer-row{cursor:row-resize;border-top:1px solid #ffffff0a;border-bottom:1px solid #0006;height:6px}.resizer:hover,.resizer.is-dragging{background:var(--react-cyan);box-shadow:0 0 10px var(--react-cyan-glow)}.resizer-handle-line{position:absolute;inset:0}.references-card{border-top:1px dashed var(--border-strong);margin-top:28px;padding-top:20px}.references-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.reference-link-item{border:1px solid var(--border-subtle);color:var(--text-primary);background:#0d131f;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;text-decoration:none;transition:all .15s;display:flex}.reference-link-item:hover{border-color:var(--react-cyan);background:#141d2e;transform:translate(2px)}.reference-info{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.reference-title{color:#e2e8f0;font-size:.85rem;font-weight:600}.reference-link-item:hover .reference-title{color:var(--react-cyan)}.reference-type-badge{text-transform:uppercase;letter-spacing:.05em;color:#38bdf8;background:#38bdf81f;border:1px solid #38bdf840;border-radius:4px;padding:2px 7px;font-size:.675rem;font-weight:700}.reference-icon{color:var(--text-muted);flex-shrink:0;transition:color .15s}.reference-link-item:hover .reference-icon{color:var(--react-cyan)}.auth-dialog{border:1px solid #38bdf840!important;box-shadow:0 20px 50px #0009,0 0 30px #38bdf814!important}.auth-tab-bar{border-bottom:1px solid var(--border-subtle);background:#0f172a99;gap:8px;padding:4px 16px 0;display:flex}.auth-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:10px 16px;font-size:.85rem;font-weight:600;transition:all .15s}.auth-tab:hover{color:var(--text-primary)}.auth-tab.active{color:var(--react-cyan);border-bottom-color:var(--react-cyan)}.auth-alert{border-radius:6px;align-items:center;gap:8px;padding:10px 14px;font-size:.825rem;line-height:1.35;display:flex}.auth-alert.error{color:#fca5a5;background:#ef44441f;border:1px solid #ef444459}.auth-alert.success{color:#86efac;background:#10b9811f;border:1px solid #10b98159}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon .input-icon{color:var(--text-muted);pointer-events:none;position:absolute;left:12px}.input-with-icon input{width:100%;padding-left:36px!important;padding-right:36px!important}.password-toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex;position:absolute;right:10px}.password-toggle-btn:hover{color:var(--text-primary)}.auth-divider{text-align:center;color:var(--text-muted);letter-spacing:.05em;align-items:center;margin:4px 0;font-size:.72rem;font-weight:700;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border-subtle);flex:1}.auth-divider span{padding:0 10px}.btn-text-link{color:var(--react-cyan);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:.8rem;text-decoration:underline;transition:opacity .15s}.btn-text-link:hover{opacity:.8}.btn-text-link.muted{color:var(--text-muted);text-decoration:none}.btn-text-link.muted:hover{color:var(--text-secondary);text-decoration:underline}.capstones-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000bf;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.capstones-modal-window{background-color:#0f172a;border:1px solid #334155;border-radius:12px;flex-direction:column;width:100%;max-width:1080px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.capstones-modal-header{background-color:#1e293b;border-bottom:1px solid #334155;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.capstones-tab-nav{-webkit-overflow-scrolling:touch;scrollbar-width:thin;background-color:#0f172a;border-bottom:1px solid #1e293b;flex-shrink:0;gap:6px;padding:8px 16px;display:flex;overflow-x:auto}.capstones-tab-btn{white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;min-height:38px;display:flex}.capstones-content-main{background-color:#0b1120;flex:1;padding:24px;overflow-y:auto}.capstone-container{color:#f8fafc;box-sizing:border-box;background:#0f172a;border:1px solid #334155;border-radius:8px;width:100%;max-width:720px;margin:0 auto;padding:20px}.capstone-controls-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.capstone-grid-responsive{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.capstone-card{box-sizing:border-box;background:#1e293b;border:1px solid #334155;border-radius:8px;max-width:100%;padding:14px}.capstone-list-item{background:#1e293b;border-bottom:1px solid #334155;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:10px 12px;display:flex}@media (width<=1024px){.capstones-modal-overlay,.capstones-content-main{padding:16px}.capstone-container{max-width:100%}}@media (width<=640px){.capstones-modal-overlay{align-items:flex-start;padding:4px}.capstones-modal-window{border-radius:8px;max-height:98vh}.capstones-modal-header{flex-wrap:wrap;gap:8px;padding:12px 14px}.capstones-tab-nav{gap:4px;padding:6px 8px;overflow-x:auto}.capstones-tab-btn{min-height:44px;padding:8px 12px;font-size:.8rem}.capstones-content-main{padding:12px 6px}.capstone-container{border-radius:6px;padding:12px}.capstone-controls-row{flex-direction:column;align-items:stretch;gap:10px}.capstone-controls-row>*{width:100%}.capstone-list-item{flex-direction:column;align-items:stretch;gap:10px}.capstone-list-actions{justify-content:flex-end;gap:8px;width:100%;display:flex}.capstone-touch-target{min-width:44px;min-height:44px}}
