:root{--bg: #e7efe8;--bg-accent: #d5e4d8;--ink: #14201a;--muted: #4d5c54;--paper: #f7fbf7;--line: #c5d4c9;--brand: #1f5c45;--brand-deep: #0f3a2b;--warn: #8a3b12;--ok: #1f6b45;--error: #8b1e1e;--shadow: 0 18px 50px rgba(20, 32, 26, .08);--font-display: "Fraunces", Georgia, serif;--font-body: "Source Sans 3", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--ink);font-family:var(--font-body);background:radial-gradient(1200px 600px at 10% -10%,#f4fff7 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#cfe0d4 0%,transparent 50%),linear-gradient(160deg,var(--bg),var(--bg-accent))}a{color:var(--brand)}.shell{max-width:960px;margin:0 auto;padding:1.25rem 1.25rem 3rem}.shell.narrow{max-width:480px}.hero-shell{min-height:100vh;display:flex;flex-direction:column}.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.top-right{display:flex;align-items:center;gap:.75rem}.brand{font-family:var(--font-display);font-weight:700;font-size:1.35rem;color:var(--brand-deep);text-decoration:none;letter-spacing:.02em}.brand-hero{font-family:var(--font-display);font-size:clamp(3.2rem,10vw,5.5rem);line-height:.95;margin:.2rem 0 .25rem;color:var(--brand-deep)}.byline{margin:0 0 1rem;font-size:1.05rem;font-weight:600;letter-spacing:.04em;color:var(--brand)}.hero{flex:1;display:flex;flex-direction:column;justify-content:center;max-width:36rem;animation:rise .7s ease-out both}.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;color:var(--brand);margin:0}.lead{font-size:1.15rem;line-height:1.5;color:var(--muted);margin:0 0 1.4rem}.cta{display:flex;gap:.75rem}.panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:1.4rem 1.5rem 1.6rem;box-shadow:var(--shadow);animation:rise .45s ease-out both}.panel.wide{max-width:100%}h1,h2{font-family:var(--font-display);margin:0 0 .5rem}.muted{color:var(--muted)}.small{font-size:.9rem}.form{display:grid;gap:.85rem;margin:1rem 0}.form.row{grid-template-columns:1fr auto}label{display:grid;gap:.35rem;font-weight:600}input{font:inherit;padding:.65rem .75rem;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;font:inherit;font-weight:650;text-decoration:none;border:1px solid var(--line);background:#fff;color:var(--ink);padding:.55rem .95rem;border-radius:999px;cursor:pointer;transition:transform .15s ease,background .15s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--brand);border-color:var(--brand-deep);color:#f4fff8}.btn:disabled{opacity:.6;cursor:wait}.linkish{background:none;border:none;color:var(--brand);cursor:pointer;font:inherit;padding:0;text-decoration:underline}.error{color:var(--error)}.ok{color:var(--ok)}.site-list{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;gap:.85rem}.site-item{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-top:1px solid var(--line)}.badge{display:inline-block;margin-top:.35rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--brand)}.verify-box{margin:.6rem 0 0;padding:.7rem .8rem;background:#eef6f0;border-radius:10px;font-size:.92rem}.verify-box code{word-break:break-all}.actions{display:flex;align-items:flex-start;gap:.5rem}.actions.col{flex-direction:column}.alerts-box,.history-box{margin:1.25rem 0 1.5rem;padding:1rem 1.1rem;background:#f3f7f4;border:1px solid var(--line);border-radius:12px}.alerts-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.alerts-head h2{margin:0;font-size:1.15rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.alert-badge{background:#f3e0d4;color:var(--warn)}.alert-list,.history-list{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.alert-item,.history-item{display:flex;justify-content:space-between;gap:1rem;padding:.75rem .85rem;background:#fff;border:1px solid var(--line);border-radius:10px}.alert-item.read{opacity:.72}.alert-body{margin:.4rem 0 0;white-space:pre-wrap;font-family:var(--font-body);font-size:.9rem;color:var(--muted)}.history-item .badge{margin-left:.5rem}.findings{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.85rem}.finding{border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem;background:#fff}.finding-head{display:flex;gap:.6rem;align-items:baseline}.sev{font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--warn)}.summary{white-space:pre-wrap;line-height:1.55}.report{margin:1rem 0 1.4rem;padding:1rem;background:#eef6f0;border-radius:12px}.progress-box{margin:1rem 0 1.4rem;padding:1rem;background:#f3f7f4;border:1px solid var(--line);border-radius:12px}.progress-log{margin:.6rem 0 0;padding-left:1.2rem;max-height:280px;overflow-y:auto;font-size:.95rem}.progress-log li{margin:.35rem 0}.score-box{margin:1rem 0 1.4rem;padding:1rem 1.1rem;background:#e8f3ec;border:1px solid var(--line);border-radius:12px}.score-value{font-family:var(--font-display);font-size:2.2rem;margin:.2rem 0;color:var(--brand-deep)}.score-help{max-width:42rem;line-height:1.45;margin:.6rem 0 .4rem}.export-box{margin:1rem 0 1.4rem;padding:1rem 1.1rem;background:#f3f7f4;border:1px solid var(--line);border-radius:12px}.prio-box{margin:1rem 0 1.4rem;padding:1rem 1.1rem;background:#f7f3ea;border:1px solid var(--line);border-radius:12px}.prio-list{margin:.4rem 0 0;padding-left:1.25rem}.prio-list li{margin:.4rem 0}.schedule-box{margin-top:.4rem;max-width:14rem}.diff-box{margin:1rem 0 1.4rem;padding:1rem;background:#f7f3ea;border:1px solid var(--line);border-radius:12px}.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.diff-block h3{font-size:1rem;margin:0 0 .4rem}.diff-list{list-style:none;margin:0;padding:0}.diff-list li{padding:.35rem 0;border-top:1px solid var(--line);font-size:.95rem}@media (max-width: 640px){.diff-grid{grid-template-columns:1fr}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pitch{margin-top:2rem;padding:1.75rem 0 .5rem;max-width:40rem;animation:rise .85s ease-out .12s both}.pitch-title{font-family:var(--font-display);font-size:clamp(1.45rem,3.5vw,1.85rem);line-height:1.2;color:var(--brand-deep);margin:0 0 .75rem}.pitch-lead{margin:0 0 1.1rem;font-size:1.05rem;line-height:1.55;color:var(--ink)}.pitch-points{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.55rem}.pitch-points li{position:relative;padding-left:1.15rem;color:var(--muted);line-height:1.4;font-size:.98rem}.pitch-points li:before{content:"";position:absolute;left:0;top:.55em;width:.45rem;height:.45rem;border-radius:1px;background:var(--brand)}.plans{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.plans-title{font-family:var(--font-display);font-size:1.5rem;margin:0 0 .35rem}.plans-lead{margin:0 0 1.25rem;max-width:36rem}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.plans-grid-4{grid-template-columns:repeat(4,1fr)}.plan-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.15rem;box-shadow:var(--shadow)}.plan-card h3{margin:0 0 .35rem;font-family:var(--font-display)}.plan-price{font-size:1.45rem;font-weight:700;margin:0 0 .5rem;color:var(--brand-deep)}.plan-card-expert{border-color:var(--brand);box-shadow:0 18px 50px #1f5c4524}.plan-card-trial{border-color:var(--brand);background:linear-gradient(165deg,#f0faf3 0%,var(--paper) 55%)}.plan-cta{display:inline-block;margin-top:.75rem;text-decoration:none}.trial-banner{margin:0 0 1.1rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:10px;background:#eef6f0;color:var(--brand-deep)}.trial-banner p{margin:0}.trial-banner-warn{background:#f7efe6;border-color:#e0c9b0;color:var(--warn)}.auth-switch{display:flex;flex-direction:column;gap:.35rem;margin-top:.75rem}.terms-check{display:flex;align-items:flex-start;gap:.55rem;font-size:.92rem;line-height:1.4;color:var(--muted);cursor:pointer}.terms-check input{margin-top:.2rem;flex-shrink:0}.terms-check a{color:var(--brand);font-weight:600}.terms h2{font-family:var(--font-display);font-size:1.15rem;margin:1.4rem 0 .45rem;color:var(--brand-deep)}.terms section p,.terms section ul{margin:.35rem 0;line-height:1.5;color:var(--ink)}.terms-disclaimer{margin-top:1.5rem;padding-top:.75rem;border-top:1px solid var(--line)}.home-foot{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.9rem}.site-locale{display:inline-flex;align-items:center;gap:.35rem;margin-top:.35rem}.site-locale select{font:inherit;border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:.2rem .4rem}.lang-switch{display:inline-flex;align-items:center;gap:.35rem}.lang-switch select{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:.25rem .45rem}.admin-stats{display:flex;flex-wrap:wrap;gap:1.25rem;margin:1rem 0 1.5rem;padding:.85rem 1rem;background:var(--paper);border:1px solid var(--line);border-radius:10px}.admin-plans{list-style:none;margin:0 0 1.5rem;padding:0}.admin-plans li{padding:.35rem 0;border-bottom:1px solid var(--line)}.admin-users{list-style:none;margin:0;padding:0}.admin-user{padding:1rem 0;border-top:1px solid var(--line)}.admin-user-head{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;justify-content:space-between;align-items:flex-start}.admin-plan-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.admin-sites{margin:.4rem 0 0;padding-left:1.1rem;font-size:.95rem}.assist-panel h1{font-family:var(--font-display);font-size:1.65rem;margin:.25rem 0 .75rem}.assist-block{margin-top:1.25rem}.assist-block h2{font-size:1.05rem;margin:0 0 .4rem}.assist-guide{white-space:pre-wrap;word-break:break-word;font-family:var(--font-body);font-size:.98rem;line-height:1.45;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1rem 1.1rem;margin:0}.error-box{border:1px solid #e0b4b4;background:#fff5f5;border-radius:10px;padding:1rem 1.1rem}@media (max-width: 640px){.form.row{grid-template-columns:1fr}.site-item{flex-direction:column}.plans-grid,.plans-grid-4{grid-template-columns:1fr}}@media (max-width: 960px) and (min-width: 641px){.plans-grid-4{grid-template-columns:repeat(2,1fr)}}
