.landing{max-width:1040px;margin:0 auto;padding:0 24px 80px}
.l-header{display:flex;align-items:center;justify-content:space-between;height:84px}
.l-brand{display:flex;align-items:center;gap:11px;font-size:18px;font-weight:800;color:var(--ink);text-decoration:none;letter-spacing:-.1px}
.l-brand .mark{display:inline-flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:9px;background:linear-gradient(135deg,#2f7bef,#0d3f9e);color:#fff;font-size:15px;box-shadow:0 4px 10px #0d5bd74d;flex-shrink:0}
.l-brand b{color:var(--blue);font-weight:900}
.l-header a.l-dashboard{font-size:13px;font-weight:700;color:var(--muted);text-decoration:none}
.hero{padding:56px 0 40px;text-align:center}
.hero h1{font-size:clamp(26px,4vw,40px);line-height:1.35;margin:0 0 18px}
.hero .sub{font-size:16px;color:var(--muted);max-width:640px;margin:0 auto 30px;line-height:1.6}
.hero .cta{border:0;background:var(--blue);color:#fff;font-size:17px;font-weight:800;padding:18px 30px;border-radius:10px;cursor:pointer;box-shadow:0 10px 24px #0d5bd733}
.hero .trust{margin-top:16px;font-size:13px;color:var(--muted)}
.examples{padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.examples .tag{display:inline-block;font-size:11px;font-weight:800;color:var(--amber);background:var(--amber-soft);padding:4px 9px;border-radius:6px;margin-bottom:14px}
.example-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.example-grid span{display:block;background:#f6f8fb;border:1px solid var(--line);border-radius:9px;padding:14px 12px;font-size:13px;font-weight:700;text-align:center;line-height:1.4}
.diagnose{padding:48px 0}
.diagnose h2{font-size:22px;margin:0 0 6px}
.diagnose .lead{color:var(--muted);font-size:14px;margin:0 0 26px}
.d-form{display:grid;gap:18px;background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:26px}
.d-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.d-form label{font-size:13px;font-weight:800;display:block}
.d-form select,.d-form textarea,.d-form input[type=text]{display:block;width:100%;margin-top:8px;border:1px solid #cbd7e4;border-radius:8px;padding:12px;font-size:14px;font-family:inherit}
.d-form textarea{min-height:88px;resize:vertical}
.d-form .hint{font-weight:400;color:var(--muted);font-size:12px;margin-top:4px}
.d-radio{display:flex;gap:18px;margin-top:8px}
.d-radio label{font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px}
.d-check{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;margin-top:4px}
.d-privacy{font-size:12px;color:var(--muted);line-height:1.6;border-top:1px dashed var(--line);padding-top:14px}
.d-submit{border:0;background:var(--blue);color:#fff;font-size:16px;font-weight:800;padding:16px;border-radius:9px;cursor:pointer}
.result{padding:8px 0 60px;scroll-margin-top:20px}
.result h2{font-size:20px;margin:0 0 18px}
.badges{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:8px}
.badge{border-radius:12px;padding:18px;text-align:center;cursor:pointer;border:2px solid transparent;transition:transform .1s,box-shadow .15s;user-select:none}
.badge:hover{transform:translateY(-1px)}
.badge:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.badge.active{border-color:currentColor;box-shadow:0 4px 14px rgba(0,0,0,.1)}
.badge b{display:block;font-size:28px;margin-bottom:4px}
.badge.good{background:var(--green-soft);color:var(--green)}
.badge.warn{background:var(--amber-soft);color:var(--amber)}
.badge.out{background:#f1f3f6;color:var(--muted)}
.r-hint{font-size:12px;color:var(--muted);text-align:center;margin:0 0 22px}
.r-note{font-size:12px;color:var(--muted);background:#f6f8fb;border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin-bottom:22px;line-height:1.6}
.r-cards{display:grid;gap:12px}
.r-cat-empty{color:var(--muted);font-size:14px;text-align:center;padding:28px 0;border:1px dashed var(--line);border-radius:12px}
.r-more{width:auto;margin:6px auto 0;padding:12px 24px;display:block}
.r-card{border:1px solid var(--line);border-radius:12px;padding:18px 20px}
.r-card .r-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.r-card h3{margin:0 0 4px;font-size:15px}
.r-card .r-org{font-size:12px;color:var(--muted)}
.r-card .r-status{white-space:nowrap;font-size:12px;font-weight:800}
.r-card .r-why{margin:12px 0 0;padding-left:18px;font-size:13px;line-height:1.6}
.r-card .r-why li{margin:3px 0}
.r-empty{border:1px dashed var(--line);border-radius:12px;padding:32px;text-align:center;color:var(--muted);font-size:14px;line-height:1.8}
.r-empty button{margin-top:14px}
.result-cta{margin-top:28px;text-align:center}
.result-cta .primary-cta{border:0;background:var(--blue);color:#fff;font-size:16px;font-weight:800;padding:16px 28px;border-radius:9px;cursor:pointer}
.alert-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;border:1px solid var(--amber);background:var(--amber-soft);color:var(--amber);font-size:14px;font-weight:800;padding:12px 20px;border-radius:9px;cursor:pointer}
.alert-cta:hover{background:#ffe9c7}
.alert-cta span{font-size:16px}
.alert-box{max-width:420px;margin:16px auto 0;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:18px 20px;text-align:left}
.alert-note{font-size:12.5px;color:var(--muted);line-height:1.6;margin:0 0 12px}
.alert-form{display:flex;gap:8px}
.alert-form input{flex:1;border:1px solid #cbd7e4;border-radius:8px;padding:11px 12px;font-size:14px;font-family:inherit}
.alert-form button{border:0;background:var(--blue);color:#fff;font-size:13px;font-weight:800;padding:0 16px;border-radius:8px;cursor:pointer;white-space:nowrap}
.alert-msg{margin:10px 0 0;font-size:12.5px;font-weight:700;color:var(--green)}
.alert-msg.error{color:#c0392b}
.l-footer{text-align:center;font-size:12px;color:var(--muted);padding:20px 0;border-top:1px solid var(--line);line-height:2}
.l-footer a{color:var(--muted);text-decoration:none}
.l-footer a:hover{color:var(--blue);text-decoration:underline}
[hidden]{display:none!important}
@media(max-width:760px){.example-grid{grid-template-columns:repeat(2,1fr)}.d-row{grid-template-columns:1fr}.badges{grid-template-columns:1fr}}
