:root{--ink:#10233d;--navy:#07111f;--navy2:#10233d;--blue:#2563eb;--muted:#64748b;--line:#dce2ea;--paper:#fff;--bg:#eef2f6}
body.public-page{display:block!important;padding:24px!important;color:var(--ink)!important;background:linear-gradient(145deg,#f5f7fa,#e9edf2 55%,#f1f4f7)!important}
.public-page .wrapper{margin:0 auto;min-height:680px}
.public-page .hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.public-page .hero-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:11px;text-decoration:none;font-weight:800}
.public-page .hero-btn.primary{color:#fff;background:#2563eb;border:1px solid #60a5fa}.public-page .hero-btn.ghost{color:#e2e8f0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2)}
.public-page .trust-row{display:flex;justify-content:center;gap:8px;margin-top:18px;flex-wrap:wrap}.public-page .trust-chip{padding:6px 10px;border-radius:999px;color:#334155;background:#eef2f7;border:1px solid #dce2ea;font-size:12px;font-weight:700}
.public-page .username-note{margin-top:12px;color:#64748b;font-size:12px;text-align:center}.public-page .username-note strong{color:#334155}
.public-page .forgot-password-note{margin-top:16px;color:#64748b;font-size:12px;line-height:1.65;text-align:center}.public-page .forgot-password-note a{color:#1e3a8a;font-weight:700;text-decoration:none}.public-page .forgot-password-note a:hover{text-decoration:underline}
.public-content{width:min(1100px,100%);margin:68px auto 0}.public-eyebrow{color:#2563eb;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.public-title{margin:10px 0 12px;color:#10233d!important;font-size:clamp(28px,4vw,44px);line-height:1.25}.public-lead{max-width:720px;margin:0;color:#64748b!important;font-size:17px;line-height:1.8}
.showcase-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}.showcase-card{padding:24px;background:#fff;border:1px solid #dce2ea;border-radius:20px;box-shadow:0 14px 35px rgba(15,23,42,.08)}.showcase-card.wide{grid-column:1/-1}.showcase-card h3{margin:0 0 8px;color:#10233d!important;font-size:20px}.showcase-card>p{margin:0 0 20px;color:#64748b!important;line-height:1.7}
.mock-table{width:100%;border-collapse:collapse;border-radius:12px;overflow:hidden}.mock-table th{padding:11px;color:#fff!important;background:#10233d!important;text-align:left;font-size:12px}.mock-table td{padding:11px;color:#334155!important;border-bottom:1px solid #e6ebf1;font-size:13px}.mock-check{display:inline-grid;width:22px;height:22px;place-items:center;border-radius:7px;color:#fff;background:#2563eb;font-weight:800}.mock-check.off{color:#94a3b8;background:#eef2f7}
.week-strip{display:flex;gap:8px;margin-top:14px}.week-cell{display:flex;flex:1;min-width:34px;flex-direction:column;align-items:center;gap:6px;padding:9px 4px;border-radius:10px;color:#64748b;background:#f1f5f9;font-size:11px}.week-cell.done{color:#1d4ed8;background:#e8f1ff}.week-cell i{width:9px;height:9px;border-radius:50%;background:#cbd5e1}.week-cell.done i{background:#2563eb}
.summary-bars{display:grid;gap:15px}.summary-label-row{display:flex;justify-content:space-between;color:#334155;font-size:13px;font-weight:700}.summary-track{height:10px;margin-top:7px;border-radius:999px;background:#e7ebf0;overflow:hidden}.summary-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#10233d,#3b82f6)}
.csv-box{padding:17px;border-radius:12px;color:#cbd5e1;background:#07111f;font:12px/1.7 Consolas,monospace;overflow:auto;white-space:nowrap}
.public-cta{margin:48px 0;padding:34px;text-align:center;color:#fff;background:linear-gradient(135deg,#07111f,#17345b);border-radius:22px}.public-cta h2{margin:0 0 10px;color:#fff!important}.public-cta p{margin:0 0 22px;color:#cbd5e1!important}
.public-footer{width:min(1100px,100%);margin:28px auto 10px;padding-top:20px;border-top:1px solid #d6dde7;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#64748b;font-size:13px}.public-footer nav{display:flex;gap:16px;flex-wrap:wrap}.public-footer a{color:#475569;text-decoration:none}.public-footer a:hover{text-decoration:underline}
.public-shell{width:min(900px,100%);margin:32px auto;padding:38px;background:#fff;border:1px solid #dce2ea;border-radius:22px;box-shadow:0 16px 44px rgba(15,23,42,.08)}.public-shell h1{margin-top:0;color:#10233d!important}.public-shell h2{margin-top:34px;color:#17345b!important;font-size:21px}.public-shell p,.public-shell li{color:#475569!important;line-height:1.85}.public-shell .updated{color:#94a3b8!important;font-size:13px}.public-nav{width:min(900px,100%);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.public-brand{color:#10233d;font-size:22px;font-weight:900;text-decoration:none}.public-nav-links{display:flex;gap:12px}.public-nav-links a{padding:9px 13px;border-radius:9px;color:#334155;background:#fff;border:1px solid #dce2ea;text-decoration:none;font-size:13px;font-weight:700}
.demo-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}.demo-note{padding:10px 13px;color:#475569;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;font-size:13px}.demo-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:20px}.demo-panel{padding:22px;background:#fff;border:1px solid #dce2ea;border-radius:18px;box-shadow:0 10px 28px rgba(15,23,42,.07)}.demo-habit{display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px 0;border-bottom:1px solid #e5eaf0}.demo-habit:last-child{border-bottom:0}.demo-habit h3{margin:0;color:#10233d!important;font-size:16px}.demo-habit p{margin:5px 0 0;color:#64748b!important;font-size:12px}.demo-toggle{width:46px;height:28px;padding:3px;border:0;border-radius:999px;background:#cbd5e1;cursor:pointer}.demo-toggle span{display:block;width:22px;height:22px;border-radius:50%;background:#fff;transition:.18s}.demo-toggle.on{background:#2563eb}.demo-toggle.on span{transform:translateX(18px)}
@media(max-width:900px){body.public-page{padding:14px!important}.public-page .wrapper{min-height:0}.public-page .left-panel{display:flex!important;padding:38px 28px}.public-page .catch{font-size:32px}.showcase-grid,.demo-grid{grid-template-columns:1fr}.showcase-card.wide{grid-column:auto}.public-shell{padding:25px}.public-nav{align-items:flex-start;gap:12px}.public-nav-links{justify-content:flex-end;flex-wrap:wrap}.demo-toolbar{align-items:flex-start;flex-direction:column}}
