:root{--bg-start:#e2eaff;--bg-end:#fbe3e8;--card:#fff;--card-inner:#f4f6fa;--ink:#0a1628;--text:#14243d;--muted:#5b6b82;--dim:#94a0b3;--border:#dde4ed;--border-soft:#e8edf4;--blue:#1c3fc9;--blue-hover:#16339f;--blue-soft:#dce6ff;--blue-deep:#0d1f5c;--red:#dc2626;--red-soft:#fee0e0;--red-deep:#991414;--green:#059669;--green-soft:#c8f5e2;--gold:#d4a94a;--gold-soft:#f7ecd2;--g-blue:linear-gradient(135deg,#2f5be8,#1c3fc9 48%,#0d1f5c);--g-green:linear-gradient(120deg,#17c98c,#059669);--sh-sm:0 1px 2px rgba(15,22,49,.04),0 2px 8px -2px rgba(15,22,49,.05);--sh:0 4px 12px rgba(15,22,49,.06),0 10px 30px -12px rgba(15,22,49,.14);--sh-up:0 -10px 40px rgba(15,22,49,.16)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:#e8eeff}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Inter,sans-serif;color:var(--text);min-height:100vh;max-width:520px;margin:0 auto;font-size:15px;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,var(--bg-start) 0,var(--bg-end) 100%)}h1,h2,h3{font-weight:700;letter-spacing:-.022em;color:var(--ink)}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:15px}.screen{padding:24px 20px 90px}.card{background:var(--card);border:1px solid var(--border-soft);border-radius:16px;padding:16px 18px;box-shadow:var(--sh-sm);margin-bottom:14px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--blue);text-transform:uppercase}.h-title{font-size:24px;margin:6px 0 4px}.sub{color:var(--muted);font-size:13.5px}.btn{display:block;width:100%;padding:14px 16px;border:none;border-radius:13px;background:var(--g-blue);color:#fff;font-weight:700;font-size:15.5px;box-shadow:var(--sh-sm)}.btn:disabled{opacity:.55}.btn-ghost{display:block;width:100%;padding:13px 16px;border-radius:13px;border:1px solid var(--border);background:#fff;color:var(--ink);font-weight:700;font-size:14.5px}.btn-sm{padding:8px 14px;border-radius:10px;border:none;background:var(--blue);color:#fff;font-weight:700;font-size:13px}.btn-green{background:var(--g-green)}.field{margin-bottom:14px}.field label{display:block;font-size:12.5px;font-weight:700;color:var(--muted);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--ink);outline:none}.field input:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:9px 15px;border-radius:999px;border:1.5px solid var(--border);background:#fff;font-weight:600;font-size:13.5px;color:var(--ink)}.chip.on{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-deep);font-weight:700}.tag{display:inline-block;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.03em}.err{background:var(--red-soft);color:var(--red-deep);border-radius:10px;padding:10px 12px;font-size:13px;margin:10px 0}.tabbar{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:520px;display:flex;background:hsla(0,0%,100%,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border-soft);padding:8px 0 calc(10px + env(safe-area-inset-bottom));z-index:40}.tabbar button{flex:1 1;background:none;border:none;font-size:11.5px;font-weight:700;color:var(--dim);display:flex;flex-direction:column;align-items:center;gap:3px}.tabbar button.on{color:var(--blue)}.tabbar .ic{font-size:21px;line-height:1}.bd{inset:0;background:rgba(10,22,40,.45);z-index:60}.bd,.sheet{position:fixed}.sheet{bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:520px;background:#fff;border-radius:22px 22px 0 0;box-shadow:var(--sh-up);z-index:61;padding:18px 20px calc(22px + env(safe-area-inset-bottom));max-height:84vh;overflow-y:auto}.sheet h3{font-size:17px;margin-bottom:4px}.grabber{width:42px;height:5px;border-radius:3px;background:var(--border);margin:0 auto 14px}.callcard{background:#fff;border:1px solid var(--border-soft);border-radius:20px;box-shadow:var(--sh);padding:20px}.score-pill{background:var(--g-blue);color:#fff;border-radius:999px;padding:4px 12px;font-weight:800;font-size:12.5px}.reason{font-size:13px;color:var(--text);padding:7px 0 0}.statrow{display:flex;gap:10px}.stat{flex:1 1;background:var(--card-inner);border-radius:12px;padding:10px 12px}.stat b{display:block;font-size:16px;color:var(--ink)}.stat span{font-size:11px;color:var(--muted);font-weight:600}.goalbar{height:8px;border-radius:5px;background:var(--border-soft);overflow:hidden}.goalbar>div{height:100%;background:var(--g-green);border-radius:5px;transition:width .4s}.outgrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:9px;gap:9px}.outbtn{border:1.5px solid var(--border);border-radius:13px;background:#fff;padding:12px 10px;text-align:left}.outbtn.on{border-color:var(--blue);background:var(--blue-soft)}.outbtn b{display:block;font-size:13.5px;color:var(--ink)}.outbtn span{font-size:11px;color:var(--muted)}.row{display:flex;align-items:center;gap:10px}.spacer{margin-left:auto}.divider{height:1px;background:var(--border-soft);margin:12px 0}.listrow{padding:12px 0;border-bottom:1px solid var(--border-soft)}