body{font:16px/1.65 system-ui,sans-serif;background:#f3f5f8;color:#192735;margin:0}main{max-width:850px;margin:40px auto;background:white;padding:32px;border-radius:16px}label{display:block;margin:12px 0}input,select,button{font:inherit;padding:8px;margin:4px;border:1px solid #9baabb;border-radius:6px}button{cursor:pointer;background:#153a5d;color:white}button:disabled{opacity:.5}.notice{padding:16px;background:#fff1cd;border-left:4px solid #ad7800}.device{padding:15px;border-bottom:1px solid #ccc}pre{white-space:pre-wrap;overflow-wrap:anywhere}a{overflow-wrap:anywhere}
.friend-page{min-height:100vh;background:radial-gradient(ellipse at top,#e4f0ff 0,transparent 65%),#f5f7fb;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1d2c46;padding:1px 16px 32px;box-sizing:border-box}
.friend-page .connect-card{max-width:580px;margin:32px auto;padding:30px;background:rgba(255,255,255,.95);border:1px solid #fff;border-radius:24px;box-shadow:0 14px 50px #244b8b12;box-sizing:border-box}
.connect-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px}.connect-brand{font-size:12px;font-weight:750;letter-spacing:.18em;color:#2360c1}.connect-platform{font-size:12px;padding:4px 10px;background:#eef4ff;border-radius:20px;color:#426798}
.friend-page h1{font-size:29px;line-height:1.3;letter-spacing:-.6px;margin:0 0 12px}.connect-intro{color:#62718a;margin:0 0 22px}.friend-page .notice{font-size:14px;padding:13px 15px;border:1px solid #d9e7fa;border-radius:12px;background:#f0f6ff;color:#36577c;margin:0 0 18px}
.friend-page .connect-primary{width:100%;margin:0;min-height:52px;padding:12px 16px;background:#2468df;color:white;border:0;border-radius:13px;font-weight:650;box-shadow:0 5px 15px #2468df24}.connect-primary:disabled{opacity:.48;cursor:default;box-shadow:none}.connect-message{font-size:13px;color:#64738b;min-height:20px;margin:12px 0 26px}
.steps-heading{border-top:1px solid #e8edf6;padding-top:24px;margin-bottom:16px}.steps-heading h2{font-size:20px;line-height:1.4;margin:0 0 4px}.steps-heading>span{font-size:12px;color:#78859a}.install-list{list-style:none;margin:0;padding:0}.install-list>li{display:flex;align-items:flex-start;gap:14px;padding:18px 12px;border-radius:14px;margin:0 -12px 3px;scroll-margin:30px}.step-number{flex:0 0 30px;height:30px;border-radius:50%;background:#edf3ff;color:#2865c4;display:grid;place-items:center;font-size:14px;font-weight:700}.install-list h3{font-size:17px;margin:0 0 6px}.install-list p{font-size:14px;line-height:1.8;margin:0;color:#52637c}.install-list strong{font-weight:650;color:#293d5e}.install-list p.step-hint{font-size:12px;color:#78869b;margin-top:8px}.install-list .current-step{background:#edf4ff;box-shadow:inset 0 0 0 1px #c9ddfc}.current-step .step-number{background:#2468df;color:white}
.connect-return{background:#f5f8fd;border:1px solid #e7edf6;border-radius:13px;padding:15px 17px;margin:20px 0}.connect-return strong{font-size:14px}.connect-return p{font-size:13px;color:#63738b;margin:4px 0 0}.connect-help{border-bottom:1px solid #e8edf6;padding:12px 0}.connect-help summary{cursor:pointer;font-size:14px;font-weight:600;color:#355480}.connect-help p{font-size:13px;color:#63738b;margin:9px 0}.connect-footnote{font-size:12px;color:#7c889b;margin:22px 0 0}.friend-page [hidden]{display:none!important}.friend-page button:focus-visible,.friend-page summary:focus-visible{outline:3px solid #79a8ff;outline-offset:3px}
@media(max-width:480px){.friend-page{padding:1px 10px 20px}.friend-page .connect-card{margin:12px auto;padding:24px 20px;border-radius:20px}.friend-page h1{font-size:25px}.connect-header{margin-bottom:22px}.install-list>li{gap:11px;padding:16px 10px;margin-left:-10px;margin-right:-10px}}
.friend-page select,.friend-page input:not([type=checkbox]) { box-sizing:border-box; width:100%; padding:13px 14px; margin:8px 0 16px; border:1px solid #cbdaf0; border-radius:12px; background:#f7faff; color:#183557; font:inherit; }
.friend-page input[type=checkbox] { width:auto; margin-right:8px; }
.friend-page label { display:block; line-height:1.6; }
.friend-page [hidden] { display:none !important; }
.owner-card .device { padding:16px 0; border-bottom:1px solid #dae5f5; }
.owner-card #link { overflow-wrap:anywhere; }
.friend-page .owner-card{max-width:1080px}.owner-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0 12px}.owner-summary>div{padding:18px;border:1px solid #d9e7fa;border-radius:16px;background:#f4f8ff}.owner-summary strong{display:block;font-size:30px;line-height:1.3;color:#2468df}.owner-summary span{font-size:13px;color:#617694}.device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.owner-card .device{padding:20px;border:1px solid #d9e7fa;border-radius:18px;background:#fafcff;min-width:0}.device h3{margin:0 0 10px;overflow-wrap:anywhere}.device p{font-size:14px;color:#62718a}.device .route-status{color:#234970;font-weight:600}.vpn-badge{display:inline-block;border-radius:20px;padding:4px 10px;font-size:12px;background:#eaf0f7;color:#53647c}.vpn-badge.connected{background:#e5f6f0;color:#127451}.vpn-badge.unknown,.vpn-badge.connecting{background:#fff0d9;color:#996000}.status-stale .vpn-badge{background:#edf0f5;color:#768296}.status-stale #freshness{color:#a9640f}.device-actions{display:flex;flex-wrap:wrap;gap:8px}.device-actions button{font-size:13px;margin:0;border:0;padding:10px 12px;border-radius:10px;background:#e8f0fc;color:#285caa}.device-actions .danger{background:#fff0f0;color:#b53d45}.invite-panel{margin:20px 0;padding:16px 20px;background:#f5f9ff;border:1px solid #d9e7fa;border-radius:16px}.invite-panel summary{cursor:pointer;font-weight:600;color:#295fb2}.activity-list{padding:0;list-style:none;max-height:430px;overflow:auto;border-top:1px solid #e3ebf7}.activity-list li{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:13px 4px;border-bottom:1px solid #e8eef7;font-size:13px;overflow-wrap:anywhere}.activity-list time{color:#7a8aa2}.step-hint{font-size:12px;color:#718098}@media(max-width:600px){.owner-summary{gap:7px}.owner-summary>div{padding:12px 9px}.owner-summary strong{font-size:25px}.owner-summary span{font-size:11px}.activity-list li{grid-template-columns:1fr;gap:3px}.device-grid{grid-template-columns:1fr}}

.care-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.care-item{background:rgba(223,238,255,.45);border:1px solid #d7e6f7;border-radius:16px;padding:16px}.care-item p{font-size:13px;color:#52637b;line-height:1.65}.check-facts{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,1.3fr);gap:14px;font-size:14px}.check-facts dt{color:#65758b}.check-facts dd{margin:0;overflow-wrap:anywhere}.expiry-warning{color:#9b5c08!important;font-weight:600}.care-link{overflow-wrap:anywhere}

/* Owner dashboard: isolated from recipient setup/check pages. */
.admin-page{--ink:#172943;--muted:#79869c;--line:#e5eaf2;--blue:#316ce9;background:radial-gradient(ellipse at 90% 0,#e9f1ff 0,transparent 40%),#f5f7fb;color:var(--ink);font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,sans-serif}
.admin-page *{box-sizing:border-box}.admin-page [hidden]{display:none!important}.admin-page button,.admin-page input,.admin-page select{font:inherit;margin:0}.admin-page button{border:0;cursor:pointer;transition:background .15s,box-shadow .15s}.admin-page button:disabled{cursor:not-allowed;opacity:.45}.admin-page :focus-visible{outline:3px solid #8ab4fc;outline-offset:3px}.admin-page a{color:inherit;text-decoration:none}.admin-page .icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.admin-layout{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;height:100vh;background:#ffffffd9;border-right:1px solid var(--line);padding:34px 19px 24px;display:flex;flex-direction:column;backdrop-filter:blur(20px)}.brand{display:flex;align-items:center;gap:10px;margin:0 7px 48px;font-size:24px;font-weight:750;letter-spacing:-.7px}.brand-icon{display:grid;place-items:center;width:39px;height:39px;background:linear-gradient(135deg,#4c8cff,#2759d6);color:white;border-radius:12px;box-shadow:0 5px 13px #2964d72b}.brand-icon .icon{width:26px;height:26px}.brand-light{font-weight:450}.brand small{display:block;font-size:7px;letter-spacing:1.35px;font-weight:650;color:#8a97ac;margin-top:0}.nav-label{font-size:10px;letter-spacing:1.6px;color:#9aa5b8;margin:0 15px 12px}.admin-sidebar nav{display:flex;flex-direction:column;gap:6px}.admin-sidebar nav a{display:flex;align-items:center;gap:13px;padding:12px 15px;border-radius:11px;color:#77849b;font-size:13px;font-weight:550}.admin-sidebar nav a:hover{background:#f2f6fd}.admin-sidebar nav .nav-active{background:#eaf1ff;color:#3268d8}.sidebar-owner{margin-top:auto;padding:17px 4px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px}.owner-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#e8effb;color:#5d7aac;font-weight:650}.sidebar-owner strong{display:block;font-size:12px;font-weight:600}.sidebar-owner small{display:block;font-size:10px;color:var(--muted)}
.admin-page .admin-main{width:100%;max-width:1530px;margin:0 auto;padding:36px 40px 20px;background:transparent;border-radius:0;min-width:0}.dashboard-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2px;color:#7992b9;margin:0 0 6px}.admin-page h1{font-size:28px;font-weight:650;letter-spacing:-.6px;margin:0;line-height:1.4}.header-subtitle{font-size:13px;color:var(--muted);margin:6px 0 0}.header-actions{display:flex;align-items:center;gap:10px}.admin-page .primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;background:var(--blue);border:1px solid #2762df;color:white;font-weight:550;font-size:13px;border-radius:10px;box-shadow:0 4px 8px #326ce919}.admin-page .primary-button:hover{background:#265ccd}.admin-page .icon-button{display:inline-flex;align-items:center;justify-content:center;flex:none;width:37px;height:37px;padding:8px;border:1px solid var(--line);border-radius:9px;background:white;color:#8490a4}.admin-page .icon-button:hover{color:var(--blue);background:#f1f6ff}.sync-line{display:flex;justify-content:space-between;align-items:center;margin:20px 0 20px;color:#929db0;font-size:11px}.local-label{letter-spacing:1.2px;font-size:9px}#freshness:before{content:"";display:inline-block;vertical-align:middle;width:6px;height:6px;border-radius:50%;background:#58b692;margin-right:8px}.status-stale #freshness{color:#a76d19}.status-stale #freshness:before{background:#d4a95c}.alert-strip{padding:12px 16px;border:1px solid #efd9ac;background:#fff7e8;border-radius:10px;color:#9c6a17}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-card{position:relative;padding:22px 22px 20px;background:#ffffffed;border:1px solid #e6ecf6;border-radius:16px;box-shadow:0 4px 18px #34598b03;min-width:0}.metric-icon{position:absolute;right:19px;top:19px;width:33px;height:33px;display:grid;place-items:center;border-radius:10px}.blue{color:#407be6;background:#edf3ff}.cyan{color:#35a1b8;background:#eaf9fd}.amber{color:#d2a154;background:#fff8e9}.violet{color:#9976d8;background:#f3eefe}.metric-label{display:block;font-size:12px;color:#7f8b9f;padding-right:36px;white-space:nowrap}.metric-card>strong{display:block;font-size:32px;font-weight:600;line-height:1.3;margin:12px 0 8px;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.metric-card>small{font-size:11px;color:#96a0b2}.metric-card #usage-count{font-size:27px;line-height:1.55}
.dashboard-section{margin-top:28px;scroll-margin-top:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px}.admin-page h2{font-size:16px;font-weight:600;line-height:1.5;margin:0;letter-spacing:-.15px}.muted{font-size:11px;color:var(--muted)}.network-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.network-card{display:flex;align-items:center;gap:14px;background:#ffffffba;border:1px solid #e4eaf5;border-radius:14px;padding:19px 20px;min-width:0}.network-icon{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:13px;background:#f0f4fc;color:#7191c3}.network-icon .icon{width:23px;height:23px}.network-info{min-width:0;flex:1}.network-info h3{margin:0 0 3px;font-size:13px;font-weight:600;overflow-wrap:anywhere}.network-ip{font-size:11px;color:#8c9ab0;font-variant-numeric:tabular-nums}.network-meta{text-align:right;flex:none}.network-meta small{display:block;font-size:10px;color:#8b9ab0;margin-top:6px}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:6px;font-size:11px;font-weight:500;line-height:1.5;white-space:nowrap}.status-dot{width:5px;height:5px;display:inline-block;border-radius:50%;background:currentColor}.green-tone{background:#eaf7f1;color:#348368}.muted-tone{background:#f0f3f8;color:#8a96a9}.amber-tone{background:#fff5e3;color:#ae812f}.status-stale .status-chip{background:#eef0f4;color:#929aa8}
.table-panel{margin-top:27px;border:1px solid var(--line);border-radius:16px;background:white;overflow:hidden;box-shadow:0 4px 18px #34598b03;scroll-margin-top:20px}.table-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 23px 16px}.table-heading h2{display:flex;gap:8px;align-items:center;margin-bottom:3px}.count-tag{font-size:11px;font-weight:550;border:1px solid #dfe7f3;border-radius:6px;color:#8493a9;padding:1px 7px}.admin-page .search-field{display:flex;align-items:center;gap:7px;margin:0;background:#fafbfd;border:1px solid #e8edf5;border-radius:9px;padding:0 11px;color:#a4afbf}.search-field .icon{width:16px;height:16px}.admin-page .search-field input{background:none;border:0;outline:0;box-shadow:none;padding:10px 0;color:var(--ink);font-size:12px;width:192px}.admin-page input::placeholder{color:#a2acbc}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 23px 16px}.filter-tabs{display:flex;gap:3px;background:#f6f8fc;border:1px solid #edf0f6;border-radius:8px;padding:3px}.filter-tabs button{font-size:11px;padding:5px 11px;color:#94a0b3;background:none;border-radius:5px;white-space:nowrap}.filter-tabs button[aria-pressed=true]{background:white;color:#3e6bc0;box-shadow:0 1px 4px #35568016}.table-scroll{overflow-x:auto;max-width:100%;min-height:160px}.client-table{width:100%;border-collapse:collapse;text-align:left;min-width:795px}.client-table th{padding:12px 21px;background:#fafbfd;border-top:1px solid #edf1f7;border-bottom:1px solid #edf1f7;font-size:10px;font-weight:550;color:#94a0b3;white-space:nowrap}.client-table td{padding:17px 21px;border-bottom:1px solid #f0f3f8;vertical-align:middle}.client-table tr:last-child td{border-bottom:0}.person{display:flex;gap:11px;align-items:center;min-width:150px;max-width:245px}.device-avatar{display:grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid #e6ebf4;border-radius:10px;background:#f8fafe;color:#86a1c9}.device-avatar .icon{width:17px;height:17px}.person-name{min-width:0}.person-name strong{font-size:12px;font-weight:550;display:block;overflow-wrap:anywhere}.person-name small{display:block;font-size:10px;color:#98a4b6;margin-top:3px}.route-choice{display:flex;align-items:center;gap:5px;min-width:160px}.admin-page .route-choice select{font-size:11px;width:170px;max-width:185px;color:#5f7699;background:#f8faff;border:1px solid #e7edf7;padding:7px 8px;border-radius:7px}.route-choice .apply-route{height:29px;width:29px;padding:5px;color:#3678da;background:#edf4ff;border:0}.route-note,.row-subnote{display:block;font-size:10px;color:#a58b5e;margin-top:5px}.row-subnote{color:#9ba5b4}.route-note:empty{display:none}.usage-cell{font-size:11px;white-space:nowrap;color:#6e819e;font-variant-numeric:tabular-nums}.row-actions{display:flex;align-items:center;gap:7px}.admin-page .pause-button,.admin-page .resume-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px 11px;font-size:11px;white-space:nowrap;border:1px solid #e6ebf3;border-radius:8px;background:#fff;color:#8390a6;min-width:82px}.admin-page .pause-button:hover{background:#fff7e9;color:#ae8027;border-color:#f1d9ad}.admin-page .resume-button{background:#ecf3ff;border-color:#dce8ff;color:#3975dc}.row-actions .icon{width:14px;height:14px}.row-actions .icon-button{height:30px;width:29px;background:none;border-color:transparent}.table-note{display:flex;align-items:center;gap:8px;color:#9aa6b8;font-size:10px;padding:13px 22px;margin:0;background:#fcfdff;border-top:1px solid #edf1f7}.table-note .icon{width:13px;height:13px}.client-table .empty-state{padding:36px 20px;text-align:center;color:#92a0b4;font-size:12px}
.system-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.system-card{padding:18px 19px;border:1px solid #e6ebf4;border-radius:13px;background:#ffffffa6}.system-heading{display:flex;align-items:center;gap:8px;color:#7e90ad;font-size:11px;margin-bottom:12px}.system-heading .icon{width:16px;height:16px}.system-card>small{display:block;font-size:10px;color:#99a5b6;margin-top:8px}.quiet-details{margin-top:11px;font-size:11px;color:#8292a9}.quiet-details summary{cursor:pointer;padding:4px}.facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 20px;padding:18px 0}.fact span{font-size:11px;display:block;color:#98a3b5;margin-bottom:4px}.fact strong{display:block;font-size:12px;font-weight:500;color:#5c7191;overflow-wrap:anywhere}.history-panel{border:1px solid var(--line);background:#ffffff9e;border-radius:13px}.history-panel summary{padding:16px 20px;display:flex;justify-content:space-between;gap:15px;cursor:pointer;font-size:13px;font-weight:550;list-style:none}.history-panel summary>span:first-child{display:flex;gap:9px;align-items:center}.history-panel summary .icon{width:16px;height:16px;color:#91a0b5}.history-panel summary>span:last-child:after{content:"⌄";margin-left:12px}.event-list{max-height:370px;overflow:auto;list-style:none;padding:0 20px;margin:0}.event-list li{display:flex;gap:12px;align-items:center;border-top:1px solid #edf1f7;padding:14px 0}.event-list li>.icon{width:16px;height:16px;color:#9bb2d1}.event-list li>div{flex:1;min-width:0}.event-list strong{font-size:11px;display:block;font-weight:550;overflow-wrap:anywhere}.event-list span,.event-list time{font-size:10px;color:#929fb3}.event-list time{text-align:right;white-space:nowrap}.dashboard-footer{display:flex;justify-content:space-between;gap:15px;padding:26px 0 0;color:#a6b0c0;font-size:9px}.dashboard-footer>span:first-child{letter-spacing:2px}
.admin-page .admin-dialog{width:min(460px,calc(100% - 32px));padding:26px;border:1px solid #e1e9f5;border-radius:19px;color:var(--ink);box-shadow:0 25px 90px #1b356a33;max-height:88vh;overflow:auto}.admin-dialog::backdrop{background:#243e663b;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.dialog-heading .icon-button{border:0;background:#f5f8fd}.admin-dialog h2{font-size:18px;overflow-wrap:anywhere}.admin-dialog label{font-size:12px;color:#8190a6;margin:17px 0 5px}.admin-dialog input,.admin-dialog select{width:100%;border:1px solid #dfe7f3;border-radius:9px;padding:11px 12px;background:#fafcff;color:var(--ink);font-size:13px}.admin-page .full-width{width:100%;margin-top:20px}.dialog-hint{font-size:11px;color:#9aa6b8;margin:16px 0 0}.detail-actions{display:flex;flex-direction:column;gap:9px;border-top:1px solid #e8edf5;padding-top:17px}.admin-page .soft-button,.admin-page .danger-button{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:10px 12px;font-size:12px;background:#eef4ff;color:#5481c9}.detail-actions .icon{width:15px;height:15px}.admin-page .danger-button{background:#fff3f3;color:#c0767e;margin-top:7px}.share-link{padding:14px;background:#f5f8ff;border:1px solid #e1eafa;border-radius:9px;font-size:12px;overflow-wrap:anywhere;color:#5480c5}.admin-page .toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:30;width:max-content;max-width:calc(100% - 30px);padding:13px 21px;border:1px solid #d9e4f5;border-radius:11px;background:#173558;color:white;font-size:12px;box-shadow:0 8px 28px #1d385533}.is-busy .row-actions button,.is-busy .apply-route{opacity:.5;pointer-events:none}
@media(min-width:1500px){.admin-page .admin-main{padding-left:55px;padding-right:55px}.client-table td,.client-table th{padding-left:25px;padding-right:25px}}
@media(max-width:1180px){.admin-layout{grid-template-columns:185px minmax(0,1fr)}.admin-sidebar{padding:28px 13px}.brand{font-size:21px;gap:7px;margin-left:3px;margin-right:0}.brand-icon{width:33px;height:33px}.brand small{font-size:6px}.admin-page .admin-main{padding:30px 24px}.metric-card{padding:18px 16px}.metric-icon{right:12px;top:14px;width:27px;height:27px}.metric-icon .icon{width:17px;height:17px}.metric-label{font-size:11px;padding-right:27px}.network-card{padding:17px 15px;gap:10px}.network-icon{width:35px;height:35px}.network-info h3{font-size:12px}}
@media(max-width:900px){.admin-layout{grid-template-columns:74px minmax(0,1fr)}.admin-sidebar{padding:27px 12px}.brand{margin:0 6px 35px}.brand>span:last-child,.nav-label,.sidebar-owner,.admin-sidebar nav a{font-size:0}.admin-sidebar nav a{justify-content:center;padding:13px}.admin-sidebar nav a .icon{width:20px;height:20px}.admin-page .admin-main{padding:28px 21px}.metric-grid{gap:11px}.metric-label{font-size:10px;white-space:normal}.metric-card>strong{font-size:28px}.metric-card>small{font-size:10px}.metric-card #usage-count{font-size:22px}.network-icon{display:none}.network-meta .status-chip{font-size:10px}.system-card{padding:15px 12px}.system-card .status-chip{font-size:10px}.search-field input{max-width:160px}}
@media(max-width:650px){.admin-layout{display:block}.admin-sidebar{height:auto;position:static;border-right:0;border-bottom:1px solid var(--line);padding:15px 18px;flex-direction:row;align-items:center;justify-content:space-between}.brand{margin:0;font-size:22px}.brand>span:last-child{font-size:22px}.brand small,.nav-label,.sidebar-owner{display:none}.admin-sidebar nav{flex-direction:row;gap:0}.admin-sidebar nav a{padding:10px}.admin-sidebar nav a:nth-child(n+4){display:none}.admin-page .admin-main{padding:23px 16px 18px}.dashboard-header{gap:10px;align-items:center}.admin-page h1{font-size:22px}.eyebrow{font-size:8px;letter-spacing:1.4px}.header-subtitle{font-size:10px}.header-actions{gap:5px}.header-actions .primary-button{font-size:11px;padding:9px 11px;gap:5px}.header-actions .icon-button{width:31px;height:34px}.header-actions .icon{width:16px;height:16px}.local-label{display:none}.sync-line{margin:17px 0;font-size:10px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.metric-card{padding:17px}.metric-label{font-size:11px}.metric-card>strong{font-size:28px;margin-top:9px;margin-bottom:5px}.metric-card #usage-count{font-size:25px;line-height:1.45}.metric-icon{right:15px}.dashboard-section{margin-top:23px}.section-heading h2,.table-heading h2{font-size:15px}.section-heading .muted{font-size:10px}.network-cards{grid-template-columns:1fr;gap:9px}.network-icon{display:grid}.network-card{padding:15px}.network-info h3{font-size:12px}.network-meta .status-chip{font-size:11px}.table-panel{margin-top:23px}.table-heading{padding:17px 16px 12px;align-items:flex-start;flex-direction:column;gap:12px}.admin-page .search-field{width:100%}.admin-page .search-field input{max-width:none;width:100%}.table-toolbar{padding:0 16px 13px;align-items:flex-start;flex-direction:column;gap:5px}.filter-tabs{width:100%;justify-content:space-between}.filter-tabs button{font-size:10px;padding:5px 8px}.table-note{align-items:flex-start;font-size:9px;padding:12px 16px}.system-cards{grid-template-columns:1fr;gap:9px}.system-card{display:grid;grid-template-columns:1fr auto;padding:14px 16px;align-items:center}.system-heading{margin:0;font-size:11px}.system-card>.status-chip{justify-self:end;font-size:10px}.system-card>small{grid-column:1/-1;margin-top:6px}.facts-grid{gap:14px 12px}.history-panel summary{padding:15px;font-size:12px}.history-panel summary .muted{font-size:9px}.dashboard-footer{font-size:8px;padding-top:22px}.event-list time{font-size:9px;max-width:95px;white-space:normal}.admin-page .admin-dialog{padding:22px}.admin-dialog h2{font-size:17px}}
@media(prefers-reduced-motion:reduce){.admin-page *{scroll-behavior:auto!important;transition:none!important}}
.admin-page .pause-button{color:#657b9c;background:#f8faff;border-color:#dce5f2}.person-name strong{font-size:13px}.client-table th{color:#7b8ba4;font-size:11px}.admin-page .muted{color:#78879e}.header-subtitle{color:#78879e}

/* Owner source onboarding: compact, with only the current step expanded. */
.admin-page .section-tools{display:flex;align-items:center;gap:12px}
.admin-page .pending-networks{display:grid;gap:12px;margin-top:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.admin-page .pending-network{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px dashed #c9d8ec;border-radius:18px;background:#f7faff}
.admin-page .pending-network>div{flex:1}.admin-page .pending-network small,.admin-page .discovered-device small{display:block;color:#75839b;margin-top:4px;font-size:12px}
.admin-page .network-dialog{max-width:570px}.admin-page .network-dialog .status-chip{margin-bottom:12px}
.admin-page .network-dialog label{display:block;margin:15px 0 7px;font-weight:600}
.admin-page .network-dialog input,.admin-page .network-dialog select{width:100%;box-sizing:border-box}
.admin-page .setup-steps{display:grid;gap:20px;margin:15px 0 24px}.admin-page .setup-step{display:flex;gap:12px;line-height:1.7}
.admin-page .step-number{background:#e8f0ff;color:#3975dd;border-radius:50%;display:grid;place-items:center;flex:0 0 28px;height:28px;font-weight:700;font-size:13px}
.admin-page .setup-step>div{min-width:0;flex:1}.admin-page .setup-step p{font-size:13px;color:#66758e;margin:5px 0 10px}.admin-page .setup-step strong{font-size:14px}
.admin-page .guide-link{display:inline-block;color:#2764c4;text-decoration:none;font-size:13px;padding:6px 0}.admin-page .guide-link:hover{text-decoration:underline}
.admin-page .setup-notice{background:#f2f6fd;border:1px solid #dce6f6;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.75;color:#506581}
.admin-page .discovered-devices{margin-top:10px}.admin-page .discovered-device{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e5ebf4;padding:12px 0;align-items:center}
.admin-page .discovered-device strong{overflow-wrap:anywhere}.admin-page .discovered-device button{flex-shrink:0;font-size:12px}
.admin-page #network-content>.danger-button{margin-top:24px}.admin-page .source-docs{display:block;margin-top:15px}
.admin-page .remove-confirm{border:1px solid #f2d5d5;border-radius:12px;padding:12px;margin-top:20px}.admin-page .remove-confirm button{margin-right:8px}
@media(max-width:650px){.admin-page .section-tools>.muted{display:none}.admin-page .pending-networks{grid-template-columns:1fr}.admin-page .network-dialog{max-width:calc(100vw - 24px)}}
/* Public privacy and deletion pages share the existing accessible site style. */
.privacy-page{max-width:880px}.privacy-page h2{margin-top:2rem;font-size:1.25rem}.privacy-page p,.privacy-page li{line-height:1.85}.privacy-page li{margin:.6rem 0}.privacy-table-wrap{overflow-x:auto}.privacy-page table{width:100%;border-collapse:collapse;min-width:460px}.privacy-page th,.privacy-page td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid #dbe3ef;white-space:normal}.privacy-page nav{margin:1.4rem 0}

/* Premium Buddy UX: simple primary actions; details stay secondary. */
.buddy-mark{width:46px;height:46px;object-fit:contain;flex:none}.admin-page .brand{font-size:15px;gap:9px}.admin-page .brand small{letter-spacing:0;font-size:11px}
.friend-page [hidden]{display:none!important}.friend-page .connect-header{flex-wrap:wrap;gap:10px}.friend-page .connect-brand{color:#bd2138;letter-spacing:.06em}.friend-page .connect-platform{margin-left:auto}
.friend-page a.connect-primary{display:block;text-align:center;text-decoration:none;box-sizing:border-box;background:#bb2039;color:#fff;border-radius:12px;padding:14px;font-weight:650;margin:14px 0}
.friend-page .step-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px}.friend-page .step-navigation button{font-size:14px;margin:0;min-height:44px}.friend-page #step-progress{font-size:13px;color:#65738a;white-space:nowrap}
.friend-page #copy-fallback{width:100%;box-sizing:border-box;min-height:100px}.friend-page .checked-source{font-size:18px}.friend-page [data-tone="success"]{color:#247a50}.friend-page [data-tone="attention"]{color:#986c10}
.admin-page .network-filter-label{display:flex;align-items:center;gap:6px;margin:0;color:#64748b;font-size:12px}.admin-page #network-filter{padding:6px;max-width:185px;font-size:12px}.admin-page .table-toolbar{flex-wrap:wrap;gap:10px}.advanced-actions{width:100%;border-top:1px solid #e5eaf2;margin-top:12px;padding-top:12px}.advanced-actions summary{cursor:pointer;color:#66758e;font-size:13px}.admin-page .row-actions button{white-space:nowrap}
@media(max-width:420px){.friend-page .connect-card{padding:22px 16px}.friend-page .step-navigation{flex-wrap:wrap}.friend-page .connect-brand{font-size:11px}}

.friend-page button{background:#b42139;border-color:#b42139}.friend-page button:focus-visible,.friend-page a:focus-visible{outline:3px solid #e3b139;outline-offset:3px}.friend-page #step-back{background:#fff;color:#9a2340;border-color:#e4c5cf}
