.login-page[data-v-eca3dd68]{justify-content:center;width:100%;display:flex}.login-card[data-v-eca3dd68]{background:linear-gradient(180deg, #46c2b90f, #46c2b900 45%), var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);width:100%;max-width:440px;padding:var(--space-8);box-shadow:var(--shadow-lg)}.login-brand[data-v-eca3dd68]{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.login-mark[data-v-eca3dd68]{width:34px;height:34px;color:var(--accent);flex-shrink:0}.login-brand-name[data-v-eca3dd68]{letter-spacing:-.01em;font-size:1.1rem;font-weight:600}.login-brand-tag[data-v-eca3dd68]{font-family:var(--font-mono);color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;margin-top:.15rem;font-size:.75rem}.login-lede[data-v-eca3dd68]{color:var(--text-secondary);margin:0 0 var(--space-6);font-size:.9rem;line-height:1.6}.btn-arrow[data-v-eca3dd68]{width:15px;height:15px;margin-left:-.15rem}.spin[data-v-eca3dd68]{animation:.8s linear infinite spin-eca3dd68}@keyframes spin-eca3dd68{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin[data-v-eca3dd68]{animation:none}}.schedule-header[data-v-f648d383]{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.schedule-header h1[data-v-f648d383]{margin:0}.schedule-lab-name[data-v-f648d383]{color:var(--text-muted);margin:.35rem 0 0;font-size:.9rem}.stepper-hint[data-v-f648d383]{color:var(--text-faint);font-size:.85rem}.provisioning-card[data-v-ed4accd1]{max-width:600px}.provisioning-heading[data-v-ed4accd1]{align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.provisioning-spinner[data-v-ed4accd1]{border-radius:var(--radius-full);background:var(--status-provisioning-soft);width:34px;height:34px;color:var(--status-provisioning);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.provisioning-spinner svg[data-v-ed4accd1]{width:18px;height:18px;animation:1s linear infinite spin-ed4accd1}@keyframes spin-ed4accd1{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.provisioning-spinner svg[data-v-ed4accd1]{animation:none}}.provisioning-sub[data-v-ed4accd1]{color:var(--text-muted);margin:0;font-size:.85rem}.provisioning-footnote[data-v-ed4accd1]{color:var(--text-faint);margin-bottom:0;font-size:.82rem}.history-row-main[data-v-afa3254c]{align-items:center;gap:var(--space-3);display:flex}.history-row-icon[data-v-afa3254c]{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.history-row-icon svg[data-v-afa3254c]{width:15px;height:15px}.history-row-icon.tone-success[data-v-afa3254c]{background:var(--status-ready-soft);color:var(--status-ready)}.history-row-icon.tone-neutral[data-v-afa3254c]{background:var(--panel-raised);color:var(--text-muted)}.faq-mail-icon[data-v-25cd858b]{vertical-align:-1px;width:13px;height:13px;color:var(--text-faint);margin-right:.2rem}.feedback-panel[data-v-0bd21e56]{max-width:640px}.app-loading[data-v-525a4c2c]{align-items:center;gap:var(--space-4);color:var(--text-muted);display:flex}.app-loading-spinner[data-v-525a4c2c]{border-radius:var(--radius-full);background:var(--status-provisioning-soft);width:28px;height:28px;color:var(--status-provisioning);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.app-loading-spinner svg[data-v-525a4c2c]{width:16px;height:16px;animation:1s linear infinite app-loading-spin-525a4c2c}@keyframes app-loading-spin-525a4c2c{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.app-loading-spinner svg[data-v-525a4c2c]{animation:none}}:root{--bg:#0a0e14;--bg-elevated:#0d1219;--panel:#131a24;--panel-raised:#182130;--panel-border:#232e3d;--border-strong:#2e3c4e;--text:#eef2f6;--text-secondary:#b7c1cd;--text-muted:#8494a6;--text-faint:#5b6a7d;--accent:#46c2b9;--accent-strong:#63d6cd;--accent-soft:#46c2b921;--accent-contrast:#04211f;--status-ready:#3ddc84;--status-ready-soft:#3ddc8421;--status-provisioning:#f0a93c;--status-provisioning-soft:#f0a93c21;--status-error:#f0654b;--status-error-soft:#f0654b21;--status-info:#5b9eec;--status-info-soft:#5b9eec21;--status-neutral:#8494a6;--status-neutral-soft:#8494a621;--success:var(--status-ready);--success-soft:var(--status-ready-soft);--warning:var(--status-provisioning);--warning-soft:var(--status-provisioning-soft);--danger:var(--status-error);--danger-soft:var(--status-error-soft);--info:var(--status-info);--info-soft:var(--status-info-soft);--focus-ring:0 0 0 3px #46c2b959;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-full:999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--shadow-sm:0 1px 2px #00000052;--shadow-md:0 6px 20px #00000052;--shadow-lg:0 16px 40px #0006;--font-ui:"IBM Plex Sans", sans-serif;--font-mono:"IBM Plex Mono", monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:1.875rem;--text-3xl:2.25rem;--duration-fast:.12s;--duration-base:.18s;--ease:cubic-bezier(.2, .7, .3, 1);--content-width:1080px}*,:before,:after{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:radial-gradient(1200px 480px at 15% -10%, #46c2b90d, transparent 60%), var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-ui);font-size:var(--text-base);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;line-height:1.5;display:flex}#app{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3{font-family:var(--font-ui);letter-spacing:-.01em;margin:0;font-weight:600}.header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:.9rem var(--space-8);border-bottom:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:20;background:#0a0e14d9;display:flex;position:sticky;top:0}.brand{color:var(--text);align-items:baseline;gap:.55rem;text-decoration:none;display:flex}.brand-mark{width:26px;height:26px;color:var(--accent);flex-shrink:0}.brand-name{letter-spacing:-.01em;white-space:nowrap;font-size:1.02rem;font-weight:600}.brand-tag{font-family:var(--font-mono);color:var(--text-faint);letter-spacing:.04em;text-transform:uppercase;border-left:1px solid var(--panel-border);white-space:nowrap;padding-left:.55rem;font-size:.72rem}.wordmark{font-family:var(--font-mono);color:var(--text-muted);font-size:.95rem}.wordmark strong{color:var(--accent);font-weight:500}.header-nav{align-items:center;gap:var(--space-1);display:flex}.header-nav .nav-link{background:0 0;border-color:#0000;padding:.45rem .6rem}.header-nav .nav-link:hover:not(:disabled){background:var(--panel-raised);color:var(--text);border-color:#0000}.header-nav .nav-link:focus-visible{border-color:var(--accent)}.credit-meter{font-family:var(--font-mono);border:1px solid var(--panel-border);border-radius:var(--radius-full);background:var(--panel);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:.55rem;padding:.4rem .75rem .4rem .6rem;font-size:.85rem;display:flex}.credit-meter .dot{background:var(--status-ready);border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 0 3px #3ddc8426}.credit-meter .credit-count{color:var(--text);font-weight:600}.credit-meter .credit-expiry{color:var(--text-faint);font-weight:400}.nav-icon{flex-shrink:0;width:15px;height:15px}main{padding:var(--space-8) var(--space-4);flex:1;justify-content:center;align-items:center;display:flex}.page{width:100%;max-width:var(--content-width);align-self:flex-start;margin:0 auto}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.page-title{font-size:var(--text-xl);margin:0}.page-subtitle{color:var(--text-muted);font-size:var(--text-sm);margin:.3rem 0 0}.section-header{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.status-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);font-size:.72rem;font-weight:600}.section-hint{color:var(--text-faint);font-size:var(--text-xs)}.card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);width:100%;max-width:560px;padding:var(--space-8);box-shadow:var(--shadow-md)}.card h1{font-size:var(--text-lg);margin:0 0 var(--space-6)}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);padding:var(--space-6)}label{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:.4rem;font-weight:500;display:block}input[type=text],input[type=password],select,textarea{background:var(--bg-elevated);border:1px solid var(--panel-border);border-radius:var(--radius-sm);width:100%;color:var(--text);font-family:var(--font-mono);margin-bottom:var(--space-5);transition:border-color var(--duration-base) var(--ease), box-shadow var(--duration-base) var(--ease);padding:.7rem .85rem;font-size:.9rem}textarea{resize:vertical;font-family:var(--font-ui);line-height:1.55}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field-hint{color:var(--text-faint);font-size:var(--text-xs);margin:-.9rem 0 var(--space-5);line-height:1.5}.stepper{margin-bottom:var(--space-6);align-items:center;gap:.75rem;display:flex}.stepper button{border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--bg-elevated);width:36px;height:36px;color:var(--text);cursor:pointer;transition:border-color var(--duration-base) var(--ease), background var(--duration-base) var(--ease);font-size:1.1rem}.stepper button:hover{border-color:var(--accent);background:var(--accent-soft)}.stepper .value{font-family:var(--font-mono);text-align:center;min-width:3ch;font-size:1.1rem;font-weight:600}.stepper--joined{border:1px solid var(--panel-border);border-radius:var(--radius-sm);gap:0;margin-bottom:0;display:inline-flex;overflow:hidden}.stepper--joined button{background:var(--bg-elevated);border:none;border-radius:0}.stepper--joined button:hover{background:var(--accent-soft)}.stepper-readout{padding:0 var(--space-4);border-left:1px solid var(--panel-border);border-right:1px solid var(--panel-border);justify-content:center;align-items:baseline;gap:.35rem;min-width:8ch;display:flex}.stepper-unit{color:var(--text-muted);font-size:.85rem}button{font-family:var(--font-ui)}.btn{border-radius:var(--radius-sm);width:100%;font-family:var(--font-ui);cursor:pointer;transition:background var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), transform var(--duration-fast) var(--ease), box-shadow var(--duration-base) var(--ease), opacity var(--duration-base) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn:active{transform:translateY(1px)}.btn svg{flex-shrink:0;width:16px;height:16px}.btn-primary{background:var(--accent);color:#04211f;box-shadow:inset 0 1px #ffffff1f}.btn-primary:hover:not(:disabled){background:var(--accent-strong)}.btn-primary:disabled{background:var(--panel-raised);color:var(--text-faint);cursor:not-allowed;box-shadow:none}.btn-accent{background:var(--accent);color:#04211f;box-shadow:inset 0 1px #ffffff1f}.btn-accent:hover:not(:disabled){background:var(--accent-strong)}.btn-danger{background:var(--panel-raised);color:var(--status-error);border-color:var(--panel-border)}.btn-danger:hover:not(:disabled){background:var(--status-error-soft);border-color:#f0654b66}.btn-warning{background:var(--panel-raised);color:var(--status-provisioning);border-color:var(--panel-border)}.btn-warning:hover:not(:disabled){background:var(--status-provisioning-soft);border-color:#f0a93c66}.btn-ghost{color:var(--text-muted);border:1px solid var(--panel-border);background:0 0;width:auto;padding:.45rem .8rem;font-size:.82rem}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:var(--border-strong);background:var(--panel-raised)}.btn-secondary{background:var(--panel-raised);color:var(--text);border-color:var(--panel-border)}.btn-secondary:hover:not(:disabled){border-color:var(--border-strong)}.btn-sm{width:auto;padding:.45rem .75rem;font-size:.82rem}button:disabled{cursor:not-allowed}.error-banner,.warning-banner,.success-banner,.info-banner{border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:var(--space-5);border:1px solid #0000;align-items:flex-start;gap:.6rem;padding:.75rem .9rem;line-height:1.5;display:flex}.error-banner svg,.warning-banner svg,.success-banner svg,.info-banner svg{flex-shrink:0;width:16px;height:16px;margin-top:.1rem}.error-banner{background:var(--status-error-soft);color:var(--status-error);border-color:#f0654b59}.warning-banner{background:var(--status-provisioning-soft);color:var(--status-provisioning);border-color:#f0a93c59}.success-banner{background:var(--status-ready-soft);color:var(--status-ready);border-color:#3ddc8459}.info-banner{background:var(--status-info-soft);color:var(--status-info);border-color:#5b9eec59}.boot-log{font-family:var(--font-mono);margin-bottom:var(--space-6);font-size:.88rem;line-height:2.1}.boot-log .line{gap:var(--space-3);color:var(--text-faint);align-items:baseline;display:flex}.boot-log .tag{color:var(--text-faint);min-width:5ch}.boot-log .line.done{color:var(--text-secondary)}.boot-log .line.done .tag{color:var(--status-ready)}.boot-log .line.active{color:var(--text)}.boot-log .line.active .tag{color:var(--status-provisioning)}.boot-log .cursor{background:var(--accent);vertical-align:text-bottom;width:7px;height:1em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.boot-log .cursor{animation:none}}.history-list{font-size:var(--text-sm)}.history-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--panel-border);display:flex}.history-row:last-child{border-bottom:none}.history-row-label{font-weight:500}.history-row-date{color:var(--text-faint);font-size:var(--text-xs);margin-top:.2rem}.amount-positive{color:var(--status-ready);font-family:var(--font-mono);font-size:.95rem;font-weight:600}.amount-negative{color:var(--text-secondary);font-family:var(--font-mono);font-size:.95rem;font-weight:600}a{color:var(--accent)}.faq-group{margin-bottom:var(--space-6)}.faq-group:last-child{margin-bottom:0}.faq-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);margin-bottom:.6rem;font-size:.72rem;font-weight:600}.faq-list{border-top:1px solid var(--panel-border)}.faq-item{border-bottom:1px solid var(--panel-border)}.faq-trigger{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;color:var(--text);text-align:left;cursor:pointer;font-size:.92rem;font-weight:500;font-family:var(--font-ui);background:0 0;border:none;padding:.9rem .1rem;display:flex}.faq-chevron{width:16px;height:16px;color:var(--text-faint);transition:transform var(--duration-base) var(--ease);flex-shrink:0}.faq-item.is-open .faq-chevron{color:var(--accent);transform:rotate(180deg)}.faq-answer{color:var(--text-muted);font-size:var(--text-sm);padding:0 .1rem 1rem;line-height:1.6}.connection-box{font-family:var(--font-mono);background:var(--bg-elevated);border:1px solid var(--panel-border);border-radius:var(--radius-md);padding:var(--space-5);font-size:.9rem}.connection-row{align-items:center;column-gap:var(--space-5);grid-template-columns:9ch 1fr auto;padding:.4rem 0;display:grid}.connection-row+.connection-row{border-top:1px solid #ffffff0a}.connection-row .k{color:var(--text-faint);font-size:.82rem}.connection-row .v{word-break:break-all;color:var(--text)}.running-layout{width:100%;max-width:var(--content-width);gap:var(--space-8);flex-direction:column;margin:0 auto;display:flex}.session-summary{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:linear-gradient(180deg, #ffffff06, #fff0 60%), var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.session-status{align-items:center;gap:.7rem;display:flex}.session-status .status-dot{width:10px;height:10px}.session-status-text{flex-direction:column;gap:.15rem;display:flex}.session-status-label{font-size:var(--text-lg);letter-spacing:-.01em;font-weight:600}.session-status-sub{font-size:var(--text-xs);color:var(--text-faint)}.session-timer{text-align:right}.session-timer-value{font-family:var(--font-mono);font-size:var(--text-xl);font-weight:600;line-height:1.1}.session-timer-value.is-low{color:var(--status-provisioning)}.session-timer-label{font-size:var(--text-xs);color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;margin-top:.2rem}.session-progress{border-radius:var(--radius-full);background:var(--panel-border);width:100%;height:4px;margin-top:var(--space-4);overflow:hidden}.session-progress-fill{background:var(--accent);border-radius:var(--radius-full);height:100%;transition:width var(--duration-base) var(--ease)}.session-progress-fill.is-low{background:var(--status-provisioning)}.rdp-card{border:1px solid var(--panel-border);background:linear-gradient(180deg, #46c2b90d, #46c2b900 55%), var(--panel);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md)}.rdp-card-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.rdp-card-actions .btn{width:auto}.rdp-card-hint{color:var(--text-faint);margin:var(--space-3) 0 0;font-size:.8rem}.rdp-card-hint.is-confirmed{color:var(--status-ready)}.resource-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.status-tile{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-md);width:100%;height:60px;padding:0 var(--space-4);cursor:pointer;font-family:var(--font-ui);text-align:left;transition:border-color var(--duration-base) var(--ease), background var(--duration-base) var(--ease);align-items:center;gap:.6rem;display:flex}.status-tile:hover{border-color:var(--border-strong);background:var(--panel-raised)}.status-tile[aria-expanded=true]{border-color:var(--accent);background:var(--panel-raised)}.status-name-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.88rem;font-weight:600;overflow:hidden}.status-icon{width:18px;height:18px;color:var(--text-muted);flex-shrink:0}.status-icon-chip{border-radius:var(--radius-sm);background:#fff;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.status-icon-chip img{object-fit:contain;width:auto;max-width:22px;height:auto;max-height:18px;display:block}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot--up{background:var(--status-ready);box-shadow:0 0 0 3px #3ddc8426}.status-dot--booting{background:var(--status-provisioning);animation:1.8s ease-in-out infinite status-pulse;box-shadow:0 0 0 3px #f0a93c2e}.status-dot--down{background:var(--status-error);box-shadow:0 0 0 3px #f0654b2e}.status-dot--unknown{background:var(--text-muted)}@keyframes status-pulse{0%,to{box-shadow:0 0 0 3px #f0a93c2e}50%{box-shadow:0 0 0 6px #f0a93c0d}}@media (prefers-reduced-motion:reduce){.status-dot--booting{animation:none}}.status-last-checked{color:var(--text-faint);margin-top:var(--space-3);font-size:.72rem}.resource-detail-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:var(--space-4);z-index:100;background:#05080c99;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.resource-detail{background:var(--panel-raised);border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:100%;max-width:420px;max-height:min(80vh,560px);padding:var(--space-6);box-shadow:var(--shadow-lg);overflow-y:auto}.resource-detail-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.resource-detail-header .status-icon-chip{width:34px;height:34px}.resource-detail-header .status-icon-chip img{max-width:25px;max-height:21px}.resource-detail-header .status-icon{width:22px;height:22px}.resource-detail-heading{flex:1;min-width:0}.resource-detail-name{font-size:var(--text-md);letter-spacing:-.01em;font-weight:600}.resource-detail-status{color:var(--text-muted);align-items:center;gap:.4rem;margin-top:.2rem;font-size:.8rem;display:flex}.resource-detail-close{border:1px solid var(--panel-border);border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.resource-detail-close:hover{color:var(--text);border-color:var(--border-strong)}.resource-detail-close svg{width:15px;height:15px}.resource-detail-fields{margin:0}.resource-detail-field{justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--panel-border);padding:.6rem 0;display:flex}.resource-detail-field:last-child{border-bottom:none}.resource-detail-field dt{color:var(--text-faint);flex-shrink:0;font-size:.78rem}.resource-detail-field dd{min-width:0;font-family:var(--font-mono);align-items:center;gap:.5rem;margin:0;font-size:.85rem;display:flex}.resource-detail-field dd span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.resource-detail-live-note{font-family:var(--font-mono);color:var(--status-provisioning);margin:var(--space-4) 0 0;font-size:.78rem;line-height:1.6}.resource-detail-note{color:var(--text-faint);margin:var(--space-4) 0 0;padding-top:var(--space-4);border-top:1px solid var(--panel-border);font-size:.8rem;line-height:1.6}.resource-detail-fade-enter-active,.resource-detail-fade-leave-active{transition:opacity var(--duration-base) var(--ease)}.resource-detail-fade-enter-active .resource-detail,.resource-detail-fade-leave-active .resource-detail{transition:transform var(--duration-base) var(--ease), opacity var(--duration-base) var(--ease)}.resource-detail-fade-enter-from,.resource-detail-fade-leave-to{opacity:0}.resource-detail-fade-enter-from .resource-detail,.resource-detail-fade-leave-to .resource-detail{opacity:0;transform:translateY(6px)scale(.98)}@media (prefers-reduced-motion:reduce){.resource-detail-fade-enter-from .resource-detail,.resource-detail-fade-leave-to .resource-detail{transform:none}}@media (width<=640px){.resource-detail-backdrop{align-items:flex-end;padding:0}.resource-detail{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:none;max-height:85vh;padding-bottom:var(--space-8);border-bottom:none}.resource-detail-fade-enter-from .resource-detail,.resource-detail-fade-leave-to .resource-detail{transform:translateY(16px)}}.copy-btn{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), background var(--duration-base) var(--ease);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:4px;line-height:0;display:inline-flex}.copy-btn svg{width:14px;height:14px}.copy-btn:hover{color:var(--text);border-color:var(--panel-border);background:var(--panel-raised)}.copy-btn.copied{color:var(--status-ready)}.session-actions{max-width:840px;margin:0 auto}.session-actions-title{margin:0 0 var(--space-2);font-size:.95rem;font-weight:600}.action-row{align-items:center;column-gap:var(--space-8);padding:var(--space-5) 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.action-row+.action-row{border-top:1px solid var(--panel-border)}.action-row-info{min-width:0}.action-row-title{margin:0 0 .25rem;font-size:.92rem;font-weight:600}.action-row-desc{color:var(--text-faint);max-width:46ch;margin:0;font-size:.82rem;line-height:1.5}.action-row-control{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.5rem;display:flex}.action-row-meta{color:var(--text-faint);text-align:right;white-space:nowrap;margin:0;font-size:.76rem}.extend-controls{align-items:center;gap:var(--space-3);display:flex}.btn-auto{width:auto;min-width:220px;padding-left:var(--space-6);padding-right:var(--space-6)}@media (width<=720px){.action-row{row-gap:var(--space-4);grid-template-columns:1fr}.action-row-desc{max-width:none}.action-row-control{align-items:stretch}.action-row-meta{text-align:left}.extend-controls{flex-direction:column;align-items:stretch}.action-row .btn-auto{width:100%;min-width:0}}.metric-row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.metric-tile{background:var(--bg-elevated);border:1px solid var(--panel-border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5)}.metric-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:.72rem;font-weight:600}.metric-value{font-size:var(--text-2xl);font-weight:600;font-family:var(--font-mono);letter-spacing:-.02em;margin-top:.3rem}.metric-value.tone-success{color:var(--status-ready)}.metric-value.tone-warning{color:var(--status-provisioning)}.metric-value.tone-danger{color:var(--status-error)}.metric-value.tone-info{color:var(--status-info)}.metric-value.tone-neutral{color:var(--text-muted)}.empty-state{color:var(--text-faint);font-size:var(--text-sm);padding:var(--space-6) 0;text-align:center}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=720px){.header{padding:.75rem var(--space-4);flex-wrap:wrap}.header-nav{order:3;justify-content:flex-start;width:100%;overflow-x:auto}.brand-tag{display:none}main{padding:var(--space-5) var(--space-3)}.session-summary{flex-direction:column;align-items:stretch}.session-timer{text-align:left}}@media (width<=480px){.card{padding:var(--space-5);border-radius:0}.running-layout{padding:0 .25rem}.connection-row{grid-template-columns:1fr auto;grid-template-areas:"k copy""v v";row-gap:.15rem}.connection-row .k{grid-area:k}.connection-row .v{grid-area:v}.connection-row .copy-btn{grid-area:copy}}
