.portal-theme{--bg:#171717;--bg2:#1c1c1c;--panel:#1d1d1d;--panel2:#222;--line:#303030;--line2:#3a3a3a;--text:#f5f5f5;--text2:#929292;--text3:#686868;--brand-accent:#22d3ee;--btnInk:#031216;--hud:rgba(13,18,28,.55);--modalbg:rgba(13,18,28,.94);--chipbg:rgba(5,8,13,.88);--navbg:rgba(5,7,10,.6);--dotc:rgba(140,165,195,.09);--termbg:#05080d;--background:0 0% 9%;--foreground:0 0% 96%;--card:0 0% 11%;--card-foreground:0 0% 96%;--popover:0 0% 11%;--popover-foreground:0 0% 96%;--primary:188 86% 53%;--primary-foreground:192 73% 5%;--secondary:0 0% 16%;--secondary-foreground:0 0% 96%;--muted:0 0% 16%;--muted-foreground:0 0% 57%;--accent:188 35% 12%;--accent-foreground:188 86% 70%;--destructive:355 85% 60%;--destructive-foreground:0 0% 98%;--border:0 0% 19%;--input:0 0% 16%;--ring:188 86% 53%;--radius:0.7rem;--sidebar:0 0% 11%;--sidebar-foreground:0 0% 96%;--sidebar-border:0 0% 19%;--sidebar-accent:0 0% 19%;--sidebar-accent-foreground:0 0% 96%;--sidebar-primary:188 86% 53%;--sidebar-primary-foreground:192 73% 5%;--sidebar-ring:188 86% 53%;color:var(--text);background-color:var(--bg);transition:background .3s,color .3s}.portal-theme .portal-kicker{font-family:var(--font-mono),"JetBrains Mono",monospace;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--brand-accent)}.portal-theme .portal-page-title{font-weight:800;font-size:clamp(1.75rem,2.4vw,2rem);line-height:1.05;letter-spacing:-.035em;color:var(--text)}.portal-theme .canvas-grid{background-color:var(--bg2);background-image:radial-gradient(var(--dotc) 1.5px,transparent 1.5px);background-size:24px 24px}.portal-theme .btn-bright{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:3px;background:var(--brand-accent);color:var(--btnInk);border:1px solid var(--brand-accent);font-size:13.5px;font-weight:700;cursor:pointer;transition:filter .15s ease}.portal-theme .btn-bright:hover{filter:brightness(1.12)}.portal-theme .btn-glass{display:inline-flex;align-items:center;padding:8px 16px;border-radius:3px;border:1px solid var(--line2);color:var(--text);background:var(--hud);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:13.5px;font-weight:600;cursor:pointer;transition:border-color .15s ease}.portal-theme .btn-glass:hover{border-color:var(--brand-accent)}.portal-theme .deploy-card{border-radius:4px;border:1px solid var(--line2);background:var(--panel);box-shadow:0 18px 50px -18px rgba(0,0,0,.8);overflow:hidden}.portal-theme .resource-border-active{border:1px solid #19d3ee!important}.portal-theme .resource-border-deploying{border:1px solid #fbbf24!important}.portal-theme .deploy-card-header{background:var(--panel2);border-bottom:1px solid var(--line);padding:11px 16px;font-family:var(--font-mono),"JetBrains Mono",monospace;font-size:11.5px;color:var(--text3)}.portal-theme .hud-panel{border:1px solid var(--line2);border-radius:4px;background:var(--hud)}.portal-theme .hud-panel,.portal-theme .portal-nav-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.portal-theme .portal-nav-header{background:var(--navbg);border-bottom-color:var(--line)}.portal-theme .docklet-panel{border-radius:4px;border:1px solid var(--line2);background:var(--panel);box-shadow:0 18px 50px -18px rgba(0,0,0,.45)}.portal-theme .auth-form-panel{border-radius:14px;border:1px solid color-mix(in oklab,var(--line2) 55%,#fff 18%);background:color-mix(in oklab,var(--panel) 92%,#000);box-shadow:0 28px 70px -24px rgba(0,0,0,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.portal-theme .auth-field{height:2.75rem;border-radius:8px;border:1px solid color-mix(in oklab,var(--line2) 40%,#fff 28%);background:color-mix(in oklab,#0b1018 86%,#fff 4%);padding-inline:.85rem;color:var(--text)}.portal-theme .auth-field::-moz-placeholder{color:color-mix(in oklab,var(--text3) 80%,#fff 10%)}.portal-theme .auth-field::placeholder{color:color-mix(in oklab,var(--text3) 80%,#fff 10%)}.portal-theme .auth-field:focus,.portal-theme .auth-field:focus-visible{border-color:var(--brand-accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand-accent) 30%,transparent)}.portal-theme .auth-oauth{height:2.75rem;border:1px solid color-mix(in oklab,var(--line2) 40%,#fff 28%)!important;background:color-mix(in oklab,#0b1018 86%,#fff 4%)!important;color:var(--text)!important}.portal-theme .auth-oauth:hover{border-color:color-mix(in oklab,var(--brand-accent) 55%,#fff)!important;background:color-mix(in oklab,#101722 80%,#fff 6%)!important}.portal-theme .auth-divider{background:color-mix(in oklab,var(--panel) 92%,#000)}.portal-theme .docklet-input{border-radius:3px;border-color:var(--line2);background:var(--panel2)}.portal-theme .docklet-input:focus{border-color:color-mix(in oklab,var(--brand-accent) 55%,transparent);ring-color:color-mix(in oklab,var(--brand-accent) 25%,transparent)}.portal-theme .terminal-window{border-radius:4px;border:1px solid var(--line2);background:var(--termbg);box-shadow:0 30px 80px -30px rgba(0,0,0,.8);font-family:var(--font-mono),"JetBrains Mono",monospace;font-size:13px;line-height:2;overflow:hidden}.portal-theme .status-indicator-live{width:6px;height:6px;border-radius:50%;background:var(--brand-accent);animation:portal-pulse 2s infinite}.portal-theme .status-spinner{display:inline-block;width:11px;height:11px;border-radius:50%;border:2px solid var(--line2);border-top:2px solid #f5b14c;animation:portal-spinv2 .7s linear infinite}.portal-theme .portal-tab-active{border-color:color-mix(in oklab,var(--brand-accent) 45%,transparent);background:color-mix(in oklab,var(--brand-accent) 12%,transparent);color:var(--brand-accent)}.portal-theme .portal-service-tab-active{border-bottom-color:var(--brand-accent);color:var(--text)}.portal-theme .portal-status-running{background:color-mix(in oklab,var(--brand-accent) 14%,transparent);color:var(--brand-accent);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--brand-accent) 28%,transparent)}@keyframes portal-pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes portal-spinv2{to{transform:rotate(1turn)}}.portal-theme .log-terminal{border-radius:4px;border:1px solid var(--line2);background:var(--termbg);box-shadow:0 30px 80px -30px rgba(0,0,0,.8);color:#c7d3e4;line-height:2}@keyframes portal-fadeup{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.portal-theme,.portal-theme *{scrollbar-width:thin;scrollbar-color:#17bfd8 transparent}.portal-theme ::-webkit-scrollbar{width:6px;height:6px}.portal-theme ::-webkit-scrollbar-track{background:transparent}.portal-theme ::-webkit-scrollbar-thumb{background:#17bfd8;border-radius:999px}.portal-theme ::-webkit-scrollbar-thumb:hover{background:#22d3ee}.portal-theme ::-webkit-scrollbar-corner{background:transparent}.portal-theme .portal-thin-scroll{scrollbar-width:thin;scrollbar-color:#17bfd8 transparent}.portal-theme .react-flow__node,.portal-theme .react-flow__node>div{overflow:visible!important}.portal-theme .opendb-data-scroll{scrollbar-gutter:stable}.studio-theme{--studio-bg:#171717;--studio-sidebar:#1c1c1c;--studio-card:#1d1d1d;--studio-hover:#292929;--studio-active:#303030;--studio-border:#303030;--studio-text:#f5f5f5;--studio-text-2:#929292;--studio-text-3:#686868;--studio-accent:#22d3ee;--studio-blue:#32a9f5;--studio-orange:#ff9800;--studio-purple:#22d3ee;--studio-danger:#f04452;color:var(--studio-text);background:var(--studio-bg)}.studio-theme .studio-card{background:var(--studio-card);border:1px solid var(--studio-border);border-radius:12px}.studio-theme .studio-nav-item{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:0 10px;border-radius:10px;color:var(--studio-text-2);font-size:13px;line-height:1.2;transition:background-color .15s ease,color .15s ease}.studio-theme .studio-nav-item:hover{background:var(--studio-hover);color:var(--studio-text)}.studio-theme .studio-nav-item[data-active=true]{background:var(--studio-active);color:var(--studio-text)}.studio-theme .studio-section-label{padding:10px 10px 6px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--studio-text-3)}