:root{--ink:#163b48;--ink-2:#0e2b35;--teal:#1b877e;--sun:#f5b63b;--paper:#f7f8f5;--cream:#fffaf0;--line:#dce5df;--muted:#657578;--coral:#e8765c;--less:#fff0df;--more:#e6f4ed;--white:#fff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 0 0,#e9f3ee 0,transparent 31rem),var(--paper);color:var(--ink-2);font:16px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button{border:0;cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f5b63b;outline-offset:2px}.app{max-width:1180px;margin:auto;padding:24px 28px 56px}.hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#164653,#103641);color:#fff;border-radius:28px;padding:30px 34px;box-shadow:0 18px 40px #153b472b}.hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:#1b877e;opacity:.34;right:-120px;top:-210px}.kicker{font-size:.75rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#ffdb82}.hero h1{font-size:clamp(1.9rem,4.2vw,3.15rem);line-height:1.03;letter-spacing:-.045em;margin:8px 0}.hero p{margin:0;color:#e2efec;font-size:1.05rem}.identity{z-index:1;align-self:flex-start;display:flex;gap:12px;align-items:center;background:#ffffff13;border:1px solid #ffffff26;padding:9px 10px 9px 14px;border-radius:14px;color:#e5f3ef;font-size:.9rem;white-space:nowrap}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f5b63b;color:var(--ink);font-weight:850}.signout{padding:7px 10px;border-radius:9px;background:#fff;color:var(--ink);font-size:.82rem;font-weight:800}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.metric{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px}.metric strong{display:block;font-size:1.45rem;letter-spacing:-.04em}.metric span{color:var(--muted);font-size:.86rem}.metric.brand{background:var(--cream)}.nav{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 20px}.nav button{padding:10px 14px;border-radius:12px;background:transparent;color:var(--muted);font-weight:750}.nav button.active{background:var(--ink);color:#fff;box-shadow:0 5px 12px #153b4820}.panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px}.panel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:20px}.panel-head h2,.panel h2{font-size:1.35rem;letter-spacing:-.03em;margin:0}.panel-head p{margin:4px 0 0;color:var(--muted)}.rule-chip{font-size:.8rem;border-radius:100px;padding:7px 10px;background:#eff5f3;color:var(--teal);font-weight:800;white-space:nowrap}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.choice-group{border-radius:18px;padding:15px}.choice-group.less{background:var(--less)}.choice-group.more{background:var(--more)}.choice-group h3{margin:2px 0 9px;font-size:1.05rem}.choice-group h3 span{font-size:.8rem;font-weight:650;color:var(--muted);margin-left:5px}.choice{display:flex;width:100%;gap:12px;text-align:left;align-items:flex-start;background:#ffffffb8;border:1px solid #ffffffd4;border-radius:13px;padding:12px;margin:8px 0;color:var(--ink-2);transition:.18s transform,.18s box-shadow,.18s background}.choice:hover{transform:translateY(-2px);box-shadow:0 9px 18px #173a4720;background:#fff}.point{flex:none;display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--ink);color:#fff;font-size:.82rem;font-weight:850}.more .point{background:var(--teal)}.choice b{display:block;font-size:.92rem;line-height:1.25}.choice small{display:block;color:var(--muted);font-size:.75rem;margin-top:3px}.footer-rule{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);margin-top:18px;padding-top:16px;color:var(--muted);font-size:.86rem}.spark{color:var(--sun);font-size:1.25rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.rankings{margin:8px 0 0;padding:0;list-style:none}.rankings li,.feed li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.rankings li:last-child,.feed li:last-child{border-bottom:0}.rank{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#eff5f3;color:var(--teal);font-size:.8rem;font-weight:800;margin-right:8px}.person{display:flex;align-items:center}.feed{list-style:none;margin:8px 0 0;padding:0}.feed strong{display:block;font-size:.9rem}.feed small{color:var(--muted)}.tag{font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.empty{color:var(--muted);padding:18px 0}.checkin{max-width:580px}.field{display:block;margin:15px 0}.field label{display:block;font-size:.84rem;font-weight:750;margin-bottom:6px}.field input,.field select{width:100%;padding:12px;border-radius:11px;border:1px solid #cbd8d3;background:#fff}.primary{padding:12px 16px;border-radius:12px;background:var(--ink);color:#fff;font-weight:800}.primary:hover{background:#0c2c36}.prize-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.prize{min-height:142px;border:1px dashed #b8cbc4;border-radius:16px;padding:16px;background:linear-gradient(135deg,#fbfcfa,#f3f7f4);display:flex;flex-direction:column;justify-content:space-between}.prize:first-child{background:linear-gradient(135deg,#fff7dc,#fff)}.prize em{font-size:.76rem;font-style:normal;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:var(--teal)}.prize strong{font-size:1rem}.prize small{color:var(--muted)}.rules{max-width:760px}.rules p{color:#43585a}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:22px;background:linear-gradient(135deg,#143d49,#1b877e)}.auth-card{width:min(100%,500px);background:#fff;border-radius:26px;padding:30px;box-shadow:0 25px 60px #05242e55}.auth-card h1{font-size:2rem;line-height:1.05;letter-spacing:-.045em;margin:8px 0}.auth-card p{color:var(--muted)}.auth-tabs{display:flex;border-radius:12px;background:#f0f4f2;padding:4px;margin:20px 0}.auth-tabs button{flex:1;padding:9px;border-radius:9px;background:transparent;color:var(--muted);font-weight:750}.auth-tabs button.active{background:#fff;color:var(--ink);box-shadow:0 2px 7px #173a4712}.consent{display:flex;gap:9px;align-items:flex-start;font-size:.82rem;line-height:1.3}.consent input{width:auto;margin-top:3px;accent-color:var(--teal)}.notice{margin:12px 0;padding:11px 13px;border-radius:11px;background:#e7f5ef;color:#17645d;font-weight:650}.notice.error{background:#fff0ed;color:#a33d30}.setup{max-width:640px;margin:70px auto}.invite{margin:18px 0;border:1px dashed #b5c8c1;background:#f1f7f4;border-radius:16px;padding:18px;text-align:center}.invite code{display:block;font-size:2.4rem;font-weight:850;letter-spacing:.16em;color:var(--ink);margin-top:7px}.toast{position:fixed;right:18px;bottom:18px;z-index:40;padding:13px 16px;border-radius:12px;background:#173f4b;color:#fff;box-shadow:0 12px 30px #10374340}.modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:18px;background:#092c3690}.modal-box{width:min(100%,430px);background:#fff;border-radius:20px;padding:22px;box-shadow:0 20px 60px #092c3660}.modal-box h2{margin:0 0 6px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.secondary{padding:12px 16px;border-radius:12px;background:#edf3f1;color:var(--ink);font-weight:800}.confetti-layer{position:fixed;inset:0;z-index:70;pointer-events:none;overflow:hidden}.confetti{position:absolute;top:-20px;width:var(--s);height:calc(var(--s)*1.45);background:var(--c);border-radius:var(--r);animation:fall var(--d) cubic-bezier(.13,.75,.18,1) var(--delay) forwards}.flash{position:fixed;inset:0;z-index:69;pointer-events:none;background:#fff4c5;animation:flash .55s ease-out forwards}@keyframes fall{to{transform:translate(var(--x),110vh) rotate(var(--rot));opacity:0}}@keyframes flash{0%{opacity:0}15%{opacity:.7}100%{opacity:0}}@media(max-width:760px){.app{padding:14px 14px 38px}.hero{padding:25px 22px;display:block}.identity{display:inline-flex;margin-top:18px}.metrics{grid-template-columns:repeat(2,1fr)}.choice-grid,.two-col{grid-template-columns:1fr}.prize-grid{grid-template-columns:1fr 1fr}.panel{padding:18px}.panel-head{display:block}.rule-chip{display:inline-block;margin-top:9px}}@media(prefers-reduced-motion:reduce){.confetti,.flash{display:none}.choice{transition:none}}
