:root{--bg-primary:#F7F9FC;--bg-surface:#FFFFFF;--bg-secondary:#FFFFFF;--bg-tertiary:#F8FCF9;--bg-elevated:#FFFFFF;--bg-muted:#EFF3F6;--bg-backdrop:rgba(36,48,71,0.45);--border-subtle:#E7EAF0;--border-medium:#D1D9E6;--border-strong:#A9B7CD;--border-focus:#58B084;--text-primary:#243047;--text-secondary:#697386;--text-muted:#8492A6;--text-inverse:#FFFFFF;--text-link:#1E6B4A;--pastel-mint:#BFE8D0;--pastel-mint-hover:#A5DCBC;--pastel-mint-active:#8CCFA8;--pastel-mint-light:#EDF9F1;--pastel-mint-text:#16432A;--pastel-lavender:#DCCBFF;--pastel-lavender-hover:#CBB4FF;--pastel-lavender-active:#B99EFF;--pastel-lavender-light:#F6F2FF;--pastel-lavender-text:#371E6B;--pastel-sky:#C7E3FF;--pastel-sky-hover:#A8D3FF;--pastel-sky-active:#8EC4FF;--pastel-sky-light:#F0F7FF;--pastel-sky-text:#0E426F;--pastel-peach:#FFCDBD;--pastel-peach-hover:#FFB9A3;--pastel-peach-active:#FFA58A;--pastel-peach-light:#FFF5F2;--pastel-peach-text:#6A2311;--pastel-yellow:#FFF0B8;--pastel-yellow-hover:#FFE699;--pastel-yellow-active:#FFDC7A;--pastel-yellow-light:#FFFDF0;--pastel-yellow-text:#594400;--pastel-pink:#F5D5E8;--pastel-pink-hover:#EBBFD9;--pastel-pink-active:#DFABC8;--pastel-pink-light:#FDF4FA;--pastel-pink-text:#6E184D;--london-red:#C93C45;--london-red-hover:#B23139;--london-red-active:#9E272E;--london-red-light:#FDF1F2;--london-red-border:#F8D0D3;--london-red-text:#FFFFFF;--london-red-accent-text:#8E1B23;--london-cream:#FFF9EF;--london-cream-hover:#FFF3DE;--london-cream-active:#FCECCD;--london-cream-border:#F6E7D2;--london-cream-text:#4A3519;--london-brick:#DE7C68;--london-brick-light:#FBF0ED;--london-slate:#3B4B5A;--london-underground-blue:#0019A8;--status-success:#10B981;--status-success-bg:#E6F9F0;--status-success-border:#A7F3D0;--status-success-text:#065F46;--status-error:#EF4444;--status-error-bg:#FEE2E2;--status-error-border:#FECACA;--status-error-text:#991B1B;--status-warning:#F59E0B;--status-warning-bg:#FEF3C7;--status-warning-border:#FDE68A;--status-warning-text:#92400E;--status-info:#0284C7;--status-info-bg:#E0F2FE;--status-info-border:#BAE6FD;--status-info-text:#0369A1;--diff-very-easy:#059669;--diff-easy:#0284C7;--diff-medium:#D97706;--diff-hard:#EA580C;--diff-challenge:#DC2626;--terminal-bg:#1B2332;--terminal-text:#E5EDF7;--terminal-prompt:#93C5FD;--terminal-error:#FCA5A5;--terminal-success:#86EFAC;--terminal-system:#94A3B8;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--shadow-xs:0 1px 2px rgba(36,48,71,0.04);--shadow-sm:0 2px 8px rgba(36,48,71,0.05);--shadow-md:0 6px 18px rgba(36,48,71,0.07);--shadow-lg:0 12px 28px rgba(36,48,71,0.09);--shadow-modal:0 20px 48px -8px rgba(36,48,71,0.16);--header-height:60px;--sidebar-width:250px;--sidebar-collapsed-width:76px;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono","Fira Code",Menlo,Monaco,Consolas,monospace;--transition-instant:90ms ease-out;--transition-fast:140ms ease;--transition-base:180ms cubic-bezier(0.16,1,0.3,1);--transition-interactive:220ms cubic-bezier(0.16,1,0.3,1);--transition-smooth:260ms cubic-bezier(0.16,1,0.3,1)}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.glass-panel{background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.card-pastel,.glass-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.card-pastel{background:var(--bg-surface);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}@media (hover:hover){.card-pastel:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}}.card-pink{background-color:var(--pastel-pink-light);border-color:var(--pastel-pink)}.card-cream{background-color:var(--london-cream);border-color:var(--london-cream-border)}.card-brick{background-color:var(--london-brick-light);border-color:#F0C4B8}.london-underground-badge{border-radius:var(--radius-full);background:var(--london-red-light);border:1px solid var(--london-red-border);color:var(--london-red-accent-text)}.london-bus-badge,.london-underground-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-weight:600}.london-bus-badge{border-radius:var(--radius-full);background:var(--london-red);color:#FFFFFF}.london-card-brick{background-color:var(--london-brick-light);border:1px solid #f0c4b8;border-radius:var(--radius-xl)}.london-skyline-accent{opacity:.18;transition:opacity var(--transition-base)}.london-skyline-accent:hover{opacity:.35}.text-gradient{background:linear-gradient(135deg,#16432A,#0E426F);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-pastel{background:linear-gradient(135deg,#10B981,#3B82F6);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.app-header{height:var(--header-height);border-bottom:1px solid var(--border-subtle);background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:50;box-shadow:0 1px 3px rgba(36,48,71,.03)}.app-header,.brand-logo{display:flex;align-items:center}.brand-logo{gap:10px;text-decoration:none;font-weight:700;font-size:1.15rem;color:var(--text-primary);transition:opacity var(--transition-fast)}.brand-logo:hover{opacity:.9}.brand-badge{font-size:.68rem;font-weight:700;letter-spacing:.05em;padding:3px 8px;border-radius:var(--radius-full);background:var(--pastel-mint);color:var(--pastel-mint-text);border:1px solid var(--pastel-mint-active);text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.88rem;font-weight:600;padding:8px 16px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all var(--transition-base);text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;box-shadow:var(--shadow-xs)}.btn:active:not(:disabled){transform:scale(.97) translateY(1px);transition-duration:var(--transition-instant)}@media (hover:hover){.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}}.btn-mint,.btn-primary{background-color:var(--pastel-mint);color:var(--pastel-mint-text);border-color:#A3D8B9}.btn-mint:hover:not(:disabled),.btn-primary:hover:not(:disabled){background-color:var(--pastel-mint-hover);box-shadow:var(--shadow-sm)}.btn-mint:active:not(:disabled),.btn-primary:active:not(:disabled){background-color:var(--pastel-mint-active)}.btn-lavender{background-color:var(--pastel-lavender);color:var(--pastel-lavender-text);border-color:#CBB4FF}.btn-lavender:hover:not(:disabled){background-color:var(--pastel-lavender-hover);box-shadow:var(--shadow-sm)}.btn-sky{background-color:var(--pastel-sky);color:var(--pastel-sky-text);border-color:#A8D3FF}.btn-sky:hover:not(:disabled){background-color:var(--pastel-sky-hover);box-shadow:var(--shadow-sm)}.btn-peach{background-color:var(--pastel-peach);color:var(--pastel-peach-text);border-color:#FFB9A3}.btn-peach:hover:not(:disabled){background-color:var(--pastel-peach-hover);box-shadow:var(--shadow-sm)}.btn-pink{background-color:var(--pastel-pink);color:var(--pastel-pink-text);border-color:#EBBFD9}.btn-pink:hover:not(:disabled){background-color:var(--pastel-pink-hover);box-shadow:var(--shadow-sm)}.btn-london-red{background-color:var(--london-red);color:var(--london-red-text);border-color:#B23139}.btn-london-red:hover:not(:disabled){background-color:var(--london-red-hover);box-shadow:var(--shadow-sm)}.btn-cream{background-color:var(--london-cream);color:var(--london-cream-text);border-color:var(--london-cream-border)}.btn-cream:hover:not(:disabled){background-color:var(--london-cream-hover);box-shadow:var(--shadow-sm)}.btn-success{background-color:#D1FAE5;color:#065F46;border-color:#A7F3D0}.btn-success:hover:not(:disabled){background-color:#A7F3D0;box-shadow:var(--shadow-sm)}.btn-secondary{background-color:var(--bg-surface);color:var(--text-primary);border-color:var(--border-medium)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-tertiary);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.btn-ghost{background-color:transparent;color:var(--text-secondary);border-color:transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background-color:var(--bg-muted);color:var(--text-primary)}.btn-outline{background-color:transparent;color:var(--text-primary);border-color:var(--border-medium);box-shadow:none}.btn-outline:hover:not(:disabled){background-color:var(--bg-surface);border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.btn-danger{background-color:#FEE2E2;color:#991B1B;border-color:#FECACA}.btn-danger:hover:not(:disabled){background-color:#FCDCDC;box-shadow:var(--shadow-sm)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-label{font-size:.85rem;font-weight:600}.form-input,.form-label{color:var(--text-primary)}.form-input{width:100%;font-family:inherit;font-size:.9rem;background-color:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:10px 14px;outline:none;transition:all var(--transition-base);box-shadow:var(--shadow-xs)}.form-input::placeholder{color:var(--text-muted)}.form-input:hover:not(:disabled){border-color:var(--border-strong)}.form-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(88,176,132,.2)}.form-input:disabled{background-color:var(--bg-muted);color:var(--text-muted);cursor:not-allowed}.form-input-error{border-color:var(--status-error)!important}.form-input-error:focus{box-shadow:0 0 0 3px rgba(239,68,68,.2)!important}.form-select{width:100%;font-family:inherit;font-size:.9rem;color:var(--text-primary);background-color:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:10px 14px;outline:none;transition:all var(--transition-base);box-shadow:var(--shadow-xs);cursor:pointer}.form-select:hover:not(:disabled){border-color:var(--border-strong)}.form-select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(88,176,132,.2)}.form-select:disabled{background-color:var(--bg-muted);color:var(--text-muted);cursor:not-allowed}.form-helper-text{font-size:.78rem;color:var(--text-secondary)}.form-error-text{font-size:.78rem;color:var(--status-error-text);display:flex;align-items:center;gap:4px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:600;padding:4px 10px;border-radius:var(--radius-full);text-transform:capitalize;line-height:1.2}.badge-mint{background-color:var(--pastel-mint-light);color:var(--pastel-mint-text);border:1px solid var(--pastel-mint)}.badge-lavender{background-color:var(--pastel-lavender-light);color:var(--pastel-lavender-text);border:1px solid var(--pastel-lavender)}.badge-sky{background-color:var(--pastel-sky-light);color:var(--pastel-sky-text);border:1px solid var(--pastel-sky)}.badge-peach{background-color:var(--pastel-peach-light);color:var(--pastel-peach-text);border:1px solid var(--pastel-peach)}.badge-yellow{background-color:var(--pastel-yellow-light);color:var(--pastel-yellow-text);border:1px solid var(--pastel-yellow)}.badge-pink{background-color:var(--pastel-pink-light);color:var(--pastel-pink-text);border:1px solid var(--pastel-pink)}.badge-london_red{background-color:var(--london-red-light);color:var(--london-red-accent-text);border:1px solid var(--london-red-border)}.badge-cream{background-color:var(--london-cream);color:var(--london-cream-text);border:1px solid var(--london-cream-border)}.badge-success{background-color:var(--status-success-bg);color:var(--status-success-text);border:1px solid var(--status-success-border)}.badge-error{background-color:var(--status-error-bg);color:var(--status-error-text);border:1px solid var(--status-error-border)}.badge-warning{background-color:var(--status-warning-bg);color:var(--status-warning-text);border:1px solid var(--status-warning-border)}.badge-neutral{background-color:var(--bg-muted);color:var(--text-secondary);border:1px solid var(--border-subtle)}.badge-very_easy{background-color:#ECFDF5;color:#065F46;border:1px solid #a7f3d0}.badge-easy{background-color:#F0F9FF;color:#0369A1;border:1px solid #bae6fd}.badge-medium{background-color:#FFFBEB;color:#92400E;border:1px solid #fde68a}.badge-hard{background-color:#FFF7ED;color:#9A3412;border:1px solid #fed7aa}.badge-challenge{background-color:#FEF2F2;color:#991B1B;border:1px solid #fecaca}.modal-backdrop{position:fixed;inset:0;z-index:9999;background-color:var(--bg-backdrop);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px;animation:modalFadeIn .2s cubic-bezier(.16,1,.3,1)}.modal-container{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-modal);display:flex;flex-direction:column;overflow:hidden;animation:modalScaleUp .22s cubic-bezier(.16,1,.3,1)}.modal-header{padding:20px 24px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;background-color:var(--bg-tertiary)}.modal-body{padding:24px;overflow-y:auto;flex:1 1}.modal-footer{padding:16px 24px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:flex-end;gap:12px;background-color:var(--bg-tertiary)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.command-center-backdrop{position:fixed;inset:0;z-index:1000;background-color:var(--bg-backdrop);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px;animation:modalFadeIn var(--transition-fast) ease-out}.command-center-panel{width:100%;max-width:620px;background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-2xl);box-shadow:var(--shadow-modal);overflow:hidden;display:flex;flex-direction:column;max-height:85vh;animation:modalScaleUp var(--transition-base) cubic-bezier(.16,1,.3,1)}@media (max-width:640px){.command-center-backdrop{align-items:flex-end;padding:0}.command-center-panel{max-width:100%;border-radius:24px 24px 0 0;max-height:88vh}}.command-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--radius-lg);border:1px solid transparent;background:transparent;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);text-decoration:none;width:100%;text-align:left}.command-item.command-item-active,.command-item:focus-visible,.command-item:hover{background-color:var(--pastel-mint-light);border-color:var(--pastel-mint);transform:translateX(2px);outline:none}.workspace-container{height:calc(100vh - var(--header-height));display:flex;overflow:hidden;background-color:var(--bg-primary);max-width:100vw;box-sizing:border-box}.workspace-left-pane{width:42%;min-width:360px;max-width:600px;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;background-color:var(--bg-surface);overflow-y:auto;box-sizing:border-box}.workspace-right-pane{flex:1 1;display:flex;flex-direction:column;overflow:hidden;background-color:var(--bg-primary);min-width:0;box-sizing:border-box}.editor-wrapper{flex:6 1;min-height:250px;display:flex;flex-direction:column;border-bottom:1px solid var(--border-subtle);position:relative;background-color:#FFFFFF;min-width:0}.terminal-wrapper{flex:4 1;min-height:180px;display:flex;flex-direction:column;background-color:var(--terminal-bg);overflow:hidden;min-width:0}.mobile-tab-bar{display:none;background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);padding:8px 12px;gap:8px;max-width:100vw;box-sizing:border-box;align-items:center;justify-content:space-between}@media (max-width:1023px){.mobile-tab-bar{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch}.workspace-container{flex-direction:column;height:calc(100vh - var(--header-height) - 48px);max-width:100vw;overflow-x:hidden}.workspace-left-pane{border-right:none;border-bottom:1px solid var(--border-subtle)}.workspace-left-pane,.workspace-right-pane{width:100%!important;max-width:100%!important;min-width:0!important;flex:1 1}.mobile-hidden{display:none!important}.mobile-visible{display:flex!important;height:100%!important;width:100%!important;max-width:100%!important}}@media (min-width:1024px){.mobile-hidden,.mobile-visible{display:flex!important}}.pane-header{justify-content:space-between;padding:10px 16px;background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);font-size:.82rem;font-weight:600;color:var(--text-secondary);-webkit-user-select:none;-moz-user-select:none;user-select:none}.pane-header,.pane-title{display:flex;align-items:center}.pane-title{gap:8px;color:var(--text-primary)}.example-card{background-color:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:14px;margin-top:12px;font-size:.85rem}.example-header{font-weight:600;color:var(--text-primary);margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.io-block{margin-top:6px}.io-label{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;margin-bottom:4px}.io-content{font-family:var(--font-mono);background-color:#FFFFFF;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:8px 12px;color:#0E426F;white-space:pre-wrap;font-size:.82rem}.terminal-output{flex:1 1;padding:14px 18px;overflow-y:auto;font-family:var(--font-mono);font-size:.84rem;line-height:1.6;color:var(--terminal-text);background-color:var(--terminal-bg)}.terminal-line{white-space:pre-wrap;word-break:break-all}.terminal-line-stdout{color:var(--terminal-text)}.terminal-line-stderr{color:var(--terminal-error)}.terminal-line-system{color:var(--terminal-system);font-style:italic}@media (max-width:768px){.app-header{padding:0 14px}.header-breadcrumb,.header-btn-text{display:none!important}.header-actions{gap:8px!important}.brand-badge{display:none!important}.brand-logo span{font-size:1.05rem}.user-display-name{display:none!important}.modal-container{max-width:100%;border-radius:var(--radius-xl)}}@media (max-width:480px){.app-header{padding:0 10px}.btn{padding:7px 10px!important;font-size:.82rem}}.app-shell{width:100vw;background-color:var(--bg-primary);overflow-x:hidden}.app-main-content,.app-shell{display:flex;min-height:100vh;position:relative}.app-main-content{flex:1 1;flex-direction:column;min-width:0}.app-sidebar{width:var(--sidebar-width);height:100vh;position:-webkit-sticky;position:sticky;top:0;background-color:var(--bg-surface);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0;z-index:45;transition:width var(--transition-smooth);box-shadow:1px 0 3px rgba(36,48,71,.02)}.app-sidebar-collapsed{width:var(--sidebar-collapsed-width)}.sidebar-header{height:var(--header-height);padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.sidebar-nav-list{flex:1 1;padding:16px 12px;display:flex;flex-direction:column;gap:6px;overflow-y:auto}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.88rem;font-weight:600;text-decoration:none;border:1px solid transparent;transition:all var(--transition-base);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-height:44px;position:relative}@media (hover:hover){.sidebar-nav-item:hover{background-color:var(--bg-tertiary);color:var(--text-primary);transform:translateX(2px)}}.sidebar-nav-item-active{background-color:var(--pastel-mint)!important;color:var(--pastel-mint-text)!important;border-color:var(--pastel-mint-active)!important;font-weight:700;box-shadow:var(--shadow-xs);transition:background-color var(--transition-base),color var(--transition-base)}.sidebar-nav-item-active:before{content:"";position:absolute;left:3px;top:10px;bottom:10px;width:3px;border-radius:var(--radius-full);background-color:var(--pastel-mint-text);animation:indicatorFadeIn var(--transition-fast)}@keyframes indicatorFadeIn{0%{opacity:0;transform:scaleY(.4)}to{opacity:1;transform:scaleY(1)}}.sidebar-submenu{display:flex;flex-direction:column;gap:2px;padding-left:20px;margin-top:2px;margin-bottom:4px;border-left:2px solid var(--border-subtle);margin-left:20px}.sidebar-sub-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.81rem;font-weight:500;text-decoration:none;background:none;border:1px solid transparent;cursor:pointer;transition:all var(--transition-base);text-align:left;width:100%}.sidebar-sub-item:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.sidebar-sub-item-active{color:var(--pastel-mint-text);font-weight:600;background-color:var(--pastel-mint-light);border-color:var(--pastel-mint)}.sidebar-section-divider{height:1px;background-color:var(--border-subtle);margin:8px 6px}.sidebar-assistant-pill{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background-color:var(--pastel-lavender-light);border:1px solid var(--pastel-lavender);border-radius:var(--radius-md);color:var(--pastel-lavender-text);font-size:.82rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);width:100%;text-align:left}.sidebar-assistant-pill:hover{background-color:var(--pastel-lavender);box-shadow:var(--shadow-xs)}.sidebar-footer{padding:14px 12px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:8px;background-color:var(--bg-tertiary);flex-shrink:0}.mobile-nav-backdrop{position:fixed;inset:0;background-color:var(--bg-backdrop);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;animation:modalFadeIn .2s cubic-bezier(.16,1,.3,1)}.mobile-nav-drawer{position:fixed;top:0;bottom:0;left:0;width:290px;max-width:85vw;background-color:var(--bg-surface);z-index:1001;box-shadow:var(--shadow-modal);display:flex;flex-direction:column;overflow:hidden;animation:slideDrawer .24s cubic-bezier(.16,1,.3,1)}@keyframes slideDrawer{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@media (max-width:1023px){.app-sidebar,.desktop-only-toggle{display:none!important}.mobile-only-flex{display:flex!important}}@media (min-width:1024px){.mobile-nav-toggle,.mobile-only-flex{display:none!important}}.ai-code-block{background-color:#1e293b;color:#f8fafc;border-radius:var(--radius-md);overflow:hidden;margin:6px 0;border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs)}.ai-code-header{justify-content:space-between;padding:6px 12px;background-color:#0f172a;border-bottom:1px solid #334155;font-size:.74rem;font-weight:600}.ai-code-header,.ai-code-lang{display:flex;align-items:center}.ai-code-lang{gap:6px;color:#94a3b8}.ai-code-copy-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid #475569;background-color:#1e293b;color:#cbd5e1;font-size:.72rem;cursor:pointer;transition:all var(--transition-base)}.ai-code-copy-btn:hover{background-color:#334155;color:#ffffff}.ai-code-pre{margin:0;padding:12px;font-family:var(--font-mono);font-size:.8rem;line-height:1.5;overflow-x:auto;color:#e2e8f0;white-space:pre}.ai-inline-code{font-family:var(--font-mono);font-size:.82em;padding:2px 6px;border-radius:var(--radius-sm);background-color:var(--pastel-lavender-light);border:1px solid var(--pastel-lavender);color:var(--pastel-lavender-text);font-weight:600}.ai-callout{display:flex;gap:10px;padding:10px 12px;border-radius:var(--radius-md);margin:4px 0}.ai-callout-warning{background-color:var(--pastel-yellow-light);border:1px solid var(--pastel-yellow);color:var(--status-warning-text)}.ai-callout-info{background-color:var(--pastel-sky-light);border:1px solid var(--pastel-sky);color:var(--pastel-sky-text)}.ai-callout-error{background-color:var(--pastel-peach-light);border:1px solid var(--pastel-peach);color:var(--status-error)}.ai-prompt-chip:hover{background-color:var(--pastel-sky)!important;color:var(--text-primary)!important;transform:translateY(-1px)}.ai-drawer-backdrop{display:none}@media (max-width:1023px){.ai-drawer-backdrop{display:block!important;position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(36,48,71,.4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99}.ai-drawer-panel{position:fixed!important;top:0!important;right:0!important;bottom:0!important;width:100%!important;max-width:400px!important;z-index:100!important;box-shadow:var(--shadow-modal)!important;animation:drawerSlideIn .24s cubic-bezier(.16,1,.3,1)}}@keyframes drawerSlideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.toast-container{position:fixed;bottom:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:10px;pointer-events:none;max-width:420px;width:calc(100vw - 32px)}.toast-item{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);border:1px solid var(--border-medium);background-color:var(--bg-surface);color:var(--text-primary);font-size:.84rem;animation:toastSlideUp var(--transition-interactive) cubic-bezier(.16,1,.3,1);transition:opacity var(--transition-fast),transform var(--transition-fast)}.toast-item-success{background-color:var(--pastel-mint-light);border-color:var(--pastel-mint);color:var(--pastel-mint-text)}.toast-item-info{background-color:var(--pastel-sky-light);border-color:var(--pastel-sky);color:var(--pastel-sky-text)}.toast-item-warning{background-color:var(--pastel-yellow-light);border-color:var(--pastel-yellow);color:var(--pastel-yellow-text)}.toast-item-error{background-color:var(--status-error-bg);border-color:var(--status-error-border);color:var(--status-error-text)}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}