:root{--brand: #1f3bb0;--brand-hover: #182f8f;--hero-a: #24379e;--hero-b: #182a72;--accent: #f26a21;--ink: #14213d;--muted: #6b7489;--line: #e3e7f5;--card-border: #dfe4f7;--bg: #f6f7fb;--ok: #1a9b5f;--err: #d64545}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.page{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,56px)}.topbar{background:#fff;border-bottom:1px solid var(--line);padding:clamp(12px,3vw,18px) 0}.topbar-row{display:flex;align-items:center;justify-content:space-between}.logo-img{height:clamp(34px,9vw,46px);width:auto;display:block}.popup-x{background:none;border:none;font-size:30px;line-height:1;color:#6b7489;cursor:pointer;padding:0 6px}.popup-x:hover{color:#14213d}.hero{background:linear-gradient(135deg,var(--hero-a),var(--hero-b));color:#fff;padding:clamp(32px,6vw,64px) 0 clamp(56px,8vw,96px)}.hero h1{font-size:clamp(28px,6.4vw,52px);line-height:1.12;font-weight:700;margin:0 0 clamp(10px,2vw,16px);letter-spacing:-.025em;max-width:760px}.hero p{margin:0;color:#c7d0f2;font-size:clamp(15px,3.6vw,19px);font-weight:400;letter-spacing:-.01em}.wrap{padding:0 0 48px}.card{width:100%;max-width:560px;background:#fff;border:1px solid var(--card-border);border-radius:20px;padding:clamp(20px,5vw,30px);margin:clamp(-40px,-6vw,-56px) auto 0;box-shadow:0 22px 55px #182a7229}.req{color:#e5484d;margin-left:2px;font-weight:700}.note{font-size:12.5px;color:var(--muted);line-height:1.45;margin:10px 0 0}.opt-note{text-transform:none;letter-spacing:0;font-weight:500;color:#9aa3b6}.remarks{width:100%;padding:12px 14px;font-size:14px;font-family:inherit;border:1px solid var(--line);border-radius:12px;resize:vertical;font-weight:500}.remarks:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px #1f3bb01f}.counter{text-align:right}.consent-msg{font-size:16px;color:var(--ink);line-height:1.6;font-weight:500;margin:0 0 16px;background:#fff7ed;border:2px solid #f4c99a;border-left:6px solid var(--accent);border-radius:14px;padding:18px 20px}.consent{display:flex;align-items:center;gap:14px;font-size:17px;font-weight:700;cursor:pointer;margin:0;background:#f2f5ff;border:2px solid var(--card-border);border-radius:14px;padding:16px 18px}.consent:hover{border-color:var(--brand)}.consent input{width:26px;height:26px;margin:0;flex-shrink:0;accent-color:var(--brand);cursor:pointer}.btn:disabled{background:#b9c1d0;color:#fff;opacity:1;cursor:not-allowed;box-shadow:none}.err-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14213d80;display:grid;place-items:center;padding:24px;z-index:100}.err-modal{background:#fff;border-radius:18px;padding:28px 26px;max-width:380px;width:100%;text-align:center;box-shadow:0 24px 60px #14213d59}.err-icon{width:52px;height:52px;border-radius:50%;background:#fdecec;color:var(--err);font-size:30px;font-weight:800;display:grid;place-items:center;margin:0 auto 14px}.err-text{font-size:16px;font-weight:600;color:var(--ink);line-height:1.5;margin:0 0 20px}.err-modal .btn{margin-top:0}.phone{display:flex;align-items:stretch;margin-top:6px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.phone:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #1f3bb01f}.cc{display:flex;align-items:center;padding:0 14px;background:#f4f6fc;color:var(--muted);font-weight:600;font-size:14px;border-right:1px solid var(--line)}.phone-input{flex:1;margin:0;border:none;border-radius:0;box-shadow:none;letter-spacing:.04em}.phone-input:focus{outline:none;box-shadow:none}section{margin-bottom:22px}section:last-of-type{margin-bottom:0}.sec{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 12px}.sec .mins{text-transform:none;letter-spacing:0;font-weight:600;color:#9aa3b6;margin-left:6px}label{display:block;font-size:13px;font-weight:600;margin-bottom:12px}label:last-child{margin-bottom:0}input,select{width:100%;margin-top:6px;padding:12px 14px;font-size:14px;border:1px solid var(--line);border-radius:12px;background:#fff;font-weight:500;font-family:inherit}input:focus,select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px #1f3bb01f}input[readonly]{background:#eef2fb;color:var(--ink);font-weight:600;cursor:default}.hint{font-size:12px;color:var(--muted);margin:10px 0 0}.rad-note-emp{font-size:13px;color:#1f3bb0;background:#eef2fb;border:1px solid #d3ddf6;border-radius:10px;padding:9px 12px;margin:0 0 12px;font-weight:600;line-height:1.4}.pills{display:flex;flex-wrap:wrap;gap:10px}.pill{display:inline-flex;align-items:center;gap:7px;padding:11px 18px;border-radius:14px;border:1px solid var(--line);background:#f3f5fb;color:var(--ink);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .12s}.pill:hover{border-color:#bcc7ee}.pill.on{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 6px 16px #1f3bb047}.pill .dot{font-size:12px}.pills.dates .pill{padding:10px 16px}.opts{display:flex;flex-direction:column;gap:10px}.opt{display:flex;align-items:center;gap:13px;text-align:left;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;font-family:inherit;transition:border-color .12s,background .12s,box-shadow .12s}.opt:hover{border-color:#bcc7ee}.opt.on{border-color:var(--brand);background:#f2f5ff;box-shadow:0 0 0 3px #1f3bb01f}.opt-check{width:20px;height:20px;border-radius:50%;border:2px solid #cdd4e8;flex-shrink:0;position:relative}.opt.on .opt-check{border-color:var(--brand)}.opt.on .opt-check:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:var(--brand)}.opt-text{display:flex;flex-direction:column;gap:2px}.opt-text strong{font-size:15px;font-weight:600}.opt-text span{font-size:12.5px;color:var(--muted)}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:9px;margin-top:14px}.slot{border:1px solid var(--line);background:#fff;border-radius:12px;padding:9px 6px;font-size:13px;font-weight:700;cursor:pointer;display:flex;flex-direction:column;gap:2px;align-items:center;font-family:inherit}.slot:hover{border-color:var(--brand)}.slot.sel{background:var(--brand);color:#fff;border-color:var(--brand)}.slot .left{font-size:10px;font-weight:600;opacity:.7}.btn{width:100%;margin-top:24px;padding:15px;font-size:15px;font-weight:700;color:#fff;background:var(--brand);border:none;border-radius:14px;cursor:pointer;font-family:inherit;box-shadow:0 10px 24px #1f3bb047}.btn:hover{background:var(--brand-hover)}.btn.ghost{background:#fff;color:var(--brand);border:1px solid var(--line);box-shadow:none}.alert{background:#fdecec;color:var(--err);border:1px solid #f6cccc;padding:11px 14px;border-radius:12px;font-size:13px;margin-bottom:18px}.success{text-align:center}.tick{width:58px;height:58px;border-radius:50%;background:var(--ok);color:#fff;font-size:30px;display:grid;place-items:center;margin:4px auto 16px}.summary{text-align:left;border:1px solid var(--line);border-radius:14px;padding:4px 16px;margin:4px 0}.srow{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.srow:last-child{border-bottom:none}.srow span{color:var(--muted)}.conf-h{font-size:18px;margin:0 0 14px;color:var(--ink)}.conf-actions{display:flex;gap:10px;margin-top:18px}.conf-actions .btn{width:auto;flex:1}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{position:absolute;left:0;top:0;width:100%;padding:24px}.no-print,.topbar,.hero{display:none!important}}.attend-app :root{--brand:#1f3bb0;--brand-dark:#182f8f;--ink:#14213d;--muted:#6b7489;--line:#e3e7f5;--bg:#f6f7fb;--ok:#1a9b5f;--err:#d64545;--amber:#c9821a;--rose:#c05b6a;--blue:#2f6cc0;--green:#2e8b6a}.attend-app *{box-sizing:border-box}.attend-app{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.attend-app .page{min-height:100vh}.attend-app .topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fff;border-bottom:1px solid var(--line)}.attend-app .logo-img{height:38px;width:auto;display:block}.attend-app .popup-x{background:none;border:none;font-size:28px;line-height:1;color:var(--muted);cursor:pointer;padding:0 6px}.attend-app .popup-x:hover{color:var(--ink)}.attend-app .req{color:var(--err);font-weight:800}.attend-app .wrap{max-width:560px;margin:0 auto;padding:16px}.attend-app .back{background:none;border:none;color:var(--brand);font-weight:700;font-size:14px;cursor:pointer;padding:4px 0 12px}.attend-app .phone{display:flex;margin-top:6px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.attend-app .phone:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #1f3bb01f}.attend-app .cc{display:flex;align-items:center;padding:0 14px;background:#f4f6fc;color:var(--muted);font-weight:600;font-size:14px;border-right:1px solid var(--line)}.attend-app .phone-in{flex:1;margin:0;border:none;border-radius:0;letter-spacing:.04em}.attend-app .phone-in:focus{outline:none;box-shadow:none}.attend-app .hero{background:linear-gradient(135deg,#24379e,#182a72);color:#fff;padding:clamp(28px,6vw,44px) 18px}.attend-app .hero-in{max-width:460px;margin:0 auto}.attend-app .hero h1{font-size:clamp(26px,5vw,34px);line-height:1.12;font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.attend-app .hero p{margin:0;color:#c7d0f2;font-size:15px;font-weight:400}.attend-app .login{max-width:460px;margin:0 auto;padding:22px 18px}.attend-app .login h1{font-size:26px;margin:0 0 6px;letter-spacing:-.02em}.attend-app .lead{color:var(--muted);margin:0 0 20px;font-size:15px}.attend-app .lcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.attend-app label{display:block;font-size:13px;font-weight:700;margin-bottom:14px}.attend-app .hint{font-weight:500;color:var(--muted);text-transform:none}.attend-app input,.attend-app select{width:100%;margin-top:6px;padding:12px 14px;font-size:15px;border:1px solid var(--line);border-radius:12px;font-weight:500;font-family:inherit;background:#fff}.attend-app input:focus,.attend-app select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px #1f3bb01f}.attend-app input[readonly]{background:#eef2fb;color:var(--ink);font-weight:600}.attend-app .btn{width:100%;margin-top:6px;padding:14px;font-size:16px;font-weight:700;color:#fff;background:var(--brand);border:none;border-radius:14px;cursor:pointer;font-family:inherit;box-shadow:0 8px 22px #1f3bb042}.attend-app .btn:hover{background:var(--brand-dark)}.attend-app .btn.ghost{background:#fff;color:var(--brand);border:1px solid var(--line);box-shadow:none}.attend-app .btn.exit{width:auto;padding:9px 16px;font-size:14px;margin:0}.attend-app .alert{background:#fdecec;color:var(--err);border:1px solid #f6cccc;padding:10px 12px;border-radius:10px;font-size:13px;margin:0 0 14px}.attend-app .steps{background:#123d2e;color:#eaf5ef;border-radius:16px;padding:16px 18px;margin-bottom:16px}.attend-app .steps-hd{font-size:15px;font-weight:800;margin-bottom:10px}.attend-app .step{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.45;padding:5px 0;color:#dcefe5}.attend-app .step b{color:#fff}.attend-app .sn{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:#1a9b5f;color:#fff;font-weight:800;font-size:13px;display:grid;place-items:center}.attend-app .goodie{background:#fdf6e3;border:1px solid #f0dca6;color:#7a5a12;border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.4;margin-bottom:16px}.attend-app .goodie b{color:#5a4310}.attend-app .login .goodie{margin:16px 0 0}.attend-app .goodie.win{background:#e6f7ee;border-color:#a4d4bd;color:#1a6b45}.attend-app .goodie.win b{color:#12633d}.attend-app .passport{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:16px}.attend-app .stamp{width:52px;height:52px;flex-shrink:0;border-radius:50%;background:#123d2e;color:#fff;display:grid;place-items:center;font-size:24px}.attend-app .pp-info{flex:1;min-width:0}.attend-app .pp-title{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--green)}.attend-app .pp-loc{font-size:20px;font-weight:800;letter-spacing:-.01em;margin:2px 0 8px}.attend-app .pp-prog{display:flex;align-items:center;gap:10px}.attend-app .pp-bar{flex:1;height:10px;background:#eef1f6;border-radius:8px;overflow:hidden}.attend-app .pp-fill{height:100%;background:#1a9b5f;border-radius:8px;transition:width .3s}.attend-app .pp-txt{font-size:13px;font-weight:700;color:var(--muted);white-space:nowrap}.attend-app .zcard{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:14px;overflow:hidden;box-shadow:0 6px 18px #14213d0d;cursor:pointer;transition:box-shadow .12s,border-color .12s}.attend-app .zcard:hover{border-color:#bcc7ee}.attend-app .zcard.is-done{background:#f8faf9}.attend-app .zbody{display:flex;align-items:center;gap:14px;padding:16px}.attend-app .zicon{width:64px;height:64px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;font-size:30px;border:2px dashed}.attend-app .zcard.amber .zicon{background:#fdf1e2;border-color:#e7b985}.attend-app .zcard.rose .zicon{background:#fbe9ec;border-color:#e2a6b0}.attend-app .zcard.blue .zicon{background:#e7f0fb;border-color:#a8c4e8}.attend-app .zcard.green .zicon{background:#e6f3ec;border-color:#a4d4bd}.attend-app .zinfo{flex:1;min-width:0}.attend-app .zname{font-size:18px;font-weight:800;letter-spacing:-.01em;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.attend-app .stamped{font-size:11px;font-weight:800;color:var(--ok);background:#e4f6ec;border-radius:20px;padding:2px 9px}.attend-app .zsub{font-size:13px;color:var(--muted);margin-top:2px}.attend-app .zaddr{font-size:12px;color:var(--muted);margin-top:6px;font-weight:600}.attend-app .zcam{width:52px;height:52px;flex-shrink:0;border-radius:50%;border:2px solid var(--brand);background:#fff;color:var(--brand);font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}.attend-app .zcard.amber .zcam{border-color:var(--amber);color:var(--amber)}.attend-app .zcard.rose .zcam{border-color:var(--rose);color:var(--rose)}.attend-app .zcard.blue .zcam{border-color:var(--blue);color:var(--blue)}.attend-app .zcard.green .zcam{border-color:var(--green);color:var(--green)}.attend-app .zcard.on{border-color:var(--brand);box-shadow:0 0 0 2px #1f3bb02e}.attend-app .ztimer{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#eef2fb;border-top:1px solid var(--line)}.attend-app .tt-label{font-size:12px;color:var(--muted);font-weight:600}.attend-app .tt-time{font-size:24px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--brand)}.attend-app .zdone{padding:12px 16px;background:#eef7f1;border-top:1px solid #cfe6da}.attend-app .zd-row{display:flex;justify-content:space-between;font-size:14px;padding:3px 0;color:var(--muted)}.attend-app .zd-row b{color:var(--ink);font-variant-numeric:tabular-nums}.attend-app .zd-again{font-size:12px;color:var(--green);font-weight:700;margin-top:6px;text-align:center}.attend-app .scan-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f1b2d99;display:grid;place-items:center;padding:18px;z-index:60}.attend-app .scan-modal{background:#fff;border-radius:18px;width:100%;max-width:400px;padding:18px}.attend-app .scan-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.attend-app .scan-hd strong{font-size:16px}.attend-app .scan-back{background:none;border:none;font-size:22px;color:var(--brand);cursor:pointer;font-weight:700}.attend-app .scan-help{font-size:13px;color:var(--muted);margin:0 0 12px}.attend-app .qr-reader{width:100%;border-radius:12px;overflow:hidden;background:#000;min-height:220px}.attend-app .reg{margin-top:14px}.attend-app .scan-blocked{margin-top:12px}.attend-app .scan-blocked .alert{margin-bottom:10px}.attend-app .scan-note{font-size:12px;color:var(--muted);text-align:center;margin:14px 0 0;line-height:1.4}.attend-app .toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#123d2e;color:#fff;border-radius:14px;padding:14px 18px;display:flex;gap:12px;align-items:center;box-shadow:0 14px 40px #0000004d;z-index:70;max-width:90%}.attend-app .toast-ic{width:34px;height:34px;flex-shrink:0;border-radius:50%;background:var(--ok);display:grid;place-items:center;font-weight:800}.attend-app .toast span{color:#bfe0cf;font-size:13px}.attend-app .err-pop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14213d80;display:grid;place-items:center;padding:24px;z-index:80}.attend-app .err-box{background:#fff;border-radius:16px;padding:24px;max-width:340px;text-align:center}.attend-app .err-box p{font-size:15px;font-weight:600;margin:0 0 16px}.attend-app .err-box .btn{margin-top:0}.attend-app .btn.sm{width:auto;padding:9px 15px;font-size:14px;margin:0;box-shadow:none}.attend-app .btn:disabled{opacity:.5;cursor:not-allowed}.attend-app .pp-metrics{display:flex;gap:16px;flex-wrap:wrap;margin-top:6px}.attend-app .pm{font-size:13px;color:var(--muted)}.attend-app .pm b{color:var(--ink);font-size:15px}.attend-app .addr-toggle{background:none;border:none;color:var(--brand);font-size:12px;font-weight:700;cursor:pointer;padding:5px 0 2px}.attend-app .zstatus{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid var(--line);flex-wrap:wrap}.attend-app .zstatus.ok{background:#eef7f1}.attend-app .zstatus.pending{background:#fdf6e3}.attend-app .zstatus.todo{background:#f8fafc}.attend-app .st-txt{font-size:13px;color:var(--ink)}.attend-app .st-txt.done{color:var(--ok);font-weight:700}.attend-app .fb-banner{background:#eef7f1;border:1px solid #cfe6da;color:#186a43;border-radius:14px;padding:14px 16px;margin-bottom:16px;font-size:14px;line-height:1.45}.attend-app .fb-title{font-size:18px;margin:0 0 14px}.attend-app .fq{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:12px}.attend-app .fq-txt{font-size:15px;font-weight:600;margin-bottom:12px;line-height:1.35}.attend-app .fq-n{color:var(--muted);font-weight:800;margin-right:4px}.attend-app .stars{display:flex;gap:8px}.attend-app .star{font-size:32px;background:none;border:none;cursor:pointer;color:#d8dee9;line-height:1;padding:0}.attend-app .star.on{color:#f5b301}.attend-app .nps{display:flex;gap:5px;flex-wrap:wrap}.attend-app .npsb{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:700;cursor:pointer;font-family:inherit}.attend-app .npsb.on{background:var(--brand);color:#fff;border-color:var(--brand)}.attend-app .opts{display:flex;flex-direction:column;gap:8px}.attend-app .fopt{text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.attend-app .fopt.on{border-color:var(--brand);background:#eef2fb;color:var(--brand)}.attend-app .rank{display:flex;flex-direction:column;gap:8px}.attend-app .rankb{display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.attend-app .rankb.on{border-color:var(--brand);background:#eef2fb}.attend-app .rnum{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:#eef1f6;color:var(--muted);display:grid;place-items:center;font-size:13px;font-weight:800}.attend-app .rankb.on .rnum{background:var(--brand);color:#fff}.attend-app .rank-reset{align-self:flex-start;background:none;border:none;color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;padding:4px 0}.attend-app .ftext{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px}.attend-app .fb-done{text-align:center;padding:44px 22px;background:#eef7f1;border:1px solid #cfe6da;border-radius:18px;margin-top:8px}.attend-app .fb-thumb{font-size:60px;line-height:1}.attend-app .fb-done h2{color:#186a43;margin:12px 0 6px}.attend-app .fb-done p{color:var(--muted);margin:0 0 20px}.camp-entry :root{--brand:#1f3bb0;--ink:#14213d;--muted:#6b7489;--line:#e3e7f5;--bg:#f6f7fb}.camp-entry *{box-sizing:border-box}.camp-entry{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.camp-entry .page{min-height:100vh}.camp-entry .topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fff;border-bottom:1px solid var(--line)}.camp-entry .logo-img{height:38px;width:auto;display:block}.camp-entry .popup-x{background:none;border:none;font-size:28px;line-height:1;color:var(--muted);cursor:pointer;padding:0 6px}.camp-entry .popup-x:hover{color:var(--ink)}.camp-entry .hero{background:linear-gradient(135deg,#24379e,#182a72);color:#fff;padding:clamp(30px,7vw,52px) 18px}.camp-entry .hero-in{max-width:480px;margin:0 auto}.camp-entry .hero h1{font-size:clamp(28px,6vw,40px);line-height:1.1;font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.camp-entry .hero p{margin:0;color:#c7d0f2;font-size:16px}.camp-entry .wrap{max-width:480px;margin:0 auto;padding:20px 18px 40px;display:flex;flex-direction:column;gap:14px}.camp-entry .loading{color:var(--muted);text-align:center;padding:30px}.camp-entry .closed{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;text-align:center;color:var(--muted);font-weight:600}.camp-entry .entry-card{display:flex;align-items:center;gap:16px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;cursor:pointer;font-family:inherit;box-shadow:0 6px 18px #14213d0d;transition:border-color .12s,box-shadow .12s,transform .1s}.camp-entry .entry-card:hover{border-color:var(--brand);box-shadow:0 10px 26px #1f3bb024}.camp-entry .entry-card:active{transform:translateY(1px)}.camp-entry .ec-icon{width:56px;height:56px;flex-shrink:0;border-radius:16px;background:#eef2fb;display:grid;place-items:center;font-size:28px}.camp-entry .ec-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.camp-entry .ec-text strong{font-size:18px;font-weight:800;letter-spacing:-.01em}.camp-entry .ec-text span{font-size:13px;color:var(--muted);line-height:1.4}.camp-entry .ec-arrow{color:var(--brand);font-size:22px;font-weight:800;flex-shrink:0}.menu-link{background:none;border:none;color:var(--brand);font-weight:700;font-size:14px;cursor:pointer;padding:6px 8px}.camp-entry .entry-card{border-width:2px}.camp-entry .entry-card.book{background:#eef2fb;border-color:#9db4ee}.camp-entry .entry-card.book .ec-icon{background:#dbe4fb}.camp-entry .entry-card.book .ec-arrow{color:#1f3bb0}.camp-entry .entry-card.attend{background:#e9f7f0;border-color:#a2d9bf}.camp-entry .entry-card.attend .ec-icon{background:#d3efe0}.camp-entry .entry-card.attend .ec-arrow{color:#1a9b5f}.hero-back{display:inline-block;margin-top:16px;background:#ffffff26;border:1px solid rgba(255,255,255,.45);color:#fff;font-weight:700;font-size:13px;padding:8px 14px;border-radius:10px;cursor:pointer}.hero-back:hover{background:#ffffff47}.attend-app .passport{display:block;padding:18px}.attend-app .pp-camp{font-size:23px;font-weight:800;letter-spacing:-.02em;color:#14213d;line-height:1.1}.attend-app .pp-loc{font-size:16px;font-weight:700;margin:4px 0 12px}.attend-app .pp-metrics{display:flex;flex-direction:column;gap:6px}.attend-app .pp-metrics .pm{font-size:15px;color:#6b7489;font-weight:600}.attend-app .pp-metrics .pm b{color:#1a9b5f;font-size:17px}.attend-app .zcard.todo{background:#f4f7fe;border:2px solid #c3d0f2}.attend-app .zcard.todo:hover{border-color:#1f3bb0;box-shadow:0 8px 22px #1f3bb029}.attend-app .zcard.navy .zicon{background:#aec1ef;border-color:#4a68c0}.attend-app .zcard.navy .zcam{border-color:#2f4a9e;color:#2f4a9e}.attend-app .zcard.alldone{background:#123d2e;border-color:#123d2e}.attend-app .zcard.alldone .zname,.attend-app .zcard.alldone .addr-toggle{color:#eaf5ef}.attend-app .zcard.alldone .zsub,.attend-app .zcard.alldone .zaddr{color:#a9c9ba}.attend-app .zcard.alldone .zicon{background:#1c5540;border-color:#2f6f52}.attend-app .zcard.alldone .zstatus{background:#0e3324;border-top-color:#1f5240}.attend-app .zcard.alldone .st-txt,.attend-app .zcard.alldone .st-txt.done{color:#7fe3b0}.attend-app .npswrap{padding:4px 2px 2px}.attend-app .nps{display:flex;gap:4px}.attend-app .npsb{flex:1 1 0;min-width:0;height:36px;border:1.5px solid #e3e7f5;border-radius:50%;background:#fff;font-size:13px;font-weight:700;color:#14213d;cursor:pointer;padding:0;font-family:inherit}.attend-app .npsb.on{background:#1a9b5f;color:#fff;border-color:#1a9b5f}.attend-app .npsends{display:flex;justify-content:space-between;font-size:12px;color:#6b7489;font-weight:700;margin-top:6px}
