@layer reset{*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;min-block-size:100dvh}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}ul[role=list]{list-style:none}}@layer tokens{:root{--color-primary:#00d4ff;--color-primary-hover:#00b8e6;--color-primary-subtle:#00d4ff1a;--color-bg:#070e1a;--color-bg-elevated:#0c1829;--color-bg-surface:#112238;--color-text:#e8eef5;--color-text-muted:#7a8da6;--color-text-inverse:#070e1a;--color-border:#1a3050;--color-border-subtle:#122540;--color-success:#00d4ff;--color-error:#f46;--color-warning:#fa0;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-size-3xl:3rem;--space-2xs:.125rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--border-radius:.5rem;--border-radius-lg:.75rem;--border-radius-full:9999px;--transition-fast:.12s ease;--transition-base:.2s ease;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006}}@layer base{body{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-bg);line-height:1.6}h1,h2,h3{line-height:1.2}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}code{font-family:var(--font-mono);font-size:var(--font-size-sm)}}@layer layout{portal-app{min-block-size:100dvh;display:block}}@layer components{.loading-text{text-align:center;color:var(--color-text-muted);padding:var(--space-2xl)}dialog{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-xl);max-inline-size:min(36rem,92vw);color:var(--color-text);margin:auto}dialog h2{font-size:var(--font-size-lg);margin-block-end:var(--space-sm)}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3}.warning-text{color:var(--color-warning);font-size:var(--font-size-sm);margin-block-end:var(--space-xl);line-height:1.5}dialog footer{gap:var(--space-md);justify-content:flex-end;display:flex}.key-display-box{align-items:center;gap:var(--space-md);padding:var(--space-md);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);margin-block-end:var(--space-xl);display:flex}.key-display-box code{word-break:break-all;font-size:var(--font-size-sm);color:var(--color-primary);flex:1}.key-display-box button[data-action=copy]{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs);color:var(--color-primary);border-radius:var(--border-radius);transition:background-color var(--transition-fast);white-space:nowrap}.key-display-box button[data-action=copy]:hover{background-color:var(--color-primary-subtle)}portal-playground{display:block}.pg-header{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;margin-block-end:var(--space-xl);display:flex}.pg-header .view-head{margin:0}.pg-controls{align-items:center;gap:var(--space-sm);display:flex}.pg-controls select{padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer}.pg-controls select:focus{border-color:var(--color-primary);outline:none}.pg-key-setup{max-inline-size:24rem;margin-inline:auto;padding-block-start:var(--space-4xl,4rem)}.pg-key-setup p{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;margin-block-end:var(--space-xl);line-height:1.6}.pg-key-setup{text-align:center}.pg-key-setup .btn-primary,.pg-key-setup .btn-secondary{text-decoration:none;display:inline-block}.pg-key-bar{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.pg-key-bar label{align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);display:flex}.pg-key-bar select{padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;max-inline-size:20rem}.pg-key-bar select:focus{border-color:var(--color-primary);outline:none}.pg-key-meta{font-size:var(--font-size-sm);color:var(--color-text-muted)}.pg-chat{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);flex-direction:column;block-size:calc(100dvh - 14rem);min-block-size:24rem;display:flex;overflow:hidden}.pg-messages{padding:var(--space-lg);gap:var(--space-md);flex-direction:column;flex:1;display:flex;overflow-y:auto}.pg-empty{color:var(--color-text-muted);text-align:center;padding-block:var(--space-4xl,4rem);font-size:var(--font-size-sm)}.pg-msg{gap:var(--space-xs);flex-direction:column;max-inline-size:80%;display:flex}.pg-msg--user{align-self:flex-end}.pg-msg--assistant{align-self:flex-start}.pg-msg-role{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.pg-msg--user .pg-msg-role{text-align:end}.pg-msg-content{padding:var(--space-md);border-radius:var(--border-radius);font-size:var(--font-size-sm);word-break:break-word;line-height:1.6}.pg-msg--user .pg-msg-content{white-space:pre-wrap}.pg-reasoning{border-inline-start:2px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs);margin-block-end:var(--space-sm);padding-inline-start:var(--space-sm)}.pg-reasoning summary{cursor:pointer;font-weight:600}.pg-reasoning-text{margin-block:var(--space-xs) 0;white-space:pre-wrap}.pg-no-answer{color:var(--color-text-muted);margin:0}.pg-markdown>:first-child{margin-block-start:0}.pg-markdown>:last-child{margin-block-end:0}.pg-markdown h1,.pg-markdown h2,.pg-markdown h3,.pg-markdown h4{margin-block:.8em .4em;line-height:1.3}.pg-markdown h1{font-size:1.3em}.pg-markdown h2{font-size:1.15em}.pg-markdown h3{font-size:1.05em}.pg-markdown p{margin-block:.5em}.pg-markdown ul,.pg-markdown ol{margin-block:.5em;padding-inline-start:1.5em}.pg-markdown li+li{margin-block-start:.25em}.pg-markdown code{background-color:#7f7f7f1f;border-radius:4px;padding:.15em .35em;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.9em}.pg-markdown pre{padding:var(--space-sm) var(--space-md);border-radius:var(--border-radius);background-color:#00000026;margin-block:.6em;overflow-x:auto}.pg-markdown pre code{background:0 0;padding:0}.pg-markdown blockquote{border-inline-start:3px solid var(--color-border-subtle);color:var(--color-text-muted);margin-block:.5em;margin-inline:0;padding-inline-start:var(--space-md)}.pg-markdown table{border-collapse:collapse;margin-block:.5em;font-size:.9em}.pg-markdown th,.pg-markdown td{border:1px solid var(--color-border-subtle);padding:.3em .6em}.pg-markdown strong{font-weight:700}.pg-markdown a{color:var(--color-primary)}.pg-msg--user .pg-msg-content{background-color:var(--color-primary);color:var(--color-text-inverse)}.pg-msg--assistant .pg-msg-content{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);color:var(--color-text)}.pg-cursor{background-color:var(--color-primary);vertical-align:text-bottom;block-size:1em;inline-size:.5em;animation:.8s step-end infinite pg-blink;display:inline-block}@keyframes pg-blink{50%{opacity:0}}.pg-error{color:var(--color-error);font-size:var(--font-size-sm);padding:var(--space-sm) var(--space-lg);background-color:#ff44660f}.pg-model-status{margin-block:0 0 var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);font-size:var(--font-size-sm);background-color:var(--color-bg-surface);color:var(--color-text-muted)}.pg-model-status--degraded{color:#ffd27a;background-color:#ffaa0014;border-color:#ffaa0059}.pg-model-status--unavailable{color:#ff9aae;background-color:#ff446614;border-color:#ff446659}.pg-input-row{gap:var(--space-sm);padding:var(--space-md);border-block-start:1px solid var(--color-border-subtle);background-color:var(--color-bg-surface);display:flex}.pg-input-row textarea{resize:none;padding:var(--space-md);background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);font-size:var(--font-size-sm);line-height:1.5;font-family:var(--font-sans);flex:1}.pg-input-row textarea:focus{border-color:var(--color-primary);outline:none}.pg-input-row textarea::placeholder{color:var(--color-text-muted);opacity:.6}.pg-tabs,.snippet-tabs{gap:var(--space-xs);border-block-end:1px solid var(--color-border);flex-wrap:wrap;margin-block-end:var(--space-lg);padding-block-end:0;display:flex}.pg-tab{padding:var(--space-sm) var(--space-lg);font-size:var(--font-size-sm);color:var(--color-text-muted);transition:color var(--transition-fast), border-color var(--transition-fast);cursor:pointer;background:0 0;border:none;border-block-end:2px solid #0000;margin-block-end:-1px;font-weight:500}.pg-tab:hover{color:var(--color-text)}.pg-tab--active{color:var(--color-primary);border-block-end-color:var(--color-primary)}.pg-panel{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-xl)}.pg-emb-form textarea,.pg-img-form textarea{resize:vertical;inline-size:100%;padding:var(--space-md);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-sans);line-height:1.5;display:block}.pg-emb-form textarea:focus,.pg-img-form textarea:focus{border-color:var(--color-primary);outline:none}.pg-dec-questions{gap:var(--space-md);margin-block:var(--space-md);padding:0;list-style:none;display:grid}.pg-dec-question{gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);display:grid}.pg-dec-question .field-input{margin-block-end:0}.pg-dec-question .btn-link{justify-self:start}.session-list{gap:var(--space-sm);margin-block-end:var(--space-md);padding:0;list-style:none;display:grid}.session-row{gap:var(--space-sm) var(--space-md);padding:var(--space-md);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.session-row .muted{margin:var(--space-2xs) 0 0}.badge{padding:var(--space-2xs) var(--space-sm);background:var(--color-primary-subtle);color:var(--color-primary);font-size:var(--font-size-sm);border-radius:999px;margin-inline-start:var(--space-sm)}.pg-emb-result{border-block-start:1px solid var(--color-border-subtle);margin-block-start:var(--space-xl);padding-block-start:var(--space-xl)}.pg-emb-stats{gap:var(--space-lg);flex-wrap:wrap;margin-block-end:var(--space-lg);display:flex}.pg-emb-stat{gap:var(--space-2xs);flex-direction:column;display:flex}.pg-emb-stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.pg-emb-stat-value{font-size:var(--font-size-base);font-weight:600;font-family:var(--font-mono);color:var(--color-primary)}.pg-emb-pre{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);padding:var(--space-md);font-family:var(--font-mono);font-size:var(--font-size-xs);word-break:break-all;white-space:pre-wrap;color:var(--color-text);line-height:1.6;overflow-x:auto}.pg-emb-note{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-block-start:var(--space-xs)}.pg-img-loading{color:var(--color-text-muted);font-size:var(--font-size-sm);padding:var(--space-xl);text-align:center}.pg-img-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));margin-block-start:var(--space-xl);display:grid}.pg-img-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);padding:var(--space-md);flex-direction:column;align-items:center;display:flex}.pg-img-card img{border-radius:var(--border-radius);block-size:auto;inline-size:100%;display:block}.pg-lightbox{padding:var(--space-md);max-inline-size:92vw}.pg-lightbox img{object-fit:contain;border-radius:var(--border-radius);max-block-size:80vh;max-inline-size:100%;display:block}.pg-lightbox-close{font-size:var(--font-size-2xl);color:var(--color-text);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-full);cursor:pointer;block-size:2.75rem;inline-size:2.75rem;transition:border-color var(--transition-fast);justify-content:center;align-items:center;margin-block-end:var(--space-sm);margin-inline-start:auto;display:flex}.pg-lightbox-close:hover{border-color:var(--color-primary);color:var(--color-primary)}.pg-send-btn{align-self:flex-start;margin-block-start:var(--space-sm)}.pg-audio-voice{max-inline-size:14rem;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-sm)}.pg-audio-voice:focus{border-color:var(--color-primary);outline:none}.pg-audio-drop{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-xl) var(--space-lg);background-color:var(--color-bg-surface);border:1px dashed var(--color-border);border-radius:var(--border-radius-lg);cursor:pointer;flex-direction:column;transition:border-color .15s,background-color .15s;display:flex}.pg-audio-drop:hover{border-color:var(--color-primary);background-color:color-mix(in srgb, var(--color-primary) 6%, var(--color-bg-surface))}.pg-audio-drop input[type=file]{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pg-audio-drop-icon{font-size:var(--font-size-2xl,1.75rem);opacity:.7;line-height:1}.pg-audio-drop-text{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);word-break:break-all;text-align:center}.pg-audio-drop-hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.pg-audio-player{inline-size:100%;border-radius:var(--border-radius);margin-block-end:var(--space-md);display:block}.pg-audio-transcript{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);padding:var(--space-md);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);white-space:pre-wrap;word-break:break-word;max-block-size:24rem;margin-block-end:var(--space-md);line-height:1.6;overflow-y:auto}.pg-audio-download{text-decoration:none;display:inline-block}.pg-settings-toggle-btn{font-size:var(--font-size-sm)}.pg-settings-panel{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-lg) var(--space-xl);margin-block-end:var(--space-md)}.pg-settings-grid{gap:var(--space-lg) var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=720px){.pg-settings-grid{grid-template-columns:1fr}}.pg-settings-field{gap:var(--space-xs);flex-direction:column;min-inline-size:0;display:flex}.pg-settings-field--wide{grid-column:1/-1}.pg-settings-field--check{align-items:center;gap:var(--space-sm);flex-flow:wrap}.pg-settings-field--check .pg-settings-hint{flex-basis:100%;margin-inline-start:1.6em}.pg-settings-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.pg-settings-output{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-primary);text-transform:none;letter-spacing:normal;font-weight:600}.pg-settings-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.pg-settings-range{inline-size:100%;accent-color:var(--color-primary)}.pg-settings-input,.pg-settings-system{inline-size:100%;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-sm);box-sizing:border-box}.pg-settings-system{resize:vertical;font-family:var(--font-sans);line-height:1.5}.pg-settings-input:focus,.pg-settings-system:focus{border-color:var(--color-primary);outline:none}.pg-settings-footer{border-block-start:1px solid var(--color-border-subtle);justify-content:flex-end;margin-block-start:var(--space-lg);padding-block-start:var(--space-md);display:flex}.pg-history-panel{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-md);max-block-size:22rem;margin-block-end:var(--space-md);overflow-y:auto}.pg-history-empty{padding:var(--space-md);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;margin:0}.pg-history-list{gap:var(--space-2xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pg-history-item{align-items:stretch;gap:var(--space-xs);border-radius:var(--border-radius);transition:background-color .15s;display:flex}.pg-history-item:hover{background-color:var(--color-bg-surface)}.pg-history-item--active{background-color:color-mix(in srgb, var(--color-primary) 8%, var(--color-bg-surface))}.pg-history-load{text-align:start;min-inline-size:0;padding:var(--space-sm) var(--space-md);border-radius:var(--border-radius);cursor:pointer;color:var(--color-text);gap:var(--space-2xs);background:0 0;border:none;flex-direction:column;flex:1;display:flex}.pg-history-load:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.pg-history-title{font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pg-history-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);align-items:center;gap:var(--space-xs);display:flex}.pg-history-meta code{color:var(--color-text-muted);font-size:.85em}.pg-history-delete{border-radius:var(--border-radius);color:var(--color-text-muted);padding:var(--space-2xs) var(--space-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-self:center;font-size:1.25rem;line-height:1}.pg-history-delete:hover{color:var(--color-danger,#d04444);border-color:var(--color-border)}.pg-history-footer{margin:var(--space-md) 0 0;border-block-start:1px solid var(--color-border-subtle);font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;padding-block-start:var(--space-sm)}}@layer utilities{.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.login-shell{min-height:100dvh;padding:var(--space-lg);background:var(--color-bg);place-items:center;display:grid}.login-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);width:100%;max-width:380px;padding:var(--space-xl)}.login-brand{gap:var(--space-xs);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.login-logo{font-size:var(--font-size-xl);color:var(--color-primary);letter-spacing:-.02em;font-weight:700}.login-tagline{color:var(--color-text-muted);font-size:var(--font-size-sm)}.login-hint{margin-top:var(--space-md);color:var(--color-text-muted);font-size:var(--font-size-sm)}.turnstile-slot{justify-content:center;min-height:65px;margin-top:1rem;display:flex}.login-error{margin-top:var(--space-md);color:var(--color-error);font-size:var(--font-size-sm)}.login-actions{margin-top:var(--space-md);justify-content:space-between;display:flex}.field-label{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-xs);display:block}.field-input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);width:100%;color:var(--color-text);margin-bottom:var(--space-md);padding:.65rem .8rem}.field-input:focus{border-color:var(--color-primary);outline:none}.field-code{font-family:var(--font-mono);font-size:var(--font-size-xl);letter-spacing:.4em;text-align:center}.field-narrow{max-width:220px}.btn,.btn-primary,.btn-secondary,.btn-danger{border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-bg-surface);color:var(--color-text);transition:background var(--transition-fast), border-color var(--transition-fast);padding:.6rem 1rem;font-weight:600}.btn:hover:not(:disabled){background:var(--color-border)}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn-danger{border-color:var(--color-error);color:var(--color-error);background:0 0}.btn-danger:hover:not(:disabled){background:#ff44661a}.btn-block{width:100%}.btn-link{color:var(--color-primary);font-size:var(--font-size-sm);background:0 0;border:none;padding:.2rem 0}.btn-link:disabled{color:var(--color-text-muted);cursor:default}.btn-link.danger{color:var(--color-error)}.console{background:var(--color-bg);grid-template-columns:240px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--color-border);padding:var(--space-lg) var(--space-md);flex-direction:column;height:100dvh;display:flex;position:sticky;top:0}.sidebar-brand{margin-bottom:var(--space-xl);padding:0 var(--space-sm);flex-direction:column;display:flex}.sidebar-logo{font-weight:700;font-size:var(--font-size-lg);color:var(--color-primary)}.sidebar-sub{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.sidebar-nav ul{flex-direction:column;gap:2px;list-style:none;display:flex}.sidebar-nav-bottom{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-border-subtle)}.nav-link{border-radius:var(--border-radius);color:var(--color-text-muted);font-size:var(--font-size-sm);padding:.5rem .75rem;font-weight:500;text-decoration:none;display:block}.nav-link:hover{background:var(--color-bg-elevated);color:var(--color-text)}.nav-link.is-active{background:var(--color-primary-subtle);color:var(--color-primary);font-weight:600}.sidebar-footer{padding-top:var(--space-lg);gap:var(--space-xs);border-top:1px solid var(--color-border-subtle);flex-direction:column;margin-top:auto;display:flex}.sidebar-email{font-size:var(--font-size-xs);color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;padding:0 var(--space-sm);overflow:hidden}.sidebar-foot-link{text-align:left;color:var(--color-text-muted);font-size:var(--font-size-sm);padding:.25rem var(--space-sm);background:0 0;border:none;text-decoration:none}.sidebar-foot-link:hover{color:var(--color-primary)}.console-main{height:100dvh;overflow-y:auto}.view{max-width:960px;padding:var(--space-xl);margin:0 auto}.view-head{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.view-head h1{font-size:var(--font-size-2xl);letter-spacing:-.02em}.live-dot{color:#34d399;font-size:var(--font-size-xs);cursor:default;font-weight:600;animation:2.5s ease-in-out infinite live-pulse}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.45}}.muted{color:var(--color-text-muted)}.error-text{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--space-sm)}.card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.card-head{justify-content:space-between;align-items:baseline;gap:var(--space-sm);font-size:var(--font-size-base);margin-bottom:var(--space-md);font-weight:600;line-height:1.6;display:flex}.card-head small{font-size:var(--font-size-sm);font-weight:400}.stat-grid{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.stat-grid-3{grid-template-columns:repeat(3,1fr)}.stat-tile{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--space-lg)}.stat-val{font-size:var(--font-size-2xl);font-weight:700;font-family:var(--font-mono);color:var(--color-text)}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:var(--space-xs)}.stat-sub{font-size:var(--font-size-xs);margin-top:2px}.section-hint{font-size:var(--font-size-sm);max-width:60ch;margin:var(--space-sm) 0}.data-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--color-border-subtle);padding:.6rem .5rem}.data-table th{color:var(--color-text-muted);font-weight:500;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.data-table .num{text-align:right;font-family:var(--font-mono);white-space:nowrap}.data-table .neg{color:var(--color-text)}.data-table .pos{color:var(--color-success)}.table-scroll{position:relative;overflow-x:auto}.row-actions{gap:var(--space-xs) var(--space-md);flex-wrap:wrap;justify-content:flex-end;min-inline-size:14rem;display:flex}.bar-chart{align-items:flex-end;gap:3px;height:120px;display:flex}.bar{min-width:2px;height:var(--bar,3%);background:var(--color-primary);opacity:.8;border-radius:2px 2px 0 0;flex:1}.bar-quiet{opacity:.15}.seg{border:1px solid var(--color-border);border-radius:var(--border-radius);display:inline-flex;overflow:hidden}.seg-btn{background:var(--color-bg-elevated);color:var(--color-text-muted);font-size:var(--font-size-sm);border:none;padding:.35rem .75rem}.seg-btn.is-active{background:var(--color-primary);color:var(--color-text-inverse)}.badge{font-size:var(--font-size-xs);border-radius:var(--border-radius-full);white-space:nowrap;padding:.1rem .5rem;font-weight:600}.badge-on{background:var(--color-primary-subtle);color:var(--color-primary)}.badge-off{color:var(--color-error);background:#ff44661f}.method{font-family:var(--font-mono);font-size:var(--font-size-xs);border-radius:var(--border-radius);padding:.1rem .4rem;font-weight:700}.method-post{background:var(--color-primary-subtle);color:var(--color-primary)}.method-get{color:var(--color-text-muted);background:#7a8da626}.code-block{font-family:var(--font-mono);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--space-sm) var(--space-md);color:var(--color-primary);display:block;overflow-x:auto}.key-create{margin-bottom:var(--space-md)}.key-fields{gap:0 var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));display:grid}.allow-list{border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md)}.allow-list legend{padding-inline:var(--space-xs)}.check-row{align-items:flex-start;gap:var(--space-sm);font-size:var(--font-size-sm);padding-block:var(--space-xs);display:flex}.balance-card{text-align:left}.balance-breakdown{max-width:28rem;margin:var(--space-sm) 0}.balance-line{justify-content:space-between;align-items:baseline;gap:var(--space-lg);padding:var(--space-xs) 0;display:flex}.balance-line dt{color:var(--color-text-muted)}.balance-note{font-weight:400;font-size:var(--font-size-xs);color:var(--color-text-muted);display:block}.balance-line-main dt{color:var(--color-text);font-weight:600}.balance-line dd{font-size:var(--font-size-2xl);font-weight:700;font-family:var(--font-mono);color:var(--color-text);margin:0}.amount-row{gap:var(--space-sm);margin:var(--space-md) 0;flex-wrap:wrap;display:flex}.chip{border:1px solid var(--color-border);border-radius:var(--border-radius-full);background:var(--color-bg);color:var(--color-text-muted);font-family:var(--font-mono);padding:.4rem .9rem}.chip.is-active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-subtle)}.model-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.model-card{border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--space-md)}.model-name{font-weight:600}.model-id{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);overflow-wrap:anywhere;margin-top:2px;display:block}.model-meta{align-items:center;gap:var(--space-xs);margin-top:var(--space-xs);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.badge-context{background:var(--color-bg-subtle,transparent);color:var(--color-text-muted);border:1px solid var(--color-border)}.detail-list{gap:var(--space-sm);flex-direction:column;display:flex}.detail-list div{justify-content:space-between;gap:var(--space-xs) var(--space-md);flex-wrap:wrap;display:flex}.detail-list dt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.card-grid-2{gap:var(--space-lg);margin-bottom:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}.card-grid-2 .card{margin-bottom:0}.billing-notice{justify-content:space-between;align-items:center;gap:var(--space-md);border-color:var(--color-primary);color:var(--color-text);font-size:var(--font-size-sm);display:flex}.badge-warn{color:var(--color-warning);background:#ffaa001f}.cap-grid{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(210px,1fr));display:grid}.cap-item{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);font-size:var(--font-size-sm);display:flex}.cap-item .cap-meta{color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap}portal-app,portal-login,portal-terms,portal-playground,portal-stats,portal-leaderboard,portal-network-health,portal-api,portal-setup-snippets,portal-models,portal-billing,portal-usage,portal-settings,pg-chat,pg-embeddings,pg-image,pg-speech,pg-audio{display:block}h1[tabindex="-1"]:focus{outline:none}.skip-link{z-index:10;padding:var(--space-sm) var(--space-md);background:var(--color-primary);color:var(--color-text-inverse);border-radius:var(--border-radius);position:absolute;inset-block-start:-4rem;inset-inline-start:var(--space-sm)}.skip-link:focus{inset-block-start:var(--space-sm)}.view-notice{padding-block-end:0}.view-wide{max-width:1120px}.notice{padding:var(--space-sm) var(--space-md);margin-block:var(--space-sm) var(--space-md);border-radius:var(--border-radius);color:var(--color-text);font-size:var(--font-size-sm);background:#ffaa0014;border:1px solid #ffaa0059}.terms-card{border-color:#ffaa0059}.terms-card p{max-inline-size:70ch;margin-block-end:var(--space-sm)}.terms-card .check-row{margin-block-end:var(--space-sm)}.name-form{margin-block-start:var(--space-md)}.name-form .field-input{max-inline-size:28rem;display:block}.login-brand h1{font-size:var(--font-size-xl)}.login-brand p{margin:0}.loading-text{padding:var(--space-2xl);text-align:center;color:var(--color-text-muted)}pre.code-block{white-space:pre;font-size:var(--font-size-sm);margin-block-start:var(--space-sm)}pre.code-block code{color:inherit}.sample-note{color:var(--color-text-muted);font-size:var(--font-size-sm);max-inline-size:70ch;margin-block-start:var(--space-sm)}.model-name{font-size:var(--font-size-base)}.model-about{font-size:var(--font-size-xs);margin-block-start:var(--space-xs)}.badge-vendor{background:var(--color-primary-subtle);color:var(--color-primary)}.model-policies{gap:var(--space-md);font-size:var(--font-size-xs);margin-block-start:var(--space-xs);display:flex}.endpoint-list,.rate-list{font-size:var(--font-size-xs);overflow-wrap:anywhere;margin-block-start:var(--space-xs);list-style:none}.endpoint-list code{font-size:inherit;color:var(--color-text-muted)}.rate-list{font-size:inherit;margin-block-start:0}.pg-control-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.pg-controls{flex-wrap:wrap;margin-block-end:var(--space-md)}.pg-controls select{min-inline-size:0;max-inline-size:100%}.pg-audio-heading{font-size:var(--font-size-base);margin-block-end:var(--space-sm)}.pg-img-card{margin:0}.pg-img-open{inline-size:100%;margin-block-start:var(--space-sm)}.pg-emb-stats dd{margin:0}.pg-emb-form .field-label{margin-block-start:var(--space-sm)}.cap-grid{list-style:none}.key-dialog footer,.confirm-dialog footer,.edit-dialog footer{margin-block-start:var(--space-md)}.new-key-value{overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.live-dot,.pg-cursor{animation:none}}@media (width<=720px){.console{grid-template-columns:minmax(0,1fr)}.sidebar{align-items:center;gap:var(--space-sm);flex-flow:wrap;height:auto;position:static}.sidebar-brand,.sidebar-footer{width:100%}.sidebar-nav ul{flex-flow:wrap}.console-main{height:auto}.stat-grid-3{grid-template-columns:1fr}.view{padding:var(--space-md)}.nav-link,.btn-link,.sidebar-foot-link,.seg-btn,.chip{align-items:center;min-block-size:2.75rem;display:inline-flex}.view-head{gap:var(--space-sm);flex-wrap:wrap}.pg-msg{max-inline-size:100%}.login-card{padding:var(--space-lg)}.key-display-box{flex-direction:column;align-items:stretch}dialog{padding:var(--space-lg)}.card-grid-2{grid-template-columns:1fr}}
