:root{color:#172026;background:#f4f7f5;font-family:Segoe UI,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--page-bg: #f4f7f5;--ink: #172026;--muted: #62717a;--surface: #ffffff;--surface-soft: #eef4f1;--line: #d9e2df;--line-strong: #bac9c5;--accent: #0f9f8f;--accent-strong: #087d74;--accent-soft: #dff7f2;--blue: #2364aa;--warning: #b65d14;--danger: #bb3150;--shadow: 0 24px 70px rgb(23 32 38 / 13%)}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%;margin:0}body{color:var(--ink);background:linear-gradient(180deg,rgb(15 159 143 / 10%),transparent 280px),var(--page-bg)}button,input{font:inherit}a{color:var(--accent-strong);font-weight:800;text-underline-offset:4px}.app-shell{width:min(1040px,calc(100% - 32px));margin:0 auto;padding:28px 0 40px}.hero{margin-bottom:18px}.brand-lockup{display:flex;align-items:center;gap:14px}.brand-mark{display:inline-grid;width:46px;height:46px;place-items:center;border-radius:8px;color:#fff;background:#172026;font-size:14px;font-weight:900}.hero h1{margin:0;color:var(--ink);font-size:32px;font-weight:900;line-height:1;letter-spacing:0}.hero p{max-width:640px;margin:6px 0 0;color:var(--muted);font-size:15px;line-height:1.5}.control-panel,.password-change-form,.parent-share-panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.control-panel{padding:28px}.single-page{display:grid;gap:22px}.page-header{display:grid;gap:8px;max-width:740px}.step-kicker{margin:0;color:var(--accent-strong);font-size:13px;font-weight:900}h2{margin:0;color:var(--ink);font-size:28px;line-height:1.15;letter-spacing:0}.page-header h2{font-size:34px}.muted{margin:0;color:var(--muted);line-height:1.55}.status{display:grid;min-height:126px;place-items:center;border-radius:8px;padding:18px;text-align:center}.status span{color:#fff;font-size:30px;font-weight:900;line-height:1.12}.status-blocked{background:linear-gradient(135deg,#0c6d65,#11a58f)}.status-unlocked{background:linear-gradient(135deg,#8e3f1e,#e08335)}.status-pending{background:linear-gradient(135deg,#1f4167,#2364aa)}.setup-form{max-width:620px}label,.form-label{margin:0;color:#2f3d43;font-size:14px;font-weight:800}input{width:100%;border:1px solid var(--line-strong);border-radius:8px;padding:15px 16px;color:var(--ink);background:#fff;outline:none}input::placeholder{color:#8a989f}input:focus{border-color:var(--accent);box-shadow:0 0 0 4px #0f9f8f24}button,.button-link{display:inline-grid;min-height:50px;place-items:center;border:0;border-radius:8px;padding:0 20px;color:#fff;background:var(--accent);box-shadow:none;font-weight:900;text-align:center;text-decoration:none;cursor:pointer}button:hover:not(:disabled),.button-link:hover{background:var(--accent-strong)}button:disabled{cursor:not-allowed;opacity:.48}.primary-action{width:fit-content;min-width:220px}.secondary,.button-link.secondary{border:1px solid var(--line-strong);color:var(--ink);background:#fff}.secondary:hover:not(:disabled),.button-link.secondary:hover{color:var(--ink);background:var(--surface-soft)}.subtle-action{min-width:0;color:#314047}.full-width{width:100%}.target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.target-card{display:grid;min-height:176px;place-items:start;gap:10px;border:1px solid var(--line);padding:18px;color:var(--ink);background:#fff;text-align:left}.target-card.selected{border-color:#0f9f8f73;background:var(--accent-soft)}.target-card.selected:hover:not(:disabled),.target-card.selected:active,.target-card.selected[aria-pressed=true]{border-color:#0f9f8f73;background:var(--accent-soft)}@media(hover:hover)and (pointer:fine){.target-card:hover:not(:disabled):not(.selected){background:#f9fbfa}}.target-card strong{font-size:18px;line-height:1.2}.target-card>span:not(.target-check){color:var(--muted);font-size:14px;font-weight:600;line-height:1.45}.target-card em{align-self:end;border-radius:999px;padding:6px 9px;color:#5b4b00;background:#fff2b8;font-size:12px;font-style:normal;font-weight:900}.target-card.unavailable{opacity:.72}.target-card.unavailable:hover{background:#fff}.target-check{display:grid;width:28px;height:28px;place-items:center;border:1px solid var(--line-strong);border-radius:999px;color:#fff;background:#fff;font-size:15px;font-weight:900}.target-card.selected .target-check{border-color:var(--accent);background:var(--accent)}.flow-actions,.split-actions,.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.configuration-list{display:grid;gap:12px}.configuration-card,.test-panel,.troubleshooting-card,.dashboard-main,.dashboard-side,.events{border:1px solid var(--line);border-radius:8px;background:#fff}.configuration-card{display:grid;gap:12px;padding:18px}.configuration-card h2,.test-panel h2,.troubleshooting-card h2,.dashboard-main h2,.dashboard-side h2,.events h2{font-size:22px}.friendly-url{overflow-wrap:anywhere;border:1px solid var(--line);border-radius:8px;margin:0;padding:13px 14px;color:var(--ink);background:var(--surface-soft);font-size:16px;font-weight:900}.qr-note{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.35}.qr-install{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center}.qr-frame{display:grid;width:188px;height:188px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff}.qr-frame img{display:block;width:176px;height:176px}.qr-frame span{color:var(--muted);font-weight:900}.qr-label{margin:0 0 8px;color:#2f3d43;font-size:14px;font-weight:900}.soft-note{margin:0;border-left:4px solid var(--accent);padding-left:12px;color:#53626a;line-height:1.55}.test-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:18px;align-items:center;padding:18px}.test-link-block{display:grid;justify-items:end}.troubleshooting-card{display:grid;gap:12px;padding:18px}.troubleshooting-card ul{display:grid;gap:10px;margin:0;padding-left:20px;color:var(--muted);line-height:1.5}.dashboard{display:grid;gap:20px;min-width:0}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:16px;align-items:start;min-width:0}.dashboard-main,.dashboard-side,.events{min-width:0;padding:20px}.unlock-form,.dashboard-main{display:grid;gap:14px;min-width:0}.duration-group{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.duration{min-width:0;border:1px solid var(--line-strong);color:var(--ink);background:#fff}.duration.selected{border-color:var(--accent);color:#fff;background:var(--accent)}.dashboard-side{display:grid;gap:14px}.add-phone-entry{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:14px}.add-phone-entry h3,.phone-install-card h3{margin:0;color:var(--ink);font-size:18px;line-height:1.2}.add-phone-entry p,.phone-install-card p{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.add-phone-panel{display:grid;gap:18px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:20px;background:#fff}.add-phone-header{display:flex;gap:16px;align-items:start;justify-content:space-between}.phone-install-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.phone-install-card{display:grid;gap:14px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:18px;background:#fbfdfc}.android-locked-mode{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#f8fbfa}.android-locked-mode summary{cursor:pointer;color:var(--ink);font-weight:900}.android-locked-mode p{margin:0;color:var(--muted);line-height:1.45}.add-phone-form{display:grid;gap:12px}.add-phone-form select,.add-phone-form input{min-height:48px;border:1px solid var(--line);border-radius:8px;padding:0 14px;color:var(--ink);background:#fff;font:inherit}.phone-install-card .qr-install{grid-template-columns:1fr}.phone-install-card .qr-frame{width:188px;max-width:100%}.ready-copy{margin:0;color:var(--muted);line-height:1.5}.configured-targets{display:flex;flex-wrap:wrap;gap:8px}.configured-targets span{border-radius:999px;padding:7px 10px;color:#075f58;background:var(--accent-soft);font-size:13px;font-weight:900}.device-contact{display:grid;gap:4px;border-top:1px solid var(--line);padding-top:12px;color:var(--muted);line-height:1.45}.home-protection-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fbfdfc}.home-protection-card div{display:grid;gap:4px;min-width:0}.home-protection-card strong{color:var(--ink)}.home-protection-card span{color:var(--muted);font-size:14px;line-height:1.35}.device-contact strong{color:var(--ink)}.simple-steps{display:grid;gap:10px}.simple-steps div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start}.simple-steps span{display:grid;width:32px;height:32px;place-items:center;border-radius:999px;color:#fff;background:var(--accent);font-weight:900}.simple-steps p{margin:4px 0 0;color:var(--muted);line-height:1.45}.home-router-setup{gap:16px}.home-router-header{display:grid;gap:6px}.home-router-header h2,.home-router-header p{margin:0}.home-router-header p:not(.step-kicker){color:var(--muted);line-height:1.5}.home-dns-value{display:grid;gap:6px;border:1px solid rgb(15 159 143 / 28%);border-radius:8px;padding:14px;background:var(--accent-soft)}.home-dns-value span{color:#075f58;font-size:13px;font-weight:900}.home-dns-value strong{color:var(--ink);font-size:22px;line-height:1.1;word-break:break-word}.home-router-grid{display:grid;gap:10px}.home-router-card{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fbfdfc}.home-router-card>span{display:grid;width:32px;height:32px;place-items:center;border-radius:999px;color:#fff;background:var(--accent);font-weight:900}.home-router-card strong{color:var(--ink)}.home-router-card p{margin:5px 0 0;color:var(--muted);line-height:1.45}.router-selector{display:grid;gap:18px}.router-choice-block,.router-guide{display:grid;gap:12px}.router-provider-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.router-provider,.router-model{min-width:0;min-height:0;border:1px solid var(--line);color:var(--ink);background:#fff;text-align:left}.router-provider{display:grid;place-items:stretch;gap:5px;padding:12px}.router-provider strong,.router-provider span{min-width:0;overflow-wrap:anywhere}.router-provider span{color:var(--muted);font-size:12px;font-weight:800;line-height:1.25}.router-provider.selected,.router-provider.selected:hover:not(:disabled),.router-provider.selected[aria-pressed=true]{border-color:#0f9f8f73;background:var(--accent-soft)}.router-model-grid{display:flex;flex-wrap:wrap;gap:8px}.router-model{min-height:38px;border-radius:999px;padding:0 13px;color:#34454c;font-size:13px}.router-model.selected,.router-model.selected:hover:not(:disabled),.router-model.selected[aria-pressed=true]{color:#fff;border-color:var(--accent);background:var(--accent)}.router-guide{border-top:1px solid var(--line);padding-top:16px}.router-guide-heading{display:flex;justify-content:space-between;gap:12px;align-items:start}.router-guide-heading h3{margin:2px 0 0;color:var(--ink);font-size:22px;line-height:1.2}.router-status{flex:0 0 auto;border-radius:999px;padding:7px 10px;color:#172026;background:var(--surface-soft);font-size:12px;font-weight:900}.router-status-good{color:#075f58;background:var(--accent-soft)}.router-status-test{color:#704100;background:#fff1d7}.router-status-weak{color:#8f263d;background:#ffe4ea}.router-access{display:grid;gap:6px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fbfdfc}.router-access span{color:#3b4b52;font-size:13px;font-weight:900}.router-access div{display:flex;flex-wrap:wrap;gap:8px 14px;min-width:0}.router-access a,.router-access strong{min-width:0;overflow-wrap:anywhere}.router-steps{display:grid;gap:10px;margin:0;padding-left:24px;color:#334249;line-height:1.45}.router-help,.router-fallback{border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff}.router-help summary{color:var(--ink);font-weight:900;cursor:pointer}.router-help p,.router-fallback p,.router-sources{margin:6px 0 0;color:var(--muted);line-height:1.45}.router-fallback strong{color:var(--ink)}.router-sources{font-size:13px}.child-device-list{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}.install-checklist{display:grid;gap:12px;border:1px solid rgb(15 159 143 / 24%);border-radius:8px;padding:14px;background:#f5fbf9}.install-checklist h4{margin:0;color:var(--ink);font-size:15px}.install-checklist ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}.install-checklist li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start}.install-checklist li>span{display:grid;width:30px;height:30px;place-items:center;border-radius:999px;color:#fff;background:var(--accent);font-weight:900}.install-checklist p{margin:0;color:#334249;line-height:1.45}.ios-home-screen-guide{border-color:#f0d99f;background:#fffaf0}.child-device-card{display:grid;gap:6px;border:1px solid var(--line);border-radius:8px;padding:12px;color:var(--muted);background:#fbfdfc;font-size:14px;line-height:1.45}.child-device-card strong{color:var(--ink);font-size:15px}.child-device-heading,.child-device-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.child-device-row span,.friendly-url,.soft-note{min-width:0;overflow-wrap:anywhere}.compact-action{min-height:34px;padding:0 10px;font-size:13px}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:#08111694}.target-unlock-modal{display:grid;gap:14px;width:min(420px,100%);border:1px solid var(--line);border-radius:8px;padding:20px;color:var(--ink);background:#fff;box-shadow:0 30px 100px #00000047}.target-unlock-modal h2{margin:0}.events ul{display:grid;gap:10px;padding:0;margin:14px 0 0;list-style:none}.events li{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:10px;color:#334249}time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.parent-options{display:grid;justify-items:start;gap:12px;margin-top:14px}.parent-options-grid{display:grid;width:100%;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:14px;align-items:start}.settings-link{min-height:auto;border:0;border-radius:0;padding:0;color:#43525a;background:transparent;text-decoration:underline;text-underline-offset:4px}.settings-link:hover:not(:disabled){color:var(--ink);background:transparent}.password-change-form,.parent-share-panel{display:grid;gap:13px;padding:20px}.password-change-form{width:100%}.parent-share-panel{min-width:0}.parent-share-panel h2,.parent-invite-card h3{margin:0;color:var(--ink);font-size:22px;line-height:1.2}.parent-invite-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:16px;background:#fbfdfc}.parent-invite-card p{margin:0;color:var(--muted);line-height:1.45}.parent-device-list{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:12px}.parent-device-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fbfdfc}.parent-device-row div{display:grid;gap:3px;min-width:0}.parent-device-row strong{color:var(--ink)}.parent-device-row span:not(.role-pill){color:var(--muted);font-size:14px;line-height:1.35}.role-pill{border-radius:999px;padding:6px 9px;color:#075f58;background:var(--accent-soft);font-size:12px;font-weight:900}.error,.notice{margin:16px 0 0;font-weight:800;line-height:1.45}.error{color:var(--danger)}.notice{color:var(--accent-strong)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}@media(max-width:780px){.app-shell{width:min(100% - 20px,1040px);padding:18px 0 28px}.brand-lockup{align-items:flex-start}.hero h1{font-size:28px}.control-panel{padding:18px}.page-header h2{font-size:28px}.status{min-height:112px}.status span{font-size:24px}.target-grid,.dashboard-grid,.parent-options-grid,.phone-install-grid,.router-provider-grid,.test-panel,.qr-install{grid-template-columns:1fr}.router-guide-heading,.add-phone-header{display:grid}.target-card{min-height:auto}.qr-frame{width:100%;max-width:220px;height:auto;aspect-ratio:1}.primary-action,.flow-actions button,.flow-actions a{width:100%}.duration-group{grid-template-columns:repeat(2,minmax(0,1fr))}.events li{display:grid;gap:4px}.parent-device-row,.home-protection-card{grid-template-columns:1fr}}
