:root{--bg:#fffaf5;--surface:#fff;--surface-soft:#fff4ec;--ink:#0f172a;--muted:#596171;--muted-2:#7b8495;--border:#eadfd6;--border-strong:#dfcec3;--primary:#ff3d18;--primary-hover:#df2f11;--success:#18a34a;--warning:#f59e0b;--danger:#ef4444;--info:#2563eb;--radius:8px;--shadow:0 2px 8px #0f172a14}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);scroll-behavior:smooth}body{background:linear-gradient(90deg, #eadfd659 1px, transparent 1px), linear-gradient(180deg, #eadfd659 1px, transparent 1px), var(--bg);background-size:56px 56px;margin:0;font-family:Avenir Next,Manrope,Helvetica Neue,ui-sans-serif,system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.site-header{border-bottom:1px solid var(--border);z-index:20;background:#fffaf5eb;justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:0 32px;display:flex;position:sticky;top:0}.brand-mark{letter-spacing:-.03em;align-items:center;gap:8px;font-size:22px;font-weight:760;display:inline-flex}.brand-mark span span{color:var(--primary)}.brand-icon{color:var(--primary);align-items:center;display:inline-flex}.site-nav{color:var(--muted);align-items:center;gap:28px;margin-left:auto;font-size:14px;display:flex}.site-nav a:hover{color:var(--ink)}.button{border-radius:var(--radius);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 18px;font-weight:720;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:var(--primary-hover)}.button-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--ink)}.button-secondary:hover{border-color:var(--ink)}.button-ghost{color:var(--ink);background:0 0}.button-danger{color:var(--primary);background:#fff;border-color:#ffc5bd}.hero{grid-template-columns:minmax(0,1.02fr) minmax(440px,.88fr);gap:clamp(32px,5vw,80px);min-height:min(760px,100vh - 72px);padding:clamp(56px,8vw,112px) clamp(24px,5vw,72px) 56px;display:grid}.hero-copy{align-self:center;max-width:760px}.mini-label{color:var(--primary);border:1px solid #ffc1b5;border-radius:999px;margin:0 0 22px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.hero h1{letter-spacing:-.075em;max-width:780px;margin:0;font-size:clamp(54px,7vw,104px);line-height:.88}.hero-subcopy{color:var(--muted);max-width:620px;margin:26px 0 0;font-size:clamp(18px,2vw,22px);line-height:1.45}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.trust-row{color:var(--muted);flex-wrap:wrap;gap:18px;margin-top:20px;display:flex}.trust-row span{align-items:center;gap:6px;display:inline-flex}.trust-row svg{color:var(--success)}.hero-passport{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);align-self:center;padding:28px}.hero-passport-top,.passport-card-header,.app-heading,.meter>div:first-child,.setting-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.hero-passport-top p,.app-heading p,.passport-card-header span,.hero-passport-top span{color:var(--muted);margin:0}.hero-passport-top strong,.passport-card-header strong{margin-top:4px;font-size:18px;display:block}.status-badge{white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;min-height:28px;padding:0 10px;font-size:12px;font-weight:760;display:inline-flex}.status-good{color:#087b33;background:#eaf8ee;border-color:#c7eed1}.status-watch{color:#9a5d00;background:#fff4df;border-color:#ffdf9a}.status-bad{color:#b42318;background:#fff0f0;border-color:#ffc7c7}.status-info{color:#1e4fb8;background:#eef4ff;border-color:#c9daff}.passport-rail{grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0;display:grid}.passport-stage{text-align:center;min-width:0}.stage-icon{border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:10px;display:inline-flex}.stage-done .stage-icon{background:var(--success);color:#fff}.stage-active .stage-icon{background:var(--primary);color:#fff}.stage-active:nth-child(3) .stage-icon{background:var(--info)}.stage-locked .stage-icon{color:#555c68;background:#ebe8e5}.passport-stage strong,.passport-stage span{display:block}.passport-stage span{color:var(--muted);margin-top:3px;font-size:12px}.passport-summary-grid{border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);gap:10px;padding-top:20px;display:grid}.passport-summary-grid div{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:12px}.passport-summary-grid span,.passport-summary-grid strong{display:block}.passport-summary-grid span{color:var(--muted);font-size:12px}.good-text{color:var(--success)}.watch-text{color:var(--warning)}.passport-warning,.warning-banner{border-radius:var(--radius);background:#fff6e6;border:1px solid #ffdca6;align-items:center;gap:14px;margin-top:18px;padding:14px;display:flex}.passport-warning svg,.warning-banner svg{color:var(--warning);flex:none}.passport-warning span,.warning-banner span{color:var(--muted);margin-top:2px;font-size:13px;display:block}.hero-difference-card{gap:16px;display:grid}.warmup-summary-list{border-top:1px solid var(--border);padding-top:8px;display:grid}.warmup-summary-list div{border-bottom:1px solid var(--border);grid-template-columns:28px minmax(0,1fr);align-items:flex-start;gap:10px;padding:14px 0;display:grid}.warmup-summary-list div:last-child{border-bottom:0}.warmup-summary-list span{background:var(--surface-soft);border:1px solid var(--border);color:var(--primary);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:inline-flex}.warmup-summary-list strong,.warmup-summary-list p{grid-column:2}.warmup-summary-list strong{font-size:15px;display:block}.warmup-summary-list p{color:var(--muted);margin:3px 0 0;line-height:1.45}.path-summary{border-radius:var(--radius);color:#087b33;background:#f3fbf5;border:1px solid #c7eed1;align-items:center;gap:10px;padding:12px;display:flex}.path-summary span{color:var(--muted);font-size:13px;line-height:1.4;display:block}.path-summary svg{flex:none}.difference-section{padding:44px clamp(24px,5vw,72px) 60px}.difference-explainer{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);max-width:1180px;margin:0 auto;display:grid;overflow:hidden}.explainer-copy{gap:18px;padding:clamp(26px,4vw,46px);display:grid}.explainer-copy .mini-label{justify-self:start;margin:0}.explainer-copy h2{letter-spacing:-.055em;margin:0;font-size:clamp(32px,3.6vw,48px);line-height:1.05}.explainer-copy>p{color:var(--muted);margin:0;font-size:17px;line-height:1.5}.explainer-rule{border-radius:var(--radius);color:#087b33;background:#f3fbf5;border:1px solid #c7eed1;align-items:center;gap:10px;padding:12px;display:flex}.explainer-rule svg{flex:none}.explainer-rule span{color:var(--ink);font-weight:760;line-height:1.35}.explainer-points{gap:0;display:grid}.explainer-points div{border-top:1px solid var(--border);grid-template-columns:36px minmax(0,1fr);gap:4px;padding:14px 0;display:grid}.explainer-points span{color:var(--primary);font-size:13px;font-weight:800}.explainer-points strong,.explainer-points p{grid-column:2}.explainer-points strong{font-size:15px}.explainer-points p{color:var(--muted);margin:0;line-height:1.42}.explainer-visual{border-left:1px solid var(--border);background:#fbfaf7;gap:12px;margin:0;padding:18px;display:grid}.explainer-visual picture{align-self:center;display:block}.explainer-visual img{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);width:100%;height:auto;display:block}.explainer-visual figcaption{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.explainer-visual figcaption span{color:var(--muted);font-size:13px;line-height:1.45}.explainer-visual figcaption strong{color:var(--ink);font-size:14px;display:block}.logos-strip{background:var(--surface);border-block:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;padding:18px 24px;display:flex}.app-section{padding:56px clamp(16px,4vw,56px) 80px}.empty-app{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;max-width:520px;margin:0 auto;padding:56px 28px;display:flex}.empty-app svg{color:var(--primary)}.empty-app h2{letter-spacing:-.04em;margin:20px 0 8px;font-size:28px}.empty-app p{color:var(--muted);margin:0 0 24px;line-height:1.5}.empty-app span,.modal-footnote{color:var(--muted);margin-top:12px;font-size:12px}.app-shell{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:230px minmax(0,1fr);max-width:1280px;min-height:760px;margin:0 auto;display:grid;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:#fff7ef;flex-direction:column;gap:22px;padding:22px 16px;display:flex}.sidebar .brand-mark{margin-bottom:6px}.sidebar nav{gap:4px;display:grid}.nav-button{border-radius:var(--radius);color:var(--muted);text-align:left;background:0 0;border:0;align-items:center;gap:10px;min-height:40px;padding:0 10px;display:flex}.nav-button:hover,.nav-active{color:var(--primary);background:#ffe8dc}.nav-count{background:var(--primary);color:#fff;text-align:center;border-radius:999px;min-width:20px;margin-left:auto;padding:2px 6px;font-size:11px}.plan-box{border:1px solid var(--border);border-radius:var(--radius);gap:8px;margin-top:auto;padding:14px;display:grid}.plan-box span{color:var(--muted);font-size:13px}.plan-box button{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);min-height:34px}.app-main{background:#fffdf9;min-width:0}.app-panel{padding:28px}.narrow-panel{max-width:880px}.app-heading{margin-bottom:24px}.app-heading h1{letter-spacing:-.05em;margin:0;font-size:30px}.passport-card,.api-card,.plan-card,.settings-stack{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.passport-card{padding:22px}.sender-avatar{background:var(--success);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;font-weight:800;display:inline-flex}.passport-card-header{justify-content:flex-start}.passport-card-header .status-badge{margin-left:auto}.passport-detail-grid{border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding-top:22px;display:grid}.detail-stack{gap:12px;display:grid}.detail-stack h3{margin:0;font-size:14px}.dns-row{border-bottom:1px solid var(--border);grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 0;display:grid}.dns-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meter{gap:7px;display:grid}.meter span{color:var(--muted);font-size:13px}.meter-track{background:#eee8e2;border-radius:999px;height:8px;overflow:hidden}.meter-fill{border-radius:inherit;height:100%;display:block}.meter-hot{background:var(--primary)}.meter-good{background:var(--success)}.meter-info{background:var(--info)}.inline-note,.scale-lock{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.text-action{color:var(--primary);text-align:left;background:0 0;border:0;padding:0;font-weight:760}.warning-banner{justify-content:space-between}.client-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.client-table{border-collapse:collapse;width:100%;min-width:760px}.client-table th,.client-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:16px}.client-table th{color:var(--muted);font-size:12px;font-weight:760}.client-table tr:last-child td{border-bottom:0}.alert-list,.settings-stack,.provider-results,.upgrade-list,.rules-panel,.provider-list{gap:12px;display:grid}.alert-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:72px;padding:14px;display:grid}.alert-row small{color:var(--muted);margin-top:3px;display:block}.alert-good>span:first-child{color:var(--success)}.alert-watch>span:first-child{color:var(--warning)}.alert-bad>span:first-child{color:var(--danger)}.settings-stack{padding:18px}.setting-row{border-bottom:1px solid var(--border);min-height:72px;padding:12px 0}.setting-row:last-of-type{border-bottom:0}.setting-row small{color:var(--muted);margin-top:3px;display:block}.switch input{display:none}.switch span{background:#d8d5d2;border-radius:999px;width:50px;height:28px;display:block;position:relative}.switch span:before{content:"";background:#fff;border-radius:999px;width:22px;height:22px;transition:left .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000029}.switch input:checked+span{background:var(--success)}.switch input:checked+span:before{left:25px}.stepper-control{border:1px solid var(--border);border-radius:var(--radius);align-items:center;display:inline-flex;overflow:hidden}.stepper-control button{background:var(--surface);border:0;width:34px;height:34px}.stepper-control strong{text-align:center;min-width:32px}.billing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.plan-card{gap:12px;padding:22px;display:grid}.plan-card h3{margin:0}.plan-card>strong,.dfy-price{letter-spacing:-.05em;font-size:34px}.plan-card>span{color:var(--muted)}.plan-card ul,.check-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.plan-card li,.check-list li{align-items:center;gap:8px;display:flex}.plan-card li svg,.check-list svg{color:var(--success)}.current-plan{background:#fff9f4}.api-card{gap:12px;margin-bottom:18px;padding:22px;display:grid}.endpoint-row{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.endpoint-row code{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.endpoint-row button{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:6px 10px}.modal-backdrop{z-index:100;background:#0f172a7a;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(100%,560px);max-height:calc(100vh - 48px);position:relative;overflow:auto;box-shadow:0 18px 40px #0f172a33}.onboarding-modal{padding:30px}.simple-modal{text-align:center;gap:18px;width:min(100%,440px);padding:34px;display:grid}.modal h2{letter-spacing:-.05em;text-align:center;margin:20px 0 16px;font-size:28px}.modal-brand{justify-content:center;display:flex}.close-button{position:absolute;top:14px;right:14px}.icon-button{color:var(--muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.icon-button:hover{background:var(--bg);color:var(--ink)}.stepper{justify-content:center;align-items:center;gap:12px;margin-top:26px;display:flex}.step-dot{border:1px solid var(--border-strong);color:var(--muted);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:760;display:inline-flex}.step-active{background:var(--primary);border-color:var(--primary);color:#fff}.provider-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:72px;padding:14px;display:grid}.provider-card:hover,.provider-selected{border-color:var(--primary)}.provider-card small{color:var(--muted);margin-top:3px;display:block}.provider-logo{border-radius:6px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:840;display:inline-flex}.google-logo{color:var(--info);background:#eef4ff}.microsoft-logo{color:var(--primary);background:#fff4df}.permission-panel,.scan-panel,.issue-panel,.success-panel{text-align:center;place-items:center;gap:16px;display:grid}.permission-panel p,.issue-panel p,.success-panel p,.simple-modal p,.api-card p{color:var(--muted);margin:0;line-height:1.5}.permission-icon,.success-icon{background:var(--surface-soft);color:var(--primary);border-radius:999px;justify-content:center;align-items:center;width:74px;height:74px;display:inline-flex}.success-icon{color:var(--success);background:#eaf8ee}.scan-panel .spin{color:var(--primary)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.scan-row{border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:10px;min-width:260px;padding:9px 0;display:flex}.scan-done{color:var(--success)}.issue-panel{border-radius:var(--radius);background:#fff6e6;border:1px solid #ffdca6;padding:18px}.issue-panel svg{color:var(--warning)}.issue-panel code{border:1px solid var(--border);text-align:left;background:#fffc;border-radius:6px;width:100%;padding:10px;display:block;overflow-x:auto}.rule-row{border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:14px;display:grid}.rule-row svg{color:var(--primary)}.rule-row small{color:var(--muted);margin-top:3px;display:block}.placement-score{text-align:left;justify-content:center;align-items:center;gap:16px;display:flex}.score-ring{border:8px solid #dceee2;border-top-color:var(--success);border-radius:999px;justify-content:center;align-items:center;width:104px;height:104px;font-size:26px;font-weight:820;display:inline-flex}.placement-score span,.provider-result-row small{color:var(--muted);display:block}.provider-result-row{border-bottom:1px solid var(--border);text-align:left;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:12px 0;display:grid}.provider-result-row:last-child{border-bottom:0}.dfy-price{color:var(--ink);font-weight:820}@media (max-width:980px){.site-nav{display:none}.hero{grid-template-columns:1fr}.hero-passport{align-self:stretch}.difference-explainer{grid-template-columns:1fr}.explainer-visual{border-left:0;border-top:1px solid var(--border)}.app-shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--border);border-right:0}.sidebar nav{display:flex;overflow-x:auto}.nav-button{flex:none}.plan-box{display:none}.passport-detail-grid,.billing-grid{grid-template-columns:1fr}}@media (max-width:640px){.site-header{padding:0 16px}.site-header>.button{display:none}.hero{min-height:auto;padding-inline:16px}.hero h1{font-size:52px}.hero-actions,.hero-actions .button{width:100%}.trust-row{gap:10px;display:grid}.difference-section{padding-inline:16px}.explainer-copy{padding:22px}.explainer-visual{padding:12px}.explainer-visual figcaption{grid-template-columns:1fr}.passport-rail,.passport-summary-grid{grid-template-columns:1fr 1fr}.warning-banner{flex-direction:column;align-items:flex-start}.app-section{padding-inline:12px}.app-panel{padding:18px}.app-heading{flex-direction:column;align-items:flex-start}.modal-backdrop{padding:12px}}
