:root{color:#172033;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f6f8fb}button,input,select{font:inherit}button{border:1px solid #ced7e5;border-radius:8px;padding:.64rem .9rem;color:#26344e;background:#fff;cursor:pointer;font-weight:600}button:hover{border-color:#2369dd;color:#174a9d}button:disabled{cursor:wait;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #94c1ff;outline-offset:2px}input,select{width:100%;border:1px solid #cbd5e1;border-radius:8px;color:#172033;background:#fff;padding:.68rem .75rem}label{display:grid;gap:7px;color:#44536d;font-size:.88rem;font-weight:650}h1,h2,h3,p{margin-top:0}h1{margin-bottom:7px;font-size:clamp(1.75rem,3vw,2.2rem);letter-spacing:-.035em}h2{font-size:1.08rem;margin-bottom:9px}p{color:#5d6b81;line-height:1.55}.eyebrow{margin-bottom:7px;color:#2369dd;font-size:.7rem;font-weight:800;letter-spacing:.15em}.primary-button{border-color:#2369dd;background:#2369dd;color:#fff}.primary-button:hover{border-color:#174a9d;background:#174a9d;color:#fff}.quiet-button,.link-button{background:transparent}.link-button{border:0;padding:0;color:#2369dd}.loading-message,.form-message{min-height:1.5rem;color:#43628e}.error-message{border:1px solid #f3b7bd;border-radius:8px;padding:.75rem .9rem;color:#aa2332;background:#fff3f4}.public-portal,.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.public-portal{background:linear-gradient(140deg,#edf4ff,#f7f9fc 55%,#e9effa)}.portal-card,.auth-card{width:min(470px,100%);border:1px solid #d9e1ed;border-radius:16px;background:#fff;box-shadow:0 18px 50px #1d3d711a;padding:clamp(26px,6vw,44px);text-align:center}.portal-card form,.auth-card{display:grid;gap:15px}.portal-card form{margin-top:25px;text-align:left}.portal-logo{width:96px;height:96px;object-fit:contain;border-radius:18px;background:#fff}.operator-link{margin:18px 0 0;font-size:.88rem}.operator-link a{color:#2369dd}.auth-card{text-align:left}.auth-card>img{width:54px;height:54px;object-fit:contain;border-radius:11px}.auth-actions{display:flex;justify-content:flex-end;margin-top:-4px}.app-shell{min-height:100vh}.app-header{height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px max(20px,calc((100vw - 1440px)/2));border-bottom:1px solid #dde5ef;background:#fff}.brand-button{display:flex;align-items:center;gap:10px;border:0;padding:0;text-align:left}.brand-button img{width:38px;height:38px;object-fit:contain;border-radius:9px}.brand-button span{display:grid;gap:1px}.brand-button small{color:#68758a;font-size:.72rem;font-weight:500}.app-frame{display:grid;grid-template-columns:210px minmax(0,1fr);max-width:1440px;min-height:calc(100vh - 68px);margin:0 auto}.side-nav{display:grid;align-content:start;gap:4px;padding:24px 14px;border-right:1px solid #dde5ef;background:#fbfcfe}.side-nav button{border:0;border-radius:7px;padding:.66rem .75rem;text-align:left;background:transparent}.side-nav button.active{color:#174a9d;background:#e8f0ff}.page-content{width:min(1120px,100%);padding:clamp(24px,4vw,46px)}.page-heading{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading p{margin-bottom:0}.summary-grid,.chart-grid,.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.summary-grid{margin-bottom:16px}.summary-grid article,.server-card,.metric-chart,.table-card,.form-card,.detail-card,.logs-card,.empty-state{border:1px solid #dde5ef;border-radius:11px;background:#fff;box-shadow:0 2px 6px #1f304b08}.summary-grid article{display:grid;gap:5px;padding:17px}.summary-grid span,.summary-grid small{color:#68758a}.summary-grid strong{font-size:1.6rem;letter-spacing:-.04em}.server-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px;margin-bottom:16px}.server-card h2,.server-card p{margin-bottom:0}.server-card time{color:#68758a;font-size:.82rem;white-space:nowrap}.chart-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-chart{padding:16px}.metric-chart>div{display:flex;align-items:baseline;justify-content:space-between}.metric-chart p{margin-bottom:0;font-size:.88rem}.metric-chart strong{font-size:1.2rem}.metric-chart svg{display:block;height:85px;width:100%;margin-top:12px;overflow:visible}.metric-chart-grid{fill:none;stroke:#e8edf5;stroke-width:1}.metric-chart-line{fill:none;stroke:#2369dd;stroke-linejoin:round;stroke-linecap:round;stroke-width:3;vector-effect:non-scaling-stroke}.search-label{margin-bottom:7px}.search-input{max-width:430px;margin-bottom:18px}.table-card{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{padding:.9rem 1rem;border-bottom:1px solid #e8edf5;text-align:left;vertical-align:middle}th{color:#68758a;font-size:.76rem;letter-spacing:.045em;text-transform:uppercase}td small{display:block;margin-top:3px;color:#748197}.status-badge{display:inline-block;border-radius:999px;padding:.25rem .5rem;color:#596679;background:#eaf0f7;font-size:.74rem;font-weight:800;text-transform:uppercase}.status-badge.active{color:#126c47;background:#def7e9}.status-badge.suspended{color:#925811;background:#fff0d5}.status-badge.failed{color:#aa2332;background:#ffe4e6}.empty-row{padding:1rem}.empty-state{padding:30px;text-align:center}.empty-state p{margin-bottom:18px}.form-card{padding:clamp(20px,4vw,30px)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.checkbox-label{display:flex;align-items:center;gap:9px;margin:20px 0}.checkbox-label input{width:auto}.form-actions{display:flex;justify-content:flex-end;gap:10px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-card{padding:22px}.detail-card p{margin-bottom:16px}dl{margin:0}dl>div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:9px 0;border-top:1px solid #e8edf5}dt{color:#68758a}dd{margin:0}.button-stack{display:grid;gap:10px}.mono,pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.logs-card{margin-top:16px;padding:20px}.logs-card>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.logs-card pre{max-height:360px;overflow:auto;padding:14px;color:#253653;background:#f5f7fa;white-space:pre-wrap;font-size:.81rem}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:820px){.app-frame{grid-template-columns:1fr}.side-nav{grid-template-columns:repeat(3,1fr);gap:6px;padding:10px;border-right:0;border-bottom:1px solid #dde5ef}.side-nav button{padding:.55rem .3rem;text-align:center;font-size:.82rem}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid,.detail-grid{grid-template-columns:1fr}.server-card{align-items:start;flex-direction:column}.server-card time{white-space:normal}}@media(max-width:560px){.app-header{padding:10px 16px}.page-content{padding:24px 16px}.page-heading{flex-direction:column}.page-heading .primary-button{width:100%}.form-grid,.summary-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}.table-card{margin:0 -16px;border-radius:0;border-left:0;border-right:0}th,td{padding:.8rem .65rem}.portal-card,.auth-card{padding:28px 22px}}.portal-split,.auth-split{min-height:100vh;height:100dvh;display:grid;grid-template-columns:minmax(280px,.82fr) minmax(360px,1.18fr);overflow:hidden;background:#f4f7fb}.portal-form-pane,.auth-form-pane{display:grid;place-items:center;align-content:center;min-width:0;min-height:0;padding:clamp(16px,3vw,32px);overflow:hidden;background:#fbfcfe}.portal-form-inner,.auth-form-inner{width:min(420px,100%)}.portal-split .portal-card,.auth-split .auth-card{width:min(390px,100%);margin:0 auto;padding:22px;border:1px solid #e0e6ef;border-radius:14px;background:#fff;box-shadow:0 14px 38px #1d3d7114;text-align:left}.portal-split .portal-logo{width:48px;height:48px;margin-bottom:12px;border-radius:11px}.auth-split .auth-card>img{width:48px;height:48px;margin-bottom:12px;border-radius:11px}.portal-split .portal-card h1,.auth-split .auth-card h1{font-size:clamp(1.5rem,2.6vw,1.85rem)}.portal-split label,.auth-split label{gap:5px;font-size:.8rem}.portal-split .portal-form{margin-top:4px;gap:8px}.portal-split .portal-form input,.auth-split .auth-card input{padding:.52rem .65rem;font-size:.88rem}.portal-split .portal-form button,.auth-split .auth-card button{padding:.56rem .78rem;font-size:.88rem}.portal-split .form-message,.auth-split .form-message{min-height:1rem;margin:9px 0 0;font-size:.82rem}.portal-split .operator-link{margin-top:10px;font-size:.8rem}.portal-info-panel,.auth-info-panel{position:relative;display:flex;min-width:0;min-height:0;height:100%;flex-direction:column;justify-content:center;overflow:hidden;padding:clamp(26px,4vw,56px);color:#fff;background:linear-gradient(145deg,#3269eb,#2458d6 55%,#1843b4)}.portal-info-panel:before,.auth-info-panel:before{position:absolute;top:-170px;right:-130px;width:460px;height:460px;border:1px solid rgba(255,255,255,.16);border-radius:50%;content:""}.portal-info-panel:after,.auth-info-panel:after{position:absolute;right:-130px;bottom:-210px;width:520px;height:520px;border:1px solid rgba(255,255,255,.12);border-radius:50%;content:""}.info-panel-glow{position:absolute;inset:20% 10% auto auto;width:260px;height:260px;border-radius:50%;background:#7eb5ff29;filter:blur(12px)}.portal-info-panel>*,.auth-info-panel>*{position:relative;z-index:1}.light-eyebrow{color:#d4e2ff}.portal-info-panel h2,.auth-info-panel h2{max-width:560px;margin-bottom:12px;color:#fff;font-size:clamp(1.8rem,3.2vw,2.8rem);line-height:1.08;letter-spacing:-.05em}.info-panel-copy{max-width:440px;margin-bottom:22px;color:#e0eaff}.portal-visual,.auth-visual{width:min(520px,100%);margin-top:12px;padding:14px;border:1px solid rgba(255,255,255,.55);border-radius:15px;background:#fffffff0;box-shadow:0 20px 36px #0c2d8438;color:#34445f}.visual-toolbar,.visual-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.78rem;font-weight:700}.visual-status{border-radius:999px;padding:4px 8px;color:#16724d;background:#ddf6e9;font-size:.67rem}.visual-chart{display:flex;align-items:end;gap:12px;height:108px;margin:12px 4px;padding:10px 12px 0;border-bottom:1px solid #dfe7f1;background:repeating-linear-gradient(to bottom,transparent 0,transparent 28px,#edf1f6 29px)}.chart-column{flex:1;min-width:14px;border-radius:6px 6px 0 0;background:linear-gradient(to top,#3269eb,#83a8ff)}.chart-column-one{height:48%}.chart-column-two{height:67%}.chart-column-three{height:54%}.chart-column-four{height:78%}.chart-column-five{height:64%}.chart-column-six{height:88%}.visual-dashboard{margin:12px 4px;padding:10px;border:1px solid #e2e8f1;border-radius:10px;background:#f8faff}.visual-summary{display:flex;gap:8px}.visual-summary span{width:64px;height:8px;border-radius:999px;background:#cad9f8}.visual-summary span:nth-child(2){width:44px;background:#d9e9df}.visual-summary span:nth-child(3){width:52px;background:#f4dfb7}.visual-dashboard .visual-chart{height:78px;margin:10px 0 6px;padding:6px 8px 0}.visual-dashboard .visual-chart i{flex:1;display:block;min-width:10px;border-radius:4px 4px 0 0;background:#5a87ee}.visual-dashboard .visual-chart i:nth-child(1){height:46%}.visual-dashboard .visual-chart i:nth-child(2){height:64%}.visual-dashboard .visual-chart i:nth-child(3){height:54%}.visual-dashboard .visual-chart i:nth-child(4){height:76%}.visual-dashboard .visual-chart i:nth-child(5){height:60%}.visual-dashboard .visual-chart i:nth-child(6){height:84%}.visual-line{width:42%;height:5px;border-radius:999px;background:#d0dcf6}.visual-footer{color:#6f7e94;font-weight:500}.visual-footer strong{color:#263b66;font-size:.76rem}.auth-info-panel h2{max-width:520px}.auth-info-panel .info-panel-copy{max-width:420px}.auth-split .auth-card{display:block}.auth-split .auth-card>label{margin-top:14px}.auth-split .auth-card>label:first-of-type{margin-top:22px}.auth-split .auth-actions{margin-top:8px}.auth-split .auth-actions button{width:100%}.auth-split .auth-card>.primary-button{width:100%;margin-top:8px}@media(max-width:760px){.portal-split,.auth-split{grid-template-columns:1fr;height:auto;min-height:100dvh;overflow:visible}.portal-info-panel,.auth-info-panel{min-height:150px;height:auto;padding:26px 24px}.portal-info-panel h2,.auth-info-panel h2{max-width:420px;font-size:1.85rem}.info-panel-copy{margin-bottom:0}.portal-visual,.auth-visual{display:none}.portal-form-pane,.auth-form-pane{padding:28px 18px 34px;overflow:visible}.portal-split .portal-card,.auth-split .auth-card{border:0;box-shadow:none;padding:0;background:transparent}}@media(max-width:420px){.portal-info-panel,.auth-info-panel{min-height:132px;padding:22px 20px}.portal-info-panel h2,.auth-info-panel h2{font-size:1.6rem}}.portal-split,.auth-split{isolation:isolate;background:radial-gradient(circle at 12% 18%,#edf4ff 0,transparent 34%),#f4f7fb}.portal-form-pane,.auth-form-pane{background:radial-gradient(circle at 14% 15%,rgba(224,236,255,.62),transparent 28%),#fbfcfe}.portal-form-inner,.auth-form-inner{max-width:420px}.portal-split .portal-card,.auth-split .auth-card{border-color:#dfe7f2;box-shadow:0 22px 55px #213f6f1a,0 2px 7px #213f6f0a}.portal-split .portal-logo,.auth-split .auth-card>img{display:block;object-fit:contain;padding:5px;border:1px solid #e3ebf6;background:#f7faff}.portal-split input,.auth-split input{border-color:#d4deeb;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.portal-split input:hover,.auth-split input:hover{border-color:#adc4e4;background:#fcfdff}.portal-split input:focus,.auth-split input:focus{border-color:#4c80e9;box-shadow:0 0 0 4px #4c80e91f;outline:0}.portal-split .primary-button,.auth-split .primary-button{box-shadow:0 7px 16px #2369dd33;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.portal-split .primary-button:hover,.auth-split .primary-button:hover{box-shadow:0 10px 20px #2369dd42;transform:translateY(-1px)}.portal-info-panel,.auth-info-panel{background:linear-gradient(145deg,#3d75ed,#2860df,#1b47bd)}.portal-info-panel h2,.auth-info-panel h2{font-weight:780;text-wrap:balance}.portal-info-panel .eyebrow,.auth-info-panel .eyebrow{margin-bottom:10px}.portal-visual,.auth-visual{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:760px){.portal-form-pane,.auth-form-pane{background:#fbfcfe}.portal-split .portal-card,.auth-split .auth-card{width:min(420px,100%)}}.tenant-page{display:grid;gap:18px}.page-content:has(.tenant-page){width:min(1240px,100%)}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.muted{color:#7a879b;font-weight:500}.pill{display:inline-flex;align-items:center;gap:5px;margin-left:8px;border-radius:999px;padding:.18rem .55rem;color:#33476b;background:#eaf0f8;font-size:.72rem;font-weight:750}.pill-danger{color:#a3202f;background:#ffe4e7}.pill-warn{color:#8a5310;background:#fff0d6}.success-message{border:1px solid #b8e6cd;border-radius:9px;padding:.7rem .9rem;color:#0f6b43;background:#effbf4}.field-hint,.field-error{font-size:.78rem}.field-hint{color:#748197}.field-error{color:#b42332}input[aria-invalid=true]{border-color:#e7838f;box-shadow:0 0 0 3px #e7838f26}.tenant-skeleton{display:grid;gap:16px}.tenant-skeleton div{height:150px;border-radius:18px;background:linear-gradient(90deg,#edf1f7 25%,#f7f9fc,#edf1f7 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}.tenant-skeleton div:nth-child(2){height:96px}.tenant-skeleton div:nth-child(3){height:320px}@keyframes shimmer{to{background-position:-200% 0}}.tenant-hero{position:relative;overflow:hidden;border-radius:20px;padding:22px clamp(20px,3vw,32px) 24px;color:#fff;isolation:isolate;background:radial-gradient(900px 300px at 85% -20%,rgba(123,173,255,.45),transparent 60%),linear-gradient(135deg,#0f1f4b,#173a8f 48%,#2563eb);box-shadow:0 22px 48px #10266447}.tenant-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:linear-gradient(120deg,transparent 20%,#000 70%);mask-image:linear-gradient(120deg,transparent 20%,#000 70%)}.tenant-hero.hero-failed{background:radial-gradient(900px 300px at 85% -20%,rgba(255,140,150,.35),transparent 60%),linear-gradient(135deg,#3b0f1c,#7a1a2e,#b4233c)}.tenant-hero.hero-suspended{background:radial-gradient(900px 300px at 85% -20%,rgba(255,205,120,.35),transparent 60%),linear-gradient(135deg,#2b1f0c,#6b4a12 55%,#a86d0f)}.hero-back{border:0;padding:0;margin-bottom:14px;color:#c9d8ff;background:transparent;font-size:.84rem}.hero-back:hover{color:#fff}.hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}.hero-identity{display:flex;align-items:center;gap:16px;min-width:0}.hero-avatar{flex:none;display:grid;place-items:center;width:62px;height:62px;border-radius:17px;font-size:1.35rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(145deg,#ffffff47,#ffffff14);border:1px solid rgba(255,255,255,.32);box-shadow:inset 0 1px #ffffff4d}.hero-eyebrow{margin:0 0 4px;color:#a9c3ff;font-size:.68rem;font-weight:800;letter-spacing:.18em}.tenant-hero h1{margin:0;color:#fff;font-size:clamp(1.7rem,3.2vw,2.4rem);letter-spacing:-.04em;line-height:1.1}.hero-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0 0;color:#d5e1ff;font-size:.9rem}.hero-meta a{color:#fff;font-weight:650;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4)}.hero-meta a:hover{border-color:#fff}.hero-status{display:grid;justify-items:end;gap:6px}.hero-status small{color:#bcd0ff;font-size:.76rem}.live-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:.42rem .85rem;font-size:.8rem;font-weight:800;letter-spacing:.02em;text-transform:capitalize;color:#fff;background:#ffffff24;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.live-dot{width:9px;height:9px;border-radius:50%;background:#9ca3af}.pill-active .live-dot{background:#34d399;box-shadow:0 0 #34d399b3;animation:pulse 2s infinite}.pill-busy .live-dot{background:#fbbf24;animation:pulse-amber 1.2s infinite}.pill-failed .live-dot{background:#fb7185}.pill-suspended .live-dot{background:#fbbf24}@keyframes pulse{70%{box-shadow:0 0 0 9px #34d39900}to{box-shadow:0 0 #34d39900}}@keyframes pulse-amber{0%,to{opacity:1}50%{opacity:.35}}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hero-button{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.45);border-radius:10px;padding:.6rem 1rem;color:#0f2a6b;background:#fff;font-weight:750;font-size:.88rem;text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.hero-button:hover:not(:disabled){color:#0f2a6b;border-color:#fff;transform:translateY(-1px);box-shadow:0 8px 18px #0000002e}.hero-button-quiet{color:#fff;background:#ffffff1a}.hero-button-quiet:hover:not(:disabled){color:#fff;background:#fff3}.hero-button:disabled{cursor:not-allowed;opacity:.5}.health-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.health-tile{position:relative;display:grid;gap:4px;overflow:hidden;border:1px solid #dfe6f0;border-radius:14px;padding:16px 16px 14px;background:#fff;box-shadow:0 2px 8px #182c520a}.health-tile:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd5e1}.health-tile.tone-ok:after{background:#10b981}.health-tile.tone-warn:after{background:#f59e0b}.health-tile.tone-bad:after{background:#ef4444}.health-tile.tone-busy:after{background:#3b82f6}.tile-label{display:flex;align-items:center;gap:7px;color:#66748b;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.tile-dot{width:8px;height:8px;border-radius:50%;background:#cbd5e1}.tone-ok .tile-dot{background:#10b981}.tone-warn .tile-dot{background:#f59e0b}.tone-bad .tile-dot{background:#ef4444}.tone-busy .tile-dot{background:#3b82f6;animation:pulse-amber 1.2s infinite}.health-tile strong{color:#122038;font-size:1.35rem;letter-spacing:-.03em;text-transform:capitalize}.health-tile strong.mono{text-transform:none;font-size:1.15rem}.health-tile small{color:#7a879b;font-size:.8rem}.provision-tracker{border:1px solid #cfe0ff;border-radius:16px;padding:20px 22px;background:linear-gradient(180deg,#f4f8ff,#fff 60%)}.provision-tracker.is-failed{border-color:#f6c2c8;background:linear-gradient(180deg,#fff5f6,#fff 60%)}.provision-tracker header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.provision-tracker h2{margin:0;font-size:1.1rem}.tracker-percent{color:#1d4ed8;font-size:1.8rem;letter-spacing:-.04em}.is-failed .tracker-percent{color:#b42332}.tracker-bar{height:8px;margin:14px 0 16px;overflow:hidden;border-radius:999px;background:#e3ebf8}.tracker-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3b82f6,#6366f1);transition:width .6s ease}.is-running .tracker-bar span{background-size:30px 30px;background-image:linear-gradient(135deg,rgba(255,255,255,.25) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.25) 50%,rgba(255,255,255,.25) 75%,transparent 75%),linear-gradient(90deg,#3b82f6,#6366f1);animation:stripes 1s linear infinite}.is-failed .tracker-bar span{background:#ef4444}@keyframes stripes{to{background-position:30px 0,0 0}}.tracker-steps{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin:0;padding:0;list-style:none}.tracker-steps li{display:flex;align-items:center;gap:8px;border:1px solid #e3e9f2;border-radius:10px;padding:7px 9px;color:#7a879b;background:#fff;font-size:.8rem;font-weight:650}.step-dot{flex:none;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;color:#7a879b;background:#eef2f7;font-size:.68rem;font-weight:800}.step-done{color:#0f5132!important;border-color:#c7ecd9!important}.step-done .step-dot{color:#fff;background:#10b981}.step-current{color:#1e3a8a!important;border-color:#93b4fb!important;box-shadow:0 0 0 3px #3b82f61f}.step-current .step-dot{color:#fff;background:#3b82f6;animation:pulse-amber 1.2s infinite}.step-failed{color:#9f1c2c!important;border-color:#f3a9b3!important}.step-failed .step-dot{color:#fff;background:#ef4444}.tracker-failure{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;border-radius:10px;padding:12px 14px;background:#fff0f2}.tracker-failure p{margin:0;color:#7f1d2b}.workspace-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid #dfe6f0}.workspace-tabs button{position:relative;flex:none;border:0;border-radius:0;padding:.75rem 1rem;color:#5b6a82;background:transparent;font-weight:700}.workspace-tabs button:after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:transparent}.workspace-tabs button.active{color:#1d4ed8}.workspace-tabs button.active:after{background:#2563eb}.tab-dot{display:inline-block;width:7px;height:7px;margin-left:6px;border-radius:50%;background:#f59e0b;vertical-align:middle;animation:pulse-amber 1.2s infinite}.workspace-panel{display:grid;gap:14px;border:1px solid #dfe6f0;border-radius:16px;padding:clamp(16px,2.4vw,24px);background:#fff;box-shadow:0 2px 8px #182c520a}.workspace-panel h2{margin:0}.panel-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.toolbar-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.toolbar-controls select,.toolbar-controls input{width:auto;padding:.5rem .6rem;font-size:.86rem}.toolbar-controls button{padding:.5rem .8rem;font-size:.86rem}.panel-hint{margin:2px 0 0;color:#6b7a91;font-size:.84rem}.panel-hint code,.workspace-panel code{border-radius:5px;padding:.08rem .35rem;color:#24406e;background:#eef3fb;font-size:.78rem;margin-right:4px}.segmented{display:inline-flex;border:1px solid #d6deea;border-radius:10px;padding:3px;background:#f3f6fb}.segmented button{border:0;border-radius:7px;padding:.45rem .9rem;color:#52627b;background:transparent;font-size:.86rem}.segmented button.active{color:#10275c;background:#fff;box-shadow:0 1px 3px #10275c26}.toggle{display:inline-flex;align-items:center;gap:6px;color:#3d4d68;font-size:.84rem}.toggle input{width:auto}.log-filter{min-width:180px}.terminal{margin:0;min-height:320px;max-height:560px;overflow:auto;border-radius:12px;padding:16px 18px;color:#cbd5e1;background:#0b1220;font-size:.8rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;box-shadow:inset 0 0 0 1px #1e293b}.terminal .log-error{color:#fda4af}.terminal .log-warn{color:#fcd34d}.terminal .log-info{color:#7dd3fc}.terminal .log-muted{color:#64748b}.code-editor{display:grid;grid-template-columns:52px 1fr;height:560px;overflow:hidden;border-radius:12px;background:#0b1220;box-shadow:inset 0 0 0 1px #1e293b}.code-gutter{overflow:hidden;padding:14px 0;color:#475569;background:#0e1628;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8rem;line-height:21px;text-align:right;-webkit-user-select:none;user-select:none}.code-gutter span{display:block;height:21px;padding-right:10px}.code-gutter .locked-line{font-size:.7rem}.code-editor textarea{width:100%;height:100%;resize:none;border:0;border-radius:0;padding:14px 16px;color:#e2e8f0;background:transparent;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8rem;line-height:21px;white-space:pre;overflow:auto;-moz-tab-size:2;tab-size:2}.code-editor textarea:focus{outline:none;box-shadow:inset 0 0 0 2px #3b82f6}.branding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.branding-card{display:grid;gap:10px;align-content:start;border:1px solid #e3e9f2;border-radius:14px;padding:16px;background:#fbfcfe}.branding-group{margin:0}.branding-preview{display:grid;place-items:center;height:120px;border-radius:10px;color:#8a96aa;font-size:.82rem;background:repeating-conic-gradient(#eef2f7,#eef2f7 25%,#fff 0%,#fff 50%) 50% / 18px 18px;border:1px dashed #d4ddea}.branding-preview img{max-width:80%;max-height:96px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(16,39,92,.15))}.branding-card label code{margin-left:4px}.inset-table{box-shadow:none}.inline-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:8px 12px;border-top:1px dashed #dfe6f0;padding-top:14px}.inline-form small{grid-column:1 / -1}.prefixed-input{display:flex;align-items:stretch;overflow:hidden;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.prefixed-input>span{display:flex;align-items:center;padding:0 .7rem;color:#52627b;background:#f1f5fa;border-right:1px solid #cbd5e1;font-size:.85rem;white-space:nowrap}.prefixed-input input{border:0;border-radius:0}.access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.access-card{display:grid;gap:12px;align-content:start;border:1px solid #e3e9f2;border-radius:14px;padding:20px;background:#fbfcfe}.access-card p{margin:0}.access-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:#fff;background:linear-gradient(145deg,#2563eb,#4f46e5);font-size:1.15rem;box-shadow:0 8px 16px #2563eb40}.token-card .access-icon{background:linear-gradient(145deg,#0ea5e9,#2563eb)}.token-facts{margin:0;padding-left:18px;color:#5b6a82;font-size:.86rem;line-height:1.7}.button-row{display:flex;flex-wrap:wrap;gap:8px}.ssh-card{grid-row:span 2}.key-list,.ban-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.key-list li,.ban-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e3e9f2;border-radius:9px;padding:8px 10px}.transfer-form{margin-top:18px;grid-template-columns:1fr 1fr auto}.admin-page{display:grid;gap:18px}.admin-page h1{margin:0}.admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;border-top:1px solid #e3e9f2;padding-top:18px}.wide-field{display:grid;gap:7px;grid-column:1 / -1}.wide-field code{overflow-wrap:anywhere}.check-row{display:flex!important;align-items:center;gap:9px;border:1px solid #e3e9f2;border-radius:10px;padding:12px}.check-row input{width:auto}.jail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.security-note{border:1px solid #f5cf79;border-radius:10px;padding:12px 14px;color:#704b09;background:#fffbeb}.overview-grid{grid-template-columns:1.2fr 1fr;background:transparent;border:0;box-shadow:none;padding:0}.overview-card{display:grid;gap:12px;align-content:start;border:1px solid #dfe6f0;border-radius:16px;padding:20px;background:#fff;box-shadow:0 2px 8px #182c520a}.overview-card.shortcuts{grid-column:1 / -1}.facts>div{grid-template-columns:120px 1fr}.facts dd a{color:#1d4ed8}.mini-activity{display:grid;gap:10px;margin:0;padding:0;list-style:none}.mini-activity li{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:10px;font-size:.9rem}.mini-activity small{color:#7a879b}.mini-dot{width:10px;height:10px;border-radius:50%;background:#10b981}.mini-dot.tone-failed{background:#ef4444}.mini-dot.tone-running{background:#f59e0b;animation:pulse-amber 1.2s infinite}.shortcut-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.shortcut-grid button{display:grid;gap:3px;justify-items:start;border-radius:12px;padding:14px;text-align:left;background:linear-gradient(180deg,#fff,#f6f9ff)}.shortcut-grid button small{color:#7a879b;font-weight:500}.shortcut-grid button:hover{border-color:#93b4fb;box-shadow:0 6px 16px #2563eb1a}.timeline{position:relative;display:grid;gap:4px;margin:0;padding:0;list-style:none}.timeline-item{position:relative;display:grid;grid-template-columns:22px 1fr;gap:12px;padding:10px 0}.timeline-item:not(:last-child):before{content:"";position:absolute;left:10px;top:28px;bottom:-8px;width:2px;background:#e5ebf3}.timeline-dot{width:16px;height:16px;margin:3px 0 0 3px;border-radius:50%;border:3px solid #fff;background:#10b981;box-shadow:0 0 0 2px #bbf0d6}.tone-failed .timeline-dot{background:#ef4444;box-shadow:0 0 0 2px #fecdd3}.tone-running .timeline-dot{background:#f59e0b;box-shadow:0 0 0 2px #fde68a;animation:pulse-amber 1.2s infinite}.timeline-head{display:flex;align-items:center;gap:10px}.timeline-body p{margin:4px 0;color:#4a5872;font-size:.88rem}.timeline-body small{color:#7a879b}.status-badge.running,.status-badge.requested{color:#1e40af;background:#dbeafe}.status-badge.completed{color:#126c47;background:#def7e9}.toast-stack{position:fixed;right:20px;bottom:20px;z-index:50;display:grid;gap:10px;width:min(380px,calc(100vw - 40px))}.toast{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-radius:12px;padding:12px 14px;color:#fff;background:#1e293b;box-shadow:0 14px 30px #0f172a4d;font-size:.9rem;animation:toast-in .25s ease}.toast-ok{background:#065f46}.toast-error{background:#9f1239}.toast-info{background:#1e3a8a}.toast button{border:0;padding:0 4px;color:#fff;background:transparent;font-size:1.1rem;line-height:1}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media(max-width:1000px){.health-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.shortcut-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.overview-grid,.access-grid,.branding-grid{grid-template-columns:1fr}.hero-status{justify-items:start}.hero-row{flex-direction:column}.inline-form,.transfer-form,.admin-form,.jail-grid{grid-template-columns:1fr}.tracker-failure{flex-direction:column;align-items:stretch}.code-editor{height:440px;grid-template-columns:40px 1fr}}@media(max-width:520px){.health-tiles,.shortcut-grid{grid-template-columns:1fr}.hero-actions .hero-button{flex:1 1 calc(50% - 10px);justify-content:center}}@media(prefers-reduced-motion:reduce){.live-dot,.tile-dot,.step-dot,.mini-dot,.timeline-dot,.tab-dot,.tracker-bar span,.tenant-skeleton div{animation:none!important}}.portal-split .portal-card h1{margin:0 0 4px}.portal-subtitle{margin:0 0 14px;color:#64748b;font-size:.86rem}.password-field{position:relative;display:block}.password-field input{width:100%;padding-right:4.2rem!important}.password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);border:0;border-radius:6px;padding:.25rem .5rem!important;color:#2563eb;background:#eef4ff;font-size:.76rem!important;font-weight:700}.password-toggle:hover{color:#1d4ed8;background:#e0ebff}.portal-split .portal-form .primary-button{margin-top:8px}.ird-state{align-self:flex-start;border-radius:999px;padding:.35rem .8rem;font-size:.78rem;font-weight:800;letter-spacing:.02em}.ird-state.on{color:#065f46;background:#d1fae5;box-shadow:inset 0 0 0 1px #6ee7b7}.ird-state.off{color:#475569;background:#eef2f7}.ird-lock{border:1px solid #a7f3d0;border-radius:12px;padding:12px 14px;color:#064e3b;background:#ecfdf5;font-size:.9rem}.ird-warning{border:1px solid #fcd34d;border-radius:12px;padding:12px 14px;color:#78350f;background:#fffbeb;font-size:.9rem}.ird-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.ird-form .ird-mode,.ird-form .button-row{grid-column:1 / -1}.ird-mode{display:grid;gap:8px;margin:0;border:0;padding:0}.ird-mode legend{margin-bottom:7px;color:#44536d;font-size:.88rem;font-weight:650}.ird-form label code,.ird-mode code{margin-left:4px}.ird-enable{display:grid;gap:8px;border:1px solid #fecdd3;border-radius:14px;padding:16px;background:#fff7f8}.ird-enable h3{margin:0;color:#9f1239}.ird-enable p{margin:0}.danger-button{border-color:#be123c;color:#fff;background:#be123c}.danger-button:hover:not(:disabled){border-color:#9f1239;color:#fff;background:#9f1239}.danger-button:disabled{cursor:not-allowed}.hero-ird{border-radius:6px;padding:0 .45rem;color:#064e3b;background:#a7f3d0;font-size:.74rem;font-weight:800;letter-spacing:.06em}@media(max-width:760px){.ird-form{grid-template-columns:1fr}}
