
:root{color-scheme:dark;--bg:#0a0a0c;--surface:#18181c;--surface2:#1f1f24;--border:rgba(156,156,163,.18);--border-strong:#494951;--text:#e7e7e9;--muted:#9c9ca3;--primary:#7c9bb7;--primary-soft:#1f3245;--accent:#ff2e6b;--accent-light:#ff759b;--accent-soft:#3f0819;--danger:#ff4a7e;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:root[data-theme="light"]{color-scheme:light;--bg:#f5f5f6;--surface:#fff;--surface2:#eef1f4;--border:rgba(86,86,94,.18);--border-strong:#c9c9cd;--text:#121215;--muted:#6e6e76;--primary:#3c5d7d;--primary-soft:#d5e0ec;--accent:#e51f5c;--accent-light:#c9184d;--accent-soft:#ffd5e0;--danger:#d81d55}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}body{min-height:100vh;min-height:100dvh}button,input,select{font:inherit}.hidden{display:none!important}.topbar{height:64px;display:flex;align-items:center;gap:16px;padding:0 max(16px,env(safe-area-inset-left));border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 91%,transparent);position:sticky;top:0;z-index:10;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:9px;font-weight:750;letter-spacing:.045em}.brand img{width:30px;height:30px}.title{min-width:0;display:flex;flex:1;flex-direction:column}.title strong{font-size:14px}.title span{margin-top:3px;color:var(--muted);font:10px var(--mono)}.icon-button,.quiet{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.icon-button{width:36px;height:36px;border-radius:7px;font-size:21px}.icon-button:hover,.quiet:hover{border-color:var(--accent);color:var(--accent)}.admin-tabs{height:46px;display:flex;align-items:stretch;gap:2px;padding:0 max(14px,calc((100vw - 1120px)/2 + 24px));border-bottom:1px solid var(--border);overflow-x:auto;background:var(--surface);position:sticky;top:64px;z-index:9}.admin-tabs button{position:relative;border:0;background:none;color:var(--muted);padding:0 14px;white-space:nowrap;cursor:pointer;font-size:13px}.admin-tabs button.active{color:var(--text)}.admin-tabs button.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;background:var(--accent);border-radius:3px 3px 0 0}.admin-panel{display:none}.admin-panel.active{display:block}.shell{width:min(1120px,100%);margin:0 auto;padding:34px 24px max(72px,env(safe-area-inset-bottom))}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;padding:8px 0 38px}.eyebrow{color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.15em}.hero h1{font-size:clamp(28px,5vw,48px);letter-spacing:-.04em;line-height:1.02;margin:9px 0 12px;max-width:700px}.hero p,.section-note{color:var(--muted);font-size:13px;line-height:1.55;margin:0;max-width:650px}.metrics{display:grid;grid-template-columns:repeat(4,82px);gap:7px;margin:0}.metrics div{padding:14px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.metrics dt{font-size:22px;font-weight:750}.metrics dd{margin:4px 0 0;color:var(--muted);font-size:10px}.section{border-top:1px solid var(--border);padding:28px 0 40px}.system-section{border-top:0;padding-top:8px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.section-heading h2{font-size:21px;margin:5px 0 0}.primary{border:0;border-radius:7px;background:var(--accent);color:#fff0f4;padding:10px 14px;font-weight:700;cursor:pointer}.primary:hover{background:var(--accent-light)}.primary:disabled{opacity:.5;cursor:wait}.create-form{margin-bottom:16px;padding:20px;border:1px solid var(--accent);border-radius:10px;background:linear-gradient(145deg,var(--surface),var(--accent-soft))}.form-intro,.form-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.form-intro strong,.form-intro span{display:block}.form-intro strong{font-size:16px}.form-intro span{margin-top:5px;color:var(--muted);font-size:11px}.quiet{width:31px;height:31px;border-radius:7px;font-size:20px}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px}.form-grid label span{display:block;margin-bottom:7px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.topic-controls select,.topic-controls input{width:100%;min-width:0;border:1px solid var(--border);border-radius:7px;background:var(--surface2);color:var(--text);padding:10px 11px;outline:none}.form-grid input:focus,.form-grid select:focus,.topic-controls select:focus,.topic-controls input:focus{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.form-actions{align-items:center;margin-top:15px}.form-actions p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:9px}.project-card{min-width:0;padding:16px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.project-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-card h3{font-size:15px;margin:0}.project-card code{display:block;margin-top:5px;color:var(--muted);font:10px var(--mono)}.tag{flex:none;padding:4px 6px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font:9px var(--mono);text-transform:uppercase}.tag.managed{border-color:var(--primary);color:var(--primary)}.project-meta{display:flex;gap:14px;margin:18px 0 12px}.project-meta span{display:block;color:var(--muted);font-size:9px}.project-meta strong{display:block;margin-top:4px;font:11px var(--mono)}.workspace-list{display:flex;flex-wrap:wrap;gap:5px}.workspace-list span{padding:5px 7px;border-radius:5px;background:var(--surface2);font:10px var(--mono)}.binding-heading{margin-bottom:12px}.search{width:min(300px,45%);display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:8px 10px}.search span{color:var(--muted);font-size:18px}.search input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.section-note{margin-bottom:18px}.chat-list{display:grid;gap:10px}.chat-card{border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.chat-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;border-bottom:1px solid var(--border)}.chat-head strong,.chat-head span{display:block}.chat-head strong{font-size:14px}.chat-head span{margin-top:4px;color:var(--muted);font:10px var(--mono)}.chat-actions{display:flex;align-items:center;gap:8px}.chat-status{flex:none!important;margin:0!important;padding:5px 7px;border:1px solid var(--border);border-radius:999px}.chat-status.administrator,.chat-status.member{color:var(--primary);border-color:var(--primary)}.chat-status.left,.chat-status.kicked{color:var(--danger);border-color:var(--danger)}.topic-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(360px,1.6fr);align-items:center;gap:18px;padding:14px 17px;border-bottom:1px solid var(--border)}.topic-row:last-child{border-bottom:0}.topic-name{min-width:0}.topic-name strong,.topic-name span{display:block}.topic-name strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topic-name span{margin-top:5px;color:var(--muted);font:10px var(--mono)}.binding-current{color:var(--primary)!important}.binding-current.unbound{color:var(--accent-light)!important}.topic-controls{display:grid;grid-template-columns:minmax(130px,1.2fr) minmax(110px,1fr) minmax(94px,.8fr) minmax(110px,1fr) auto;gap:7px}.topic-controls select,.topic-controls input{padding:8px 9px;font-size:11px}.topic-controls input:disabled{opacity:.45}.topic-actions{display:flex;gap:7px}.bind-button,.unbind-button{min-width:96px;border:1px solid var(--accent);border-radius:7px;background:transparent;color:var(--accent-light);padding:8px 10px;font-size:11px;font-weight:700;cursor:pointer}.bind-button:hover{background:var(--accent-soft)}.unbind-button{min-width:78px;border-color:var(--border);color:var(--muted)}.unbind-button:hover{border-color:var(--danger);color:var(--danger)}.bind-button:disabled,.unbind-button:disabled{border-color:var(--border);color:var(--muted);cursor:default}.viewer-link{display:inline-block;margin-top:7px;color:var(--accent-light);font-size:10px;text-decoration:none}.viewer-link:hover{text-decoration:underline}.users-toggle{border:1px solid var(--primary);border-radius:999px;background:transparent;color:var(--primary);padding:5px 8px;font-size:9px;font-weight:750;cursor:pointer}.users-toggle:hover,.users-toggle.open{background:var(--primary-soft)}.topic-name .users-toggle{display:inline-block;margin-top:9px}.user-panel{grid-column:1/-1;width:100%;padding:16px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}.chat-card>.user-panel{margin:14px 17px;width:calc(100% - 34px)}.user-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}.user-panel-head strong{display:block;font-size:13px}.user-panel-head span{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.45}.user-panel-count{flex:none!important;margin:0!important;color:var(--primary)!important;font:11px var(--mono)!important}.user-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:8px}.user-card{min-width:0;padding:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.user-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.user-card h4{margin:0;font-size:13px}.user-handle{display:block;margin-top:4px;color:var(--accent-light);font:10px var(--mono)}.copy-id{flex:none;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--muted);padding:5px 7px;font:9px var(--mono);cursor:pointer}.copy-id:hover{border-color:var(--accent);color:var(--accent-light)}.user-id{margin-top:11px;color:var(--muted);font-size:9px}.user-id code{color:var(--text);font:11px var(--mono)}.user-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.user-badges span{padding:3px 5px;border-radius:4px;background:var(--primary-soft);color:var(--primary);font:8px var(--mono);text-transform:uppercase}.user-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:12px}.user-stats div{padding:7px;border-radius:5px;background:var(--surface2)}.user-stats span{display:block;color:var(--muted);font-size:8px}.user-stats strong{display:block;margin-top:3px;font:10px var(--mono)}.user-dates{margin:10px 0 0;color:var(--muted);font-size:9px;line-height:1.55}.user-panel>.empty{padding:20px}.empty{grid-column:1/-1;padding:34px 18px;text-align:center;color:var(--muted);font-size:13px;line-height:1.55;border:1px dashed var(--border);border-radius:9px}#toast{position:fixed;left:50%;bottom:max(22px,env(safe-area-inset-bottom));transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:10px 14px;border:1px solid var(--border-strong);border-radius:7px;background:var(--surface2);color:var(--text);font-size:12px;transition:.2s;z-index:30;box-shadow:0 12px 40px #0008;max-width:calc(100vw - 28px);text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}
.deployment-card{max-width:900px;padding:22px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.deployment-card+.deployment-card{margin-top:14px}.deployment-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.deployment-heading h3{margin:0 0 7px;font-size:16px}.deployment-heading p,.deployment-note{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.deployment-heading code{font:11px var(--mono);color:var(--text)}.deployment-badge{flex:none;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font:10px var(--mono);text-transform:uppercase}.deployment-badge.succeeded,.deployment-badge.idle{color:var(--primary);border-color:var(--primary)}.deployment-badge.failed{color:var(--danger);border-color:var(--danger)}.deployment-badge.requested,.deployment-badge.checking,.deployment-badge.building,.deployment-badge.waiting,.deployment-badge.deploying,.deployment-badge.rolling_back{color:var(--accent-light);border-color:var(--accent)}.deployment-details{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0}.deployment-details div{padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--surface2);min-width:0}.deployment-details dt{color:var(--muted);font-size:10px;margin-bottom:7px}.deployment-details dd{margin:0;font:12px var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deployment-details .deployment-origin-card{position:relative;padding-right:76px}.deployment-origin-refresh{position:absolute;right:9px;top:50%;transform:translateY(-50%);padding:5px 7px;border:1px solid var(--border-strong);border-radius:5px;background:var(--bg);color:var(--text);font-size:9px}.deployment-origin-refresh:disabled{opacity:.45;cursor:wait}.deployment-message{min-height:20px;margin:0 0 14px;font-size:12px;line-height:1.5}.deployment-note{margin-top:14px}.model-egress-card{border-color:color-mix(in srgb,var(--primary) 55%,var(--border))}.model-egress-control{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface2)}.model-egress-control strong,.model-egress-control span{display:block}.model-egress-control strong{font-size:13px}.model-egress-control>div>span{margin-top:5px;color:var(--muted);font-size:10px;line-height:1.45}.switch{position:relative;display:block;flex:none;width:46px;height:26px}.switch input{position:absolute;opacity:0;pointer-events:none}.switch>span{position:absolute;inset:0;border:1px solid var(--border-strong);border-radius:999px;background:var(--bg);cursor:pointer;transition:.18s}.switch>span:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:var(--muted);transition:.18s}.switch input:checked+span{border-color:var(--primary);background:var(--primary-soft)}.switch input:checked+span:after{transform:translateX(20px);background:var(--primary)}.switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.switch input:disabled+span{opacity:.45;cursor:wait}.model-egress-usage{margin-top:18px}.model-egress-meter{display:grid;grid-template-columns:1fr auto;align-items:end;gap:9px}.model-egress-meter>span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.055em}.model-egress-meter>strong{font:28px var(--mono);color:var(--primary)}.quota-track{grid-column:1/-1;height:7px;border-radius:999px;background:var(--surface2);overflow:hidden}.quota-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--accent));transition:width .25s}.model-egress-details{margin:13px 0}.model-egress-note{font-size:10px}.deployment-failure{margin:0 0 16px;padding:14px;border:1px solid color-mix(in srgb,var(--danger) 55%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--danger) 8%,var(--surface2))}.deployment-failure-heading,.deployment-history-heading,.deployment-attempt-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.deployment-failure-heading strong{font-size:13px;color:var(--danger)}.deployment-failure-heading span{font:10px var(--mono);color:var(--muted)}.deployment-failure p{margin:9px 0 0;font-size:11px;line-height:1.5}.deployment-failed-tests{margin:10px 0 0;padding-left:20px;font:11px/1.5 var(--mono)}.deployment-log{margin-top:11px}.deployment-log summary,.deployment-attempt-details summary{cursor:pointer;color:var(--muted);font-size:11px}.deployment-log pre,.deployment-attempt-details pre{max-height:260px;overflow:auto;margin:9px 0 0;padding:11px;border-radius:6px;background:var(--bg);white-space:pre-wrap;overflow-wrap:anywhere;font:10px/1.45 var(--mono)}.deployment-history-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.deployment-history-heading h4{margin:0;font-size:13px}.deployment-history-heading span{color:var(--muted);font-size:10px}.deployment-history{display:grid;gap:7px;margin-top:11px}.deployment-attempt{padding:11px;border:1px solid var(--border);border-radius:7px;background:var(--surface2)}.deployment-attempt-head strong{font:11px var(--mono)}.deployment-attempt-status{font:9px var(--mono);text-transform:uppercase}.deployment-attempt-status.failed{color:var(--danger)}.deployment-attempt-status.succeeded{color:var(--primary)}.deployment-attempt-meta,.deployment-attempt-message,.deployment-attempt-tests{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.45}.deployment-attempt-message{color:var(--text)}.deployment-attempt-details{margin-top:8px}.deployment-attempt-details ul{margin:7px 0 0;padding-left:18px;font:10px/1.45 var(--mono)}
.recovery-card{margin-top:18px}.recovery-grid{margin-top:18px}.recovery-grid .create-form{margin-bottom:0}.recovery-card .sync-card code{overflow-wrap:anywhere}.recovery-card .deployment-badge.configured{color:var(--primary);border-color:var(--primary)}
.fatal{max-width:560px;margin:0 auto;padding:64px 24px}.fatal img{width:44px;height:44px}.fatal h1{margin:18px 0 8px}.fatal p{color:var(--danger);line-height:1.55}.fatal button{border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);padding:9px 13px;cursor:pointer}
@media(max-width:800px){.shell{padding:24px 14px 56px}.hero{display:block;padding-bottom:30px}.metrics{grid-template-columns:repeat(4,1fr);margin-top:22px}.form-grid{grid-template-columns:1fr 1fr}.topic-row{grid-template-columns:1fr}.binding-heading{align-items:flex-start}.search{width:48%}}
@media(max-width:520px){.brand span{display:none}.topbar{padding-left:12px;padding-right:12px}.hero h1{font-size:32px}.metrics{grid-template-columns:repeat(2,1fr)}.metrics div{padding:11px 9px}.metrics dt{font-size:19px}.section-heading{align-items:flex-start}.form-grid{grid-template-columns:1fr}.form-actions{display:block}.form-actions .primary{width:100%;margin-top:13px}.binding-heading{display:block}.search{width:100%;margin-top:13px}.chat-head{align-items:flex-start}.chat-actions{display:grid;justify-items:end}.topic-controls{grid-template-columns:1fr 1fr}.topic-actions{grid-column:1/-1}.topic-actions button{flex:1}.project-grid{grid-template-columns:1fr}.user-grid{grid-template-columns:1fr}.deployment-heading{display:block}.deployment-badge{display:inline-block;margin-top:12px}.deployment-details{grid-template-columns:1fr}.deployment-card .primary{width:100%}}
.owner-manager{margin-top:14px;padding-top:13px;border-top:1px solid var(--border)}.owner-manager-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.owner-manager-title strong{font-size:10px;letter-spacing:.07em;text-transform:uppercase}.owner-manager-title span{color:var(--muted);font-size:9px}.owner-list{display:grid;gap:6px}.owner-row{display:flex;align-items:center;gap:6px;padding:7px 8px;border-radius:6px;background:var(--surface2)}.owner-row code{flex:1;margin:0;color:var(--text);font-size:10px}.owner-role{padding:3px 5px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font:8px var(--mono);text-transform:uppercase}.owner-action{border:1px solid var(--border);border-radius:5px;background:transparent;color:var(--muted);padding:4px 6px;font-size:8px;cursor:pointer}.owner-action:hover{border-color:var(--accent);color:var(--accent-light)}.owner-action.remove:hover{border-color:var(--danger);color:var(--danger)}.owner-add{display:grid;grid-template-columns:1fr auto;gap:6px;margin-top:8px}.owner-add input{min-width:0;border:1px solid var(--border);border-radius:6px;background:var(--surface2);color:var(--text);padding:7px 8px;font:10px var(--mono);outline:none}.owner-add input:focus{border-color:var(--primary)}.owner-add button{border:1px solid var(--primary);border-radius:6px;background:transparent;color:var(--primary);padding:6px 8px;font-size:9px;font-weight:700;cursor:pointer}.owner-static-note{margin:8px 0 0;color:var(--muted);font-size:9px;line-height:1.4}
.onboarding-card{margin-bottom:18px;padding:20px;border:1px solid var(--primary);border-radius:10px;background:linear-gradient(145deg,var(--surface),var(--primary-soft))}.onboarding-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.onboarding-heading h3{margin:5px 0 0;font-size:17px}.onboarding-badge{flex:none;padding:5px 8px;border:1px solid var(--accent);border-radius:999px;color:var(--accent-light);font:9px var(--mono);text-transform:uppercase}.onboarding-badge.complete{border-color:var(--primary);color:var(--primary)}.onboarding-summary{margin:12px 0;color:var(--muted);font-size:11px;line-height:1.5}.onboarding-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none;counter-reset:onboarding}.onboarding-step{position:relative;min-height:72px;padding:12px 12px 12px 39px;border:1px solid var(--border);border-radius:7px;background:var(--surface);counter-increment:onboarding}.onboarding-step:before{content:counter(onboarding);position:absolute;left:12px;top:12px;width:18px;height:18px;display:grid;place-items:center;border:1px solid var(--border-strong);border-radius:50%;color:var(--muted);font:9px var(--mono)}.onboarding-step.complete:before{content:"✓";border-color:var(--primary);color:var(--primary)}.onboarding-step.active{border-color:var(--accent)}.onboarding-step.blocked{border-color:var(--danger)}.onboarding-step strong,.onboarding-step span{display:block}.onboarding-step strong{font-size:11px}.onboarding-step span{margin-top:5px;color:var(--muted);font-size:10px;line-height:1.45}.onboarding-step code{display:inline-block;margin-top:7px;padding:3px 5px;border-radius:4px;background:var(--surface2);color:var(--accent-light);font:10px var(--mono)}.knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.knowledge-form{margin:0}.knowledge-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sync-status-list{display:grid;gap:9px;margin-top:18px}.sync-card{padding:16px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.sync-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sync-card h3{margin:0;font-size:14px}.sync-card code{display:block;margin-top:5px;color:var(--muted);font:10px var(--mono)}.sync-state{padding:5px 7px;border:1px solid var(--primary);border-radius:999px;color:var(--primary);font:9px var(--mono)}.sync-state.failed,.sync-state.degraded{border-color:var(--danger);color:var(--danger)}.sync-counters{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0}.sync-counters div{padding:8px;border-radius:6px;background:var(--surface2)}.sync-counters span{display:block;color:var(--muted);font-size:8px}.sync-counters strong{display:block;margin-top:4px;font:11px var(--mono)}.sync-stages{display:flex;flex-wrap:wrap;gap:5px}.sync-stages span{padding:4px 6px;border-radius:5px;background:var(--primary-soft);color:var(--primary);font:9px var(--mono)}.sync-actions{display:flex;gap:7px;margin-top:13px}.sync-actions button{border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);padding:7px 9px;font-size:10px;cursor:pointer}.sync-error{margin:10px 0 0;color:var(--danger);font:10px/1.45 var(--mono);overflow-wrap:anywhere}
.source-sync-card{width:100%;padding:20px}.source-sync-card .sync-counters{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:9px}.source-sync-card .sync-counters div{min-height:58px;padding:11px}.source-sync-card .sync-counters strong{font-size:14px}.skipped-breakdown{margin-top:16px;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent-soft) 36%,var(--surface2))}.skipped-breakdown-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.skipped-breakdown-head strong,.skipped-breakdown-head span{display:block}.skipped-breakdown-head strong{font-size:13px}.skipped-breakdown-head div>span{margin-top:5px;color:var(--muted);font-size:10px;line-height:1.45}.skipped-breakdown-head>span{flex:none;color:var(--accent-light);font:11px var(--mono)}.skipped-author-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:8px;margin-top:14px}.skipped-author{min-width:0;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.skipped-author-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.skipped-author-head strong{font-size:12px;overflow-wrap:anywhere}.skipped-author-head code{overflow-wrap:anywhere}.skipped-author-head b{flex:none;padding:4px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent-light);font:11px var(--mono)}.skipped-author p,.skipped-author>span,.skipped-breakdown-note{margin:8px 0 0;color:var(--muted);font-size:9px;line-height:1.45}.skipped-author>span{display:block;font-family:var(--mono)}.skipped-author-other{grid-column:1/-1}.skipped-breakdown-note{margin-bottom:0}
@media(max-width:800px){.onboarding-steps,.knowledge-grid{grid-template-columns:1fr}.sync-counters{grid-template-columns:repeat(2,1fr)}.source-sync-card .sync-counters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.source-sync-card{padding:15px}.source-sync-card .sync-counters{grid-template-columns:repeat(2,minmax(0,1fr))}.skipped-breakdown{padding:13px}.skipped-breakdown-head{display:block}.skipped-breakdown-head>span{margin-top:8px}.skipped-author-grid{grid-template-columns:1fr}}
.portal-delivery-meta{margin:10px 0 0;color:var(--muted);font:10px/1.5 var(--mono)}.portal-delivery-text{margin:9px 0 0;font-size:11px;line-height:1.45;white-space:pre-wrap}.portal-delivery-actions{display:flex;gap:7px;margin-top:11px}.portal-delivery-actions button{border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);padding:7px 9px;font-size:10px;cursor:pointer}.portal-delivery-actions button.retry{border-color:var(--accent);color:var(--accent-light)}
.sync-state.uncertain,.sync-state.dead-letter{border-color:var(--danger);color:var(--danger)}.sync-state.pending,.sync-state.sending,.sync-state.failed{border-color:var(--accent);color:var(--accent-light)}
@media(max-width:520px){.portal-delivery-actions{display:grid;grid-template-columns:1fr 1fr}.portal-delivery-actions button{width:100%}}
.copy-log,.deployment-copy-manual button{min-height:44px;margin-top:10px;padding:9px 12px;border:1px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--text);font:12px/1.4 var(--mono);cursor:pointer}.copy-log:disabled{opacity:.5;cursor:wait}.copy-log:focus-visible,.deployment-copy-manual button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.deployment-log pre,.deployment-attempt-details pre,.deployment-copy-manual textarea{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.deployment-copy-manual{margin-top:10px}.deployment-copy-manual p{color:var(--muted);font-size:12px;line-height:1.5}.deployment-copy-manual textarea{display:block;width:100%;min-height:200px;padding:10px;margin-top:8px;border:1px solid var(--border-strong);border-radius:6px;background:var(--bg);color:var(--text);font:16px/1.45 var(--mono);resize:vertical}.deployment-copy-buffer{position:fixed;top:0;left:0;width:1px;height:1px;opacity:0;font-size:16px}
.project-metrics{grid-template-columns:82px}.binding-metrics{grid-template-columns:repeat(3,82px)}
.topic-row{grid-template-columns:minmax(230px,1fr) minmax(0,1.4fr);align-items:start;gap:24px;padding:20px}
.topic-name>strong{font-size:15px;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.topic-name>span{line-height:1.5;overflow-wrap:anywhere}
.topic-shortcuts{display:grid;gap:10px;margin-top:16px}
.topic-shortcuts a,.topic-shortcuts .users-toggle{display:flex;align-items:center;justify-content:center;justify-self:start;gap:6px;min-width:0;margin:0;padding:5px 8px;border:1px solid var(--border-strong);border-radius:6px;background:transparent;color:var(--text);font:500 10px/1.4 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-decoration:none;touch-action:manipulation}
.topic-shortcuts svg{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.topic-shortcuts .topic-open-project{justify-content:flex-start;border-color:var(--accent);color:var(--accent-light);font-size:11px}
.topic-shortcuts .topic-open-project span{flex:1;margin:0;color:inherit;font:inherit}
.topic-secondary-actions{display:flex;flex-wrap:wrap;gap:10px}
.topic-shortcuts a:hover,.topic-shortcuts .users-toggle:hover,.topic-shortcuts .users-toggle.open{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}
.topic-shortcuts .topic-open-project:hover{border-color:var(--accent-light);background:var(--accent-soft);color:var(--accent-light)}
.topic-shortcuts a:focus-visible,.topic-shortcuts button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.topic-controls{min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}
.topic-binding-heading{grid-column:1/-1;color:var(--muted);font-size:11px;font-weight:600}
.topic-controls label{display:grid;min-width:0;gap:7px}
.topic-controls label>span{color:var(--muted);font-size:10px}
.topic-controls select{background:var(--surface);font-size:11px}
.topic-controls .topic-actions{grid-column:1/-1;flex-wrap:wrap;gap:10px;margin-top:2px}
.topic-controls .topic-actions button{flex:0 1 auto;padding:8px 10px;font-size:10px;font-weight:500;touch-action:manipulation}
@media(max-width:800px){.topic-row{grid-template-columns:minmax(0,1fr);gap:18px}}
@media(max-width:520px){.topic-row{padding:16px}.topic-controls{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.topic-controls label:first-of-type{grid-column:1/-1}}

body.admin-app{height:100vh;height:var(--tg-viewport-height,100dvh);min-height:0;display:grid;grid-template-rows:64px 54px minmax(0,1fr);grid-template-areas:"header" "navigation" "content";overflow:hidden}
.admin-app>.topbar{grid-area:header;position:relative;top:auto;height:auto;min-width:0}
.admin-app>.topbar .title strong,.admin-app>.topbar .title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-app>.shell{grid-area:content;min-height:0;min-width:0;overflow:auto;overscroll-behavior-y:contain;scroll-padding-block:20px;padding-bottom:32px}
.admin-app>.admin-tabs{grid-area:navigation;position:relative;top:auto;height:auto;min-width:0;gap:4px;overflow:visible}
.admin-tabs button{display:flex;align-items:center;justify-content:center;gap:9px;min-width:110px;min-height:48px;padding:12px 18px}
.admin-tabs button svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.admin-tabs button.active{color:var(--accent-light)}
.admin-tabs button:hover:not(.active){color:var(--text)}
.admin-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-5px;border-radius:7px}
.admin-panel[hidden]{display:none!important}
.admin-panel:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
@media(max-width:760px){
  body.admin-app{grid-template-rows:60px minmax(0,1fr) calc(64px + env(safe-area-inset-bottom,0px));grid-template-areas:"header" "content" "navigation"}
  .admin-app>.admin-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0 max(6px,env(safe-area-inset-right)) env(safe-area-inset-bottom,0px) max(6px,env(safe-area-inset-left));border-bottom:0;border-top:1px solid var(--border-strong);box-shadow:0 -6px 24px color-mix(in srgb,var(--bg) 55%,transparent);z-index:12}
  .admin-tabs button{flex-direction:column;gap:5px;min-width:0;min-height:0;height:100%;padding:10px 2px 8px;font-size:10px;line-height:1.3}
  .admin-tabs button.active:after{top:0;bottom:auto;left:25%;right:25%;height:2px;border-radius:0 0 3px 3px}
  .admin-app>.shell{padding:22px max(14px,env(safe-area-inset-right)) 28px max(14px,env(safe-area-inset-left))}
  .admin-app #toast{bottom:calc(78px + env(safe-area-inset-bottom,0px))}
}

