@import"https://fonts.googleapis.com/css2?family=Archivo+Black&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{font-family:Space Grotesk,Trebuchet MS,sans-serif;color:#25323a;background:#edf4f6;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #25323a;--muted: #627780;--paper: #fafcfd;--paper-strong: #ffffff;--panel: rgba(255, 255, 255, .82);--shell: #234154;--shell-soft: #355f76;--accent: #8fcfda;--accent-strong: #4f92ac;--accent-soft: #e0f0f4;--accent-faint: rgba(143, 207, 218, .18);--line: rgba(37, 50, 58, .12);--shadow: 0 24px 80px rgba(37, 50, 58, .12)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 10% 8%,rgba(143,207,218,.22),transparent 28rem),radial-gradient(circle at 88% 16%,rgba(79,146,172,.14),transparent 24rem),linear-gradient(180deg,#eef6f8,#e4edf1 48%,#fafcfd)}button,input,textarea,select{font:inherit}button{cursor:pointer}input,textarea,select{width:100%;font-size:16px;line-height:1.2;border:1px solid var(--line);border-radius:16px;min-height:3.2rem;padding:.85rem .95rem;background:#ffffffd6;color:var(--ink);outline:none}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 1.2rem) calc(50% - .12rem),calc(100% - .85rem) calc(50% - .12rem);background-size:.35rem .35rem,.35rem .35rem;background-repeat:no-repeat;padding-right:2.4rem}label{display:grid;gap:.45rem;color:var(--muted);font-size:.86rem;font-weight:700}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.04em}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,480px);align-items:stretch;gap:2rem;padding:2rem}.hero-panel{min-height:calc(100vh - 4rem);border-radius:44px;padding:clamp(2rem,7vw,6rem);display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(140deg,#234154f5,#234154bd),repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0 10px,transparent 10px 20px),linear-gradient(135deg,#3c728c,#1f3b4b);color:#eef5fa;box-shadow:var(--shadow);overflow:hidden;position:relative}.hero-panel:before{content:"";position:absolute;width:22rem;height:22rem;border:3rem solid rgba(166,224,233,.16);border-radius:50%;right:-5rem;top:-5rem}.hero-panel h1{max-width:820px;font-family:Archivo Black,Impact,sans-serif;font-size:clamp(3rem,8vw,7.8rem);line-height:.86;text-transform:uppercase;position:relative}.hero-panel p:last-child{max-width:680px;margin-top:1.4rem;color:#eef5fac7;font-size:1.05rem;position:relative}.login-card{align-self:center;display:grid;gap:1rem;padding:2rem;border-radius:34px;background:#ffffffdb;border:1px solid rgba(34,50,59,.08);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.form-number{width:3.2rem;height:3.2rem;display:grid;place-items:center;border-radius:50%;background:var(--accent-strong);color:var(--paper-strong);font-weight:800}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr);position:relative}.sidebar{position:sticky;top:0;height:100vh;padding:1.3rem;display:flex;flex-direction:column;gap:1.4rem;background:var(--shell);color:#edf4f7;z-index:20}.sidebar-scroll{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:1.4rem;overflow-y:auto;overscroll-behavior:contain;padding-right:.2rem;padding-bottom:1rem;scrollbar-width:none}.sidebar-scroll::-webkit-scrollbar{display:none}.brand-mark{display:flex;align-items:center;gap:.9rem;padding:.8rem}.brand-mark>div{min-width:0}.brand-mark small,.nav-item span,.kicker{color:#b9d9e2;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:800}.brand-logo-image{display:block;width:min(100%,182px);height:auto;border-radius:18px}.nav-stack,.nav-group{display:grid;gap:.6rem}.nav-divider{display:flex;align-items:center;gap:.7rem;margin:.35rem 0 .15rem;color:#b9d9e2;font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.nav-divider:before,.nav-divider:after{content:"";flex:1 1 auto;height:1px;background:#edf4f724}.nav-item{display:block;border:1px solid rgba(237,244,247,.1);border-radius:22px;padding:1rem;text-align:left;color:#edf4f7;background:#ffffff08;font-weight:800;text-decoration:none;transition:transform .18s ease,background .18s ease}.nav-item span{display:block;margin-bottom:.25rem}.nav-item:hover,.nav-item.active{transform:translate(4px);background:#edf4f7;color:var(--shell)}.nav-desktop-only{display:block}.main-stage{padding:clamp(1rem,3vw,2rem)}.topbar-heading{display:grid;gap:.45rem;min-width:0}.topbar-controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.title-row{display:flex;align-items:flex-start;min-width:0}.title-link{border:0;padding:0;background:transparent;color:inherit;text-align:left}.topbar{min-height:130px;display:flex;align-items:flex-start}.topbar h1{font-family:Archivo Black,Impact,sans-serif;font-size:clamp(3rem,7vw,6rem);line-height:.9;text-transform:uppercase;min-width:0}.menu-toggle,.icon-button{width:3.2rem;height:3.2rem;flex:0 0 3.2rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:999px;background:#ffffffb8;color:var(--ink);box-shadow:0 18px 48px #22323b0f}.menu-toggle svg,.icon-button svg,.card-icon-button svg{width:1.15rem;height:1.15rem}.topbar-mobile-only,.app-footbar{display:none}.footbar-button{width:3.3rem;height:3.3rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(34,50,59,.12);border-radius:999px;background:#f8fbfce6;color:var(--ink);box-shadow:0 18px 48px #22323b1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.footbar-button svg{width:1.15rem;height:1.15rem}.status-note,.muted-copy,.subtle-copy{color:var(--muted);font-size:.88rem}.stack-section{display:grid;gap:1rem}.panel,.metric-card,.system-card,.empty-state{border:1px solid var(--line);border-radius:28px;background:var(--panel);box-shadow:0 12px 36px #22323b14}.panel{padding:1.2rem}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.panel-heading-actions{align-items:center}.panel-heading h2{font-size:clamp(1.5rem,2vw,2.3rem)}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-grid{display:grid;gap:1rem;align-items:start}.metric-card{min-height:170px;display:flex;flex-direction:column;justify-content:space-between;padding:1.2rem;background:var(--shell);color:#edf4f7}.metric-card.ocean{background:linear-gradient(145deg,#355f76,#254555)}.metric-card.slate{background:linear-gradient(145deg,#447894,#315a70)}.metric-card.ice{background:linear-gradient(145deg,#69adbf,#4b8699)}.metric-card span{color:#edf4f7bd;font-size:.9rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.metric-card strong{font-family:Archivo Black,Impact,sans-serif;font-size:clamp(2.5rem,4vw,3.4rem);line-height:.94}.systems-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.system-card{padding:1.2rem;display:grid;gap:1rem;grid-template-rows:auto auto minmax(3.25rem,auto) 1fr;min-width:0;overflow:hidden}.system-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.system-card-header>div{min-width:0}.system-card h3{font-size:1.6rem;overflow-wrap:anywhere}.system-url{margin-top:.35rem;color:var(--muted);font-size:.92rem;word-break:break-word}.system-status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.5rem .85rem;font-size:.82rem;font-weight:700;white-space:nowrap;flex:0 0 auto}.system-status-pill.active{background:#60b0802e;color:#1e6541}.system-status-pill.inactive{background:#b38a1b29;color:#8f6c1c}.system-meta-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:flex-start}.system-chip{display:inline-flex;align-items:center;border-radius:999px;padding:.45rem .75rem;background:var(--accent-faint);color:var(--ink);font-size:.84rem;font-weight:600}.system-action-row,.card-actions,.dialog-actions{display:flex;align-items:center;gap:.75rem}.system-action-row{align-self:start}.card-actions{margin-left:auto}.runs-panel{background:#4f92ac14;border-radius:1rem;padding:1rem;align-self:stretch}.runs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.runs-list{display:flex;flex-direction:column;gap:.55rem}.run-history-item{display:flex;align-items:center;gap:.75rem;width:100%;border:1px solid rgba(79,146,172,.14);border-radius:16px;background:#ffffffbd;padding:.7rem .85rem;text-align:left}.run-history-item:hover{background:#ffffffeb}.backup-history-dialog{width:min(100%,42rem)}.backup-history-list{display:grid;gap:.65rem;margin-top:.25rem}.backup-history-dialog .dialog-actions{margin-top:1rem;justify-content:flex-end}.backup-history-row{display:flex;align-items:center;gap:.75rem}.backup-history-row .run-history-item{flex:1 1 auto}.run-status-icon{width:2rem;height:2rem;flex:0 0 2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.run-status-icon.success{background:#8aa8922e;color:#3d6650}.run-status-icon.failed{background:#ba726529;color:#9e5145}.run-status-icon.running{background:#4f92ac2e;color:var(--accent-strong)}.run-status-icon.queued{background:#b38a1b29;color:#8f6c1c;font-weight:800}.run-history-date{min-width:0;font-weight:600;color:var(--ink)}.backup-progress-page{display:grid;gap:1rem}.backup-progress-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.backup-progress-header .panel-heading{margin-bottom:0}.backup-progress-meter{height:1.1rem;overflow:hidden;border-radius:999px;background:#4f92ac24;border:1px solid rgba(79,146,172,.16)}.backup-progress-meter.small{height:.65rem}.backup-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-strong),var(--accent));transition:width .22s ease}.backup-progress-line{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-weight:700}.backup-progress-line strong{color:var(--ink)}.backup-progress-line.compact{font-size:.86rem}.backup-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.backup-progress-grid>div{display:grid;gap:.3rem;min-height:5.5rem;padding:1rem;border-radius:18px;background:#4f92ac14}.queue-list{display:grid;gap:.75rem}.queue-row{display:flex;align-items:center;gap:.9rem;padding:.9rem;border:1px solid rgba(79,146,172,.14);border-radius:20px;background:#4f92ac14}.queue-row.active{background:#8fcfda2e}.queue-row-main{display:grid;flex:1 1 auto;min-width:0;gap:.45rem}.queue-row-title{display:flex;justify-content:space-between;gap:1rem}.queue-row-title span{color:var(--muted);font-weight:700}.backup-run-detail{display:grid;gap:1rem}.backup-run-detail .dialog-actions{justify-content:flex-end}.backup-run-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.backup-run-detail-grid>div{display:grid;gap:.3rem}.backup-run-detail-label{color:var(--muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.backup-run-log{display:grid;gap:.5rem}.backup-run-log pre{margin:0;padding:.95rem 1rem;border-radius:18px;border:1px solid rgba(79,146,172,.14);background:#4f92ac14;color:var(--ink);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.84rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.card-icon-button{width:2.9rem;height:2.9rem;flex:0 0 2.9rem;border-radius:999px;border:1px solid var(--line);background:#ffffffc2;color:var(--ink)}.card-icon-button.info{color:var(--accent-strong)}.card-icon-button.destructive{color:#a63c35}.card-icon-button:disabled{opacity:.5;cursor:not-allowed}.primary-button,.ghost-button,.alert button{min-height:3rem;border-radius:999px;border:1px solid transparent;padding:.7rem 1.1rem;font-weight:700}.primary-button{background:var(--accent-strong);color:var(--paper-strong)}.primary-button:disabled{opacity:.65;cursor:wait}.ghost-button{background:#ffffffc2;color:var(--ink);border-color:var(--line)}.empty-state{padding:2rem;display:grid;gap:.5rem;text-align:center;place-items:center}.empty-state strong{font-size:1.1rem}.alert,.loading-stripe{border-radius:24px;padding:1rem 1.2rem;border:1px solid var(--line)}.alert{display:grid;gap:.45rem;background:#ffffffd1}.alert strong{font-size:1rem}.alert button{width:fit-content;background:var(--accent-soft);color:var(--ink)}.loading-stripe{background:#8fcfda3d;color:var(--ink);font-weight:600}.stack-form{display:grid;gap:.9rem}.dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.form-error{color:#a63c35;font-weight:600;line-height:1.4}.modal-backdrop,.sidebar-backdrop{position:fixed;inset:0}.modal-backdrop{background:#111a2361;display:grid;place-items:center;padding:1rem;z-index:40}.dialog-panel{width:min(100%,48rem);padding:1.5rem;border:1px solid var(--line);border-radius:32px;background:#ffffffe6;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.screen-message{min-height:100vh;display:grid;place-items:center;color:var(--muted)}@media(max-width:1024px){.summary-grid{grid-template-columns:1fr}}@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(280px,82vw);transform:translate(-105%);transition:transform .18s ease;height:100dvh;box-shadow:var(--shadow)}.sidebar.mobile-open{transform:translate(0)}.main-stage{padding-bottom:2rem}.sidebar-backdrop{z-index:15;background:#111a232e}.topbar-mobile-only{display:inline-flex}.nav-desktop-only{display:none}}@media(max-width:720px){.login-page{grid-template-columns:1fr;gap:1rem;padding:1rem}.hero-panel{min-height:18rem;padding:1.5rem;border-radius:28px}.login-card{padding:1.5rem;border-radius:28px}.topbar{min-height:auto;margin-bottom:.5rem}.main-stage{padding-bottom:calc(5.6rem + env(safe-area-inset-bottom,0px))}.topbar-controls{display:none}.app-footbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:.75rem .9rem calc(.75rem + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,#eff4f600,#eff4f6e6 45%,#eff4f6fa)}.topbar h1{font-size:clamp(2.5rem,15vw,4.5rem)}.systems-grid,.dialog-grid{grid-template-columns:1fr}.system-card-header,.system-action-row,.dialog-actions{flex-direction:column;align-items:stretch}.card-actions{margin-left:0}.backup-run-detail-grid{grid-template-columns:1fr}.backup-progress-header,.backup-progress-line{flex-direction:column;align-items:stretch}.backup-progress-grid{grid-template-columns:1fr}.backup-history-row{align-items:stretch}}
