.ccl-error-boundary{box-sizing:border-box;padding:20px;min-height:100vh;background:var(--bg-primary);color:var(--text-primary)}.ccl-error-boundary h2{margin:0 0 12px;font-size:1.25rem;color:var(--text-primary)}.ccl-error-boundary__trace{white-space:pre-wrap;font-family:var(--font-mono);font-size:13px;line-height:1.5;margin:0;padding:14px 16px;border-radius:10px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary)}[data-theme=dark] .ccl-error-boundary__trace{border-color:#f8717159;background:#7f1d1d59;color:#fecaca}[data-theme=light] .ccl-error-boundary__trace{border-color:#dc262640;background:#fef2f2;color:#991b1b}.menu-bar{display:flex;align-items:center;padding:0 20px;height:var(--menu-bar-height);background:#0f1115d9;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-bottom:1px solid var(--border);position:relative;z-index:100}[data-theme=light] .menu-bar{background:#ecebe4e0}.menu-brand{display:flex;align-items:center;gap:12px;flex-shrink:0;min-width:0}.menu-brand__inner{display:flex;align-items:center;gap:12px}.menu-sync-wrap{position:relative;display:inline-flex}.menu-logo-wrap{height:32px;width:auto;min-width:100px;max-width:min(220px,40vw);border:none;background:transparent;display:flex;align-items:center;justify-content:flex-start;padding:0;cursor:pointer}.menu-logo{height:100%;width:auto;max-width:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center}.menu-brand h1{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.02em}.menu-session-pill{margin-left:12px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;padding:5px 12px;border-radius:var(--radius-pill);color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border);letter-spacing:-.01em}[data-theme=light] .menu-session-pill{background:var(--bg-elevated)}.menu-sync-pill{margin-left:8px;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;padding:5px 10px;border-radius:var(--radius-pill);cursor:pointer;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);transition:background .18s ease,color .18s ease,border-color .18s ease}.menu-sync-pill:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-strong)}[data-theme=light] .menu-sync-pill{background:var(--bg-elevated)}.menu-sync-dot{width:6px;height:6px;border-radius:999px;flex-shrink:0}.menu-sync-dot--on{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.menu-sync-dot--off{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.menu-watcher-popover{position:absolute;top:calc(100% + 8px);right:0;min-width:280px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:10px;z-index:2000;box-shadow:var(--shadow-lg)}.menu-watcher-popover__title{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.menu-watcher-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.menu-watcher-card:hover{background:var(--bg-elevated);border-color:var(--border-strong)}.menu-watcher-card__row{display:flex;align-items:center;justify-content:space-between}.menu-watcher-card__primary{font-size:13px;font-weight:600;color:var(--text-primary)}.menu-watcher-card__hint,.menu-watcher-muted{font-size:11px;color:var(--text-muted);margin-top:4px}.menu-watcher-files{margin-top:8px;max-height:180px;overflow-y:auto;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px}.menu-watcher-file-list{display:flex;flex-direction:column;gap:4px}.menu-watcher-file-line{font-size:11px;font-family:var(--font-mono);color:var(--text-primary);word-break:break-all}.menu-tabs{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:2px;padding:4px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);z-index:1}[data-theme=light] .menu-tabs{background:var(--bg-elevated)}.menu-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;color:var(--text-secondary);border:none;border-radius:var(--radius-pill);cursor:pointer;font-size:13px;font-weight:500;font-family:inherit;letter-spacing:-.005em;transition:color .18s ease,background .18s ease}.menu-tab:hover{color:var(--text-primary);background:var(--bg-tertiary)}.menu-tab.active{background:var(--accent);color:var(--accent-on);font-weight:600;box-shadow:0 6px 16px -8px var(--accent-ring)}.menu-tab.active:hover{background:var(--accent-hover);color:var(--accent-on)}.menu-tab:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.tab-icon{font-size:16px;display:inline-flex;align-items:center;color:currentColor}.menu-tab__label-wrap{display:inline-flex;align-items:center;gap:6px}.menu-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.user-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-pill)}.menu-user-wrap{position:relative;z-index:50}.menu-user-trigger{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 6px 12px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .18s ease,border-color .18s ease}.menu-user-trigger:hover,.menu-user-trigger[aria-expanded=true]{background:var(--bg-tertiary);border-color:var(--border-strong)}.menu-user-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-user-chevron{flex-shrink:0;opacity:.7;transition:transform .2s ease}.menu-user-chevron--open{transform:rotate(180deg);opacity:1}.menu-user-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:220px;padding:6px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);box-shadow:var(--shadow-lg);animation:menu-user-dropdown-in .18s cubic-bezier(.22,1,.36,1);transform-origin:top right}@keyframes menu-user-dropdown-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.menu-user-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:13px;text-align:left;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease}.menu-user-item:hover{background:var(--bg-tertiary)}.menu-user-item--danger{color:var(--danger)}.menu-user-item--danger:hover{background:var(--danger-soft);color:var(--danger)}.menu-login-btn{padding:7px 16px;font-size:13px;font-weight:600;background:var(--accent);color:var(--accent-on);border:none;border-radius:var(--radius-pill);cursor:pointer;font-family:inherit;transition:background .18s ease,transform .12s ease}.menu-login-btn:hover{background:var(--accent-hover)}@media (max-width: 900px){.menu-tabs{position:static;transform:none;flex-shrink:1;min-width:0;overflow-x:auto;margin:0 12px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.menu-tabs::-webkit-scrollbar{display:none}.menu-brand{gap:8px}.menu-session-pill{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:8px;padding:4px 8px;font-size:11px}.menu-sync-pill{margin-left:6px;padding:5px 8px;font-size:10px;gap:4px}.menu-tab{padding:6px 10px;font-size:12px}.menu-user-name{max-width:80px}}@media (max-width: 767px){.menu-bar{padding:0 max(12px,env(safe-area-inset-left)) 0 max(12px,env(safe-area-inset-right));padding-top:env(safe-area-inset-top,0px);height:auto;min-height:var(--menu-bar-height);align-items:center;border-bottom:1px solid var(--border);z-index:101}.menu-brand{flex:1;min-width:0;gap:6px}.menu-logo-wrap{max-width:min(168px,46vw);height:28px;width:auto;min-width:0}.menu-session-pill{display:none}.menu-sync-pill{flex-shrink:0;margin-left:0;padding:8px 10px;font-size:0;gap:0}.menu-sync-pill__text{display:none}.menu-sync-pill .menu-sync-dot{margin:0}.menu-actions{flex-shrink:0;margin-left:8px}.menu-user-name{max-width:72px}.menu-login-btn{padding:8px 14px;font-size:12px}.menu-tabs{position:fixed;left:0;right:0;bottom:0;transform:none;margin:0;padding:6px 6px calc(8px + env(safe-area-inset-bottom,0px));gap:2px;justify-content:space-between;align-items:stretch;border-radius:0;border:none;border-top:1px solid var(--border);background:#0f1115f0;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);box-shadow:0 -8px 32px #00000059;z-index:100;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100vw}[data-theme=light] .menu-tabs{background:#ecebe4f5;box-shadow:0 -8px 28px #1c1e2614}.menu-tabs::-webkit-scrollbar{display:none}.menu-tab{flex:1 1 0;min-width:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 2px;font-size:10px;font-weight:600;border-radius:10px;line-height:1.15}.tab-icon{display:inline-flex!important;font-size:20px;line-height:1}.menu-tab__label-wrap{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:9px;font-weight:600;letter-spacing:.02em;color:inherit;opacity:.92}.menu-tab.active .menu-tab__label-wrap{opacity:1}.menu-watcher-popover{right:0;left:auto;min-width:min(300px,calc(100vw - 24px));max-width:calc(100vw - 24px)}.menu-user-dropdown{max-width:calc(100vw - 24px)}}.ccl-dev-pill{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--radius-pill);border:1px solid var(--warning-soft);background:var(--warning-soft);color:var(--warning);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.2}.login-identify__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:3000}.login-identify__panel{background:#0f1419;padding:20px;border-radius:8px;width:420px;max-width:92vw;color:#e6eef8;border:1px solid rgba(255,255,255,.08)}.login-identify__panel h3{margin-top:0;margin-bottom:8px;color:#f1f5f9}.login-identify__field{margin-top:8px}.login-identify__field label{display:block;font-size:13px;color:#94a3b8}.login-identify__field input{width:100%;padding:8px;margin-top:6px;border-radius:6px;border:1px solid rgba(255,255,255,.12);background:#00000059;color:#e6eef8;font-size:14px;box-sizing:border-box}.login-identify__field input:focus{outline:none;border-color:#3b82f68c}.login-identify__actions{margin-top:12px;display:flex;gap:8px;justify-content:flex-end}.login-identify__actions button{padding:8px 14px;border-radius:6px;font-size:14px;cursor:pointer;border:none}.login-identify__cancel{background:var(--bg-tertiary);color:var(--text-primary)}.login-identify__save{background:#2563eb;color:#fff}[data-theme=light] .login-identify__backdrop{background:var(--overlay-scrim)}[data-theme=light] .login-identify__panel{background:var(--bg-secondary);color:var(--text-primary);border:1px solid rgba(15,23,42,.12);box-shadow:var(--modal-elevated-shadow)}[data-theme=light] .login-identify__panel h3{color:var(--text-primary)}[data-theme=light] .login-identify__field label{color:var(--text-secondary)}[data-theme=light] .login-identify__field input{background:var(--bg-primary);border-color:#0f172a24;color:var(--text-primary)}[data-theme=light] .login-identify__cancel{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}.local-login__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at top,var(--accent-soft) 0%,transparent 60%),var(--bg-canvas);display:flex;align-items:center;justify-content:center;z-index:3002;padding:20px}.local-login__frame{width:min(440px,92vw);padding:0;border-radius:var(--radius-xl);background:transparent;box-shadow:var(--shadow-lg)}.local-login__card{border-radius:var(--radius-xl);padding:36px 32px 28px;background:var(--bg-elevated);border:1px solid var(--border-strong)}.local-login__logo-pill{width:64px;height:64px;margin:0 auto 18px;border-radius:18px;border:1px solid var(--accent-soft);background:var(--accent-soft);display:grid;place-items:center}.local-login__logo-pill img{width:36px;height:36px;-o-object-fit:contain;object-fit:contain}.local-login__title{margin:0 0 8px;text-align:center;font-family:var(--font-display);font-size:clamp(24px,4vw,30px);font-weight:700;letter-spacing:-.025em;color:var(--text-primary)}.local-login__subtitle{margin:0 0 22px;text-align:center;color:var(--text-secondary);font-size:14px;line-height:1.5}.local-login__label{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.local-login__input{width:100%;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-canvas);color:var(--text-primary);font-size:15px;padding:11px 14px;outline:none;font-family:inherit;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;box-sizing:border-box;margin-bottom:14px}.local-login__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.local-login__input--mb-sm{margin-bottom:8px}.local-login__btn-primary{margin-top:12px;width:100%;border:none;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-on);font-size:14px;font-weight:600;font-family:inherit;letter-spacing:-.005em;padding:12px 14px;cursor:pointer;transition:background .18s ease,transform .12s ease,box-shadow .18s ease;box-shadow:0 10px 24px -14px var(--accent-ring)}.local-login__btn-primary:disabled{cursor:not-allowed;opacity:.55}.local-login__btn-primary:not(:disabled):hover{background:var(--accent-hover);transform:translateY(-1px)}.local-login__btn-primary:not(:disabled):active{transform:translateY(0)}.local-login__btn-secondary{margin-top:10px;width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-size:14px;font-weight:600;font-family:inherit;padding:11px 14px;cursor:pointer;transition:background .18s ease,border-color .18s ease}.local-login__btn-secondary:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.local-login__btn-tertiary{margin-top:10px;width:100%;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font-size:13px;font-weight:500;font-family:inherit;padding:10px 14px;cursor:pointer;transition:color .18s ease}.local-login__btn-tertiary:hover{color:var(--text-primary)}.local-login__link{margin-top:4px;margin-bottom:8px;background:none;border:none;padding:0;font-size:13px;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-family:inherit;align-self:flex-start}.local-login__error{margin-top:12px;min-height:18px;text-align:center;color:var(--danger);font-size:13px}.local-login__info{margin-top:12px;font-size:13px;line-height:1.5;color:var(--success);text-align:center}.local-login__oauth-row{display:flex;flex-direction:column;gap:10px;margin-bottom:4px}.local-login__oauth-btn{width:100%;padding:12px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;letter-spacing:-.005em;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--bg-canvas);color:var(--text-primary);transition:background .18s ease,border-color .18s ease,transform .12s ease}.local-login__oauth-btn:hover{background:var(--bg-secondary);border-color:var(--accent)}.local-login__oauth-btn:active{transform:translateY(1px)}.local-login__oauth-icon{width:18px;height:18px;flex-shrink:0}.local-login__divider{display:flex;align-items:center;gap:12px;margin:4px 0 18px}.local-login__divider-line{flex:1;height:1px;background:var(--border)}.local-login__divider-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.local-login__support-body{margin:0 0 18px;font-size:14px;line-height:1.55;color:var(--text-secondary);text-align:center}.local-login__support-email{display:block;margin-top:12px;font-size:16px;font-weight:600;color:var(--accent);text-align:center;word-break:break-all}.oauth-login__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at top,var(--accent-soft) 0%,transparent 60%),var(--bg-canvas);display:flex;align-items:center;justify-content:center;z-index:3000;padding:20px}.oauth-login__frame{width:min(440px,92vw);padding:0;border-radius:var(--radius-xl);background:transparent;box-shadow:var(--shadow-lg)}.oauth-login__card{border-radius:var(--radius-xl);padding:36px 32px 28px;background:var(--bg-elevated);border:1px solid var(--border-strong)}.oauth-login__logo-pill{width:64px;height:64px;margin:0 auto 18px;border-radius:18px;border:1px solid var(--accent-soft);background:var(--accent-soft);display:grid;place-items:center}.oauth-login__logo-pill img{width:36px;height:36px;-o-object-fit:contain;object-fit:contain}.oauth-login__title{margin:0 0 8px;text-align:center;font-family:var(--font-display);font-size:clamp(24px,4vw,30px);font-weight:700;letter-spacing:-.025em;color:var(--text-primary)}.oauth-login__subtitle{margin:0 0 24px;text-align:center;color:var(--text-secondary);font-size:14px;line-height:1.5}.oauth-login__btn-google{width:100%;padding:12px 14px;margin-bottom:12px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;letter-spacing:-.005em;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--bg-canvas);color:var(--text-primary);transition:background .18s ease,transform .12s ease,border-color .18s ease}.oauth-login__btn-google-icon{width:18px;height:18px;flex-shrink:0}.oauth-login__btn-google:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--accent)}.oauth-login__btn-google:active:not(:disabled){transform:translateY(1px)}.oauth-login__btn-google:disabled{opacity:.55;cursor:not-allowed}.oauth-login__btn-cancel{margin-top:8px;width:100%;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font-size:13px;font-weight:500;padding:10px 14px;cursor:pointer;font-family:inherit;transition:color .18s ease}.oauth-login__btn-cancel:hover{color:var(--text-primary)}.page{padding:28px 32px;color:var(--text-primary);width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;align-items:center}.page>*{width:100%;max-width:1200px}.page h2{text-align:center;margin-bottom:8px;font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.hero{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:48px 36px;margin-bottom:36px;text-align:center}.hero-inner{max-width:700px;margin:0 auto}.hero h1{font-family:var(--font-display);font-size:36px;font-weight:700;letter-spacing:-.025em;margin-bottom:16px;color:var(--text-primary)}.lead{color:var(--text-secondary);margin-bottom:24px;font-size:16px;line-height:1.6}.hero-cta{display:flex;gap:12px;justify-content:center;margin-bottom:24px;flex-wrap:wrap}.session-box{margin-top:18px;display:flex;align-items:center;gap:12px;justify-content:center;padding:14px 18px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md)}.session-id{background:var(--bg-elevated);padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13px;color:var(--accent);-webkit-user-select:all;-moz-user-select:all;user-select:all}.session-note{color:var(--success);font-size:13px}.features{margin-bottom:36px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.card{background:var(--bg-secondary);padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border);transition:border-color .18s ease,transform .18s ease}.card:hover{border-color:var(--border-strong)}.card h3{margin-bottom:10px;font-size:17px;font-weight:700;color:var(--text-primary)}.card p{color:var(--text-secondary);font-size:14px;line-height:1.6}.ccl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:var(--radius-pill);font-size:14px;font-weight:600;font-family:inherit;letter-spacing:-.005em;cursor:pointer;border:1px solid transparent;background:var(--bg-secondary);color:var(--text-primary);transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease,opacity .18s ease}.ccl-btn:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.ccl-btn:disabled{opacity:.55;cursor:not-allowed}.ccl-btn--primary,.ccl-btn--shine,.ccl-btn--accent{background:var(--accent);color:var(--accent-on);box-shadow:0 10px 26px -14px var(--accent-ring)}.ccl-btn--primary:hover:not(:disabled),.ccl-btn--shine:hover:not(:disabled),.ccl-btn--accent:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 14px 30px -12px var(--accent-ring)}.ccl-btn--primary:active:not(:disabled),.ccl-btn--shine:active:not(:disabled),.ccl-btn--accent:active:not(:disabled){transform:translateY(0);background:var(--accent-pressed)}.ccl-btn--accent.ccl-create-manual,.ccl-btn--danger{background:var(--danger);color:#fff;box-shadow:0 10px 26px -14px #ff5d6c73}.ccl-btn--accent.ccl-create-manual:hover:not(:disabled),.ccl-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 88%,#000);transform:translateY(-1px)}.ccl-btn--warning{background:var(--warning);color:var(--text-inverse);box-shadow:0 10px 26px -14px #f4b74073}.ccl-btn--warning:hover:not(:disabled){background:color-mix(in srgb,var(--warning) 90%,#000);transform:translateY(-1px)}.ccl-btn--ghost:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--text-secondary)}.ccl-btn--sm{padding:7px 14px;font-size:12px}.ccl-btn--compact{padding:9px 16px;font-size:13px}.ccl-input,.ccl-select{width:100%;padding:11px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;box-sizing:border-box}.ccl-select{cursor:pointer}.ccl-input::-moz-placeholder{color:var(--text-muted)}.ccl-input::placeholder{color:var(--text-muted)}.ccl-input:focus,.ccl-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.ccl-input--mono{font-family:var(--font-mono);font-size:13px}.ccl-field-grid{display:grid;gap:10px}.ccl-field-row{display:flex;gap:8px;flex-wrap:wrap}.ccl-field-row .ccl-btn{flex:1;min-width:100px}.ccl-glass-frame{border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.ccl-glass-inner{border-radius:calc(var(--radius-lg) - 1px);padding:22px;background:transparent;border:none}.ccl-glass-inner--tight{padding:18px}.ccl-section-label{display:block;margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.ccl-section-title{margin:0 0 10px;font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.ccl-section-desc{margin:0 0 16px;font-size:14px;line-height:1.6;color:var(--text-secondary)}.ccl-stat-row{display:flex;flex-wrap:wrap;gap:8px}.ccl-stat-pill{display:inline-flex;align-items:baseline;gap:6px;padding:6px 12px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg-tertiary)}.ccl-stat-pill strong{font-size:14px;font-weight:700;color:var(--text-primary)}.ccl-stat-pill span{font-size:12px;color:var(--text-secondary)}.ccl-user-strip{display:flex;flex-direction:column;gap:10px}.ccl-user-strip-label{margin:0;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.ccl-user-strip-name{margin:0;font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:-.015em;color:var(--text-primary)}.ccl-empty-glass{text-align:center;padding:36px 24px}.ccl-empty-glass p{margin:0;color:var(--text-secondary);font-size:15px;line-height:1.5}.ccl-activity-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.ccl-activity-toolbar .ccl-select--activity{max-width:160px;flex-shrink:0}.ccl-activity-scroll{overflow-y:auto;border-radius:var(--radius-md);background:transparent}.ccl-activity-row{padding:10px 12px;border-bottom:1px solid var(--border);font-size:12px}.ccl-activity-row:last-child{border-bottom:none}.ccl-activity-head{display:flex;justify-content:space-between;margin-bottom:4px;gap:8px}.ccl-activity-user{color:var(--text-primary);font-weight:600}.ccl-activity-time{color:var(--text-muted);font-size:11px}.ccl-activity-body{color:var(--text-secondary)}.ccl-activity-placeholder{padding:18px;text-align:center;color:var(--text-muted);font-size:12px}.ccl-action-stack{display:flex;flex-direction:column;gap:14px}.ccl-join-row{display:flex;gap:10px;align-items:stretch}.ccl-join-row .ccl-input{flex:1}.ccl-latest-session-box{margin-top:16px;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-tertiary)}.ccl-seg{display:inline-flex;padding:3px;border-radius:var(--radius-pill);background:var(--bg-tertiary);border:1px solid var(--border);gap:2px}.ccl-seg button{padding:6px 12px;border-radius:var(--radius-pill);border:none;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;background:transparent;color:var(--text-secondary);transition:background .18s ease,color .18s ease}.ccl-seg button:hover{color:var(--text-primary)}.ccl-seg button.ccl-seg--active{background:var(--accent);color:var(--accent-on)}.ccl-list-panel{min-height:0;overflow:hidden}.ccl-list-panel .ccl-glass-inner{min-height:360px;display:flex;flex-direction:column}.ccl-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.ccl-list-head h3{margin:0;font-family:var(--font-display);font-size:1.1rem;font-weight:700;letter-spacing:-.015em;color:var(--text-primary)}.ccl-list-sub{margin:6px 0 0;font-size:12px;color:var(--text-secondary)}.ccl-muted-italic{color:var(--text-secondary);font-style:italic;text-align:center;padding:20px;margin:0}.ccl-trash-wrap.ccl-glass-frame{border-color:var(--danger-soft)}.ccl-trash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.ccl-trash-header h3{margin:0;font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:-.015em;color:var(--danger)}.ccl-trash-item{padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--danger-soft);background:var(--danger-soft);display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ccl-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;min-height:100dvh;z-index:3500;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--overlay-scrim);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);overflow-y:auto;overscroll-behavior:contain}.ccl-modal-backdrop--high{z-index:3600}.ccl-modal-backdrop--mid{z-index:3000}.ccl-modal-card{width:100%;max-width:540px;max-height:calc(100dvh - 40px);padding:0;border-radius:var(--radius-xl);background:var(--bg-elevated);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);overflow:auto}.ccl-modal-card--wide{max-width:640px}.ccl-modal-inner{border-radius:var(--radius-xl);padding:28px 26px 24px;background:transparent;border:none}.ccl-modal-inner--danger{border:1px solid var(--danger-soft)}.ccl-modal-title{margin:0 0 10px;font-family:var(--font-display);font-size:1.4rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.ccl-modal-title--sm{font-size:1.1rem}.ccl-modal-text{margin:0 0 18px;font-size:14px;line-height:1.6;color:var(--text-secondary)}.ccl-modal-text--fine{font-size:12px;color:var(--text-muted);margin-top:-8px}.ccl-modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:8px}.ccl-modal-field{margin-bottom:18px}.ccl-modal-label{display:block;margin-bottom:6px;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.ccl-modal-status{margin-bottom:12px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-tertiary)}.ccl-modal-hint{margin-top:12px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--accent-soft);background:var(--accent-soft);color:var(--text-primary);font-size:12px;line-height:1.5}.ccl-modal-logo{width:56px;height:56px;margin:0 auto 14px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--bg-tertiary);display:grid;place-items:center}.ccl-mode-option{width:100%;text-align:left;padding:14px 16px;margin-bottom:10px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-tertiary);cursor:pointer;color:var(--text-primary);font-family:inherit;transition:border-color .18s ease,background .18s ease}.ccl-mode-option--auto.ccl-mode-option--selected{border:2px solid var(--accent);background:var(--accent-soft)}.ccl-mode-option--local.ccl-mode-option--selected{border:2px solid var(--danger);background:var(--danger-soft)}.ccl-mode-option strong{display:block;font-size:15px;font-weight:700;color:var(--text-primary)}.ccl-mode-option p{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--text-secondary)}.ccl-mode-option-row{display:flex;align-items:center;gap:10px}.ccl-mode-option-emoji{font-size:20px;line-height:1}.tab-content{padding:32px 24px;flex:1;display:flex;flex-direction:column;align-items:center;max-height:calc(100vh - var(--menu-bar-height) - var(--mobile-nav-height, 0px) - 4px)}.tab-content h2{margin-bottom:20px;color:var(--text-primary);font-size:28px;font-weight:700;letter-spacing:-.02em}.sessions-page{padding:24px}.sessions-shell{max-width:1200px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:20px}.settings-grid{display:grid;grid-template-columns:1fr;gap:18px;margin-top:20px;width:100%}.setting-card{background:var(--bg-secondary);padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border);transition:border-color .18s ease}.setting-card:hover{border-color:var(--border-strong)}.setting-card h3{font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:-.015em;margin-bottom:14px;color:var(--text-primary)}.setting-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.terminal-card{background:var(--bg-secondary);padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border);width:100%}.files-grid{display:grid;grid-template-columns:1fr;gap:20px;width:100%}.files-explorer{background:var(--bg-secondary);padding:22px;border-radius:var(--radius-lg);border:1px solid var(--border)}.files-info{background:var(--bg-primary);padding:22px;border-radius:var(--radius-lg)}.muted{color:var(--text-secondary);font-size:13px}.scroll-mt-4{scroll-margin-top:1.25rem}@media (max-width: 768px){.page{max-width:100%;padding:22px 16px}.hero{padding:32px 22px}.hero h1{font-size:28px}.hero-cta{flex-direction:column}.hero-cta button{width:100%}.cards{grid-template-columns:1fr}.sessions-page{padding:14px}.session-box{flex-direction:column;text-align:center}}.ccl-sessions-root.sessions-page{position:relative;isolation:isolate;min-height:100%;padding:clamp(24px,4vw,40px) clamp(16px,3vw,32px) 80px;color:var(--text-primary);font-family:var(--font-sans);background:var(--bg-canvas)}.ccl-sessions-root.sessions-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 70% 50% at 50% 0%,black 0%,transparent 70%);mask-image:radial-gradient(ellipse 70% 50% at 50% 0%,black 0%,transparent 70%);opacity:.5}[data-theme=light] .ccl-sessions-root.sessions-page:before{opacity:.4}.ccl-sessions-orb{display:none}.settings-page-layout{display:grid;grid-template-columns:minmax(180px,220px) 1fr;gap:28px;align-items:start}.ccl-sessions-shell{position:relative;z-index:1;max-width:1200px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:20px}.ccl-sessions-hero{text-align:left;padding:8px 4px 16px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.ccl-sessions-badge{display:none}.ccl-sessions-title{margin:0;font-family:var(--font-display);font-size:clamp(2rem,4vw,2.5rem);font-weight:700;letter-spacing:-.025em;line-height:1.1;color:var(--text-primary)}.ccl-sessions-lead{margin:0;max-width:44rem;font-size:15px;line-height:1.6;color:var(--text-secondary)}.ccl-user-strip-email{opacity:.75;font-weight:500}.sessions-dashboard{display:flex;flex-direction:column;gap:clamp(16px,2.5vw,24px)}.ccl-sessions-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.ccl-sessions-toolbar__join{display:flex;gap:8px;align-items:center}.ccl-sessions-toolbar .ccl-input{width:260px}.ccl-latest-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:var(--radius-pill);background:var(--bg-tertiary);border:1px solid var(--border);font-size:13px}.ccl-latest-chip__label{color:var(--text-secondary);font-size:12px;font-weight:600}.ccl-latest-chip__id{font-family:var(--font-mono);color:var(--accent);font-size:12px;word-break:break-all}.ccl-latest-chip__dismiss{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--border);font-size:14px;cursor:pointer;padding:0;line-height:1;transition:background .15s ease,color .15s ease}.ccl-latest-chip__dismiss:hover{background:var(--bg-elevated);color:var(--text-primary)}.sessions-body-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;align-items:stretch}.sessions-list-column,.sessions-activity-column{min-width:0;display:flex;flex-direction:column;min-height:0}.sessions-activity-column{position:sticky;top:16px}.sessions-list-column>.ccl-glass-frame{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.sessions-list-column>.ccl-glass-frame>.ccl-glass-inner{flex:1 1 auto;min-height:380px}.sessions-activity-column>.ccl-glass-frame{flex:0 0 auto;display:flex;flex-direction:column;height:var(--ccl-activity-card-height, 420px);min-height:var(--ccl-activity-card-height, 420px);max-height:var(--ccl-activity-card-height, 420px);min-width:0}.sessions-activity-column>.ccl-glass-frame>.ccl-glass-inner{flex:1 1 auto;min-height:0;height:100%;max-height:100%;display:flex;flex-direction:column;box-sizing:border-box}.sessions-body-split .ccl-activity-aside.ccl-list-panel{height:100%}.sessions-activity-column .ccl-list-panel .ccl-glass-inner{min-height:0}.ccl-activity-aside .ccl-activity-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.ccl-activity-section-label{margin-bottom:4px}.ccl-activity-section-title{margin:0}.ccl-list-toolbar{display:flex;flex-direction:column;gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border)}.ccl-list-toolbar__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.ccl-list-toolbar__count{font-size:12px;color:var(--text-muted);white-space:nowrap}.ccl-list-toolbar__filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ccl-list-toolbar .ccl-input{flex:1;min-width:100px;max-width:180px;padding:7px 10px;font-size:12px}.ccl-list-toolbar .ccl-select{width:auto;min-width:90px;padding:7px 10px;font-size:12px}.ccl-session-list{display:flex;flex-direction:column;gap:2px}.ccl-list-status{padding:24px;text-align:center;color:var(--text-secondary);font-size:14px}.ccl-list-status--empty{font-style:italic;color:var(--text-muted)}.ccl-list-status--center{text-align:center}.ccl-session-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.ccl-session-row:hover{background:var(--bg-tertiary);border-color:var(--border)}.ccl-session-row__main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;overflow:hidden}.ccl-session-row__name{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.ccl-mode-chip{display:inline-flex;align-items:center;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1;padding:3px 8px;border-radius:var(--radius-pill);color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);flex-shrink:0}.ccl-session-row__date{font-size:12px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.ccl-session-row__id{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;flex-shrink:1}.ccl-session-row__actions{display:flex;gap:4px;flex-shrink:0;opacity:.5;transition:opacity .15s ease}.ccl-session-row:hover .ccl-session-row__actions{opacity:1}.session-type-chip{display:inline-flex;align-items:center;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1;padding:3px 8px;border-radius:var(--radius-pill);color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-soft);flex-shrink:0}.session-type-chip-joined{color:var(--warning);background:var(--warning-soft);border-color:var(--warning-soft)}.ccl-session-btn{padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:11px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .12s ease}.ccl-session-btn:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-strong)}.ccl-session-btn:disabled{opacity:.55;cursor:not-allowed}.ccl-session-btn--primary{background:var(--accent);color:var(--accent-on);border-color:transparent}.ccl-session-btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:transparent}.ccl-session-btn--subtle{background:transparent;color:var(--text-secondary)}.ccl-session-btn--subtle:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-primary)}.ccl-session-btn--danger{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-soft)}.ccl-session-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger-soft) 80%,var(--danger) 20%);border-color:var(--danger);color:var(--danger)}.ccl-rename-row{width:100%;display:flex;gap:8px;align-items:center;padding-top:8px}.ccl-rename-input{flex:1;padding:8px 10px;background:var(--bg-elevated);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;font-weight:600;font-family:inherit;outline:none;box-sizing:border-box}.ccl-rename-input:focus{box-shadow:0 0 0 3px var(--accent-soft)}.ccl-rename-btn{padding:7px 12px;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;font-weight:600;font-family:inherit;transition:background .15s ease,opacity .15s ease}.ccl-rename-btn--save{background:var(--accent);color:var(--accent-on)}.ccl-rename-btn--save:hover:not(:disabled){background:var(--accent-hover)}.ccl-rename-btn--busy{opacity:.7;cursor:wait}.ccl-rename-btn--cancel{background:var(--bg-elevated);color:var(--text-secondary)}.ccl-rename-btn--cancel:hover{background:var(--bg-tertiary);color:var(--text-primary)}.ccl-sessions-root .sessions-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.ccl-trash-header-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ccl-trash-desc{color:var(--text-secondary);margin-bottom:16px;font-size:13px;line-height:1.6}.ccl-trash-empty{color:var(--text-muted);font-style:italic;text-align:center;padding:24px}.ccl-trash-list{display:flex;flex-direction:column;gap:6px}.ccl-trash-card{padding:10px 14px;background:var(--bg-tertiary);border:1px solid var(--danger-soft);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:space-between;gap:12px;opacity:.8;transition:opacity .15s ease,border-color .15s ease}.ccl-trash-card:hover{opacity:1;border-color:var(--danger)}.ccl-trash-card__info{flex:1;min-width:0}.ccl-trash-card__name{margin:0;font-size:14px;font-weight:600;color:var(--text-primary);text-decoration:line-through;opacity:.7}.ccl-trash-card__meta{margin:2px 0 0;font-size:11px;color:var(--text-secondary)}.ccl-trash-card__actions{display:flex;gap:6px;flex-shrink:0}.ccl-trash-btn--restore{padding:5px 12px;background:var(--accent);color:var(--accent-on);border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;font-family:inherit;transition:background .15s ease,opacity .15s ease}.ccl-trash-btn--restore:hover:not(:disabled){background:var(--accent-hover)}.ccl-trash-btn--restore:disabled{opacity:.7;cursor:wait}.ccl-trash-btn--danger{padding:5px 12px;background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;font-family:inherit;transition:background .15s ease,opacity .15s ease}.ccl-trash-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger-soft) 80%,var(--danger) 20%)}.ccl-trash-btn--danger:disabled{opacity:.7;cursor:wait}.ccl-review-wrap{margin-bottom:20px}.ccl-review-toggle{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ccl-review-toggle--active{background:var(--warning-soft);border-width:2px;border-color:color-mix(in srgb,var(--warning) 60%,transparent)}.ccl-review-toggle--disabled{background:var(--bg-secondary);border-color:var(--border-strong);cursor:not-allowed;opacity:.75}.ccl-review-toggle__content{display:flex;align-items:center;gap:10px}.ccl-review-toggle__title{display:block;color:var(--text-primary);font-size:14px;font-weight:700}.ccl-review-toggle__desc{margin:4px 0 0;font-size:12px;opacity:.6;color:var(--text-primary)}.ccl-review-toggle__plan-note{margin:6px 0 0;font-size:11px;color:var(--text-secondary)}.ccl-review-toggle__switch{width:44px;height:24px;border-radius:12px;background:var(--bg-elevated);position:relative;flex-shrink:0;transition:background .2s}.ccl-review-toggle--active .ccl-review-toggle__switch{background:var(--warning)}.ccl-review-toggle__knob{width:18px;height:18px;border-radius:9px;background:#fff;position:absolute;top:3px;left:3px;transition:left .2s}.ccl-review-toggle--active .ccl-review-toggle__knob{left:23px}.ccl-review-field{margin-top:12px}.ccl-review-field__label{display:block;margin-bottom:6px;color:var(--text-muted);font-size:13px}.ccl-review-field__required{color:var(--warning)}.ccl-review-field__hint{margin-left:6px;font-size:11px;opacity:.6}.ccl-review-field__input{width:100%;padding:10px 14px;background:var(--bg-elevated);border:1px solid color-mix(in srgb,var(--warning) 30%,transparent);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.ccl-review-field__input:focus{border-color:var(--warning);box-shadow:0 0 0 3px var(--warning-soft)}.ccl-review-note{margin:0 0 20px;font-size:12px;line-height:1.5;color:var(--text-secondary)}.ccl-review-note strong{color:var(--text-primary)}.ccl-coming-soon-chip{margin-left:8px;padding:2px 8px;border-radius:var(--radius-pill);font-size:11px;background:var(--accent-soft);color:var(--accent-hover)}.ccl-mode-option--disabled{opacity:.55;cursor:not-allowed}.ccl-setup-ext-box{margin-bottom:14px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--accent-ring);background:var(--accent-soft)}.ccl-setup-ext-title{color:var(--accent-hover);font-size:12px;font-weight:700;margin-bottom:8px}.ccl-setup-ext-desc{margin:0 0 10px;color:var(--text-secondary);font-size:12px;line-height:1.55}.ccl-setup-ext-actions{display:flex;flex-wrap:wrap;gap:8px}.ccl-setup-legacy-label{margin:0 0 8px;color:var(--text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.ccl-setup-status-label{color:var(--text-primary);font-size:12px;margin-bottom:4px}.ccl-setup-status-value{font-size:13px;font-weight:600}.ccl-setup-status-value--ok{color:var(--success)}.ccl-setup-status-value--error{color:var(--danger)}.ccl-setup-hint-title{font-weight:700;color:var(--text-primary);margin-bottom:6px}.ccl-setup-hint-step{margin-top:4px}.ccl-setup-hint-step strong{color:var(--text-primary)}.ccl-setup-hint-muted{margin-top:6px;color:var(--text-muted)}.ccl-modal-recommended{color:var(--text-primary)}.ccl-modal-text--mb-sm{margin-bottom:12px}.sessions-list-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.sessions-list-subtitle{margin:5px 0 0;font-size:12px;color:var(--text-secondary)}.ccl-sessions-footer-gap{height:80px}@media (max-width: 1100px){.sessions-body-split{grid-template-columns:1fr}.sessions-activity-column{position:static}}@media (max-width: 768px){.ccl-sessions-toolbar{flex-direction:column;align-items:stretch}.ccl-sessions-toolbar__join{flex-direction:column}.ccl-sessions-toolbar .ccl-input{width:100%}.ccl-list-toolbar__filters{flex-direction:column}.ccl-list-toolbar .ccl-input,.ccl-list-toolbar .ccl-select{max-width:none;width:100%}.ccl-sessions-root.sessions-page{padding:18px 14px 64px}.ccl-session-row{flex-direction:column;align-items:flex-start}.ccl-session-row__main{flex-wrap:wrap}.ccl-session-row__actions{opacity:1;width:100%;justify-content:flex-start}.ccl-trash-card{flex-direction:column;align-items:flex-start}.ccl-latest-chip{flex-wrap:wrap}.settings-page-layout{grid-template-columns:1fr!important}.settings-page-nav{position:static!important;flex-direction:row!important;flex-wrap:wrap}}.editor-tabs{display:flex;align-items:center;flex-shrink:0;min-height:38px;height:38px;background:var(--sess-tabs-bar);border-bottom:1px solid var(--sess-border);position:relative;overflow-x:auto;overflow-y:hidden}.tabs-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--sess-muted);font-size:12px}.editor-tab{display:flex;align-items:center;height:100%;min-width:90px;max-width:220px;background-color:transparent;border-right:1px solid var(--sess-border);padding:0 12px;position:relative;transition:background .15s ease}.editor-tab:hover:not(.active){background:var(--sess-surface-2)}.editor-tab.active{background:var(--sess-tabs-active);margin-bottom:-1px}.editor-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);border-radius:2px 2px 0 0}.tab-label{display:flex;align-items:center;gap:6px;flex:1;background:none;border:none;color:var(--sess-muted);padding:0;cursor:pointer;font-size:12px;font-family:var(--font-mono);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-tab.active .tab-label{color:var(--sess-text);font-weight:600}.tab-label:hover{background:none;color:var(--sess-text)}.tab-dot{width:6px;height:6px;background-color:var(--warning);border-radius:50%;flex-shrink:0}.tab-close{background:none;border:none;color:var(--sess-muted);padding:2px 6px;cursor:pointer;font-size:15px;line-height:1;margin-left:4px;border-radius:4px;transition:background .15s ease,color .15s ease}.tab-close:hover{background:var(--sess-surface-2);color:var(--sess-text)}@media (max-width: 600px){.editor-tabs{min-height:34px;height:34px}.editor-tab{min-width:60px;padding:0 8px}.tab-label{font-size:11px}}.editor-panel{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;background:var(--sess-bg)}.editor-container{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:transparent}.editor-code-shell{flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 14px 16px;background:transparent;overflow:hidden}.editor-code-surface{flex:1;min-height:0;width:100%;background:var(--sess-code);border:1px solid var(--sess-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;overscroll-behavior:contain;display:flex;flex-direction:column}.editor-monaco-wrap,.editor-manual-wrap{flex:1;min-height:0;min-width:0;width:100%;position:relative}.editor-monaco-wrap{border-radius:var(--radius-lg);overflow:hidden}.editor-code-surface .monaco-editor,.editor-code-surface .monaco-editor-background,.editor-code-surface .monaco-editor .margin,.editor-code-surface .monaco-editor .inputarea{background:var(--sess-code)!important}.editor-toolbar{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;gap:10px;flex-wrap:wrap;padding:10px 14px;background:var(--sess-surface);border-bottom:1px solid var(--sess-border);position:relative}.file-path{color:var(--sess-muted);font-size:11px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.editor-toolbar-actions{display:flex;align-items:center;gap:8px}.toolbar-action-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 6px;border:1px solid var(--sess-border);border-radius:var(--radius-md);background:var(--sess-surface-2)}.toolbar-action-group .toolbar-btn{width:auto;text-align:center;white-space:nowrap}.toolbar-action-group .toolbar-inline-auto{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.modified-indicator{color:var(--sess-muted);font-size:12px}.toolbar-btn{padding:5px 11px;font-size:11.5px;font-weight:500;font-family:inherit;line-height:1.35;border-radius:7px;border:1px solid var(--sess-border);background:transparent;color:var(--sess-text);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.toolbar-btn:hover:not(:disabled){background:var(--sess-surface-2);border-color:var(--border-strong)}.toolbar-btn.primary{background:var(--accent);color:var(--accent-on);border-color:var(--accent);font-weight:600}.toolbar-btn.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.toolbar-btn.subtle,.toolbar-btn.ghost{background:transparent;color:var(--sess-text)}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.remote-updated{background:var(--accent-soft);color:var(--accent);padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;border:1px solid var(--accent-soft)}.reload-btn{padding:5px 11px;font-size:12px}.reload-btn:disabled{opacity:.5;cursor:not-allowed}.editor-toolbar-pill{margin-left:8px;padding:4px 10px;border-radius:var(--radius-pill);font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--sess-border)}.editor-toolbar-pill--readonly{background:var(--sess-badge);color:var(--sess-text)}.editor-toolbar-pill--manual{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-soft)}.editor-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--sess-muted)}.editor-empty p{text-align:center;max-width:320px;line-height:1.6}.editor-code-surface textarea{background:transparent;color:transparent;caret-color:var(--sess-text)}.editor-code-surface textarea::-moz-selection,.editor-textarea::-moz-selection{background:var(--accent-soft)}.editor-code-surface textarea::selection,.editor-textarea::selection{background:var(--accent-soft)}.editor-code-surface pre::-webkit-scrollbar{display:none}.editor-gutter{position:absolute;top:0;left:0;width:48px;height:100%;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;pointer-events:none;padding:12px 0;box-sizing:border-box;background:var(--sess-gutter);border-right:1px solid var(--sess-border);z-index:2}.editor-gutter::-webkit-scrollbar{display:none}.editor-gutter-line{height:24px;line-height:24px;text-align:right;padding-right:10px;font-family:var(--font-mono);font-size:13px;color:var(--sess-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.editor-highlight-layer{position:absolute;top:0;left:48px;right:0;height:100%;margin:0;padding:12px 16px;font-family:var(--font-mono);font-size:13.75px;line-height:24px;white-space:pre;overflow:auto;scrollbar-width:none;-ms-overflow-style:none;box-sizing:border-box;pointer-events:none;background:transparent;-moz-tab-size:2;-o-tab-size:2;tab-size:2;z-index:1}.editor-highlight-layer::-webkit-scrollbar{display:none}.editor-textarea{position:absolute;top:0;left:48px;right:0;height:100%;background:transparent;color:transparent;caret-color:var(--sess-text);font-family:var(--font-mono);font-size:13.75px;line-height:24px;padding:12px 16px;border:none;outline:none;resize:none;box-sizing:border-box;white-space:pre;overflow-wrap:normal;overflow-x:auto;overflow-y:auto;overscroll-behavior:contain;-moz-tab-size:2;-o-tab-size:2;tab-size:2;z-index:3}.remote-cursor{border-left:2px solid var(--accent)!important}@media (max-width: 768px){.editor-toolbar{padding:8px 10px;gap:6px}.toolbar-action-group{gap:4px;padding:3px 4px}.toolbar-btn{padding:4px 8px;font-size:11px}.editor-code-shell{padding:8px 8px 10px}}@media (max-width: 480px){.file-path{max-width:120px}.editor-toolbar-pill{display:none}}.session-preview-panel{display:flex;flex-direction:column;border-left:1px solid var(--sess-border);background:var(--sess-surface);width:100%;min-width:0;height:100%;z-index:5}.session-preview-panel__header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--sess-border);background:var(--sess-surface-2);font-size:12px;font-weight:600;color:var(--sess-text);flex-shrink:0}.session-preview-panel__header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.session-preview-panel__open-tab{font-size:11px;padding:5px 10px;white-space:nowrap;line-height:1}.session-preview-panel__zoom-label{font-size:11px;opacity:.9;color:var(--sess-muted)}.session-preview-panel__zoom-select{margin-left:4px;padding:4px 8px;font-size:11px;border-radius:6px;border:1px solid var(--sess-border);background:var(--sess-code);color:var(--sess-text);font-family:var(--font-sans, inherit)}.session-preview-panel__body{flex:1;overflow:auto;position:relative;min-height:0}.session-preview-panel__empty-hint{margin:0;padding:16px;font-size:13px;color:var(--sess-muted)}.session-preview-panel__close-btn{font-size:11px;padding:5px 10px;line-height:1}.session-preview-panel__iframe{border:none;display:block}.session-preview-split__handle{flex-shrink:0;position:relative;width:10px;margin:0 -2px;cursor:col-resize;background:transparent;align-self:stretch;touch-action:none}.session-preview-split__handle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:4px;height:min(120px,40%);max-height:200px;border-radius:999px;background:color-mix(in srgb,var(--sess-muted) 55%,var(--sess-border));pointer-events:none;opacity:.85}.session-preview-split__handle:hover:after,.session-preview-split__handle:active:after{background:color-mix(in srgb,var(--accent) 45%,var(--sess-muted));opacity:1}.session-preview-split__pane{min-height:0}/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility,.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.session-preview-panel.session-python-run{background:var(--sess-surface)}.session-python-run__header{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 14px;border-bottom:1px solid var(--sess-border);background:linear-gradient(180deg,color-mix(in srgb,var(--sess-surface-2) 100%,transparent) 0%,var(--sess-surface-2) 100%);flex-shrink:0}.session-python-run__header-brand{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 140px}.session-python-run__title{margin:0;font-size:13px;font-weight:700;letter-spacing:-.02em;color:var(--sess-text);white-space:nowrap;line-height:1.2}.session-python-run__file-pill{font-size:11px;font-weight:600;font-family:var(--font-mono, ui-monospace, monospace);padding:3px 8px;border-radius:6px;background:color-mix(in srgb,var(--accent) 12%,var(--sess-surface));color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--sess-border));max-width:min(200px,40vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-python-run__state{font-size:11px;font-weight:600;padding:5px 10px;border-radius:999px;border:1px solid var(--sess-border);background:var(--sess-surface);color:var(--sess-muted);white-space:nowrap;flex:0 1 auto;min-width:0;text-align:center}.session-python-run__state--idle{color:var(--sess-muted);background:color-mix(in srgb,var(--sess-muted) 6%,var(--sess-surface))}.session-python-run__state--busy{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--sess-border));background:color-mix(in srgb,var(--accent) 10%,var(--sess-surface))}.session-python-run__state--input{color:color-mix(in srgb,var(--success) 85%,var(--sess-text));border-color:color-mix(in srgb,var(--success) 35%,var(--sess-border));background:color-mix(in srgb,var(--success) 10%,var(--sess-surface))}.session-python-run__state--error{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--sess-border));background:color-mix(in srgb,var(--danger) 10%,var(--sess-surface))}.session-python-run__actions{display:flex;align-items:stretch;gap:8px;flex:1 1 auto;justify-content:flex-end;min-width:min(100%,280px)}.session-python-run__btn{font-size:11px;font-weight:600;font-family:var(--font-sans, inherit);line-height:1.2;min-height:34px;padding:0 14px;border-radius:8px;border:1px solid var(--sess-border);background:var(--sess-surface);color:var(--sess-text);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px}.session-python-run__btn:disabled{opacity:.5;cursor:not-allowed}.session-python-run__btn--toggle{flex-direction:column;gap:1px;padding:5px 12px;min-width:108px}.session-python-run__btn--toggle .session-python-run__btn-label{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--sess-muted)}.session-python-run__btn--toggle .session-python-run__btn-meta{font-size:11px;font-weight:700;color:var(--sess-text)}.session-python-run__btn--toggle.is-on{border-color:color-mix(in srgb,var(--accent) 40%,var(--sess-border));background:color-mix(in srgb,var(--accent) 12%,var(--sess-surface))}.session-python-run__btn--toggle.is-on .session-python-run__btn-meta{color:var(--accent)}.session-python-run__btn--primary{min-width:72px;border-color:color-mix(in srgb,var(--accent) 45%,var(--sess-border));background:color-mix(in srgb,var(--accent) 16%,var(--sess-surface));color:var(--accent)}.session-python-run__btn--primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 24%,var(--sess-surface))}.session-python-run__btn--quiet{min-width:64px;background:transparent;color:var(--sess-muted)}.session-python-run__btn--quiet:hover:not(:disabled){background:var(--sess-sidebar-inset);color:var(--sess-text)}.session-preview-panel.session-python-run .session-preview-panel__body.session-python-run__body{overflow:hidden;background:var(--sess-code)}.session-python-run__body{display:flex;flex-direction:column;min-height:0;padding:0;overflow:hidden;background:var(--sess-code)}.session-python-run__terminal-frame{flex:1;min-height:180px;min-width:0;margin:0;padding:12px;display:flex;flex-direction:column;direction:ltr;unicode-bidi:isolate}.session-python-run__xterm-host{flex:1;min-height:140px;min-width:0;padding:0;background:color-mix(in srgb,var(--sess-code) 92%,#000 8%);border-radius:10px;border:1px solid color-mix(in srgb,var(--sess-border) 80%,transparent);overflow:hidden;box-shadow:inset 0 1px color-mix(in srgb,#fff 6%,transparent)}.session-python-run__xterm-host .xterm{height:100%;padding:10px 12px}.session-python-run__xterm-host .xterm-viewport{background-color:transparent!important}.session-python-run__xterm-host .xterm-viewport{direction:ltr!important}.session-python-run__error--pad{margin:12px 14px 0;flex-shrink:0}.session-python-run__error{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--danger) 12%,var(--sess-surface));border:1px solid color-mix(in srgb,var(--danger) 35%,var(--sess-border));color:var(--sess-text);font-size:12px;white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono, ui-monospace, monospace)}@media (max-width: 420px){.session-python-run__actions{width:100%;justify-content:stretch}.session-python-run__btn--toggle,.session-python-run__btn--primary,.session-python-run__btn--quiet{flex:1}}.conflict-resolver-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.conflict-resolver{background:#1e2936;border-radius:12px;max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;padding:24px;box-shadow:0 10px 40px #00000080}.conflict-header{margin-bottom:24px}.conflict-header h3{margin:0 0 8px;color:#ff6b6b;font-size:20px}.conflict-header p{margin:0;color:#ffffffb3}.conflict-time{color:#ffffff80;font-size:12px}.diff-stats{display:flex;gap:12px;margin-top:8px;font-size:12px}.conflict-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:24px}.option-btn{padding:16px;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .2s;text-align:left}.option-btn:hover{background:#ffffff14;border-color:#fff3}.option-btn.selected{background:#10b98126;border-color:#10b981}.option-title{font-weight:600;color:#fff;margin-bottom:4px}.option-desc{font-size:12px;color:#fff9}.manual-editor{margin-bottom:24px}.manual-editor label{display:block;margin-bottom:8px;font-weight:500;color:#ffffffe6}.manual-editor textarea{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:12px;color:#fff;font-family:var(--font-mono);font-size:13px;line-height:1.5;resize:vertical}.diff-viewer{margin-bottom:24px}.diff-viewer h4{margin:0 0 12px;color:#ffffffe6}.unified-diff{background:#0000004d;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.unified-header{display:grid;grid-template-columns:70px 70px 24px 1fr;gap:0;padding:8px 0;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1);font-size:11px;font-weight:600;color:#ffffffa6}.header-col{text-align:right;padding:0 8px}.header-marker{text-align:center}.header-content{padding:0 8px}.diff-panes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.diff-pane{background:#0000004d;border-radius:6px;overflow:hidden}.pane-header{padding:8px 12px;background:#ffffff0d;font-weight:600;font-size:12px;color:#fffc;border-bottom:1px solid rgba(255,255,255,.1)}.diff-content{max-height:400px;overflow-y:auto;font-family:var(--font-mono);font-size:12px}.diff-line{display:grid;grid-template-columns:70px 70px 24px 1fr;align-items:center;padding:2px 0}.diff-line.diff-added{background:#4caf5026}.diff-line.diff-removed{background:#f4433626}.line-number{display:inline-block;width:70px;padding:0 8px;text-align:right;color:#fff6;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.diff-marker{text-align:center;font-weight:700;color:#fffc}.line-content{padding:0 8px;color:#ffffffe6;white-space:pre}.conflict-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-btn,.resolve-btn{padding:10px 24px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff}.cancel-btn:hover{background:#ffffff26}.resolve-btn{background:#10b981;border:none;color:#fff}.resolve-btn:hover{background:#059669}.publish-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:9000;padding:16px}.publish-modal{background:#141c2b;border:1px solid rgba(75,240,252,.25);border-radius:12px;width:100%;max-width:960px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #0009;overflow:hidden}.publish-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.publish-title{display:flex;align-items:flex-start;gap:14px}.publish-icon{font-size:28px;line-height:1;margin-top:2px}.publish-title h2{margin:0 0 4px;font-size:18px;font-weight:600;color:#f1f5f9}.publish-subtitle{margin:0;font-size:13px;color:#ffffff80}.publish-close-btn{background:none;border:none;color:#ffffff80;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:6px;transition:background .15s,color .15s;flex-shrink:0}.publish-close-btn:hover{background:#ffffff14;color:#fff}.publish-body{display:flex;flex:1;overflow:hidden;min-height:0}.publish-file-list{width:240px;flex-shrink:0;border-right:1px solid rgba(255,255,255,.08);overflow-y:auto;padding:12px 0}.publish-section-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ffffff59;padding:8px 16px 4px}.unchanged-label{margin-top:8px}.publish-no-changes{padding:12px 16px;font-size:13px;color:#fff6;font-style:italic}.publish-file-item{display:flex;align-items:center;gap:8px;padding:8px 16px;cursor:pointer;transition:background .12s}.publish-file-item:hover{background:#ffffff0d}.publish-file-item.previewing{background:#4bf0fc14;border-left:2px solid rgba(75,240,252,.6);padding-left:14px}.publish-file-item.unchanged{opacity:.45;cursor:default}.publish-file-item input[type=checkbox]{flex-shrink:0;accent-color:#4bf0fc}.publish-file-name{flex:1;font-size:13px;color:#e2e8f0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.publish-file-badge{font-size:10px;padding:2px 6px;border-radius:999px;background:#ffffff14;color:#fff6;flex-shrink:0}.publish-file-badge.changed{background:#eab30826;color:#fbbf24}.publish-diff-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.publish-diff-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.publish-diff-filename{font-size:13px;font-weight:600;color:#a3a3a3;font-family:var(--font-mono)}.publish-diff-stats{display:flex;gap:8px;font-size:12px;font-weight:600}.stat-added{color:#4ade80}.stat-removed{color:#f87171}.no-diff-label{font-size:12px;color:#ffffff4d}.publish-diff-legend{display:flex;align-items:center;gap:10px;padding:6px 16px;font-size:11px;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.05);flex-shrink:0}.legend-final{color:#f87171}.legend-arrow{color:#ffffff4d}.legend-draft{color:#4ade80}.publish-diff-content{flex:1;overflow-y:auto;font-family:var(--font-mono);font-size:12.5px;line-height:1.6}.diff-line{display:flex;padding:0 12px;min-height:22px;white-space:pre}.diff-line.diff-added{background:#4caf5021}.diff-line.diff-removed{background:#f443361f}.diff-line.diff-context{background:transparent}.diff-marker{width:18px;flex-shrink:0;color:inherit;font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.diff-line.diff-added .diff-marker{color:#4ade80}.diff-line.diff-removed .diff-marker{color:#f87171}.diff-line.diff-context .diff-marker{color:#fff3}.diff-line-content{color:#e2e8f0;flex:1;overflow:hidden}.publish-no-preview,.no-diff-message{padding:32px 24px;color:#ffffff4d;font-style:italic;font-size:14px}.publish-footer{padding:16px 24px;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0;display:flex;flex-direction:column;gap:12px}.publish-message-row{display:flex;flex-direction:column;gap:6px}.publish-message-label{font-size:12px;color:#ffffff73}.publish-message-input{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e2e8f0;font-size:13px;padding:10px 12px;resize:vertical;outline:none;font-family:inherit;box-sizing:border-box}.publish-message-input:focus{border-color:#4bf0fc66}.publish-actions{display:flex;justify-content:flex-end;gap:12px}.publish-cancel-btn{padding:10px 20px;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#9ca3af;cursor:pointer;font-size:14px;transition:background .15s}.publish-cancel-btn:hover:not(:disabled){background:#ffffff0f}.publish-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.publish-submit-btn{padding:10px 24px;background:var(--accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;transition:opacity .15s,transform .1s}.publish-submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.publish-submit-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.session-info-strip{display:flex;flex-direction:column;border-bottom:1px solid var(--sess-border);background:var(--sess-bg);flex-shrink:0}.session-info-strip__card{display:flex;align-items:flex-start;gap:12px;padding:10px 16px}.session-info-strip__card--collab{background:color-mix(in srgb,var(--warning) 16%,var(--sess-surface));border-bottom:1px solid color-mix(in srgb,var(--warning) 35%,var(--sess-border))}.session-info-strip__card--review{flex-direction:column;align-items:stretch;gap:10px;background:var(--sess-surface)}.session-info-strip__icon-wrap{flex-shrink:0;width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--warning) 22%,var(--sess-surface));color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 42%,var(--sess-border))}.session-info-strip__body{min-width:0;flex:1}.session-info-strip__title{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sess-muted);margin-bottom:4px}.session-info-strip__text{margin:0;font-size:13px;line-height:1.5;color:var(--sess-text)}.session-info-strip__text strong{color:var(--warning);font-weight:700}.session-info-strip__review-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.session-info-strip__review-brand{display:inline-flex;align-items:center;gap:8px;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:4px 10px;border-radius:var(--radius-pill);background:var(--accent-soft);border:1px solid var(--accent-soft)}.session-info-strip__review-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.session-info-strip__status{flex:1;min-width:140px}.session-info-strip__muted{font-size:12px;color:var(--sess-muted)}.session-info-strip__warn{font-size:12px;font-weight:600;color:var(--warning);display:inline-flex;align-items:center;gap:8px}.session-info-strip__dot{width:7px;height:7px;border-radius:50%;background:var(--warning);flex-shrink:0}.session-info-strip__ro{font-size:12px;font-weight:600;color:var(--sess-muted)}.session-info-strip__approve{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-radius:var(--radius-md);border:none;background:var(--success);color:var(--text-inverse);font-weight:700;font-size:12px;font-family:inherit;cursor:pointer;transition:background .18s ease,transform .12s ease,box-shadow .18s ease;white-space:nowrap;box-shadow:0 8px 20px -12px #2dd4bf73}.session-info-strip__approve:hover{background:color-mix(in srgb,var(--success) 88%,#000);transform:translateY(-1px)}.session-info-strip__approve:active{transform:translateY(0)}@media (max-width: 640px){.session-info-strip__review-main{flex-direction:column;align-items:stretch}.session-info-strip__approve{width:100%}}.session-page .rq-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100;display:flex;align-items:center;justify-content:center;padding:16px;background:color-mix(in srgb,var(--sess-bg) 55%,rgba(0,0,0,.65));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.session-page .rq-modal{width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border-radius:16px;border:1px solid var(--sess-border);background:var(--sess-surface);box-shadow:0 28px 72px color-mix(in srgb,var(--sess-bg) 45%,rgba(0,0,0,.55)),inset 0 1px color-mix(in srgb,var(--sess-text) 5%,transparent)}.session-page .rq-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px 14px;border-bottom:1px solid var(--sess-border);flex-shrink:0}.session-page .rq-title{margin:0 0 4px;font-size:1.1rem;font-weight:750;letter-spacing:-.02em;color:var(--sess-text)}.session-page .rq-subtitle{margin:0;font-size:12.5px;line-height:1.45;color:var(--sess-muted)}.session-page .rq-close-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:10px;background:transparent;color:var(--sess-muted);cursor:pointer;font-size:18px;line-height:1;transition:background .15s,color .15s}.session-page .rq-close-btn:hover{background:var(--sess-sidebar-hover);color:var(--sess-text)}.session-page .rq-body{flex:1;overflow-y:auto;padding:16px 20px 20px;display:flex;flex-direction:column;gap:12px}.session-page .rq-empty{padding:36px 12px;text-align:center;font-size:14px;line-height:1.55;color:var(--sess-muted)}.session-page .rq-section-label{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--sess-muted);padding:8px 0 4px;margin-top:6px}.session-page .rq-card{border-radius:12px;border:1px solid var(--sess-border);background:var(--sess-surface-2);overflow:hidden}.session-page .rq-card-pending{border-color:color-mix(in srgb,#f59e0b 45%,var(--sess-border));box-shadow:0 0 0 1px color-mix(in srgb,#f59e0b 12%,transparent)}.session-page .rq-card-approved{border-color:color-mix(in srgb,#22c55e 35%,var(--sess-border))}.session-page .rq-card-rejected{border-color:color-mix(in srgb,#ef4444 35%,var(--sess-border))}.session-page .rq-card-header{padding:12px 16px;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:background .12s}.session-page .rq-card-header:hover{background:color-mix(in srgb,var(--sess-text) 4%,transparent)}.session-page .rq-card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.session-page .rq-card-status{font-size:12px;font-weight:800}.session-page .rq-card-author{font-size:12.5px;color:var(--sess-muted)}.session-page .rq-card-time{font-size:11.5px;color:var(--sess-muted)}.session-page .rq-card-summary{display:flex;align-items:center;gap:12px}.session-page .rq-card-files{font-size:12px;color:var(--sess-muted);background:var(--sess-sidebar-inset);padding:2px 10px;border-radius:999px;border:1px solid var(--sess-border)}.session-page .rq-card-message-preview{font-size:12px;color:var(--sess-muted);font-style:italic;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-page .rq-card-chevron{font-size:10px;color:var(--sess-muted);margin-left:auto}.session-page .rq-card-body{padding:0 16px 16px;border-top:1px solid var(--sess-border);display:flex;flex-direction:column;gap:14px}.session-page .rq-message-label{display:block;font-size:10px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--sess-muted);margin-bottom:6px}.session-page .rq-message-text{margin:0;font-size:13px;line-height:1.5;color:var(--sess-text);font-style:italic}.session-page .rq-rejection-block .rq-message-text{color:#ef4444}[data-theme=light] .session-page .rq-rejection-block .rq-message-text{color:#b91c1c}.session-page .rq-approved-info{font-size:13px;color:#22c55e;padding:8px 12px;border-radius:8px;border:1px solid color-mix(in srgb,#22c55e 35%,var(--sess-border));background:color-mix(in srgb,#22c55e 8%,var(--sess-surface))}[data-theme=light] .session-page .rq-approved-info{color:#15803d}.session-page .rq-file-tabs{display:flex;flex-wrap:wrap;gap:6px}.session-page .rq-file-tab{padding:6px 12px;border-radius:8px;border:1px solid var(--sess-border);background:var(--sess-sidebar-inset);color:var(--sess-muted);font-size:12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);transition:background .12s,border-color .12s}.session-page .rq-file-tab:hover{background:var(--sess-sidebar-hover)}.session-page .rq-file-tab.active{border-color:color-mix(in srgb,var(--sess-dashboard-accent) 45%,var(--sess-border));color:var(--sess-text);background:color-mix(in srgb,var(--sess-dashboard-accent) 10%,var(--sess-surface))}.session-page .rq-tab-badge{font-size:10px;padding:1px 5px;border-radius:4px;background:var(--sess-bg);color:var(--sess-muted)}.session-page .rq-tab-badge.changed{background:color-mix(in srgb,#f59e0b 18%,var(--sess-surface));color:#fbbf24}.session-page .rq-diff-wrapper{border:1px solid var(--sess-border);border-radius:10px;overflow:hidden}.session-page .rq-diff-header{display:flex;align-items:center;gap:12px;padding:8px 14px;background:var(--sess-sidebar-well);border-bottom:1px solid var(--sess-border)}.session-page .rq-diff-filename{font-size:12px;font-weight:650;color:var(--sess-muted);font-family:var(--font-mono)}.session-page .rq-diff-stats{display:flex;gap:8px;font-size:12px;font-weight:750}.session-page .stat-added{color:#22c55e}.session-page .stat-removed{color:#ef4444}.session-page .no-diff-label{font-size:12px;color:var(--sess-muted)}.session-page .rq-diff-legend{display:flex;align-items:center;gap:8px;padding:6px 14px;font-size:11px;background:var(--sess-sidebar-inset);border-bottom:1px solid var(--sess-border);color:var(--sess-muted)}.session-page .legend-final{color:#ef4444}.session-page .legend-draft{color:#22c55e}.session-page .rq-diff-content{font-family:var(--font-mono);font-size:12px;line-height:1.55;max-height:300px;overflow-y:auto;background:var(--sess-code)}.session-page .diff-line{display:flex;padding:0 12px;min-height:20px;white-space:pre}.session-page .diff-line.diff-added{background:color-mix(in srgb,#22c55e 14%,var(--sess-code))}.session-page .diff-line.diff-removed{background:color-mix(in srgb,#ef4444 12%,var(--sess-code))}.session-page .diff-line.diff-context{background:transparent}.session-page .diff-marker{width:16px;flex-shrink:0;font-weight:800;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--sess-muted)}.session-page .diff-line.diff-added .diff-marker{color:#22c55e}.session-page .diff-line.diff-removed .diff-marker{color:#ef4444}.session-page .diff-line-content{color:var(--sess-text);flex:1;overflow:hidden}.session-page .rq-no-diff{padding:20px 14px;color:var(--sess-muted);font-style:italic;font-size:13px}.session-page .rq-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start}.session-page .rq-approve-btn{padding:10px 18px;border-radius:10px;border:1px solid color-mix(in srgb,#22c55e 45%,var(--sess-border));background:color-mix(in srgb,#22c55e 12%,var(--sess-surface-2));color:#4ade80;font-size:13px;font-weight:650;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .12s ease,opacity .18s ease}[data-theme=light] .session-page .rq-approve-btn{color:#15803d}.session-page .rq-approve-btn:hover:not(:disabled){border-color:color-mix(in srgb,#22c55e 60%,var(--sess-border));box-shadow:0 12px 26px #0206173d;transform:translateY(-1px)}.session-page .rq-approve-btn:disabled{opacity:.45;cursor:not-allowed}.session-page .rq-reject-btn{padding:10px 18px;border-radius:10px;border:1px solid color-mix(in srgb,#ef4444 40%,var(--sess-border));background:color-mix(in srgb,#ef4444 10%,var(--sess-surface-2));color:#f87171;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .12s ease,opacity .18s ease}.session-page .rq-reject-btn:hover:not(:disabled){border-color:color-mix(in srgb,#ef4444 55%,var(--sess-border));box-shadow:0 12px 26px #02061738;transform:translateY(-1px)}.session-page .rq-reject-btn:disabled{opacity:.45;cursor:not-allowed}.session-page .rq-reject-form{width:100%;display:flex;flex-direction:column;gap:8px}.session-page .rq-reject-label{font-size:12px;color:var(--sess-muted)}.session-page .rq-reject-input{width:100%;box-sizing:border-box;background:var(--sess-sidebar-inset);border:1px solid color-mix(in srgb,#ef4444 35%,var(--sess-border));border-radius:10px;color:var(--sess-text);font-size:13px;padding:9px 12px;outline:none;font-family:inherit;resize:vertical}.session-page .rq-reject-input:focus{border-color:color-mix(in srgb,#ef4444 55%,var(--sess-border));box-shadow:0 0 0 2px var(--sess-focus-ring)}.session-page .rq-reject-actions{display:flex;gap:8px;justify-content:flex-end}.session-page .rq-reject-cancel-btn{padding:8px 16px;border-radius:8px;border:1px solid var(--sess-border);background:transparent;color:var(--sess-muted);cursor:pointer;font-size:13px}.session-page .rq-reject-confirm-btn{padding:8px 16px;border-radius:8px;border:1px solid color-mix(in srgb,#ef4444 45%,var(--sess-border));background:color-mix(in srgb,#ef4444 14%,var(--sess-surface-2));color:#f87171;font-size:13px;font-weight:650;cursor:pointer}.session-page .rq-reject-confirm-btn:hover:not(:disabled),.session-page .rq-reject-cancel-btn:hover:not(:disabled){filter:brightness(1.04)}.session-page .rq-reject-confirm-btn:disabled,.session-page .rq-reject-cancel-btn:disabled{opacity:.45;cursor:not-allowed}.session-page .ccl-chat-fab{position:fixed;bottom:24px;right:24px;z-index:1000;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border-radius:var(--radius-pill);border:none;background:var(--accent);color:var(--accent-on);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 14px 32px -12px var(--accent-ring);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.session-page .ccl-chat-fab:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 18px 36px -12px var(--accent-ring)}.session-page .ccl-chat-fab--sidebar{position:relative;width:100%;min-height:40px;padding:0 12px;border-radius:var(--radius-md);font-size:12px;background:var(--sess-sidebar-inset);color:var(--sess-text);border:1px solid var(--sess-border);box-shadow:none;justify-content:flex-start}.session-page .ccl-chat-fab--sidebar:hover{transform:none;background:var(--sess-sidebar-hover);border-color:var(--sess-sidebar-hover-border)}.session-page .ccl-chat-fab--compact{width:44px;min-width:44px;padding:0;justify-content:center}.session-page .ccl-chat-fab__label{font-weight:600}.session-page .ccl-chat-fab--compact .ccl-chat-fab__label{display:none}.session-page .ccl-chat-fab__count{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:10px;font-weight:800;background:var(--danger);color:#fff;border:2px solid var(--sess-bg)}.session-page .ccl-chat-panel{position:fixed;width:380px;height:540px;z-index:1000;display:flex;flex-direction:column;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--sess-border);background:var(--sess-surface);box-shadow:var(--shadow-lg)}.session-page .ccl-chat-panel--sidebar{width:320px;height:460px}.session-page .ccl-chat-panel__header{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--sess-surface-2);border-bottom:1px solid var(--sess-border);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.session-page .ccl-chat-panel__header--drag{cursor:grabbing}.session-page .ccl-chat-panel__grip{flex-shrink:0;opacity:.55;color:var(--sess-muted)}.session-page .ccl-chat-panel__title{flex:1;font-size:13px;font-weight:700;letter-spacing:-.01em;color:var(--sess-text)}.session-page .ccl-chat-panel__close{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:6px;background:transparent;color:var(--sess-muted);cursor:pointer;flex-shrink:0;transition:color .15s ease,background .15s ease}.session-page .ccl-chat-panel__close:hover{color:var(--sess-text);background:var(--sess-sidebar-hover)}.session-page .ccl-chat-panel__messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px;background:var(--sess-bg);scrollbar-color:var(--border) transparent}.session-page .ccl-chat-panel__empty{text-align:center;color:var(--sess-muted);font-size:13px;line-height:1.55;padding:36px 12px}.session-page .ccl-chat-bubble{display:flex;flex-direction:column;gap:4px;max-width:90%}.session-page .ccl-chat-bubble--mine{align-self:flex-end}.session-page .ccl-chat-bubble--theirs{align-self:flex-start}.session-page .ccl-chat-bubble__meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 4px}.session-page .ccl-chat-bubble__author{font-size:11px;font-weight:700;color:var(--sess-text)}.session-page .ccl-chat-bubble__time{font-size:10px;color:var(--sess-muted);font-variant-numeric:tabular-nums}.session-page .ccl-chat-bubble__text{padding:10px 13px;border-radius:var(--radius-md);font-size:13px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.session-page .ccl-chat-bubble--mine .ccl-chat-bubble__text{background:var(--accent);border:1px solid var(--accent);color:var(--accent-on);border-bottom-right-radius:5px}.session-page .ccl-chat-bubble--theirs .ccl-chat-bubble__text{background:var(--sess-surface-2);border:1px solid var(--sess-border);color:var(--sess-text);border-bottom-left-radius:5px}.session-page .ccl-chat-panel__composer{display:flex;gap:10px;align-items:flex-end;padding:12px 14px;border-top:1px solid var(--sess-border);background:var(--sess-surface)}.session-page .ccl-chat-panel__input{flex:1;min-height:42px;max-height:120px;resize:none;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--sess-border);background:var(--sess-bg);color:var(--sess-text);font-size:13px;font-family:inherit;line-height:1.45;transition:border-color .18s ease,box-shadow .18s ease}.session-page .ccl-chat-panel__input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.session-page .ccl-chat-panel__send{flex-shrink:0;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-on);cursor:pointer;transition:background .18s ease,transform .12s ease,box-shadow .18s ease;box-shadow:0 8px 18px -10px var(--accent-ring)}.session-page .ccl-chat-panel__send:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.session-page .ccl-chat-panel__send:disabled{opacity:.4;cursor:not-allowed}.session-page .session-dashboard-column{flex:0 0 min(300px,36vw);align-self:stretch;display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--sess-bg);border-left:1px solid var(--sess-border);box-sizing:border-box}.session-page .session-dashboard-column .session-dashboard--sidebar{flex:1 1 auto;min-height:0;border-left:none;border-top:none;border-bottom:none;border-right:none;border-radius:0}.session-page .session-dashboard{box-sizing:border-box;padding:20px;overflow-y:auto;background:var(--sess-bg);border:1px solid var(--sess-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:20px;scrollbar-width:thin;scrollbar-color:var(--sess-border) transparent}.session-page .session-dashboard--sidebar{border-radius:0;border-top:none;border-bottom:none;border-right:none;border-left:none}.session-page .session-dashboard--toggle{margin-top:4px;max-height:70vh;max-width:400px;box-shadow:var(--shadow-lg, 0 12px 40px rgba(0,0,0,.25))}.session-page .session-dashboard--separate{border-radius:var(--radius-lg)}.session-page .sdb-overview__title{margin:0;font-family:var(--font-display);font-size:1.1rem;font-weight:700;letter-spacing:-.02em;color:var(--sess-text);line-height:1.25}.session-page .sdb-overview__meta{margin-top:8px}.session-page .sdb-section__title{margin:0 0 10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--sess-muted)}.session-page .sdb-card__label{margin:0 0 6px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sess-muted)}.session-page .sdb-card--share code{padding:6px 10px;border-radius:var(--radius-sm);background:var(--sess-sidebar-inset);border:1px solid var(--sess-border);font-size:11px}.session-page .sdb-review-block{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--sess-dashboard-accent) 30%,var(--sess-border));background:color-mix(in srgb,var(--sess-dashboard-accent) 5%,var(--sess-surface))}.session-page .sdb-review-block__head{display:flex;flex-direction:column;gap:2px}.session-page .sdb-review-block__label{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--sess-dashboard-accent)}.session-page .sdb-review-block__hint{font-size:11px;color:var(--sess-muted)}.session-page .sdb-btn--review-primary{background:color-mix(in srgb,var(--sess-dashboard-accent) 15%,var(--sess-surface))!important;border:1px solid color-mix(in srgb,var(--sess-dashboard-accent) 35%,var(--sess-border))!important;color:var(--sess-dashboard-accent)!important;font-weight:650!important}.session-page .sdb-btn--review-secondary{position:relative;border:1px solid var(--sess-border)!important;background:var(--sess-surface-2)!important;color:var(--sess-text)!important}.session-page .sdb-btn--pulse{border-color:color-mix(in srgb,#f59e0b 55%,var(--sess-border))!important;background:color-mix(in srgb,#f59e0b 8%,var(--sess-surface-2))!important}.session-page .sdb-review-badge{margin-left:8px;background:#f59e0b;color:#0f172a;border-radius:var(--radius-pill);padding:1px 7px;font-size:10px;font-weight:800}.session-page .sdb-review-assessor{margin:0;font-size:11px;color:var(--sess-muted);line-height:1.4}.session-page .sdb-review-assessor strong{color:var(--sess-text);font-weight:600}.info-panel-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--sess-border, var(--border));background:var(--sess-surface-2, var(--bg-tertiary));color:var(--sess-text, var(--text-primary));font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .12s ease;white-space:nowrap}.info-panel-btn:hover,.info-panel-btn:focus-visible{background:var(--sess-sidebar-hover, var(--bg-elevated));border-color:var(--sess-border-strong, var(--border-strong));transform:translateY(-1px)}.info-panel-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.info-panel-btn--compact{padding:5px 10px;font-size:11px}.session-page .sdb-activity .sdb-section__title{margin-bottom:8px}.session-page{--sess-bg: var(--bg-canvas);--sess-surface: var(--bg-secondary);--sess-surface-2: var(--bg-tertiary);--sess-border: var(--border);--sess-border-strong: var(--border-strong);--sess-text: var(--text-primary);--sess-muted: var(--text-secondary);--sess-soft-muted: var(--text-muted);--sess-badge: var(--bg-tertiary);--sess-code: var(--bg-secondary);--sess-gutter: var(--bg-tertiary);--sess-primary-btn: var(--accent);--sess-primary-btn-text: var(--accent-on);--sess-destructive: var(--danger-soft);--sess-focus: var(--accent);--sess-sidebar-aside: var(--bg-secondary);--sess-sidebar-well: var(--bg-tertiary);--sess-sidebar-inset: var(--bg-secondary);--sess-sidebar-hover: var(--bg-elevated);--sess-sidebar-hover-border: var(--border-strong);--sess-sidebar-elevated: var(--bg-elevated);--sess-sidebar-active-press: var(--bg-tertiary);--sess-sidebar-header-accent: var(--accent);--sess-tabs-bar: var(--bg-secondary);--sess-tabs-active: var(--bg-tertiary);--sess-toolbar-group-bg: var(--bg-secondary);--sess-toolbar-group-border: var(--border);--sess-dashboard-accent: var(--accent);--sess-icon-hover-border: var(--border-strong);--sess-focus-ring: var(--accent-ring);background:var(--sess-bg);color:var(--sess-text)}.session-page .session-file-tree-label{color:var(--sess-text)}.session-page .session-file-tree-row--folder-muted{color:var(--sess-muted)}.session-page .sidebar-file-scroll{color:var(--sess-text);scrollbar-color:var(--border) transparent}[data-theme=light] .session-page .sidebar-file-scroll{scrollbar-color:var(--border-strong) transparent}.session-page--layout{display:flex;flex:1;min-height:0;height:100%;width:100%;overflow:hidden;overscroll-behavior:contain}.session-file-sidebar-reopen{flex:0 0 auto;display:flex;align-items:center;justify-content:center;align-self:stretch;width:36px;min-width:36px;padding:0;margin:0;border:none;border-right:1px solid var(--sess-border);background:var(--sess-surface);color:var(--sess-muted);cursor:pointer;transition:background .18s ease,color .18s ease,width .3s cubic-bezier(.22,.85,.2,1)}.session-file-sidebar-reopen:hover{background:var(--sess-surface-2);color:var(--sess-text)}.session-file-sidebar-reopen:focus-visible{outline:2px solid var(--sess-focus-ring);outline-offset:-2px}@media (prefers-reduced-motion: reduce){.session-file-sidebar-reopen{transition:none}}.session-banner-collab{background:var(--sess-bg);color:var(--sess-text);padding:10px 18px;font-size:12px;font-weight:500;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--sess-border)}.session-banner-collab__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-soft)}.session-banner-review{background:var(--sess-surface);border-bottom:1px solid var(--sess-border);padding:10px 18px;display:flex;align-items:center;gap:12px;font-size:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-wrap:wrap;min-height:44px}.session-banner-review__brand{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:4px 9px;border-radius:var(--radius-pill);background:var(--accent-soft);border:1px solid var(--accent-soft)}.session-banner-review__status{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:1;min-width:0}.session-banner-review__muted{color:var(--sess-muted);font-size:11px}.session-banner-review__warn{color:var(--warning);font-size:11px;display:inline-flex;align-items:center;gap:6px}.session-banner-review__dot{width:6px;height:6px;border-radius:50%;background:var(--warning);flex-shrink:0}.session-banner-review__ro{font-size:11px;color:var(--sess-muted)}.session-banner-review__approve{margin-left:auto;padding:7px 14px;border-radius:var(--radius-sm);border:none;background:var(--success);color:var(--text-inverse);font-weight:700;font-size:11px;font-family:inherit;cursor:pointer;transition:background .18s ease,transform .12s ease,box-shadow .18s ease}.session-banner-review__approve:hover{background:color-mix(in srgb,var(--success) 88%,#000);transform:translateY(-1px)}.session-review-seg{display:inline-flex;background:var(--sess-surface-2);border:1px solid var(--sess-border);border-radius:var(--radius-pill);padding:3px;gap:2px}.session-review-seg__btn{padding:5px 12px;border-radius:var(--radius-pill);border:none;cursor:pointer;font-size:11px;font-weight:600;transition:background .18s ease,color .18s ease;background:transparent;color:var(--sess-muted);font-family:inherit}.session-review-seg__btn--active{background:var(--accent);color:var(--accent-on)}.session-install-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.session-install-modal{max-width:520px;width:100%;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px 28px;box-shadow:var(--shadow-lg)}.session-install-modal__title{margin:0 0 12px;font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:-.015em;color:var(--text-primary)}.session-install-modal__lead{margin:0 0 14px;font-size:13px;line-height:1.6;color:var(--text-primary);padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--accent-soft);background:var(--accent-soft)}.session-install-modal__p{margin:0 0 14px;font-size:13px;line-height:1.6;color:var(--text-secondary)}.session-install-modal__list{margin:0 0 16px 18px;padding:0;font-size:13px;line-height:1.7;color:var(--text-primary)}.session-install-modal__kbd{padding:2px 7px;border-radius:5px;font-size:11px;font-family:var(--font-mono);background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary)}.session-install-modal__link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.session-install-modal__code{color:var(--accent);font-size:12px;word-break:break-all;font-family:var(--font-mono)}.session-install-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.session-install-modal__btn{padding:10px 18px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:600;font-family:inherit;transition:background .18s ease,border-color .18s ease}.session-install-modal__btn:hover{background:var(--bg-tertiary);border-color:var(--accent);color:var(--accent)}.session-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;min-height:100dvh;z-index:3000;background:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.session-modal-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px;min-width:min(420px,100%);max-width:500px;width:100%;box-shadow:var(--shadow-lg)}.session-modal-card--danger{border-color:var(--danger-soft)}.session-modal-card--create{border-color:var(--accent-soft);box-shadow:var(--shadow-lg),0 0 0 1px var(--accent-soft) inset}.session-modal-card__sub{margin:0 0 14px;font-size:12px;line-height:1.6;color:var(--text-secondary)}.session-modal-card__code{font-size:11px;padding:1px 5px;border-radius:4px;background:var(--bg-tertiary);border:1px solid var(--border);font-family:var(--font-mono)}.session-modal-label{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.session-modal-card__title{margin:0 0 12px;font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:-.015em;color:var(--text-primary)}.session-modal-card__text{margin:0 0 16px;font-size:13px;line-height:1.6;color:var(--text-secondary)}.session-modal-card__actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.session-modal-input{width:100%;padding:11px 14px;margin-bottom:12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;transition:border-color .18s ease,box-shadow .18s ease;box-sizing:border-box}.session-modal-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.session-modal-hint{font-size:12px;color:var(--text-secondary);margin-bottom:16px;line-height:1.5}.session-modal-hint__strong{color:var(--text-primary);font-weight:600}.session-modal-btn{padding:10px 18px;border-radius:var(--radius-md);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;border:1px solid transparent;transition:opacity .18s ease,background .18s ease,transform .12s ease}.session-modal-btn:disabled{opacity:.55;cursor:not-allowed}.session-modal-btn--ghost{background:transparent;color:var(--text-primary);border-color:var(--border-strong)}.session-modal-btn--ghost:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.session-modal-btn--danger{background:var(--danger);color:#fff;border:none}.session-modal-btn--danger:hover{background:color-mix(in srgb,var(--danger) 88%,#000)}.session-modal-btn--primary{background:var(--accent);color:var(--accent-on);border:none;box-shadow:0 10px 24px -14px var(--accent-ring)}.session-modal-btn--primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.session-modal-btn--primary:disabled{background:var(--text-muted);color:#fff;transform:none}.session-dashboard-popover__bar{display:flex;justify-content:flex-end;padding:8px;background:var(--sess-surface);border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:1px solid var(--sess-border)}.session-dashboard-popover__close{background:none;border:none;color:var(--sess-text);cursor:pointer;font-size:18px;line-height:1;padding:4px 8px;border-radius:6px}.session-dashboard-popover__close:hover{background:var(--bg-tertiary)}.session-network-banner{position:fixed;top:calc(var(--menu-bar-height) + 12px);left:50%;transform:translate(-50%);z-index:1200;padding:8px 16px;border-radius:var(--radius-md);border:1px solid var(--warning-soft);background:var(--warning-soft);color:var(--warning);font-size:12px;font-weight:600;box-shadow:var(--shadow-md);max-width:70vw;text-align:center}.session-page .ccl-sidebar-aside{position:relative;width:20rem;min-width:min(20rem,85vw);height:100%;min-height:0;display:flex;flex-direction:column;gap:14px;padding:16px 14px 18px;background:var(--sess-sidebar-aside);border-right:1px solid var(--sess-border);border-radius:0;overflow:hidden}.session-page .ccl-sidebar-shine{display:none}.session-page .ccl-sidebar-header{position:relative;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-md);background:var(--sess-sidebar-well);border:1px solid var(--sess-border)}.session-page .ccl-sidebar-header__pulse{flex-shrink:0;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--accent-soft);border:1px solid var(--accent-soft)}.session-page .ccl-sidebar-header__pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent-ring);animation:ccl-sidebar-pulse 2.4s ease-out infinite}@keyframes ccl-sidebar-pulse{0%{box-shadow:0 0 0 0 var(--accent-ring)}70%{box-shadow:0 0 0 10px #7c5cff00}to{box-shadow:0 0 #7c5cff00}}.session-page .ccl-sidebar-header__title{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;line-height:1.15}.session-page .ccl-sidebar-header__eyebrow{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--sess-muted);font-weight:700}.session-page .ccl-sidebar-header__name{font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--sess-text);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-page .ccl-sidebar-header__actions{display:flex;gap:6px;flex-shrink:0}.session-page .ccl-sidebar-iconbtn{width:30px;height:30px;border-radius:8px;background:transparent;border:1px solid transparent;color:var(--sess-muted);display:grid;place-items:center;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}.session-page .ccl-sidebar-iconbtn:hover{background:var(--sess-sidebar-hover);color:var(--sess-text);border-color:var(--sess-sidebar-hover-border)}.session-page .ccl-sidebar-iconbtn--danger:hover{background:var(--danger-soft);border-color:var(--danger-soft);color:var(--danger)}.session-page .ccl-sidebar-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-md);background:var(--sess-sidebar-inset);border:1px solid var(--sess-border);transition:border-color .18s ease,box-shadow .18s ease}.session-page .ccl-sidebar-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.session-page .ccl-sidebar-search__icon{color:var(--sess-muted)}.session-page .ccl-sidebar-search__input{flex:1 1 auto;background:transparent;border:none;outline:none;color:var(--sess-text);font-size:13px;font-family:inherit}.session-page .ccl-sidebar-search__input::-moz-placeholder{color:var(--sess-muted)}.session-page .ccl-sidebar-search__input::placeholder{color:var(--sess-muted)}.session-page .ccl-sidebar-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:14px;position:relative}.session-page .ccl-sidebar-chatslot{width:100%;flex-shrink:0}.session-page .ccl-sidebar-section{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:var(--radius-md);background:var(--sess-sidebar-well);border:1px solid var(--sess-border)}.session-page .ccl-sidebar-section--files{flex:1 1 auto;min-height:0}.session-page .ccl-sidebar-section__title{display:flex;align-items:center;gap:10px;padding:0 4px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--sess-muted);font-weight:700}.session-page .ccl-sidebar-section__rule{flex:1 1 auto;height:1px;background:linear-gradient(90deg,var(--sess-border) 0%,transparent 100%);border-radius:1px}.session-page .ccl-sidebar-section__count{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:0 7px;height:18px;border-radius:var(--radius-pill);background:var(--accent-soft);border:1px solid var(--accent-soft);font-size:10px;letter-spacing:0;text-transform:none;color:var(--accent);font-weight:700}.session-page .ccl-sidebar-section__body{display:flex;flex-direction:column;gap:6px}.session-page .ccl-quick-action{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:var(--radius-md);background:var(--sess-sidebar-inset);border:1px solid var(--sess-border);color:var(--sess-text);text-align:left;cursor:pointer;font-family:inherit;transition:background .18s ease,border-color .18s ease,transform .12s ease}.session-page .ccl-quick-action:hover:not(.ccl-quick-action--disabled){background:var(--sess-sidebar-hover);border-color:var(--sess-sidebar-hover-border);transform:translateY(-1px)}.session-page .ccl-quick-action--active{border-color:var(--accent-soft);background:var(--accent-soft);color:var(--accent)}.session-page .ccl-quick-action--active .ccl-quick-action__icon{background:var(--accent);color:var(--accent-on);border-color:var(--accent)}.session-page .ccl-quick-action--disabled{opacity:.55;cursor:not-allowed}.session-page .ccl-quick-action__icon{width:28px;height:28px;flex-shrink:0;border-radius:8px;display:grid;place-items:center;background:var(--sess-sidebar-elevated);border:1px solid var(--sess-border);color:var(--sess-text);transition:background .18s ease,color .18s ease,border-color .18s ease}.session-page .ccl-quick-action__body{display:flex;flex-direction:column;min-width:0;flex:1 1 auto;line-height:1.2}.session-page .ccl-quick-action__label{font-size:12.5px;font-weight:600;color:inherit;letter-spacing:-.005em}.session-page .ccl-quick-action__hint{font-size:11px;color:var(--sess-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-page .ccl-quick-action--active .ccl-quick-action__hint{color:var(--accent);opacity:.8}.session-page .ccl-sidebar-locknote{display:flex;gap:8px;padding:10px 12px;border-radius:var(--radius-md);background:var(--warning-soft);border:1px solid var(--warning-soft);color:var(--warning)}.session-page .ccl-sidebar-locknote__icon{margin-top:2px;flex-shrink:0}.session-page .ccl-sidebar-locknote__title{font-size:12px;font-weight:700;color:var(--warning)}.session-page .ccl-sidebar-locknote__sub{font-size:11px;color:var(--warning);opacity:.85}.session-page .ccl-sidebar-locknote__sub--dim{opacity:.6}.session-page .ccl-sidebar-locknote__sub--warn{color:var(--warning)}.session-page .ccl-sidebar-release{width:100%;padding:8px 12px;border-radius:var(--radius-md);background:var(--sess-sidebar-elevated);border:1px solid var(--sess-border);color:var(--sess-text);font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .18s ease}.session-page .ccl-sidebar-release:hover{background:var(--sess-sidebar-hover)}.session-page .ccl-sidebar-files-scroll{flex:1 1 auto;min-height:0;max-height:320px;overflow-y:auto;overflow-x:hidden;padding-right:2px;scrollbar-gutter:stable;scrollbar-width:thin;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.session-page .ccl-sidebar-files-empty{padding:18px 10px;text-align:center;font-size:12px;color:var(--sess-muted);line-height:1.45}.session-page .ccl-sidebar-files-list{display:flex;flex-direction:column;gap:1px}.session-page .ccl-sidebar-folder-row{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:7px;font-size:12.5px;color:var(--sess-muted);cursor:pointer;transition:background .16s ease,color .16s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.session-page .ccl-sidebar-folder-row:hover,.session-page .ccl-sidebar-folder-row--active{background:var(--sess-sidebar-inset);color:var(--sess-text)}.session-page .ccl-sidebar-folder-row__chev{display:inline-flex;flex-shrink:0;opacity:.85}.session-page .ccl-sidebar-folder-row__name{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-page .ccl-sidebar-folder-children{overflow:hidden}.session-page .ccl-sidebar-file-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:7px;font-size:12.5px;color:var(--sess-text);cursor:pointer;transition:background .16s ease,color .16s ease;overflow:hidden}.session-page .ccl-sidebar-file-row:hover{background:var(--sess-sidebar-inset)}.session-page .ccl-sidebar-file-row--active{background:var(--accent-soft);color:var(--accent)}.session-page .ccl-sidebar-file-row__name{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-page .ccl-sidebar-file-row__draft{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--warning);flex-shrink:0}.session-page .ccl-sidebar-file-row__actions{display:flex;gap:4px;opacity:0;transition:opacity .16s ease;flex-shrink:0;margin-left:auto}.session-page .ccl-sidebar-file-row:hover .ccl-sidebar-file-row__actions,.session-page .ccl-sidebar-file-row--active .ccl-sidebar-file-row__actions{opacity:1}.session-page .ccl-sidebar-row-iconbtn{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;box-sizing:border-box;border-radius:6px;background:transparent;color:var(--sess-text);border:1px solid transparent;cursor:pointer;transition:background .14s ease,color .14s ease}.session-page .ccl-sidebar-row-iconbtn svg{display:block;flex-shrink:0}.session-page .ccl-sidebar-row-iconbtn:hover{background:var(--sess-sidebar-hover)}.session-page .ccl-sidebar-row-iconbtn--danger:hover{background:var(--danger-soft);color:var(--danger)}@media (prefers-reduced-motion: reduce){.session-page .ccl-sidebar-aside,.session-page .ccl-quick-action,.session-page .ccl-sidebar-iconbtn,.session-page .ccl-sidebar-folder-row,.session-page .ccl-sidebar-file-row,.session-page .ccl-sidebar-header__pulse-dot{transition:none!important;animation:none!important}}.page-terminal{max-width:1100px;margin:0 auto;padding-bottom:56px}.page.page-terminal>.terminal-page__shell{flex-shrink:0;align-self:stretch;scroll-margin-top:12px}.terminal-page__shell-heading{margin:0;padding:12px 16px 10px;font-size:.9375rem;font-weight:700;letter-spacing:-.02em;text-align:left;color:var(--text-primary);border-bottom:1px solid var(--border);background:var(--bg-tertiary)}.terminal-page__intro{text-align:center;margin-bottom:28px}.terminal-page__title-row{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.terminal-page__title{margin:0;font-size:clamp(1.5rem,3vw,1.85rem);font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.terminal-page__info-btn{width:34px;height:34px;border-radius:50%;border:1px solid rgba(37,99,235,.45);background:#2563eb14;color:var(--accent);font-size:15px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .18s ease,background .18s ease,border-color .18s ease}.terminal-page__info-btn:hover{background:#2563eb24;border-color:var(--accent);transform:scale(1.06)}:root[data-theme=dark] .terminal-page__info-btn{border-color:#3b82f673;background:#ffffff0f}:root[data-theme=dark] .terminal-page__info-btn:hover{background:#ffffff1a}.terminal-page__lead{margin:0 auto;max-width:52rem;font-size:15px;line-height:1.55;color:var(--text-secondary)}.terminal-dev-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:22px}.terminal-dev-card{padding:16px 18px;border-radius:14px;border:1px solid var(--border);background:var(--bg-secondary);box-shadow:0 12px 36px color-mix(in srgb,var(--bg-primary) 40%,transparent);min-height:0}.terminal-dev-card__title{margin:0 0 8px;font-size:1rem;font-weight:700;color:var(--text-primary)}.terminal-dev-card__meta{margin:0 0 10px;font-size:12px;color:var(--text-secondary);word-break:break-all}.terminal-dev-card__meta--mono{font-family:var(--font-mono);font-size:11px}.terminal-dev-card__row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.terminal-dev-card__status{font-size:13px;font-weight:600;color:var(--text-primary)}.terminal-dev-card__err{margin:0 0 10px;font-size:12px;color:var(--error);line-height:1.4}.terminal-dev-card__code{display:block;margin:0 0 10px;padding:10px 12px;border-radius:10px;background:var(--bg-tertiary);border:1px solid var(--border);font-size:12px;font-family:var(--font-mono);color:var(--text-primary);word-break:break-all}.terminal-dev-card__actions{display:flex;flex-wrap:wrap;gap:8px}.terminal-dev-card__hint{margin:0;font-size:12px;line-height:1.5;color:var(--text-secondary)}.terminal-page__shell{margin-top:18px;margin-bottom:0;border-radius:14px;border:1px solid var(--border);background:var(--bg-secondary);box-shadow:var(--terminal-chrome-shadow);overflow:hidden}[data-theme=light] .terminal-page__shell{border-color:#0f172a24;box-shadow:0 1px #ffffffb3 inset,0 12px 40px #0f172a1a}.terminal-page__titlebar{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-tertiary) 85%,var(--bg-secondary)) 0%,var(--bg-secondary) 100%)}.terminal-page__dots{display:flex;gap:6px;flex-shrink:0}.terminal-page__dot{width:10px;height:10px;border-radius:50%}.terminal-page__dot--r{background:#ff5f56}.terminal-page__dot--y{background:#ffbd2e}.terminal-page__dot--g{background:#27c93f}.terminal-page__titlebar-label{flex:1;text-align:center;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);font-family:var(--font-mono)}.terminal-page__status{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-tertiary);font-size:13px}.terminal-page__pulse{width:8px;height:8px;border-radius:50%;flex-shrink:0}.terminal-page__pulse--on{background:#10b981;box-shadow:0 0 0 3px #10b98140}.terminal-page__pulse--off{background:#ef4444;box-shadow:0 0 0 3px #ef444433}.terminal-page__pulse--standby{background:#64748b;box-shadow:0 0 0 3px #64748b40}.terminal-page__status-text{font-weight:600}.terminal-page__status-text--ok{color:#10b981}.terminal-page__status-text--bad{color:#ef4444}.terminal-page__status-text--standby{color:var(--text-secondary)}.terminal-page__status-exec{margin-left:auto;font-size:12px;font-weight:600;color:#f59e0b}.terminal-page__viewport{position:relative;min-height:360px;max-height:min(52vh,520px);padding:16px 16px 12px;overflow-y:auto;font-family:var(--font-mono);font-size:13px;line-height:1.55;cursor:text;background:var(--terminal-viewport-bg);color:var(--terminal-viewport-fg);scrollbar-color:rgba(148,163,184,.45) transparent}.terminal-page__viewport:focus-within{outline:none}.terminal-line{white-space:pre-wrap;word-break:break-word;margin-bottom:2px}.terminal-line--stdout{color:#e5e7eb}.terminal-line--stderr,.terminal-line--error{color:#f87171}.terminal-line--exit{color:#94a3b8}.terminal-line--input{color:#34d399;font-weight:500}.terminal-line--info{color:#93c5fd}.terminal2__header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:10px 0 18px}.terminal2__title{margin:0;font-size:clamp(1.6rem,3.5vw,2.1rem);letter-spacing:-.03em;color:var(--text-primary)}.terminal2__subtitle{margin:6px 0 0;color:var(--text-secondary);font-size:14px;line-height:1.5}.terminal2__layout{display:grid;grid-template-columns:360px 1fr;gap:16px;align-items:start}@media (max-width: 980px){.terminal2__layout{grid-template-columns:1fr}}.terminal2__rail{display:flex;flex-direction:column;gap:12px;min-width:0}.terminal2__main{min-width:0}.terminal2__card{border:1px solid var(--border);background:var(--bg-secondary);border-radius:16px;padding:14px 14px 12px;box-shadow:0 12px 36px color-mix(in srgb,var(--bg-primary) 40%,transparent)}.terminal2__card--dense{padding:12px 14px}.terminal2__card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.terminal2__card-title{margin:0;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.terminal2__badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);white-space:nowrap}.terminal2__badge--ok{border-color:color-mix(in srgb,var(--success) 45%,var(--border));background:color-mix(in srgb,var(--success-soft) 85%,var(--bg-tertiary));color:color-mix(in srgb,var(--success) 88%,var(--text-primary))}.terminal2__badge--bad{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger-soft) 85%,var(--bg-tertiary));color:color-mix(in srgb,var(--danger) 90%,var(--text-primary))}.terminal2__badge--muted{opacity:.9}.terminal2__card-meta{font-size:12px;color:var(--text-secondary);word-break:break-all;margin-bottom:10px}.terminal2__card-meta--mono{font-family:var(--font-mono);font-size:11px}.terminal2__card-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.terminal2__dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.terminal2__dot--ok{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.terminal2__dot--bad{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.terminal2__dot--muted{background:#64748b;box-shadow:0 0 0 3px #64748b40}.terminal2__card-status{font-size:13px;font-weight:650;color:var(--text-primary)}.terminal2__card-warn{font-size:12px;color:color-mix(in srgb,var(--danger) 85%,var(--text-primary));background:color-mix(in srgb,var(--danger-soft) 70%,var(--bg-tertiary));border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border));padding:10px 12px;border-radius:12px;margin-bottom:10px;word-break:break-word}.terminal2__muted{margin:0;font-size:12px;line-height:1.55;color:var(--text-secondary)}.terminal2__code{display:block;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);font-family:var(--font-mono);font-size:12px;word-break:break-all;margin:0 0 10px}.terminal2__card-actions{display:flex;gap:10px;flex-wrap:wrap}.terminal2__btn{border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);border-radius:12px;padding:9px 12px;font-size:13px;font-weight:650;cursor:pointer;transition:transform .12s ease,background .18s ease,border-color .18s ease}.terminal2__btn:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-strong);transform:translateY(-1px)}.terminal2__btn:disabled{opacity:.55;cursor:not-allowed}.terminal2__btn--ghost{background:transparent}.terminal2__btn--primary{background:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,var(--border));color:var(--accent-on)}.terminal2__btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:color-mix(in srgb,var(--accent-hover) 65%,var(--border))}.terminal2__btn--full{width:100%}.terminal2__cmds{display:flex;flex-direction:column;gap:6px;margin:8px 0 10px}.terminal2__cmd{font-family:var(--font-mono);font-size:11.5px;padding:8px 10px;border-radius:12px;border:1px solid var(--border);background:color-mix(in srgb,var(--bg-tertiary) 70%,transparent);color:var(--text-primary)}.terminal2__console{border-radius:18px;border:1px solid var(--border);background:var(--bg-secondary);box-shadow:var(--shadow-md);overflow:hidden;min-width:0}.terminal2__console-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-tertiary) 80%,var(--bg-secondary)) 0%,var(--bg-secondary) 100%);border-bottom:1px solid var(--border)}.terminal2__console-title{display:flex;align-items:baseline;gap:10px;min-width:0}.terminal2__console-name{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.terminal2__console-hint{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);white-space:nowrap}.terminal2__console-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.terminal2__filters{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;padding:10px 14px;background:var(--bg-tertiary);border-bottom:1px solid var(--border)}.terminal2__filter{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);-webkit-user-select:none;-moz-user-select:none;user-select:none}.terminal2__filter input{accent-color:var(--accent)}.terminal2__filters-spacer{flex:1}.terminal2__viewport{min-height:420px;max-height:min(60vh,640px);overflow:auto;padding:14px 14px 18px;font-family:var(--font-mono);font-size:13px;line-height:1.55;background:var(--terminal-viewport-bg);color:var(--terminal-viewport-fg);cursor:text;scrollbar-color:rgba(148,163,184,.45) transparent}.terminal2__dock{border-top:1px solid var(--border);background:var(--bg-secondary);padding:12px 14px 14px;display:flex;flex-direction:column;gap:10px}.terminal2__dock-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.terminal2__dock-status{font-size:12px;color:var(--text-secondary);font-weight:650}.terminal2__dock-spacer{flex:1}.terminal2__chip{border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);border-radius:12px;padding:7px 10px;font-size:12px;font-family:var(--font-mono);cursor:pointer;transition:background .15s ease,border-color .15s ease}.terminal2__chip:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-strong)}.terminal2__chip:disabled{opacity:.55;cursor:not-allowed}.terminal2__input-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:var(--bg-tertiary)}.terminal2__prompt{color:#34d399;font-weight:700;font-family:var(--font-mono);-webkit-user-select:none;-moz-user-select:none;user-select:none}.terminal2__input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-mono);font-size:13px}.terminal2__input::-moz-placeholder{color:color-mix(in srgb,var(--text-muted) 78%,transparent)}.terminal2__input::placeholder{color:color-mix(in srgb,var(--text-muted) 78%,transparent)}.terminal2__input-row:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.terminal2__viewport:focus-within{outline:2px solid transparent}.terminal2__filter input:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}@media (max-width: 520px){.terminal2__layout{gap:12px}.terminal2__console-actions .terminal2__btn{padding:8px 10px;font-size:12px}.terminal2__viewport{min-height:340px}.terminal2__dock-row{gap:8px}}.terminal2__foot{display:flex;flex-wrap:wrap;gap:10px 16px;color:var(--text-secondary);font-size:12px;align-items:center}.terminal2__keyhint{display:inline-flex;align-items:center;gap:6px}.terminal2__kbd{font-family:var(--font-mono);font-size:11px;padding:3px 7px;border-radius:8px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary)}.terminal-page__intro,.terminal-dev-grid,.terminal-plugin,.terminal-page__shell{display:none}.terminal-page__prompt-row{display:flex;align-items:center;margin-top:8px;gap:8px}.terminal-page__prompt{color:#34d399;font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none}.terminal-page__input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:#e5e7eb;font:inherit}.terminal-page__input::-moz-placeholder{color:#94a3b8a6}.terminal-page__input::placeholder{color:#94a3b8a6}.terminal-page__input:disabled{opacity:.55}.terminal-page__meta{padding:14px 16px 18px;display:flex;flex-direction:column;gap:14px;background:var(--bg-secondary);border-top:1px solid var(--border)}.terminal-page__hints{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:12px;color:var(--text-secondary);align-items:center}.terminal-page__hint{display:inline-flex;align-items:center;gap:6px}.terminal-page__kbd{font-family:var(--font-mono);font-size:11px;padding:3px 7px;border-radius:5px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary)}.terminal-page__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.terminal-page__chip{padding:8px 14px;font-size:12px;font-weight:500;font-family:var(--font-mono);border-radius:8px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:background .15s ease,border-color .15s ease}.terminal-page__chip:hover:not(:disabled){border-color:#2563eb73;background:#2563eb14}.terminal-page__chip:disabled{opacity:.45;cursor:not-allowed}.terminal-page__chip--danger{margin-left:auto;border-color:#94a3b859}:root[data-theme=dark] .terminal-page__chip{background:#ffffff0a}:root[data-theme=dark] .terminal-page__chip:hover:not(:disabled){background:#ffffff14}.terminal-page__warn{padding:12px 14px;border-radius:10px;font-size:12px;line-height:1.5;color:#b45309;background:#f59e0b1f;border:1px solid rgba(245,158,11,.35)}:root[data-theme=dark] .terminal-page__warn{color:#fbbf24;background:#f59e0b1a}.terminal-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--overlay-scrim)}.terminal-modal{position:relative;width:100%;max-width:560px;max-height:min(88vh,720px);overflow-y:auto;padding:28px 28px 24px;border-radius:16px;border:1px solid var(--border);background:var(--bg-secondary);box-shadow:var(--modal-elevated-shadow)}.terminal-modal__close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.terminal-modal__close:hover{background:var(--settings-well-bg);color:var(--text-primary)}.terminal-modal__head{margin-bottom:20px;padding-right:36px}.terminal-modal__head h2{margin:0 0 6px;font-size:1.25rem;color:var(--accent)}.terminal-modal__head p{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.45}.terminal-modal__section{margin-bottom:20px}.terminal-modal__section h3{margin:0 0 10px;font-size:15px;color:var(--text-primary)}.terminal-modal__section h3.terminal-modal__accent{color:var(--accent)}.terminal-modal__section p,.terminal-modal__section ul{margin:0;font-size:14px;line-height:1.65;color:var(--text-secondary)}.terminal-modal__section ul{padding-left:1.2rem}.terminal-modal__callout{padding:14px 16px;border-radius:10px;border:1px solid rgba(245,158,11,.35);background:#f59e0b1a}.terminal-modal__callout h3{margin:0 0 6px;font-size:13px;color:#d97706}.terminal-modal__callout p{font-size:13px;color:var(--text-secondary)}:root[data-theme=dark] .terminal-modal__callout p{color:#fbbf24}.terminal-modal__tips{padding:14px 16px;border-radius:10px;border:1px solid var(--border);background:var(--bg-tertiary)}.terminal-modal__tips h3{margin:0 0 8px;font-size:13px;color:var(--accent)}.terminal-modal__tips ul{font-size:13px}.terminal-modal__kbd{display:inline-block;padding:2px 6px;border-radius:4px;font-size:11px;border:1px solid var(--border);background:var(--bg-secondary)}.terminal-modal__footer{margin-top:22px;text-align:center}.terminal-modal__btn{padding:11px 28px;font-size:14px;font-weight:600;border:none;border-radius:10px;background:var(--accent);color:#fff;cursor:pointer;transition:transform .15s ease,filter .15s ease}.terminal-modal__btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.terminal-plugin{width:100%;max-width:960px;margin:0 auto 32px;padding:22px 22px 26px;border-radius:16px;border:1px solid var(--border);background:var(--bg-secondary);box-shadow:0 12px 40px color-mix(in srgb,var(--bg-primary) 35%,transparent)}.terminal-plugin__badge-row{display:flex;justify-content:center;margin-bottom:12px}.terminal-plugin__dev-badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#b45309;background:#f59e0b26;border:1px solid rgba(245,158,11,.4)}:root[data-theme=dark] .terminal-plugin__dev-badge{color:#fbbf24;background:#f59e0b1f}.terminal-plugin__title{margin:0 0 10px;font-size:clamp(1.35rem,2.8vw,1.65rem);font-weight:700;letter-spacing:-.02em;text-align:center;color:var(--text-primary)}.terminal-plugin__lead{margin:0 auto 20px;max-width:46rem;text-align:center;font-size:15px;line-height:1.6;color:var(--text-secondary)}.terminal-cmd-palette{margin:0 auto 20px;max-width:520px;border-radius:12px;border:1px solid var(--border);background:var(--bg-tertiary);overflow:hidden;box-shadow:0 16px 40px #0003}:root[data-theme=light] .terminal-cmd-palette{background:#f1f5f9;border-color:#0f172a1f;box-shadow:0 12px 32px #0f172a14}.terminal-cmd-palette__titlebar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-secondary) 90%,var(--accent))}:root[data-theme=light] .terminal-cmd-palette__titlebar{background:linear-gradient(180deg,#e8eef6,#dfe8f4)}.terminal-cmd-palette__label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.terminal-cmd-palette__shortcut{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary)}.terminal-cmd-palette__slash{opacity:.5;-webkit-user-select:none;-moz-user-select:none;user-select:none}.terminal-cmd-palette__hint{margin:0;padding:12px 14px 6px;font-size:12px;color:var(--text-secondary)}.terminal-cmd-palette__list{margin:0;padding:4px 14px 14px 28px;font-size:12px;line-height:1.55;color:var(--text-primary)}.terminal-cmd-palette__list li{margin-bottom:4px}.terminal-plugin__bullets{margin:0 auto;padding-left:1.25rem;max-width:42rem;font-size:14px;line-height:1.65;color:var(--text-secondary)}.terminal-plugin__bullets li{margin-bottom:8px}.terminal-plugin__bullets strong{color:var(--text-primary);font-weight:600}.ccl-classroom-tabs{display:flex;gap:4px;padding:3px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border);width:-moz-fit-content;width:fit-content}.ccl-classroom-tab{padding:7px 18px;font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s,color .2s;background:transparent;color:var(--text-secondary)}.ccl-classroom-tab--active{background:var(--accent-soft);color:var(--text-primary);box-shadow:0 0 0 1px var(--border-strong)}.ccl-classroom-empty{text-align:center;padding:48px 20px;color:var(--text-secondary);font-size:14px;line-height:1.6}.ccl-classroom-empty h3{margin:0 0 8px;font-size:16px;color:var(--text-primary);font-weight:600}.ccl-assignment-row{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-xs);transition:border-color .2s,box-shadow .2s;cursor:pointer}.ccl-assignment-row:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.ccl-assignment-row--enrolled{cursor:default}.ccl-assignment-row__info--open-detail{cursor:pointer;border-radius:var(--radius-md);outline:none}.ccl-assignment-row__info--open-detail:focus-visible{box-shadow:0 0 0 2px var(--accent-ring)}.ccl-assignment-row__info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.ccl-assignment-row__title{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ccl-enroll-progress{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 4px;align-items:center}.ccl-enroll-progress__step{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:var(--radius-pill);background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border)}.ccl-enroll-progress__step--done{background:var(--success-soft);color:var(--success);border-color:#2dd4bf59}[data-theme=light] .ccl-enroll-progress__step--done{border-color:#0d948859}.ccl-enroll-progress__step--active{background:var(--accent-soft);color:var(--accent-hover);border-color:var(--border-strong)}.ccl-activity-table{width:100%;border-collapse:collapse;font-size:12px;color:var(--text-secondary)}.ccl-activity-table th,.ccl-activity-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}.ccl-activity-table th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.ccl-assignment-row__meta{font-size:12px;color:var(--text-secondary);display:flex;gap:12px;align-items:center}.ccl-assignment-row__actions{display:flex;gap:8px;align-items:center;flex-shrink:0;margin-left:16px}.ccl-status-chip{display:inline-flex;align-items:center;padding:3px 10px;font-size:11px;font-weight:600;border-radius:var(--radius-pill);letter-spacing:.03em;white-space:nowrap}.ccl-status-chip--draft{background:var(--bg-tertiary);color:var(--text-secondary)}.ccl-status-chip--published{background:var(--success-soft);color:var(--success)}.ccl-status-chip--closed{background:var(--danger-soft);color:var(--danger)}.ccl-status-chip--invited{background:var(--accent-soft);color:var(--accent-hover)}.ccl-status-chip--accepted,.ccl-status-chip--in_progress{background:var(--warning-soft);color:var(--warning)}.ccl-status-chip--submitted{background:var(--success-soft);color:var(--success)}.ccl-status-chip--graded{background:var(--accent-soft);color:var(--accent-hover)}.ccl-status-chip--pending_review{background:var(--warning-soft);color:var(--warning)}.ccl-status-chip--approved{background:var(--success-soft);color:var(--success)}.ccl-status-chip--returned{background:var(--danger-soft);color:var(--danger)}.ccl-status-chip--late{background:#fb923c24;color:#ea580c;border:1px solid rgba(251,146,60,.35)}.ccl-status-chip--withdrawn{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border)}.ccl-trial-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);background:var(--warning-soft);color:var(--warning);border:1px solid rgba(244,183,64,.28)}[data-theme=light] .ccl-trial-badge{border-color:#b4821440}.ccl-email-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border);min-height:40px;align-items:center}.ccl-email-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-primary)}.ccl-email-chip button{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;font-size:14px;line-height:1}.ccl-email-chips input{flex:1;min-width:120px;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:13px}.ccl-detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:16px}.ccl-detail-tab{padding:10px 18px;font-size:13px;font-weight:600;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.ccl-detail-tab:hover{color:var(--text-primary)}.ccl-detail-tab--active{color:var(--text-primary);border-bottom-color:var(--accent)}.ccl-submission-card{padding:14px 18px;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:10px}.ccl-submission-card__header{display:flex;align-items:center;justify-content:space-between}.ccl-submission-card__files{display:flex;flex-direction:column;gap:6px}.ccl-submission-file{padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border);font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);white-space:pre-wrap;max-height:200px;overflow-y:auto}.ccl-submission-file__name{font-weight:600;color:var(--text-primary);margin-bottom:6px;font-size:12px}.ccl-review-form{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border)}.ccl-review-form textarea{width:100%;min-height:80px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);font-size:13px;resize:vertical;font-family:inherit}.ccl-review-form textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 1px var(--accent-ring)}.ccl-student-submit-banner{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;margin-bottom:18px;border-radius:var(--radius-md);border:1px solid var(--border-focus);background:color-mix(in srgb,var(--accent-soft) 55%,transparent)}.ccl-student-submit-banner strong{font-size:14px;color:var(--text-primary)}.ccl-student-wait-banner{padding:12px 14px;margin-bottom:18px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-tertiary);font-size:13px;color:var(--text-primary)}.ccl-grade-banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;padding:12px 14px;margin-bottom:14px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--accent-hover) 35%,var(--border));background:color-mix(in srgb,var(--accent-soft) 40%,transparent)}.ccl-grade-banner__label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.ccl-grade-banner__value{font-size:22px;font-weight:700;font-family:var(--font-display);color:var(--text-primary)}.ccl-grade-banner__complete{font-size:15px;font-weight:600;color:var(--text-primary)}.ccl-teacher-feedback-card{padding:14px;margin-bottom:8px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border)}.ccl-teacher-feedback-card__label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.ccl-teacher-feedback-card__body{font-size:14px;line-height:1.55;color:var(--text-primary);white-space:pre-wrap}.ccl-modal-field-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;display:block}.ccl-modal-textarea{width:100%;padding:10px 12px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);font-size:13px;resize:vertical;font-family:inherit}.ccl-modal-textarea:focus{outline:none;border-color:var(--border-focus)}.ccl-modal-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;width:36px;height:36px;padding:0;margin:0;background:none;border:none;color:var(--text-muted);font-size:20px;cursor:pointer;line-height:1}.ccl-modal-close:hover{color:var(--text-primary)}.ccl-modal-title{margin:0;font-size:20px;font-weight:700;font-family:var(--font-display);color:var(--text-primary)}.ccl-assignment-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2500;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;background:var(--overlay-scrim);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.ccl-assignment-modal-panel{width:100%;max-width:600px;max-height:min(85vh,900px);overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:28px;display:flex;flex-direction:column;gap:20px;box-sizing:border-box;margin:auto;box-shadow:var(--modal-elevated-shadow)}.ccl-classroom-chip-row{display:inline-flex;padding:3px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border);gap:4px;flex-wrap:wrap}.ccl-classroom-chip{padding:6px 16px;font-size:13px;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:background .15s,color .15s;background:transparent;color:var(--text-secondary)}.ccl-classroom-chip--active{background:var(--accent-soft);color:var(--text-primary)}.ccl-classroom-join-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding-bottom:4px;border-bottom:1px solid var(--border);margin-bottom:4px}.ccl-classroom-join-bar__field{flex:1 1 220px;min-width:0}.ccl-classroom-join-bar__btn{flex-shrink:0}.ccl-classroom-join-hint{margin:0 0 8px;font-size:12px;line-height:1.45;color:var(--text-muted)}.ccl-classroom-join-code-sample{font-size:11px;padding:2px 6px;border-radius:6px;background:var(--bg-tertiary);border:1px solid var(--border)}.ccl-attachment-preview{max-width:min(100%,440px);max-height:min(60vh,360px);width:auto;height:auto;border-radius:var(--radius-md);border:1px solid var(--border);-o-object-fit:contain;object-fit:contain;background:var(--bg-tertiary);display:block}.ccl-attachment-brief__link{display:inline-block;max-width:100%;line-height:0}.ccl-attachment-brief__link:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-md)}.ccl-attachment-thumb{width:44px;height:44px;flex-shrink:0;border-radius:var(--radius-sm);border:1px solid var(--border);-o-object-fit:cover;object-fit:cover;background:var(--bg-tertiary)}.page.page-home.ccl-landing-page{min-height:100%;padding:0;background:var(--bg-canvas);position:relative;isolation:isolate;width:100%;max-width:100%}.ccl-landing-page{max-width:100%!important;width:100%;padding:0!important}.ccl-landing__bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.ccl-landing__grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 0%,black 0%,transparent 70%);mask-image:radial-gradient(ellipse 70% 60% at 50% 0%,black 0%,transparent 70%);opacity:.6}[data-theme=light] .ccl-landing__grid{opacity:.55}.ccl-landing__halo{position:absolute;border-radius:50%;filter:blur(110px);opacity:.45;pointer-events:none}.ccl-landing__halo--top{top:-200px;left:50%;transform:translate(-50%);width:720px;height:360px;background:radial-gradient(closest-side,var(--accent-soft),transparent)}.ccl-landing__halo--mid{top:38%;right:-180px;width:480px;height:480px;background:radial-gradient(closest-side,var(--accent-soft),transparent);opacity:.32}.ccl-landing__halo--bottom-left{bottom:15%;left:-220px;width:520px;height:520px;background:radial-gradient(closest-side,rgba(45,212,191,.1),transparent);opacity:.5}.ccl-landing__dots{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,var(--border) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 20%,rgba(0,0,0,.06) 50%,transparent 80%);mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 20%,rgba(0,0,0,.06) 50%,transparent 80%);opacity:.5}[data-theme=light] .ccl-landing__dots{opacity:.4}.ccl-landing__code-frag{position:absolute;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);opacity:.12;white-space:nowrap;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}[data-theme=light] .ccl-landing__code-frag{opacity:.09}.ccl-landing__code-frag--1{top:18%;left:4%;transform:rotate(-6deg)}.ccl-landing__code-frag--2{top:42%;right:3%;transform:rotate(4deg)}.ccl-landing__code-frag--3{top:65%;left:6%;transform:rotate(3deg)}.ccl-landing__code-frag--4{top:82%;right:8%;transform:rotate(-3deg)}.ccl-landing{position:relative;z-index:1;width:100%;max-width:1200px;margin:0 auto;padding:clamp(48px,7vw,96px) 24px 48px;font-family:var(--font-sans);color:var(--text-primary);display:flex;flex-direction:column;gap:clamp(60px,8vw,120px);min-width:0;box-sizing:border-box}.ccl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:600;font-family:inherit;letter-spacing:-.005em;border-radius:var(--radius-pill);cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .12s ease,box-shadow .18s ease;border:1px solid transparent}.ccl-btn--primary{background:var(--accent);color:var(--accent-on);box-shadow:0 10px 26px -12px var(--accent-ring)}.ccl-btn--primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 14px 32px -12px var(--accent-ring)}.ccl-btn--primary:active{transform:translateY(0);background:var(--accent-pressed)}.ccl-btn--ghost{background:transparent;color:var(--text-primary);border-color:var(--border-strong)}.ccl-btn--ghost:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.ccl-hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;min-width:0}.ccl-hero__content{display:flex;flex-direction:column;gap:22px;min-width:0}.ccl-hero__badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 12px;font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--bg-secondary);width:-moz-fit-content;width:fit-content}.ccl-hero__badge-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.ccl-hero__title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.4rem);font-weight:700;letter-spacing:-.035em;line-height:1.15;margin:0;padding-bottom:.1em;color:var(--text-primary);background:linear-gradient(180deg,var(--text-primary) 60%,color-mix(in srgb,var(--text-primary) 70%,var(--accent)) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;overflow-wrap:anywhere;word-break:break-word}.ccl-hero__lead{font-size:clamp(.95rem,1.3vw,1.12rem);line-height:1.6;color:var(--text-secondary);margin:0;overflow-wrap:anywhere;word-break:break-word}.ccl-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}.ccl-hero__trust{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:4px}.ccl-hero__trust-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.ccl-hero__trust-item svg{color:var(--success)}.ccl-hero__preview{position:relative;min-width:0;width:100%}.ccl-hero__preview .ccl-mock{transform:perspective(1200px) rotateY(-8deg) rotateX(3deg)}@media (max-width: 767px){.ccl-landing{padding:clamp(22px,5vw,40px) max(14px,env(safe-area-inset-left)) 32px max(14px,env(safe-area-inset-right));gap:clamp(36px,8vw,64px)}.ccl-hero{grid-template-columns:1fr;gap:20px;min-width:0;width:100%;max-width:100%}.ccl-hero__content{text-align:center;align-items:center;gap:14px;min-width:0;width:100%;max-width:100%;padding-inline:2px;box-sizing:border-box}.ccl-hero__badge{font-size:11px;padding:5px 10px;max-width:min(100%,20rem);white-space:normal;justify-content:center;text-align:center}.ccl-hero__title{font-size:clamp(1.2rem,4.6vw + .25rem,1.85rem);letter-spacing:-.03em;line-height:1.18;max-width:100%;width:100%;box-sizing:border-box}.ccl-hero__lead{font-size:clamp(.8rem,2.6vw + .3rem,.95rem);line-height:1.55;max-width:min(100%,22rem);margin-inline:auto;padding-inline:4px;box-sizing:border-box}.ccl-hero__cta{justify-content:center;gap:8px;flex-wrap:wrap;margin-top:2px;max-width:100%}.ccl-hero__cta .ccl-btn{padding:9px 14px;font-size:12px;flex:1 1 auto;min-width:0;max-width:calc(50% - 4px)}.ccl-hero__trust{justify-content:center;gap:6px 12px;flex-wrap:wrap;margin-top:2px;max-width:100%}.ccl-hero__trust-item{font-size:11px;max-width:100%;justify-content:center;text-align:center}.ccl-hero__preview{min-width:0;width:100%;max-width:100%}.ccl-hero__preview .ccl-mock{transform:none}}@media (max-width: 380px){.ccl-hero__cta{flex-direction:column;align-items:stretch;max-width:280px;margin-inline:auto}.ccl-hero__cta .ccl-btn{max-width:100%;width:100%}}.ccl-proof{display:flex;align-items:center;justify-content:center;gap:32px;padding:24px 0}.ccl-proof__item{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.ccl-proof__item strong{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.ccl-proof__item span{font-size:13px;color:var(--text-muted)}.ccl-proof__divider{width:1px;height:40px;background:var(--border);flex-shrink:0}@media (max-width: 480px){.ccl-proof{gap:20px}.ccl-proof__item strong{font-size:1.2rem}}.ccl-mock{position:relative;border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);max-width:100%;min-width:0}.ccl-mock:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px #ffffff0f}.ccl-mock__chrome{display:flex;align-items:center;flex-wrap:wrap;gap:10px;row-gap:8px;padding:12px 18px;background:var(--bg-tertiary);border-bottom:1px solid var(--border);min-width:0}.ccl-mock__dots{display:inline-flex;gap:6px}.ccl-mock__dots span{width:11px;height:11px;border-radius:50%;background:var(--text-muted);opacity:.45}.ccl-mock__dots span:nth-child(1){background:#ff5f57;opacity:.85}.ccl-mock__dots span:nth-child(2){background:#febc2e;opacity:.85}.ccl-mock__dots span:nth-child(3){background:#28c840;opacity:.85}.ccl-mock__tabs{display:inline-flex;gap:6px;margin-left:8px;flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.ccl-mock__tabs::-webkit-scrollbar{display:none}.ccl-mock__tab{font-family:var(--font-mono);font-size:11px;padding:5px 12px;border-radius:7px 7px 0 0;color:var(--text-muted);background:transparent;border-bottom:1px solid transparent;flex-shrink:0;white-space:nowrap}.ccl-mock__tab--active{color:var(--text-primary);background:var(--bg-secondary);border-bottom-color:var(--accent)}.ccl-mock__presence{margin-left:auto;display:inline-flex;flex-shrink:0}.ccl-mock__avatar{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;border:2px solid var(--bg-tertiary);margin-left:-8px}.ccl-mock__avatar:first-child{margin-left:0}.ccl-mock__body{display:grid;grid-template-columns:200px 1fr;min-height:260px;background:var(--bg-secondary)}.ccl-mock__sidebar{border-right:1px solid var(--border);padding:14px 10px;display:flex;flex-direction:column;gap:4px}.ccl-mock__file{display:flex;align-items:center;padding:7px 10px;font-size:12px;color:var(--text-secondary);border-radius:7px;font-family:var(--font-mono)}.ccl-mock__file--folder{color:var(--text-primary);font-weight:600;margin-top:6px}.ccl-mock__file--nested{padding-left:22px}.ccl-mock__file--active{background:var(--accent-soft);color:var(--accent);font-weight:600}.ccl-mock__editor{padding:18px 22px;overflow:hidden;font-family:var(--font-mono);position:relative;min-width:0;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--accent) 4%,transparent))}.ccl-mock__pre{margin:0;font-family:var(--font-mono);font-size:12.5px;line-height:1.7;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.ccl-mock__caret{display:inline-block;width:7px;height:1.05em;margin-left:1px;vertical-align:text-bottom;background:var(--accent);border-radius:1px;animation:ccl-caret 1s steps(2,end) infinite}@keyframes ccl-caret{50%{opacity:0}}.ccl-mock__statusbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;row-gap:4px;padding:8px 18px;background:var(--bg-tertiary);border-top:1px solid var(--border);font-size:11px;font-family:var(--font-mono);color:var(--text-muted);min-width:0}.ccl-mock__status-dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.ccl-mock__status-spacer{flex:1}@media (max-width: 720px){.ccl-mock__body{grid-template-columns:1fr;min-height:220px}.ccl-mock__sidebar{display:none}.ccl-mock__chrome{padding:10px 12px}.ccl-mock__editor{padding:12px 14px}.ccl-mock__pre{font-size:11px;line-height:1.65}.ccl-mock__statusbar{padding:8px 12px;font-size:10px}.ccl-mock__status-spacer{display:none}}.ccl-section{display:flex;flex-direction:column;gap:32px}.ccl-section__head{text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center;max-width:720px;margin:0 auto}.ccl-eyebrow{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);padding:5px 12px;border-radius:var(--radius-pill);background:var(--accent-soft)}.ccl-section__title{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:700;letter-spacing:-.025em;line-height:1.1;margin:0;color:var(--text-primary)}.ccl-section__sub{font-size:1rem;line-height:1.55;color:var(--text-secondary);margin:0;max-width:600px}.ccl-features{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.ccl-feature{display:flex;flex-direction:column;gap:14px;padding:28px 24px 52px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease;position:relative;overflow:hidden;grid-column:span 4}.ccl-feature--hero{grid-column:span 6;padding:32px 28px 60px;min-height:220px}.ccl-feature__glow{position:absolute;width:160px;height:160px;border-radius:50%;top:-40px;right:-40px;filter:blur(60px);pointer-events:none;opacity:0;transition:opacity .35s ease}.ccl-feature:hover .ccl-feature__glow{opacity:1}.ccl-feature--glow-purple .ccl-feature__glow{background:#7c5cff38}.ccl-feature--glow-cyan .ccl-feature__glow{background:#22d3ee33}.ccl-feature--glow-green .ccl-feature__glow{background:#2dd4bf2e}.ccl-feature--glow-amber .ccl-feature__glow{background:#f4b7402e}.ccl-feature--glow-pink .ccl-feature__glow{background:#f472b633}[data-theme=light] .ccl-feature--glow-purple .ccl-feature__glow{background:#7c5cff1f}[data-theme=light] .ccl-feature--glow-cyan .ccl-feature__glow{background:#22d3ee1a}[data-theme=light] .ccl-feature--glow-green .ccl-feature__glow{background:#2dd4bf1a}[data-theme=light] .ccl-feature--glow-amber .ccl-feature__glow{background:#f4b7401a}[data-theme=light] .ccl-feature--glow-pink .ccl-feature__glow{background:#f472b61a}.ccl-feature__snippet{position:absolute;bottom:16px;right:16px;font-family:var(--font-mono);font-size:10px;line-height:1;padding:5px 10px;border-radius:6px;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-muted);opacity:.55;pointer-events:none;transition:opacity .25s ease;max-width:calc(100% - 32px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ccl-feature:hover .ccl-feature__snippet{opacity:.9}.ccl-feature:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:var(--shadow-md)}.ccl-feature__icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent);position:relative;z-index:1}.ccl-feature--glow-cyan .ccl-feature__icon{background:#22d3ee24;color:#22d3ee}.ccl-feature--glow-green .ccl-feature__icon{background:#2dd4bf24;color:#2dd4bf}.ccl-feature--glow-amber .ccl-feature__icon{background:#f4b74024;color:#f4b740}.ccl-feature--glow-pink .ccl-feature__icon{background:#f472b624;color:#f472b6}[data-theme=light] .ccl-feature--glow-cyan .ccl-feature__icon{color:#0891b2}[data-theme=light] .ccl-feature--glow-green .ccl-feature__icon{color:#0d9488}[data-theme=light] .ccl-feature--glow-amber .ccl-feature__icon{color:#b06a00}[data-theme=light] .ccl-feature--glow-pink .ccl-feature__icon{color:#db2777}.ccl-feature__icon:before{content:"";position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;background:radial-gradient(closest-side,var(--accent-soft),transparent);z-index:-1;pointer-events:none}.ccl-feature__title{font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:-.01em;margin:0;color:var(--text-primary)}.ccl-feature__body{font-size:.95rem;line-height:1.6;color:var(--text-secondary);margin:0}.ccl-feature__bullet{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);margin:0;padding-top:8px;border-top:1px dashed var(--border)}.ccl-feature__bullet svg{color:var(--success)}@media (max-width: 768px){.ccl-features{grid-template-columns:1fr}.ccl-feature,.ccl-feature--hero{grid-column:span 1}}.ccl-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;list-style:none;padding:0;margin:0}.ccl-step{display:flex;flex-direction:column;gap:10px;padding:22px 20px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);position:relative;margin-right:32px}.ccl-step:last-child{margin-right:0}.ccl-step:after{content:"";position:absolute;top:50%;right:-32px;width:32px;height:1px;background:var(--border);transform:translateY(-50%)}.ccl-step:last-child:after{display:none}.ccl-step__num{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--text-muted)}.ccl-step__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent)}.ccl-step__body{display:flex;flex-direction:column;gap:4px}.ccl-step__body strong{font-size:.98rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.ccl-step__body span{font-size:.88rem;color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.ccl-steps{grid-template-columns:1fr;gap:0}.ccl-step{margin-right:0;margin-bottom:24px}.ccl-step:last-child{margin-bottom:0}.ccl-step:after{top:auto;bottom:-24px;right:50%;width:1px;height:24px;transform:translate(50%)}}.ccl-faq__list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:10px;width:100%}.ccl-faq__motion-wrap{width:100%}.ccl-faq__item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-secondary);overflow:hidden;transition:border-color .2s ease}.ccl-faq__item--open{border-color:var(--border)}.ccl-faq__summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;width:100%;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:transparent;border:none;text-align:left}.ccl-faq__summary:hover,.ccl-faq__summary:active{background-color:transparent;color:var(--text-primary)}.ccl-faq__summary:focus-visible{outline:2px solid var(--border-focus);outline-offset:-2px;border-radius:var(--radius-lg)}.ccl-faq__question{flex:1;text-align:left;line-height:1.4}.ccl-faq__chev{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;color:var(--text-secondary);background:transparent;border:none;transition:transform .3s cubic-bezier(.22,1,.36,1),color .2s ease}.ccl-faq__item--open .ccl-faq__chev{transform:rotate(180deg);color:var(--text-secondary)}.ccl-faq__panel-outer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .34s cubic-bezier(.22,1,.36,1)}.ccl-faq__item--open .ccl-faq__panel-outer{grid-template-rows:1fr}.ccl-faq__panel{min-height:0;overflow:hidden}.ccl-faq__panel-inner{transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1)}.ccl-faq__item:not(.ccl-faq__item--open) .ccl-faq__panel-inner{opacity:0;transform:translateY(-10px)}.ccl-faq__item--open .ccl-faq__panel-inner{opacity:1;transform:translateY(0)}.ccl-faq__answer{margin:0;padding:0 20px 18px;font-size:14px;line-height:1.7;color:var(--text-secondary)}.ccl-cta{text-align:center;padding:56px clamp(24px,5vw,64px);border-radius:var(--radius-xl);background:radial-gradient(ellipse at 50% 0%,var(--accent-soft) 0%,transparent 70%),var(--bg-secondary);border:1px solid var(--border-strong);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:16px;align-items:center}.ccl-cta h2{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;letter-spacing:-.025em;color:var(--text-primary);margin:0}.ccl-cta p{font-size:1rem;color:var(--text-secondary);max-width:540px;margin:0}.ccl-cta__buttons{display:flex;gap:12px;margin-top:8px}.ccl-footer{display:flex;flex-direction:column;gap:16px;padding:32px 0 0;margin-top:8px;border-top:1px solid var(--border)}.ccl-footer__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.ccl-footer__brand-col{display:flex;flex-direction:column;gap:4px}.ccl-footer__brand{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:-.015em}.ccl-footer__tagline{font-size:12px;color:var(--text-muted)}.ccl-footer__nav{display:flex;flex-wrap:wrap;gap:8px 22px}.ccl-footer__link{padding:0;margin:0;border:none;background:none;font:inherit;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;text-decoration:none;transition:color .18s ease}.ccl-footer__link:hover{color:var(--accent)}.ccl-footer__copy{margin:0;font-size:12px;color:var(--text-muted)}@media (max-width: 768px){.ccl-footer__row{flex-direction:column;align-items:flex-start}}.ccl-pricing{width:100%;display:flex;flex-direction:column;gap:40px}.ccl-pricing__head{text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center}.ccl-pricing__subtitle{font-size:.95rem;color:var(--text-secondary);margin:0;max-width:560px}.ccl-pricing__usd{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.ccl-pricing__free-row{display:flex;flex-direction:column;gap:8px}.ccl-pricing__tier-label{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted)}.ccl-plan-card{position:relative;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-secondary);padding:26px 24px;display:flex;flex-direction:column;gap:18px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.ccl-plan-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.ccl-plan-card--free{background:var(--bg-secondary);border-style:dashed}.ccl-plan-card--popular{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent),var(--shadow-md)}.ccl-plan-card--student{border-color:var(--border-strong)}.ccl-plan-badge{position:absolute;top:-13px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:5px;background:var(--accent);color:var(--accent-on);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 12px;border-radius:var(--radius-pill);white-space:nowrap}.ccl-plan-badge--student{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-strong)}.ccl-plan-header{display:flex;flex-direction:column;gap:6px}.ccl-plan-name{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--text-primary);margin:0}.ccl-plan-price-row{display:flex;align-items:baseline;gap:4px;margin-top:4px}.ccl-plan-price{font-family:var(--font-display);font-size:2.6rem;font-weight:800;letter-spacing:-.035em;color:var(--text-primary);line-height:1}.ccl-plan-price-suffix{font-size:.875rem;color:var(--text-muted)}.ccl-plan-desc{font-size:.875rem;line-height:1.55;color:var(--text-secondary);margin:0}.ccl-plan-card--free .ccl-plan-inner{display:flex;gap:40px;align-items:flex-start}.ccl-plan-card--free .ccl-plan-left{flex:0 0 auto;min-width:200px;max-width:260px}.ccl-plan-card--free .ccl-plan-features{flex:1;-moz-columns:2;columns:2;gap:10px}@media (max-width: 700px){.ccl-plan-card--free .ccl-plan-inner{flex-direction:column}.ccl-plan-card--free .ccl-plan-left{max-width:100%}.ccl-plan-card--free .ccl-plan-features{-moz-columns:1;columns:1}}.ccl-plan-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;flex:1}.ccl-plan-feature{display:flex;align-items:flex-start;gap:10px;font-size:.875rem;line-height:1.4;color:var(--text-primary);-moz-column-break-inside:avoid;break-inside:avoid}.ccl-plan-feature__icon{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;margin-top:1px}.ccl-plan-feature__icon--ok{background:var(--accent-soft);color:var(--accent)}.ccl-plan-feature__icon--no{background:var(--bg-tertiary);color:var(--text-muted)}.ccl-plan-feature__text{flex:1;color:var(--text-secondary)}.ccl-plan-feature__text--no{text-decoration:line-through;color:var(--text-muted)}.ccl-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 900px){.ccl-pricing-grid{grid-template-columns:1fr}.ccl-plan-card--popular{transform:none}}.ccl-plan-cta{width:100%;padding:12px;border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;border:1px solid transparent;transition:background .18s ease,transform .12s ease,border-color .18s ease;text-align:center;display:block;margin-top:auto}.ccl-plan-cta:hover{transform:translateY(-1px)}.ccl-plan-cta--primary{background:var(--accent);color:var(--accent-on)}.ccl-plan-cta--primary:hover{background:var(--accent-hover)}.ccl-plan-cta--outline{background:transparent;border-color:var(--border-strong);color:var(--text-primary)}.ccl-plan-cta--outline:hover{background:var(--bg-tertiary)}.ccl-plan-cta--secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border)}.ccl-plan-cta--secondary:hover{background:var(--bg-elevated)}.ccl-pricing__divider{display:flex;align-items:center;gap:16px}.ccl-pricing__divider-line{flex:1;height:1px;background:linear-gradient(to right,transparent,var(--border),transparent)}.ccl-pricing__divider-text{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.ccl-tok-kw{color:#9a7de8}.ccl-tok-str{color:#5fa58c}.ccl-tok-fn{color:#7cbee6}.ccl-tok-tag{color:#e8946d}.ccl-tok-attr{color:#9a7de8}.ccl-tok-var{color:#e6c07b}.ccl-tok-cmt{color:var(--text-muted);font-style:italic}[data-theme=light] .ccl-tok-kw{color:#6b3fb8}[data-theme=light] .ccl-tok-str{color:#2d7a5c}[data-theme=light] .ccl-tok-fn{color:#2068a8}[data-theme=light] .ccl-tok-tag{color:#c05320}[data-theme=light] .ccl-tok-attr{color:#6b3fb8}[data-theme=light] .ccl-tok-var{color:#8a6020}@media (prefers-reduced-motion: reduce){.ccl-mock__caret{animation:none;opacity:.7}.ccl-feature,.ccl-faq__item,.ccl-faq__panel-outer{transition:none}.ccl-faq__panel-inner{transition:none;transform:none}}body{font-family:var(--font-sans);background-color:var(--bg-canvas);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}.app-container{display:flex;flex-direction:column;height:100vh;background-color:var(--bg-canvas);color:var(--text-primary)}.app-container--landing{position:relative;isolation:isolate;background:var(--bg-canvas)}.app-container--session{background-color:var(--bg-canvas)}.app-main{display:flex;flex:1;width:100%;height:calc(100vh - var(--menu-bar-height) - var(--mobile-nav-height, 0px));min-height:0;overflow-y:auto;overflow-x:hidden}.app-container--session .app-main{overflow:hidden}.tab-content{padding:40px 24px;overflow-y:auto;overflow-x:hidden;flex:1;display:flex;flex-direction:column;align-items:center;max-height:calc(100vh - var(--menu-bar-height) - var(--mobile-nav-height, 0px) - 4px)}@media (max-width: 767px){.tab-content{padding:24px 16px 28px;align-items:stretch}}.tab-content h2{margin-bottom:24px;color:var(--text-primary);font-size:28px;font-weight:600}.tab-content p{color:var(--text-secondary);line-height:1.6}.editor-layout{display:grid;grid-template-columns:280px 1fr;gap:0;width:100%;height:100%}.file-explorer-sidebar{display:flex;flex-direction:column;background-color:var(--bg-secondary);border-right:1px solid var(--border);overflow:auto}.editor-section{display:flex;flex-direction:column;background-color:var(--bg-primary);overflow:auto;min-height:0}.sidebar-file-scroll::-webkit-scrollbar{width:8px}.sidebar-file-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-file-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.sidebar-file-scroll::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.ccl-download-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3001;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--overlay-scrim);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.ccl-download-modal-panel{max-width:520px;width:100%;padding:28px;border-radius:var(--radius-lg);background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.ccl-download-modal-panel h2{margin:0 0 12px;font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.ccl-download-modal-panel p,.ccl-download-modal-panel ol{color:var(--text-secondary)}.ccl-download-modal__lead{margin-bottom:14px;line-height:1.55;color:var(--text-secondary)}.ccl-download-modal__steps{margin-bottom:14px;padding-left:20px;line-height:1.7;color:var(--text-secondary)}.ccl-download-modal__muted{font-size:12px;color:var(--text-muted);margin-bottom:16px}.ccl-download-modal__btn{padding:10px 18px;background:var(--accent);color:var(--accent-on);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:600;transition:background .18s ease,transform .12s ease}.ccl-download-modal__btn:hover{background:var(--accent-hover)}.ccl-notify-stack{position:fixed;right:14px;top:calc(var(--menu-bar-height, 64px) + 10px);z-index:10000;display:flex;flex-direction:column;gap:10px;width:min(420px,calc(100vw - 28px));pointer-events:none}.ccl-notify-stack>*{pointer-events:auto}@keyframes ccl-notify-in{0%{opacity:0;transform:translate(12px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}.ccl-notification{position:relative;padding:0;border-radius:12px;overflow:hidden;font-size:13px;line-height:1.45;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);box-shadow:var(--modal-elevated-shadow, 0 20px 48px rgba(0, 0, 0, .4));--ccl-n-accent: var(--accent-hover);animation:ccl-notify-in .32s cubic-bezier(.22,1,.36,1)}.ccl-notification__inner{display:flex;flex-direction:row;align-items:stretch;padding:0;min-height:52px}.ccl-notification__accent-bar{width:3px;flex-shrink:0;background:var(--ccl-n-accent);border-radius:12px 0 0 12px}.ccl-notification__main{flex:1;min-width:0;padding:12px 14px}.ccl-notification--error{--ccl-n-accent: var(--error)}.ccl-notification--success{--ccl-n-accent: var(--success)}.ccl-notification--warning{--ccl-n-accent: var(--warning)}.ccl-notification--info{--ccl-n-accent: var(--accent-hover)}.ccl-notification__row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:4px}.ccl-notification__label{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ccl-n-accent)}.ccl-notification__type-icon{flex-shrink:0;opacity:.95}.ccl-notification__dismiss{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;padding:0;margin:0;font-size:18px;line-height:1;border-radius:8px;width:36px;height:36px;flex-shrink:0}.ccl-notification__dismiss:hover{color:var(--text-primary);background:color-mix(in srgb,var(--text-primary) 10%,transparent)}.ccl-notification__body{color:var(--text-secondary)}@media (max-width: 767px){.ccl-notify-stack{top:auto;left:12px;right:12px;bottom:calc(var(--mobile-nav-height, 0px) + 12px);width:auto;max-width:none}}@media (prefers-reduced-motion: reduce){.ccl-notification{animation:none}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-\[2\]{z-index:2}.-m-2\.5{margin:-.625rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.-mr-16{margin-right:-4rem}.-mr-4{margin-right:-1rem}.-mt-16{margin-top:-4rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mt-1{margin-top:.25rem}.mt-20{margin-top:5rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.size-6{width:1.5rem;height:1.5rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-\[80rem\]{height:80rem}.h-full{height:100%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-\[35rem\]{width:35rem}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-left{transform-origin:left}.origin-right{transform-origin:right}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-45{--tw-rotate: -45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.skew-x-\[\.36rad\]{--tw-skew-x: .36rad;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-0{--tw-scale-x: 0;--tw-scale-y: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform-gpu{transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.scroll-mt-4{scroll-margin-top:1rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-12{-moz-column-gap:3rem;column-gap:3rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-8{row-gap:2rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-balance{text-wrap:balance}.break-all{word-break:break-all}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[--radius\]{border-radius:var(--radius)}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-bl-xl{border-bottom-left-radius:.75rem}.rounded-tr-xl{border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[1px\]{border-width:1px}.border-b{border-bottom-width:1px}.border-dashed{border-style:dashed}.border-transparent{border-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-\[radial-gradient\(50\%_50\%_at_50\%_50\%\,hsla\(0\,0\%\,85\%\,\.04\)_0\,hsla\(0\,0\%\,45\%\,\.02\)_80\%\,transparent_100\%\)\]{background-image:radial-gradient(50% 50% at 50% 50%,hsla(0,0%,85%,.04) 0,hsla(0,0%,45%,.02) 80%,transparent 100%)}.bg-\[radial-gradient\(50\%_50\%_at_50\%_50\%\,hsla\(0\,0\%\,85\%\,\.06\)_0\,hsla\(0\,0\%\,45\%\,\.02\)_80\%\,transparent_100\%\)\]{background-image:radial-gradient(50% 50% at 50% 50%,hsla(0,0%,85%,.06) 0,hsla(0,0%,45%,.02) 80%,transparent 100%)}.bg-\[radial-gradient\(68\.54\%_68\.72\%_at_55\.02\%_31\.46\%\,hsla\(0\,0\%\,85\%\,\.08\)_0\,hsla\(0\,0\%\,55\%\,\.02\)_50\%\,hsla\(0\,0\%\,45\%\,0\)_80\%\)\]{background-image:radial-gradient(68.54% 68.72% at 55.02% 31.46%,#d9d9d914 0,#8c8c8c05 50%,#73737300 80%)}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-90\%{--tw-gradient-to-position: 90%}.fill-current{fill:currentColor}.fill-neutral-400\/20{fill:#a3a3a333}.p-2\.5{padding:.625rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-28{padding-top:7rem;padding-bottom:7rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pl-16{padding-left:4rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wide{letter-spacing:.025em}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-zinc-300\/20{--tw-shadow-color: rgb(212 212 216 / .2);--tw-shadow: var(--tw-shadow-colored)}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-current{--tw-ring-offset-color: currentColor}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.contain-strict{contain:strict}.\[background-image\:linear-gradient\(to_right\,rgba\(0\,0\,0\,0\.3\)_1px\,transparent_0\)\,linear-gradient\(to_bottom\,rgba\(0\,0\,0\,0\.3\)_1px\,transparent_0\)\]{background-image:linear-gradient(to right,rgba(0,0,0,.3) 1px,transparent 0),linear-gradient(to bottom,rgba(0,0,0,.3) 1px,transparent 0)}.\[background-repeat\:repeat\]{background-repeat:repeat}.\[background-size\:60px_60px\]{background-size:60px 60px}.\[height\:300vh\]{height:300vh}.\[inset\:0\%_0px\]{top:0%;right:0;bottom:0%;left:0}.\[margin-left\:-50\%\]{margin-left:-50%}.\[mask-image\:linear-gradient\(to_bottom\,black_50\%\,transparent_100\%\)\]{-webkit-mask-image:linear-gradient(to bottom,black 50%,transparent 100%);mask-image:linear-gradient(to bottom,black 50%,transparent 100%)}.\[mask-image\:linear-gradient\(to_right\,black_50\%\,transparent_100\%\)\]{-webkit-mask-image:linear-gradient(to right,black 50%,transparent 100%);mask-image:linear-gradient(to right,black 50%,transparent 100%)}.\[perspective\:1200px\]{perspective:1200px}.\[perspective\:200px\]{perspective:200px}.\[socket\:ANY-EVENT\]{socket:ANY-EVENT}.\[socket\:connect\]{socket:connect}.\[socket\:connect_error\]{socket:connect error}.\[socket\:disconnect\]{socket:disconnect}.\[socket\:init\]{socket:init}.\[socket\:reconnect\]{socket:reconnect}.\[socket\:session-data\]{socket:session-data}.\[transform-origin\:100\%_0_0\]{transform-origin:100% 0 0}.\[transform\:rotateX\(20deg\)\;\]{transform:rotateX(20deg)}.\[transform\:rotateX\(var\(--grid-angle\)\)\]{transform:rotateX(var(--grid-angle))}.\[translate\:5\%_-50\%\]{translate:5% -50%}.\[width\:600vw\]{width:600vw}*{margin:0;padding:0;box-sizing:border-box}:root{--font-display: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans: "Inter", "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, "Courier New", monospace;color-scheme:dark;--bg-canvas: #0b0c10;--bg-primary: #0f1115;--bg-secondary: #15181f;--bg-tertiary: #1c2029;--bg-elevated: #232834;--bg-overlay: rgba(11, 12, 16, .7);--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--border-focus: rgba(124, 92, 255, .55);--text-primary: #f4f5f7;--text-secondary: #b6bac4;--text-muted: #888c98;--text-inverse: #0f1115;--accent: #7c5cff;--accent-hover: #9683ff;--accent-pressed: #6849f1;--accent-soft: rgba(124, 92, 255, .16);--accent-ring: rgba(124, 92, 255, .45);--accent-on: #ffffff;--success: #2dd4bf;--success-soft: rgba(45, 212, 191, .14);--warning: #f4b740;--warning-soft: rgba(244, 183, 64, .14);--danger: #ff5d6c;--danger-soft: rgba(255, 93, 108, .14);--info: #7c5cff;--error: var(--danger);--accent-hover-legacy: var(--accent-hover);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 999px;--menu-bar-height: 56px;--mobile-nav-height: 0px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .25);--shadow-sm: 0 4px 12px rgba(0, 0, 0, .28);--shadow-md: 0 12px 32px rgba(0, 0, 0, .4);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .5);--shadow-glow: 0 0 0 1px var(--accent-soft), 0 18px 48px -16px rgba(124, 92, 255, .45);--overlay-scrim: rgba(5, 6, 10, .62);--modal-elevated-shadow: var(--shadow-lg);--settings-heading: var(--text-primary);--settings-body: var(--text-secondary);--settings-label: var(--text-primary);--settings-border: var(--border);--settings-chip-active-bg: var(--accent);--settings-chip-active-fg: var(--accent-on);--settings-chip-inactive-fg: var(--text-secondary);--settings-chip-shadow: 0 6px 18px -10px rgba(124, 92, 255, .55);--settings-well-bg: var(--bg-secondary);--settings-well-border: var(--border);--settings-callout-border: rgba(124, 92, 255, .32);--settings-callout-bg: rgba(124, 92, 255, .1);--settings-callout-title: var(--accent-hover);--settings-extension-muted: var(--text-secondary);--settings-strong-fg: var(--text-primary);--terminal-viewport-bg: #0a0d12;--terminal-viewport-fg: #e7e9ee;--terminal-chrome-shadow: var(--shadow-lg)}:root[data-theme=light]{color-scheme:light;--bg-canvas: #d8d6cf;--bg-primary: #e2e0d8;--bg-secondary: #ecebe4;--bg-tertiary: #f3f1ea;--bg-elevated: #fbfaf5;--bg-overlay: rgba(226, 224, 216, .78);--border: rgba(28, 30, 38, .12);--border-strong: rgba(28, 30, 38, .22);--border-focus: rgba(94, 70, 232, .55);--text-primary: #18191f;--text-secondary: #4a4d57;--text-muted: #6b6f7a;--text-inverse: #fbfaf5;--accent: #5e46e8;--accent-hover: #4f3dd5;--accent-pressed: #3f30b3;--accent-soft: rgba(94, 70, 232, .12);--accent-ring: rgba(94, 70, 232, .4);--success: #138a72;--success-soft: rgba(19, 138, 114, .14);--warning: #b06a00;--warning-soft: rgba(176, 106, 0, .16);--danger: #c12c3a;--danger-soft: rgba(193, 44, 58, .12);--shadow-xs: 0 1px 2px rgba(28, 30, 38, .08);--shadow-sm: 0 4px 14px rgba(28, 30, 38, .08);--shadow-md: 0 14px 32px rgba(28, 30, 38, .12);--shadow-lg: 0 28px 64px rgba(28, 30, 38, .16);--shadow-glow: 0 0 0 1px var(--accent-soft), 0 18px 48px -16px rgba(94, 70, 232, .4);--overlay-scrim: rgba(28, 30, 38, .34);--settings-chip-active-bg: var(--accent);--settings-chip-active-fg: #ffffff;--settings-chip-inactive-fg: var(--text-secondary);--terminal-viewport-bg: #14161c;--terminal-viewport-fg: #e7e9ee;--terminal-chrome-shadow: var(--shadow-md)}html,body{width:100%;height:100%;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-canvas);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01","ss03";text-rendering:optimizeLegibility}#root{width:100%;height:100%}button{font-family:inherit;font-size:14px;background-color:var(--accent);color:var(--accent-on);border:none;padding:8px 14px;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .12s ease,box-shadow .18s ease,opacity .18s ease}button:hover{background-color:var(--accent-hover)}button:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed}.sidebar-action-btn:hover,.sidebar-action-btn:active,.sidebar-action-btn:focus,.sidebar-action-btn:focus-visible{background-color:var(--bg-tertiary)}.context-menu{position:absolute;background-color:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:1000;min-width:160px;padding:4px}.context-menu-item{padding:8px 10px;cursor:pointer;color:var(--text-primary);font-size:13px;border-radius:6px}.context-menu-item:hover{background-color:var(--bg-tertiary)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:content-box}@keyframes grid{0%{transform:translateY(0)}to{transform:translateY(-60px)}}.animate-grid{animation:grid 20s linear infinite}@media (max-width: 767px){:root{--mobile-nav-height: calc(52px + env(safe-area-inset-bottom, 0px)) }}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.hover\:underline:hover{text-decoration-line:underline}.hover\:ring-2:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-offset-1:hover{--tw-ring-offset-width: 1px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:block{display:block}.group[data-state=active] .group-data-\[state\=active\]\:rotate-0{--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:scale-0{--tw-scale-x: 0;--tw-scale-y: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:opacity-0{opacity:0}.group[data-state=active] .group-data-\[state\=active\]\:opacity-100{opacity:1}.dark\:block:is(.dark *){display:block}.dark\:hidden:is(.dark *){display:none}.dark\:bg-transparent:is(.dark *){background-color:transparent}.dark\:bg-zinc-950\/50:is(.dark *){background-color:#09090b80}.dark\:from-black:is(.dark *){--tw-gradient-from: #000 var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:shadow-none:is(.dark *){--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:invert:is(.dark *){--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.dark\:\[background-image\:linear-gradient\(to_right\,rgba\(255\,255\,255\,0\.2\)_1px\,transparent_0\)\,linear-gradient\(to_bottom\,rgba\(255\,255\,255\,0\.2\)_1px\,transparent_0\)\]:is(.dark *){background-image:linear-gradient(to right,rgba(255,255,255,.2) 1px,transparent 0),linear-gradient(to bottom,rgba(255,255,255,.2) 1px,transparent 0)}@media (min-width: 640px){.sm\:flex-row{flex-direction:row}.sm\:gap-3{gap:.75rem}.sm\:gap-x-16{-moz-column-gap:4rem;column-gap:4rem}.sm\:gap-y-12{row-gap:3rem}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.sm\:text-5xl{font-size:3rem;line-height:1}}@media (min-width: 768px){.md\:relative{position:relative}.md\:w-fit{width:-moz-fit-content;width:fit-content}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-nowrap{flex-wrap:nowrap}.md\:text-5xl{font-size:3rem;line-height:1}}@media (min-width: 1024px){.lg\:m-0{margin:0}.lg\:-mr-56{margin-right:-14rem}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-\[44rem\]{height:44rem}.lg\:w-auto{width:auto}.lg\:w-fit{width:-moz-fit-content;width:fit-content}.lg\:flex-col{flex-direction:column}.lg\:justify-center{justify-content:center}.lg\:gap-0{gap:0px}.lg\:gap-6{gap:1.5rem}.lg\:gap-8{gap:2rem}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.lg\:border-l{border-left-width:1px}.lg\:border-transparent{border-color:transparent}.lg\:bg-transparent{background-color:transparent}.lg\:p-0{padding:0}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:py-4{padding-top:1rem;padding-bottom:1rem}.lg\:pl-56{padding-left:14rem}.lg\:pl-6{padding-left:1.5rem}.lg\:pr-4{padding-right:1rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\:shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group[data-state=active] .lg\:group-data-\[state\=active\]\:flex{display:flex}.dark\:lg\:bg-transparent:is(.dark *){background-color:transparent}.lg\:dark\:bg-transparent:is(.dark *){background-color:transparent}}[data-theme=light] body{background-color:var(--bg-canvas);color:var(--text-primary)}[data-theme=light] .menu-bar{background:#ecebe4e6;border-bottom-color:var(--border);box-shadow:none;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}[data-theme=light] .menu-tab{color:var(--text-secondary)}[data-theme=light] .menu-tab:hover{color:var(--text-primary);background:#1c1e260f}[data-theme=light] .menu-tab.active{color:var(--accent);background:var(--accent-soft)}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}.menu-tab{transition:background .22s ease,color .22s ease,transform .18s ease}.menu-tab:hover:not(.active){transform:translateY(-1px)}.ccl-sessions-root .ccl-glass-frame{transition:transform .28s cubic-bezier(.22,.85,.2,1),box-shadow .32s ease}.ccl-sessions-root .ccl-glass-frame:hover{transform:translateY(-2px);box-shadow:0 16px 48px #00000038}[data-theme=light] .ccl-sessions-root .ccl-glass-frame:hover{box-shadow:0 14px 40px #0f172a1a}.app-main>*{animation:ccl-route-fade .38s cubic-bezier(.22,1,.36,1) both}.app-main>.session-route-motion{animation:none}}@keyframes ccl-route-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.app-main>*{animation:none!important}.ccl-sessions-root .ccl-glass-frame{transition:none}.ccl-sessions-root .ccl-glass-frame:hover{transform:none}}
