/* S3 WiFiCom light presentation; interaction selectors and geometry retained. */
:root{--dvault-ink:var(--s3-ink,#37363b);--dvault-muted:var(--s3-muted,#69666c);--dvault-soft:var(--s3-paper,#f5f5f1);--dvault-panel:var(--s3-surface,#fdfdfb);--dvault-line:var(--s3-line,#deded8);--dvault-green:var(--s3-accent,#803c53);--dvault-lime:var(--s3-accent,#803c53);--dvault-dark:var(--s3-ink,#37363b);--dvault-shadow:0 14px 38px rgba(25, 52, 31, .08)}
body:has(.dvault-shell){background:var(--dvault-soft);color:var(--dvault-ink)}
body:has(.dvault-shell) .site-footer{color:var(--s3-muted,#69666c);background:var(--dvault-soft);border-color:var(--dvault-line)}
body:has(.dvault-shell--signed-in) .vault-auth-header{ display: none; }
body:has(.dvault-shell--signed-in) .site-main{ width: auto; margin: 0; padding: 0; }
body:has(.dvault-shell--signed-in) .site-footer{ margin-left: 0; }
.dvault-shell{min-height:100vh}
.dvault-sidebar{position:fixed;z-index:30;inset:0 auto 0 0;display:flex;flex-direction:column;width:272px;padding:26px 18px 20px;color:var(--s3-accent,#803c53);background:var(--dvault-dark);box-shadow:none}
.dvault-shell--guest .dvault-sidebar{ position: absolute; }
.dvault-brand{display:flex;align-items:center;gap:11px;padding:0 8px 28px}
.dvault-brand-mark{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:12px;color:var(--s3-ink,#37363b);background:var(--dvault-lime);font-size:20px;font-weight:500}
.dvault-brand strong{display:block;font-size:17px;letter-spacing:-.02em}
.dvault-brand small{display:block;margin-top:1px;color:var(--s3-muted,#69666c);font-size:11px}
.dvault-sidebar-close{display:none;margin-left:auto;border:0;color:var(--s3-accent,#803c53);background:transparent;font-size:28px;line-height:1;cursor:pointer}
.dvault-nav{min-height:0;overflow:auto;padding:0 0 14px;scrollbar-color:var(--s3-success,#496a4a) transparent}
.dvault-nav a{display:flex;align-items:center;min-height:42px;margin:3px 0;border-radius:2px;padding:10px 11px;color:var(--s3-accent,#803c53);font-size:13px;font-weight:500;text-decoration:none}
.dvault-nav a:hover{color:var(--s3-ink,#37363b);background:var(--s3-wash,rgba(238,228,230,.65))}
.dvault-nav a.is-active{color:var(--s3-ink,#37363b);background:var(--s3-surface,#fdfdfb);box-shadow:none}
.dvault-sidebar-footer{margin-top:auto;padding-top:15px;border-top:1px solid var(--s3-line,#deded8)}
.dvault-sidebar-footer strong{display:block;overflow:hidden;padding:3px 8px 10px;color:var(--s3-accent,#803c53);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.dvault-sidebar-footer a{display:block;padding:8px;color:var(--s3-accent,#803c53);font-size:12px;font-weight:500;text-decoration:none}
.dvault-sidebar-footer a:hover{color:var(--s3-ink,#37363b)}
.dvault-content{min-height:100vh;margin-left:272px;padding:48px clamp(24px, 5vw, 64px) 60px}
.dvault-shell--guest .dvault-content{ width: min(1180px, calc(100% - 304px)); margin-left: 304px; padding-left: 0; padding-right: 0; }
.dvault-mobile-header{display:none}
.dvault-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;width:min(1180px, 100%);margin:0 auto 26px}
.dvault-kicker{margin:0 0 8px;color:var(--s3-muted,#69666c);font-size:10px;font-weight:500;letter-spacing:.15em;text-transform:uppercase}
.dvault-heading h1{margin:0;color:var(--dvault-ink);font:500 clamp(32px, 4vw, 46px)/1.05 var(--s3-sans);letter-spacing:-.045em}
.dvault-heading > div > p:last-child{max-width:680px;margin:12px 0 0;color:var(--dvault-muted);font:15px/1.5 var(--s3-sans)}
.dvault-outline-button, .dvault-text-link{color:var(--dvault-green);font:500 12px/1.2 var(--s3-sans);text-decoration:none}
.dvault-outline-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--s3-line,#deded8);border-radius:2px;padding:10px 15px;background:var(--s3-wash,rgba(238,228,230,.65));white-space:nowrap}
.dvault-outline-button:hover{border-color:var(--dvault-green);background:var(--s3-surface,#fdfdfb)}
.dvault-text-link:hover{text-decoration:underline}
.dvault-overview, .dvault-workspace-section, .dvault-workspace-card{width:min(1180px, 100%);margin:0 auto 18px;border:1px solid var(--dvault-line);border-radius:2px;background:var(--dvault-panel);box-shadow:none}
.dvault-overview, .dvault-workspace-section, .dvault-workspace-card{scroll-margin-top:24px}
.dvault-overview{padding:24px}
.dvault-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.dvault-section-heading h2{margin:0;color:var(--dvault-ink);font:500 21px/1.2 var(--s3-sans);letter-spacing:-.025em}
.dvault-section-heading p:not(.dvault-kicker){margin:6px 0 0;color:var(--dvault-muted);font:13px/1.5 var(--s3-sans)}
.dvault-status-pill{display:inline-flex;align-items:center;border-radius:2px;padding:6px 10px;color:var(--s3-accent,#803c53);background:var(--s3-accent-soft,#eee4e6);font:500 10px/1 var(--s3-sans);white-space:nowrap}
.dvault-stat-grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:12px;margin-top:22px}
.dvault-stat-grid article{min-width:0;padding:17px;border:1px solid var(--dvault-line);border-radius:2px;background:linear-gradient(145deg, var(--s3-surface,#fdfdfb), var(--s3-accent-soft,#eee4e6))}
.dvault-stat-grid span, .dvault-stat-grid small{display:block;color:var(--s3-muted,#69666c);font:11px/1.35 var(--s3-sans)}
.dvault-stat-grid strong{display:block;margin:7px 0 4px;color:var(--s3-ink,#37363b);font:500 25px/1 var(--s3-sans);letter-spacing:-.04em}
.dvault-workspace-section{padding:24px}
.dvault-workspace-section .device-deck{ width: 100%; max-width: none; margin: 22px 0 0 !important; }
.dvault-content .vault-layout{width:min(1180px, 100%);max-width:none;margin:0 auto 18px}
body:has(.dvault-shell) .dvault-content .vault-layout{display:grid !important;grid-template-columns:minmax(0, 1fr) minmax(300px, 370px);gap:22px}
body:has(.dvault-shell) .dvault-content .vault-intro{display:block !important;padding:0}
body:has(.dvault-shell) .dvault-content .vault-intro > p{display:block !important}
body:has(.dvault-shell) .dvault-content .vault-layout > .panel{margin:0 !important;border-color:var(--dvault-line);background:var(--dvault-panel);color:var(--dvault-ink)}
.dvault-workspace-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px;width:min(1180px, 100%);margin:0 auto}
.dvault-workspace-card{min-width:0;padding:22px}
.dvault-inline-status{min-height:28px;margin-top:19px;color:var(--s3-muted,#69666c);font:13px/1.5 var(--s3-sans)}
.dvault-inline-status.is-error{ color: var(--s3-danger,#a14f43); }
.dvault-history-list{margin-top:18px}
.dvault-history-row{display:grid;grid-template-columns:minmax(0, 1.2fr) minmax(90px, .8fr) minmax(100px, .8fr);gap:12px;padding:11px 0;border-bottom:1px solid var(--s3-line,#deded8);color:var(--s3-muted,#69666c);font:12px/1.35 var(--s3-sans)}
.dvault-history-row:last-child{border-bottom:0}
.dvault-history-row strong{display:block;color:var(--s3-ink,#37363b);font-size:12px}
.dvault-history-row small{display:block;margin-top:2px;color:var(--s3-muted,#69666c);font-size:10px}
.dvault-history-row span:last-child{text-align:right}
.dvault-empty, .dvault-muted-note{color:var(--s3-muted,#69666c);font:12px/1.5 var(--s3-sans)}
.dvault-storage-meter{display:flex;align-items:baseline;gap:8px;margin-top:20px;padding:16px;border-radius:2px;background:var(--s3-accent-soft,#eee4e6)}
.dvault-storage-meter strong{color:var(--dvault-green);font:500 25px/1 var(--s3-sans)}
.dvault-storage-meter span{color:var(--s3-muted,#69666c);font:12px/1.4 var(--s3-sans)}
.dvault-check-list{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none;color:var(--s3-muted,#69666c);font:12px/1.4 var(--s3-sans)}
.dvault-check-list li{display:flex;align-items:center;gap:8px}
.dvault-check-list li span{color:var(--s3-accent,#803c53);font-weight:500}
.dvault-help-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:19px}
.dvault-help-links a{color:var(--dvault-green);font:500 12px/1.4 var(--s3-sans);text-decoration:none}
.dvault-help-links a:hover{text-decoration:underline}
.dvault-device-page{ max-width: 860px; margin: 0 auto; }
.dvault-device-page h1{ margin: 0 0 8px; color: var(--dvault-ink); font: 800 clamp(30px, 4vw, 42px)/1.05 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.045em; }
.dvault-device-page > p:not(.dvault-kicker):not(.account-status){ color: var(--dvault-muted); font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
.dvault-device-list{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.dvault-device-card{ min-width: 0; padding: 17px; border: 1px solid var(--dvault-line); border-radius: 9px; background: linear-gradient(145deg, var(--s3-bright-surface,#fff), var(--s3-surface,#f8fbf8)); }
.dvault-device-card h2{ margin: 0 0 9px; color: var(--s3-ink,#26382b); font: 800 16px/1.2 Inter, ui-sans-serif, system-ui, sans-serif; }
.dvault-device-card p{ margin: 5px 0 0; color: var(--s3-muted,#68776d); font: 12px/1.4 Inter, ui-sans-serif, system-ui, sans-serif; }
.dvault-device-badge{ display: inline-flex; margin-top: 14px; border-radius: 99px; padding: 5px 8px; color: var(--s3-success,#3f6d30); background: var(--s3-success-soft,#e8f4d7); font: 800 10px/1 Inter, ui-sans-serif, system-ui, sans-serif; }
body:has(.dvault-shell) .dvault-workspace-section .device-window{ border-radius: 14px; }
body:has(.dvault-shell) .dvault-workspace-section .device-deck{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
body:has(.dvault-shell) .dvault-workspace-section .device-window:nth-child(n){ display: block; }
@media (max-width: 980px){.dvault-sidebar{width:260px;transform:translateX(-105%);transition:transform 180ms ease}
.dvault-sidebar.is-open{transform:translateX(0)}
.dvault-sidebar-close{display:block}
.dvault-content, .dvault-shell--guest .dvault-content{ width: auto; margin-left: 0; padding: 0 20px 48px; }
.dvault-mobile-header{position:sticky;z-index:10;top:0;display:flex;align-items:center;justify-content:space-between;height:58px;margin:0 -20px 28px;padding:9px 20px;border-bottom:1px solid var(--dvault-line);background:var(--s3-wash,rgba(238,228,230,.65));backdrop-filter:blur(12px)}
.dvault-mobile-header button, .dvault-mobile-header a{border:0;color:var(--dvault-green);background:transparent;font:500 13px/1.2 var(--s3-sans);text-decoration:none;cursor:pointer}
.dvault-mobile-header button span{margin-right:7px;font-size:20px}
.dvault-heading{align-items:flex-start;flex-direction:column;gap:18px}
body:has(.dvault-shell) .dvault-content .vault-layout{grid-template-columns:1fr}
.dvault-stat-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
}
@media (max-width: 620px){.dvault-content{padding:0 12px 38px}
.dvault-mobile-header{margin-right:-12px;margin-left:-12px;padding-right:12px;padding-left:12px}
.dvault-heading h1{font-size:34px}
.dvault-overview, .dvault-workspace-section, .dvault-workspace-card{padding:18px}
.dvault-section-heading{gap:12px}
.dvault-section-heading h2{font-size:19px}
.dvault-stat-grid, .dvault-workspace-grid{grid-template-columns:1fr}
.dvault-device-list{ grid-template-columns: 1fr; }
.dvault-history-row{grid-template-columns:1fr 1fr}
.dvault-history-row span:last-child{text-align:left}
body:has(.dvault-shell) .dvault-workspace-section .device-deck{ grid-template-columns: 1fr !important; }
}
@media (prefers-reduced-motion: reduce){.dvault-sidebar{transition:none}
}
