@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap";:root{--ink: #12212b;--ink-soft: #5a6b74;--bg: #f4f7f8;--bg-deep: #e8eef1;--surface: #ffffff;--line: #e3eaee;--accent: #0d9488;--accent-strong: #0f766e;--accent-soft: #e6f7f5;--accent-ink: #f0fdfa;--danger: #e11d48;--ok: #059669;--radius: 18px;--font: "DM Sans", "Segoe UI", system-ui, sans-serif;--display: "Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, monospace;--shadow: 0 8px 28px rgba(18, 33, 43, .06);--shadow-sm: 0 2px 10px rgba(18, 33, 43, .04)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font);font-size:14.5px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:var(--accent-strong);text-decoration:none}h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.03em;margin:0 0 .3rem}h1{font-size:1.55rem}h2{font-size:1.05rem}p{margin:0 0 .65rem}.muted{color:var(--ink-soft)}.small{font-size:.82rem}.mono{font-family:var(--mono);font-size:.8rem}.break-all{word-break:break-all}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border-radius:999px;border:1px solid transparent;padding:.58rem 1rem;font-weight:600;font-size:.86rem;transition:transform .12s ease,background .12s ease,box-shadow .12s ease}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 8px 18px #0d948847}.btn-primary:hover:not(:disabled){background:var(--accent-strong);transform:translateY(-1px)}.btn-ghost{background:#fff;border-color:var(--line);color:var(--ink)}.btn-ghost:hover:not(:disabled){background:#f8fbfc;border-color:#cfd9df}.btn-sm{padding:.4rem .8rem;font-size:.8rem}.btn-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.row-between{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.85rem}.field>span{font-size:.72rem;font-weight:700;color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase}.field-input,.field-textarea{border:1px solid var(--line);border-radius:12px;padding:.65rem .8rem;background:#fff;color:var(--ink)}.field-input:focus,.field-textarea:focus{outline:none;border-color:#5eead4;box-shadow:0 0 0 3px #2dd4bf38}.field-textarea{resize:vertical}.field-hint{margin:-.15rem 0 .75rem}.locked-pillars{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}.locked-pillars li{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .65rem;border-radius:999px;background:#f4f8f9;border:1px solid var(--line);font-size:.82rem;font-weight:650}.deep-dive-editor{margin-bottom:.5rem}.deep-dive-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.85rem}.deep-dive-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.4rem .7rem;font:inherit;font-size:.78rem;font-weight:650;cursor:pointer;color:var(--ink-soft)}.deep-dive-tabs button.is-active{background:#1a2b2e;border-color:#1a2b2e;color:#fff}.deep-dive-pane{display:flex;flex-direction:column;gap:.15rem;padding:.85rem .9rem;border-radius:14px;background:#f7fafb;border:1px solid var(--line)}.deep-dive-subhead{margin:.65rem 0 .15rem;font-size:.82rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft)}.deep-dive-subhead:first-child{margin-top:0}.deep-dive-option{display:grid;grid-template-columns:3.2rem 1fr auto;gap:.5rem;align-items:end;margin-bottom:.35rem}.deep-dive-option.is-hidden{opacity:.55}.deep-dive-option .field{margin:0}.deep-dive-option-emoji{position:relative;align-self:end}.deep-dive-option .btn{margin-bottom:.15rem}.emoji-picker{position:relative}.emoji-picker-trigger{width:3.2rem;height:2.65rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:1.35rem;line-height:1;cursor:pointer;padding:0}.emoji-picker-trigger:hover,.emoji-picker.is-open .emoji-picker-trigger{border-color:var(--accent);background:var(--accent-soft)}.emoji-picker-popover{position:fixed;z-index:1200;width:280px;max-height:min(14rem,calc(100vh - 1rem));overflow:auto;display:grid;grid-template-columns:repeat(6,1fr);gap:.2rem;padding:.45rem;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px #0f172a1f}.emoji-picker-option{aspect-ratio:1;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;font-size:1.25rem;line-height:1;cursor:pointer;padding:0}.emoji-picker-option:hover{background:var(--accent-soft)}.emoji-picker-option.is-selected{background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:-2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.consent{display:flex;gap:.55rem;align-items:flex-start;margin:.7rem 0;font-size:.88rem}.form-error{color:var(--danger);font-size:.86rem;margin:.35rem 0}.form-ok{color:var(--ok);font-size:.86rem}.section-divider{margin-top:1.2rem;padding-top:.9rem;border-top:1px solid var(--line)}.admin-shell{--admin-nav-w: 232px;--admin-bottom-h: 64px;--admin-topbar-h: 56px;display:grid;grid-template-columns:var(--admin-nav-w) 1fr;min-height:100vh;min-height:100dvh;background:var(--bg)}.admin-nav{position:sticky;top:0;height:100vh;height:100dvh;background:#fff;color:#4b5c66;padding:1rem .75rem;display:flex;flex-direction:column;gap:.15rem;z-index:40;overflow-y:auto;border-right:1px solid var(--line)}.admin-brand{display:flex;align-items:center;gap:.65rem;padding:.25rem .45rem 1rem}.admin-logo{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-family:var(--display);font-weight:800;background:linear-gradient(145deg,#2dd4bf,#0d9488);color:#fff;flex-shrink:0;box-shadow:0 8px 16px #0d94884d}.admin-brand-text{display:flex;flex-direction:column;min-width:0}.admin-brand-text strong{color:var(--ink);font-family:var(--display);font-size:1.05rem;letter-spacing:-.03em}.admin-brand .muted,.admin-topbar-brand .muted{color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.72rem}.admin-nav-label{margin:.7rem .55rem .3rem;font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#93a4ad}.admin-nav-links{display:flex;flex-direction:column;gap:.15rem}.admin-nav a{display:flex;align-items:center;gap:.6rem;color:#52636d;padding:.62rem .7rem;border-radius:12px;font-weight:600;font-size:.88rem;position:relative}.admin-nav a:hover{background:#f3f8f9;color:var(--ink)}.admin-nav a.is-active{background:var(--accent-soft);color:var(--accent-strong)}.admin-nav a.is-active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:999px;background:var(--accent)}.nav-icon{width:1.2rem;display:grid;place-items:center}.admin-nav-foot{margin-top:auto;padding:.85rem .35rem .2rem;display:flex;flex-direction:column;gap:.5rem}.admin-help{font-size:.78rem;color:var(--ink-soft);padding:.55rem .65rem;background:#f7fafb;border-radius:12px;line-height:1.35}.admin-help span{color:#93a4ad}.admin-nav .btn-ghost{width:100%;border-radius:999px;color:#52636d}.admin-menu-close,.admin-menu-btn,.admin-topbar,.admin-bottom,.admin-backdrop{display:none}.admin-frame{min-width:0;display:flex;flex-direction:column}.admin-main{padding:1.35rem 1.5rem 2.75rem;max-width:1180px;width:100%}.dash{display:flex;flex-direction:column;gap:1rem}.dash-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.85rem;flex-wrap:wrap}.dash-eyebrow{margin:0 0 .15rem;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.dash-title{display:flex;align-items:center;gap:.4rem;margin:0;font-size:1.55rem}.dash-sub{margin:.15rem 0 0;color:var(--ink-soft);font-size:.9rem}.dash-spark{color:#f59e0b;font-size:1.1rem}.dash-actions{display:flex;gap:.45rem;flex-wrap:wrap}.promo-banner{display:grid;grid-template-columns:1.4fr .9fr;gap:1rem;align-items:center;padding:1.25rem 1.35rem;border-radius:22px;background:linear-gradient(105deg,#ff8a3d,#ff5c8a 48%,#c84bff);color:#fff;box-shadow:0 18px 40px #ff5c8a47;overflow:hidden;position:relative}.promo-copy{position:relative;z-index:1;max-width:34rem}.promo-copy h2{font-size:clamp(1.15rem,2.2vw,1.45rem);margin:.4rem 0 .45rem;color:#fff}.promo-copy p{color:#ffffffeb;margin-bottom:.85rem}.promo-chip{display:inline-flex;padding:.2rem .55rem;border-radius:999px;background:#fff3;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.btn-promo{background:#fff;color:#be185d;border-radius:999px;padding:.55rem 1rem;font-weight:700;display:inline-flex;box-shadow:0 8px 20px #0000001f}.btn-promo:hover{transform:translateY(-1px)}.promo-stack{position:relative;min-height:120px;display:grid;place-items:center}.promo-visual{position:relative;min-height:160px;display:grid;place-items:center}.promo-illu{width:min(220px,70%);height:auto;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(18,33,43,.18));transform:rotate(-4deg)}.promo-visual .promo-stack{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.promo-visual .promo-card{opacity:.96}.spot-art{display:block;max-width:100%;height:auto}.insight-metric-row{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem}.insight-illu{width:72px;height:72px;object-fit:contain;flex-shrink:0}.empty-with-art{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem;padding:1.25rem .5rem}.empty-with-art.compact{padding:.75rem .25rem}.empty-illu{width:min(180px,55%);max-height:140px;object-fit:contain;margin-bottom:.35rem}.staff-hint-art{display:flex;align-items:center;gap:.85rem}.staff-hint-art>div{display:flex;flex-direction:column;gap:.15rem}.staff-illu{width:72px;height:72px;object-fit:contain;flex-shrink:0}.promo-card{position:absolute;width:min(180px,70%);background:#fff;color:var(--ink);border-radius:14px;padding:.75rem .85rem;box-shadow:0 14px 30px #12212b2e;display:flex;flex-direction:column}.promo-card strong{font-size:1.35rem;font-family:var(--display)}.promo-card span{font-size:.75rem;color:var(--ink-soft)}.promo-card:nth-child(1){transform:translate(-28px,-18px) rotate(-6deg);z-index:1}.promo-card:nth-child(2){transform:translate(8px,4px) rotate(2deg);z-index:2}.promo-card:nth-child(3){transform:translate(42px,28px) rotate(7deg);z-index:3}.insight-filters{display:flex;gap:.45rem;flex-wrap:wrap}.insight-filters button{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);background:#fff;color:#52636d;border-radius:999px;padding:.45rem .85rem;font-weight:600;font-size:.84rem}.insight-filters button.is-active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 8px 16px #0d948840}.filter-badge{min-width:1.15rem;height:1.15rem;padding:0 .3rem;border-radius:999px;display:inline-grid;place-items:center;font-size:.68rem;font-weight:800;color:#fff}.filter-badge.bad{background:#f43f5e}.filter-badge.good{background:#10b981}.insight-filters button.is-active .filter-badge{background:#ffffff47}.insight-list{display:flex;flex-direction:column;gap:.85rem}.insight-card{display:grid;grid-template-columns:1.05fr 1fr;border-radius:22px;overflow:hidden;border:1px solid transparent;box-shadow:var(--shadow-sm);min-height:168px}.insight-card.tone-good{background:#dff7ef}.insight-card.tone-attention{background:#ffe4ea}.insight-card.tone-neutral{background:#e7f3ff}.insight-left{padding:1.15rem 1.2rem;display:flex;flex-direction:column;gap:.55rem}.insight-left h2{font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.25;margin:0}.insight-left em{font-style:normal;color:var(--accent-strong)}.insight-tag{display:inline-flex;width:fit-content;padding:.22rem .6rem;border-radius:999px;background:#ffffffbf;font-size:.72rem;font-weight:700;color:#3d4f58}.insight-link{margin-top:auto;display:inline-flex;align-items:center;gap:.35rem;font-weight:700;color:var(--ink);font-size:.88rem}.insight-link:hover{color:var(--accent-strong)}.insight-right{margin:.75rem;background:#fff;border-radius:16px;padding:.95rem 1rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.55rem;position:relative}.insight-status{align-self:flex-end;display:inline-flex;align-items:center;gap:.25rem;padding:.22rem .55rem;border-radius:999px;font-size:.72rem;font-weight:700}.insight-status.is-good{background:#d1fae5;color:#047857}.insight-status.is-bad{background:#ffe4e6;color:#be123c}.insight-status.is-wait{background:#eef2f5;color:#64748b}.insight-metric strong{display:block;font-family:var(--display);font-size:2rem;letter-spacing:-.04em;line-height:1}.insight-metric span{color:var(--ink-soft);font-size:.84rem}.mini-bars{display:flex;align-items:flex-end;gap:.35rem;height:56px;margin-top:auto}.mini-bars span{flex:1;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#34d399,#059669);min-height:10px}.tone-attention .mini-bars span{background:linear-gradient(180deg,#fb7185,#e11d48)}.tone-neutral .mini-bars span{background:linear-gradient(180deg,#7dd3fc,#0284c7)}.story-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:.85rem}.story-card{border-radius:20px;padding:1.1rem 1.15rem;min-height:150px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-sm);border:1px solid transparent}.story-card p{margin:0;font-size:1.02rem;line-height:1.35;font-weight:600;letter-spacing:-.02em}.story-card a{font-weight:700;font-size:.86rem;margin-top:.85rem;color:var(--ink)}.story-lilac{background:linear-gradient(160deg,#f3e8ff,#faf5ff)}.story-sky{background:linear-gradient(160deg,#e0f2fe,#f0f9ff)}.story-program{background:#fff;border-color:var(--line);box-shadow:var(--shadow)}.story-program-top h3{margin:.35rem 0 .15rem;font-size:1.05rem}.surface{background:#fff;border:1px solid var(--line);border-radius:18px;padding:.95rem 1.05rem 1.05rem;box-shadow:var(--shadow-sm)}.surface-narrow{max-width:540px}.surface-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem;padding-bottom:.55rem;border-bottom:1px solid var(--line)}.surface-head h2{margin:0}.text-link{font-size:.8rem;font-weight:700;color:var(--ink-soft)}.text-link:hover{color:var(--accent-strong)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700;background:#eef3f5;color:#52636d}.badge-live{background:#d1fae5;color:#047857}.badge-live i{width:6px;height:6px;border-radius:50%;background:#10b981;display:inline-block}.badge-rating.r5,.badge-rating.r4{background:#d1fae5;color:#047857}.badge-rating.r3{background:#eef3f5;color:#52636d}.badge-rating.r2,.badge-rating.r1{background:#ffe4e6;color:#be123c}.data-table{width:100%;border-collapse:collapse;font-size:.86rem}.data-table th{text-align:left;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);padding:.35rem .45rem .55rem;border-bottom:1px solid var(--line)}.data-table td{padding:.7rem .45rem;border-bottom:1px solid #eef3f5;vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:#f8fbfc}.data-table-clickable tbody tr{cursor:pointer}.data-table-clickable tbody tr:focus{outline:2px solid var(--accent-soft);outline-offset:-2px}.data-table-clickable tbody tr.is-selected td{background:#eef6f3}.guest-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#12212b73;display:flex;justify-content:flex-end}.guest-detail-panel{width:min(420px,100%);height:100%;background:#fff;box-shadow:-12px 0 40px #12212b2e;padding:1.1rem 1.15rem 1.4rem;overflow:auto}.guest-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.guest-detail-head h2{margin:.1rem 0 0;font-size:1.35rem;font-weight:800;letter-spacing:-.03em}.guest-detail-grid{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.75rem .85rem}.guest-detail-grid .guest-detail-full{grid-column:1 / -1}.guest-detail-grid dt{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin:0 0 .2rem}.guest-detail-grid dd{margin:0;font-size:.9rem;line-height:1.35;word-break:break-word}.guest-detail-grid a{color:var(--accent-strong);font-weight:700}.guest-detail-sub{display:flex;align-items:center;gap:.5rem;margin:.35rem 0 0;flex-wrap:wrap}.guest-treat-card{margin:0 0 1rem;padding:.95rem 1rem;border-radius:16px;background:linear-gradient(165deg,#fff7ed,#ffedd5);border:1px solid #fdba74}.guest-treat-card.is-redeemed{background:linear-gradient(165deg,#ecfdf8,#d1fae5);border-color:#6ee7b7}.guest-treat-card.is-expired{background:#f4f4f5;border-color:var(--line);opacity:.92}.guest-treat-eyebrow{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#9a3412}.guest-treat-card.is-redeemed .guest-treat-eyebrow{color:#047857}.guest-treat-card.is-expired .guest-treat-eyebrow{color:var(--ink-soft)}.guest-treat-card h3{margin:.25rem 0 0;font-family:var(--display);font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.guest-treat-code{margin:.35rem 0 0;font-size:1.05rem;font-weight:700}.guest-treat-expiry{margin:.35rem 0 0;font-size:.88rem;font-weight:600;color:#9a3412}.guest-treat-card.is-redeemed .guest-treat-expiry{color:#047857}.guest-detail-actions{display:flex;flex-direction:column;gap:.45rem;margin-top:1.1rem;position:sticky;bottom:0;padding-top:.75rem;background:linear-gradient(180deg,transparent,#fff 28%)}.guest-detail-actions .btn{min-height:44px;justify-content:center;width:100%}.cameback-sheet .cameback-section{margin-top:1rem}.cameback-sheet h3{display:flex;align-items:center;justify-content:space-between;margin:0 0 .55rem;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.cameback-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.cameback-card{border:1px solid #fdba74;border-radius:14px;padding:.85rem .9rem;background:#fff7ed}.cameback-card.is-redeemed{background:#f8fbfc;border-color:var(--line)}.cameback-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.cameback-reward{margin:.25rem 0 0;font-weight:700;font-size:.95rem}.cameback-actions{margin-top:.65rem}.badge-warn{background:#ffedd5;color:#c2410c}.badge-warn i{background:#ea580c}.todo-flash{margin:0 0 .85rem;padding:.65rem .85rem;border-radius:12px;background:var(--accent-soft);color:var(--accent-strong);font-size:.88rem;font-weight:600}.todo-panel{margin-bottom:1rem}.todo-section-head{margin-bottom:.75rem}.todo-section-head h2{display:flex;align-items:baseline;gap:.45rem;margin:0 0 .2rem;font-size:1.1rem}.todo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.todo-card{border:1px solid var(--line);border-radius:14px;padding:.85rem .9rem;background:#fff}.todo-card.is-urgent{border-color:#fdba74;background:#fff7ed}.todo-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.todo-reward{margin:.25rem 0 0;font-weight:700;font-size:.95rem}.todo-actions{margin-top:.65rem;flex-wrap:wrap}.todo-card.is-sent{background:#f8faf9;border-color:#d1e7dd;opacity:.92}.todo-sent-line{margin:.25rem 0 0}.badge-sent{background:#d1fae5;color:#047857}.badge-sent i{background:#059669}.todo-sent-fold{margin-top:.85rem;border-radius:12px;border:1px dashed #a7f3d0;background:#f0fdf4;padding:.15rem .75rem .75rem}.todo-sent-fold>summary{cursor:pointer;list-style:none;padding:.7rem .15rem;font-size:.88rem;font-weight:700;color:#047857;-webkit-user-select:none;user-select:none}.todo-sent-fold>summary::-webkit-details-marker{display:none}.todo-sent-fold>summary:before{content:"▸ ";display:inline-block;transition:transform .15s ease}.todo-sent-fold[open]>summary:before{transform:rotate(90deg)}.todo-list-sent{margin-top:.25rem}.proj-page{--proj-green: #047857;--proj-green-deep: #065f46;--proj-green-soft: #d1fae5;--proj-green-mist: #ecfdf5;--proj-cost: #b45309;--proj-cost-soft: #fff7ed}.proj-eyebrow{color:var(--proj-green)!important}.proj-hero{text-align:center;padding:1.35rem 1.1rem 1.4rem;border-radius:18px;margin-bottom:.85rem;background:radial-gradient(600px 180px at 50% -20%,rgba(16,185,129,.35),transparent 60%),linear-gradient(165deg,#065f46,#047857 48%,#059669);border:1px solid #064e3b;color:#ecfdf5;box-shadow:0 14px 36px #04785747}.proj-hero.is-loss{background:linear-gradient(165deg,#7f1d1d,#b91c1c);border-color:#7f1d1d;box-shadow:0 14px 36px #b91c1c40}.proj-hero-kicker{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ecfdf5d9}.proj-hero-net{margin:.4rem 0 .3rem;font-family:var(--display);font-size:2.45rem;font-weight:800;letter-spacing:-.03em;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.18)}.proj-hero-sub{margin:0;font-size:.9rem;color:#ecfdf5e0;line-height:1.4}.proj-split{margin-top:1.1rem;text-align:left}.proj-split-track{display:flex;height:14px;border-radius:999px;overflow:hidden;background:#ffffff2e;box-shadow:inset 0 1px 2px #0000001f}.proj-split-cost{background:#fbbf24;min-width:0;transition:width .35s ease}.proj-split-extra{background:#6ee7b7;min-width:0;transition:width .35s ease}.proj-split-legend{display:flex;justify-content:space-between;gap:.5rem;margin-top:.45rem;font-size:.75rem;font-weight:600;color:#ecfdf5e6}.proj-split-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.3rem;vertical-align:middle}.dot-cost{background:#fbbf24}.dot-extra{background:#6ee7b7}.proj-gain-row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:.85rem}.proj-compelling{display:flex;flex-direction:column;gap:.65rem;margin-bottom:.85rem}.proj-metric-card{padding:1rem 1.05rem;border-radius:16px;text-align:center;border:1px solid #a7f3d0;background:#fff}.proj-metric-roi{background:linear-gradient(160deg,#ecfdf5,#d1fae5);border-color:#34d399;box-shadow:0 10px 28px #04785724}.proj-metric-cost{background:#fff;border-color:#a7f3d0}.proj-metric-label{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--proj-green)}.proj-metric-value{margin:.35rem 0 .2rem;font-family:var(--display);font-size:2.1rem;font-weight:800;letter-spacing:-.03em;color:var(--proj-green-deep)}.proj-metric-cost .proj-metric-value{font-size:1.85rem}.proj-metric-hint{margin:0;font-size:.78rem;color:#6b7c86}.proj-value-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:.5rem;align-items:stretch;padding:.85rem .75rem;border-radius:16px;background:linear-gradient(90deg,#ecfdf5,#fff,#fff7ed);border:1px solid #a7f3d0}.proj-value-see,.proj-value-spend{text-align:center;padding:.35rem .25rem}.proj-value-eyebrow{display:block;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6b7c86;margin-bottom:.25rem}.proj-value-see strong{font-family:var(--display);font-size:1.15rem;color:var(--proj-green-deep)}.proj-value-spend strong{font-family:var(--display);font-size:1.15rem;color:var(--proj-cost)}.proj-value-vs{display:grid;place-items:center;font-size:1.1rem;font-weight:700;color:var(--proj-green);opacity:.7}.proj-gain-card{padding:.9rem .85rem;border-radius:14px;background:var(--proj-green-mist);border:1px solid #a7f3d0;text-align:center}.proj-gain-label{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--proj-green)}.proj-gain-value{margin:.3rem 0 .15rem;font-family:var(--display);font-size:1.35rem;font-weight:800;color:var(--proj-green-deep);letter-spacing:-.02em}.proj-gain-hint{margin:0;font-size:.72rem;color:#6b7c86}.proj-inputs,.proj-breakdown{border-color:#a7f3d0}.proj-inputs h2,.proj-breakdown h2{margin:0 0 .35rem;font-size:1.1rem;color:var(--proj-green-deep)}.proj-lead{margin:0 0 1rem}.proj-field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.1rem;padding:.75rem .8rem;border-radius:12px;background:#f8fbfc;border:1px solid var(--line)}.proj-field.tone-cost{background:var(--proj-cost-soft);border-color:#fdba74}.proj-field.tone-spend{background:var(--proj-green-mist);border-color:#a7f3d0}.proj-field-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.proj-field-label{font-weight:700;font-size:.92rem}.proj-field-value{font-family:var(--mono);font-weight:700;color:var(--proj-green)}.proj-field.tone-cost .proj-field-value{color:var(--proj-cost)}.proj-field input[type=range]{width:100%;accent-color:var(--proj-green)}.proj-field.tone-cost input[type=range]{accent-color:var(--proj-cost)}.proj-field-row{display:flex;flex-direction:column;gap:.25rem}.proj-number{max-width:8rem;min-height:42px}.proj-stats{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.65rem}.proj-stats li{display:grid;gap:.15rem;padding:.8rem .9rem;border-radius:12px;background:#fff;border:1px solid var(--line)}.proj-stat-spend{background:#f0fdf4;border-color:#bbf7d0}.proj-stat-cost{background:var(--proj-cost-soft);border-color:#fdba74}.proj-stat-extra{background:var(--proj-green-mist);border-color:#6ee7b7}.proj-stat-extra.is-hot{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#34d399;box-shadow:0 0 0 1px #0478571f,0 8px 20px #0478571f}.proj-stat-extra.is-hot strong{color:var(--proj-green-deep);font-size:1.45rem}.proj-stat-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}.proj-stat-extra .proj-stat-label{color:var(--proj-green)}.proj-stats strong{font-size:1.2rem;font-family:var(--display)}.proj-callout{margin-top:1rem;padding:.9rem 1rem;border-radius:12px;background:var(--proj-green-mist);border:1px solid #6ee7b7}.proj-callout p{margin:0;font-size:.92rem;line-height:1.45;color:#064e3b}.proj-callout strong{color:var(--proj-green-deep)}.dash-widget-ring.is-tappable{cursor:pointer;font:inherit;color:inherit;text-align:inherit;width:100%;border:1px solid var(--line);background:#fff}.dash-widget-ring.is-tappable:hover{border-color:var(--accent)}.dash-widget-cta{color:var(--accent-strong)!important;font-weight:700}.biz-pulse-item.is-tappable{cursor:pointer}@media(max-width:720px){.guest-detail-panel{width:100%}.guest-detail-grid{grid-template-columns:1fr}}.cell-strong{font-weight:700}.cell-muted{color:var(--ink-soft);font-size:.78rem}.cell-end{text-align:right}.empty-state{padding:1.4rem .5rem;text-align:center;color:var(--ink-soft)}.empty-state p{margin:0 0 .25rem;font-weight:700;color:var(--ink)}.seg-tabs{display:inline-flex;gap:.2rem;padding:.22rem;background:#e7eef1;border-radius:999px;width:fit-content;max-width:100%;overflow-x:auto}.seg-tabs a,.seg-tabs button{padding:.42rem .85rem;border-radius:999px;color:#61747e;font-weight:700;font-size:.82rem;white-space:nowrap;border:none;background:transparent;cursor:pointer;font-family:inherit}.seg-tabs a.is-active,.seg-tabs button.is-active{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.settings-nav{display:none}@media(max-width:860px){.settings-seg-tabs{display:none!important}.settings-nav{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1rem}.settings-nav a{display:flex;flex-direction:column;gap:.15rem;text-decoration:none;color:inherit;padding:.85rem 1rem;min-height:64px;border-radius:14px;border:1px solid var(--line);background:#fff}.settings-nav a.is-active{border-color:var(--accent);background:var(--accent-soft)}.settings-nav-label{font-weight:700;display:flex;align-items:center;gap:.4rem}.settings-nav-hint{font-size:.78rem;color:var(--ink-soft)}.dash .field-input,.dash .field-textarea,.dash select.field-input{min-height:48px;font-size:16px}.dash .btn.btn-primary{min-height:48px}.settings-sticky-save{position:sticky;bottom:calc(var(--admin-bottom-h) + env(safe-area-inset-bottom,0px) + .5rem);z-index:15;padding-top:.75rem;background:linear-gradient(180deg,transparent,var(--bg) 35%)}}.breadcrumb{display:flex;gap:.35rem;align-items:center;font-size:.8rem;color:var(--ink-soft);margin:0 0 .35rem}.title-input{font-family:var(--display);font-size:1.35rem;font-weight:800;letter-spacing:-.03em;border:none;background:transparent;width:min(100%,440px);padding:0;color:var(--ink)}.setup-grid{display:grid;grid-template-columns:1.2fr .85fr;gap:.9rem;align-items:start}.preview-panel{position:sticky;top:1rem}.preview-details{margin:0}.preview-summary{list-style:none;cursor:default;font-family:var(--display);font-size:1.05rem;font-weight:700;margin-bottom:.5rem}.preview-summary::-webkit-details-marker{display:none}.preview-tree{margin:0;padding-left:1.05rem}.preview-tree li{margin-bottom:.55rem}.qr-panel{text-align:center;max-width:420px}.qr-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.qr-action-btn{min-height:44px;width:100%;justify-content:center}.qr-url{padding:.55rem .65rem;background:#f7fafb;border:1px solid var(--line);border-radius:10px;font-size:.74rem}.qr-image{display:block;margin:.85rem auto;border-radius:14px;background:#fff;padding:.55rem;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.qr-placeholder{margin:1rem auto;background:var(--bg-deep);border-radius:12px}.offer-preview{margin-top:.85rem;padding:.8rem;background:#f7fafb;border:1px solid var(--line);border-radius:12px}.dense-list{list-style:none;padding:0;margin:0}.dense-list li{display:flex;justify-content:space-between;gap:.75rem;padding:.55rem 0;border-bottom:1px solid #eef3f5}.dense-list li:last-child{border-bottom:none}.bar-list{display:flex;flex-direction:column;gap:.5rem}.bar-row{display:grid;grid-template-columns:2rem 1fr 1.5rem;gap:.5rem;align-items:center;font-size:.84rem}.bar-track{height:10px;background:#eef3f5;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,#34d399,#059669);border-radius:999px}.bar-fill.tone-mid{background:linear-gradient(90deg,#7dd3fc,#0284c7)}.bar-fill.tone-low{background:linear-gradient(90deg,#fb7185,#e11d48)}.verify-card{margin-top:.85rem;padding:1rem;border:1px solid #fed7aa;border-radius:16px;background:#fff7ed;display:flex;flex-direction:column;gap:.35rem}.verify-card.club{background:#e7f3ff;border-color:#bfdbfe}.verify-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.verify-card .btn{margin-top:.45rem;align-self:flex-start}.staff-hint{margin-top:.85rem;padding:.85rem .95rem;border-radius:14px;background:#f7fafb}.staff-hint strong{display:block;font-size:.86rem;margin-bottom:.15rem}.live-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 1.1rem;border-radius:18px;background:#dff7ef;border:1px solid #a7f3d0}.live-banner-copy{display:flex;flex-direction:column;gap:.35rem;min-width:0}.live-banner-meta{margin:0}.live-banner-actions{margin-top:0}.live-banner-title{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.live-banner-title strong{font-family:var(--display);font-size:1.05rem;letter-spacing:-.02em}.dash-split{display:grid;grid-template-columns:1.4fr 1fr;gap:.85rem}.kpi-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}.kpi-strip-6{grid-template-columns:repeat(6,1fr)}.kpi{background:#fff;border:1px solid var(--line);border-radius:16px;padding:.9rem 1rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.15rem}.kpi.tone-treat{background:#ffe4ea;border-color:transparent}.kpi.tone-club{background:#e7f3ff;border-color:transparent}.kpi.tone-ok{background:#dff7ef;border-color:transparent}.kpi.tone-treat .kpi-label{color:#9f1239}.kpi.tone-club .kpi-label{color:#1d4ed8}.kpi.tone-ok .kpi-label{color:#047857}.kpi-label{font-size:.7rem;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}.kpi-value{font-family:var(--display);font-size:1.55rem;font-weight:800;letter-spacing:-.04em}.kpi-meta{font-size:.74rem;color:var(--ink-soft)}.pipeline{display:flex;flex-wrap:wrap;align-items:stretch;gap:.5rem .35rem}.pipeline-step{flex:1 1 7rem;min-width:6.5rem;background:#f4f8f9;border-radius:14px;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.15rem}.pipeline-step.highlight{background:#ffe4ea}.pipeline-step.muted-step{background:#eef6f3}.pipeline-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.pipeline-step strong{font-family:var(--display);font-size:1.35rem;font-weight:800;letter-spacing:-.03em}.pipeline-meta{font-size:.72rem;color:var(--ink-soft)}.pipeline-arrow{align-self:center;color:var(--ink-soft);font-weight:700;padding:0 .1rem}.biz-glance{display:none}.dash-widget{background:#fff;border:1px solid var(--line);border-radius:16px;padding:.85rem .9rem;box-shadow:var(--shadow-sm);min-height:0}.dash-widget-label{margin:0 0 .45rem;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.dash-widget-value{margin:0 0 .55rem;font-family:var(--display);font-size:1.55rem;font-weight:800;letter-spacing:-.03em;line-height:1.1}.dash-widget-value-unit{margin-left:.35rem;font-size:.78rem;font-weight:600;color:var(--ink-soft);letter-spacing:0;font-family:var(--font)}.dash-widget-meta{margin:.45rem 0 0;font-size:.75rem;color:var(--ink-soft);text-align:center;line-height:1.3}.dash-rating-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.dash-rating-bars li{display:grid;grid-template-columns:1.6rem 1fr 1.1rem;align-items:center;gap:.35rem}.dash-rating-star{font-size:.72rem;font-weight:700;color:var(--ink-soft)}.dash-rating-track{height:8px;border-radius:999px;background:var(--bg-deep);overflow:hidden}.dash-rating-fill{display:block;height:100%;border-radius:999px;background:var(--accent);transform-origin:left center;animation:dash-grow .55s cubic-bezier(.22,1,.36,1) both}.dash-rating-fill.tone-1,.dash-rating-fill.tone-2{background:#ea580c}.dash-rating-fill.tone-3{background:#ca8a04}.dash-rating-fill.tone-4,.dash-rating-fill.tone-5{background:#0f766e}.dash-rating-n{font-size:.72rem;font-weight:700;text-align:right;color:var(--ink-soft)}.dash-split-track{display:flex;height:12px;border-radius:999px;overflow:hidden;background:var(--bg-deep)}.dash-split-happy{background:#0f766e;animation:dash-grow .55s cubic-bezier(.22,1,.36,1) both}.dash-split-low{background:#ea580c;animation:dash-grow .55s .05s cubic-bezier(.22,1,.36,1) both}.dash-split-legend{display:flex;justify-content:space-between;gap:.5rem;margin-top:.55rem;font-size:.75rem;font-weight:600;color:var(--ink-soft)}.dash-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;margin-right:.2rem;vertical-align:middle}.dash-dot.is-happy{background:#0f766e}.dash-dot.is-low{background:#ea580c}.dash-widget-ring{display:flex;flex-direction:column;align-items:center}.dash-ring-wrap{position:relative;width:96px;height:96px}.dash-ring-bg{stroke:var(--bg-deep)}.dash-ring-fg{stroke:#e11d48;transition:stroke-dashoffset .7s cubic-bezier(.22,1,.36,1)}.dash-ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none}.dash-ring-center strong{font-family:var(--display);font-size:1.05rem;font-weight:800;letter-spacing:-.02em}@keyframes dash-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.biz-glance-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.biz-glance-hero-stats{display:flex;align-items:baseline;gap:.55rem}.biz-glance-avg{margin:0;font-family:var(--display);font-size:2.1rem;font-weight:800;letter-spacing:-.04em;line-height:1}.biz-glance-count{font-size:.85rem;font-weight:600;color:var(--ink-soft)}.biz-glance-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-bottom:.55rem}.biz-glance-grid.is-single{grid-template-columns:1fr}.biz-glance-grid.is-single .dash-widget-ring{flex-direction:row;align-items:center;gap:.85rem;justify-content:flex-start}.biz-glance-grid.is-single .dash-widget-meta{text-align:left;margin:0}.biz-glance-value{width:100%;text-align:left;border:none;cursor:pointer;font:inherit;color:inherit;background:linear-gradient(160deg,#e8f7ef,#fff);border:1px solid transparent}.biz-glance-value .dash-widget-value{color:#047857}.biz-glance-themes{display:flex;flex-direction:column;gap:.55rem;margin:.65rem 0}.biz-glance-theme-block h3{margin:0 0 .35rem;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.biz-glance-chips-scroll{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -.25rem;padding:0 .25rem}.biz-glance-chips-scroll::-webkit-scrollbar{display:none}.biz-glance-chips{display:flex;flex-wrap:nowrap;gap:.4rem;width:max-content;padding-bottom:.15rem}.biz-glance-chip{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0;white-space:nowrap;min-height:40px;padding:.4rem .7rem;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;color:inherit}.biz-glance-chip.is-fix{background:#fff7ed;border-color:#fdba74}.biz-glance-chip.is-ok{background:#ecfdf8;border-color:#99f6e4}.biz-glance-chip-n{font-size:.72rem;font-weight:800;color:var(--ink-soft)}.biz-glance-chip-detail{margin:.35rem 0 0;padding:.65rem .75rem;border-radius:12px;background:#f7fafb;font-size:.82rem;color:var(--ink-soft);line-height:1.35}.biz-glance-action{margin-top:.35rem}.biz-glance-cta-row{display:flex;gap:.5rem;flex-wrap:wrap}.biz-glance-cta-row .btn{flex:1 1 8rem;min-height:48px;justify-content:center}.biz-glance-discoveries{margin:.85rem 0 1rem}.biz-glance-chip.is-discovery.kind-who{background:#e7f3ff;border-color:#bfdfff}.biz-glance-chip.is-discovery.kind-menu{background:#fff4e8;border-color:#ffd9b0}.biz-glance-chip.is-discovery.kind-hospitality{background:#eef6f3;border-color:#c5e4d8}.biz-glance-chip.is-discovery.kind-pace{background:#fff8e6;border-color:#f5e0a8}.biz-glance-chip.is-discovery.kind-loved{background:#ffe8ef;border-color:#f5c0d0}@media(max-width:860px){.biz-glance{display:block}.biz-desktop-stack{display:none}.biz-dash>.dash-head .dash-actions{display:none}.biz-dash>.dash-head .muted{display:none}.biz-dash>.biz-soon{display:none}}@media(min-width:861px){.biz-glance{display:none!important}}.biz-pulse{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:.85rem}@media(max-width:860px){.biz-pulse{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.biz-pulse-item{min-width:0;padding:.85rem .9rem}.biz-pulse-item strong{font-size:1.45rem}.results-desktop-table{display:none}.results-mobile-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.results-mobile-row{width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:14px;padding:.85rem .95rem;display:flex;flex-direction:column;gap:.35rem;font:inherit;color:inherit;cursor:pointer;min-height:72px}.results-mobile-row.is-selected{border-color:var(--accent);background:var(--accent-soft)}.results-mobile-main{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.results-mobile-meta{display:flex;flex-wrap:wrap;gap:.35rem .75rem;font-size:.82rem;color:var(--ink-soft)}.results-mobile-when{margin-top:.1rem}}@media(min-width:861px){.results-mobile-list{display:none}}.biz-pulse-item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:.7rem .95rem;min-width:5.5rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.1rem;text-align:left;color:inherit;font:inherit}.biz-pulse-item.is-tappable{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.biz-pulse-item.is-tappable:hover{transform:translateY(-1px);box-shadow:var(--shadow-md, 0 6px 16px rgba(0, 0, 0, .08))}.biz-pulse-item.is-tappable:focus-visible{outline:2px solid var(--accent, #e11d48);outline-offset:2px}.biz-pulse-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.biz-pulse-item strong{font-family:var(--display);font-size:1.35rem;font-weight:800;letter-spacing:-.03em}.biz-pulse-item.is-cameback{background:#ffe4ea;border-color:transparent}.biz-pulse-item.is-value{background:#e8f7ef;border-color:transparent}.biz-pulse-meta{font-size:.68rem;color:var(--ink-soft);line-height:1.2}.biz-value-panel .biz-value-total{margin:.15rem 0 .35rem;font-family:var(--display);font-size:2rem;font-weight:800;letter-spacing:-.04em;line-height:1.1}.biz-value-sub{margin:0 0 .75rem}.biz-value-breakdown{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.biz-value-breakdown li{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.9rem;padding:.45rem 0;border-bottom:1px solid var(--line)}.biz-value-breakdown li:last-child{border-bottom:none}.biz-value-part{font-weight:700;white-space:nowrap}.biz-value-narrative,.biz-value-pipeline{margin:.65rem 0 0}.biz-value-setup{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.date-range-filter{position:relative;display:inline-block}.date-range-trigger{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--line);background:#fff;border-radius:999px;padding:.4rem .75rem;font:inherit;font-size:.8rem;font-weight:700;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-sm)}.date-range-filter.is-open .date-range-trigger{border-color:#1a2b2e}.date-range-caret{font-size:.7rem;color:var(--ink-soft);line-height:1}.date-range-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:40;min-width:11rem;margin:0;padding:.35rem;list-style:none;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-md, 0 10px 28px rgba(0, 0, 0, .1))}.date-range-menu button{display:block;width:100%;text-align:left;border:none;background:transparent;border-radius:8px;padding:.5rem .65rem;font:inherit;font-size:.84rem;font-weight:650;color:var(--ink);cursor:pointer}.date-range-menu button:hover{background:#f4f8f9}.date-range-menu button.is-active{background:#e8f7ef;color:#0f3d2e}.dash-head-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;justify-content:flex-end}.biz-soon-copy h2{margin:.15rem 0 .35rem;font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.biz-soon-copy p{margin:0}.nav-soon{margin-left:.35rem;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.biz-dayzero{text-align:center;padding:1.35rem 1.25rem 1.5rem}.biz-dayzero h2{margin:.5rem 0 .35rem;font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.biz-dayzero .btn-row{justify-content:center;margin-top:1rem}.biz-steps{list-style:none;margin:1rem auto 0;padding:0;max-width:420px;text-align:left;display:flex;flex-direction:column;gap:.65rem}.biz-steps li{background:#f4f8f9;border-radius:12px;padding:.7rem .85rem;display:flex;flex-direction:column;gap:.15rem}.biz-steps strong{font-size:.9rem}.biz-steps span{font-size:.78rem;color:var(--ink-soft)}.biz-discovery.kind-pace{background:#fff8e6}.biz-split{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-bottom:.85rem}.biz-panel.is-positive{background:linear-gradient(180deg,#f0faf6,#fff 40%)}.biz-panel.is-negative{background:linear-gradient(180deg,#fff5f7,#fff 40%)}.biz-theme-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.biz-theme-top{display:flex;align-items:center;gap:.45rem}.biz-theme-emoji{font-size:1.1rem}.biz-theme-top strong{flex:1;font-size:.95rem}.biz-theme-count{font-family:var(--display);font-weight:800;font-size:1.1rem}.biz-theme-detail{margin:.25rem 0 0;font-size:.82rem;color:var(--ink-soft);line-height:1.35}.biz-theme-sample{margin:.3rem 0 0;padding:.45rem .6rem;background:#ffffffd9;border-radius:10px;font-size:.84rem;line-height:1.35}.biz-theme-meta{margin:.25rem 0 0}.biz-theme-toggle{display:inline-flex;align-items:center;gap:.3rem;margin:.45rem 0 0;padding:0;border:none;background:none;box-shadow:none;font:inherit;font-size:.78rem;font-weight:600;letter-spacing:.01em;color:var(--accent-strong);cursor:pointer}.biz-theme-toggle:hover{color:var(--ink)}.biz-theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.biz-theme-all{margin-top:.55rem;padding-top:.55rem;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:.45rem}.biz-theme-list>li.is-expanded .biz-theme-toggle{margin-top:.5rem}.biz-theme-signals,.biz-theme-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.biz-theme-signals li{display:flex;justify-content:space-between;gap:.75rem;font-size:.86rem;font-weight:600}.biz-theme-notes li{font-size:.82rem;color:var(--ink-soft);font-style:italic;line-height:1.35}.biz-discovery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.biz-discovery{background:#f4f8f9;border-radius:14px;padding:.85rem .95rem;display:flex;flex-direction:column;gap:.3rem}.biz-discovery.kind-who{background:#e7f3ff}.biz-discovery.kind-menu{background:#fff4e8}.biz-discovery.kind-hospitality{background:#eef6f3}.biz-discovery.kind-loved{background:#ffe8ef}.biz-discovery-kind{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.biz-discovery h3{margin:0;font-size:.98rem;font-weight:800;letter-spacing:-.02em}.biz-discovery-meta{margin:0;font-size:.75rem;color:var(--ink-soft)}.biz-discovery-hook{margin:.15rem 0 0;font-size:.8rem;line-height:1.35;font-weight:600}.biz-action-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.biz-action-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;background:#f4f8f9;border-radius:14px}.biz-action-list strong{display:block;font-size:.95rem}.biz-action-list p{margin:.15rem 0 0}@media(max-width:980px){.biz-split{grid-template-columns:1fr}}.auth-shell{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:max(1.25rem,env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) max(1.25rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px));background:radial-gradient(ellipse at 20% 0%,#d8f3ec 0%,transparent 50%),radial-gradient(ellipse at 90% 10%,#e7f3ff 0%,transparent 45%),var(--bg, #f4f7f8)}.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.35rem 1.4rem 1.5rem;box-shadow:var(--shadow-sm)}@media(max-width:560px){.auth-shell{place-items:stretch;padding:0}.auth-card{width:100%;min-height:100dvh;border-radius:0;border:none;box-shadow:none;padding:max(1.35rem,env(safe-area-inset-top,0px)) 1.2rem max(1.5rem,env(safe-area-inset-bottom,0px));display:flex;flex-direction:column}.auth-form .btn-primary{min-height:48px;width:100%;font-size:1rem}.auth-form .field-input{min-height:48px;font-size:16px}}.auth-card-wide{width:min(920px,100%)}.auth-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.auth-brand strong{display:block;font-size:1.05rem}.auth-title{margin:0 0 .35rem;font-family:var(--display);font-size:1.55rem;font-weight:800;letter-spacing:-.03em}.auth-form{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.auth-form .btn{margin-top:.25rem}.auth-switch{margin:1rem 0 0}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:.75rem}.plan-grid.is-single{grid-template-columns:minmax(0,22rem)}.plan-locked-note{margin:.25rem 0 0}.plan-card{position:relative;background:#f4f8f9;border:1px solid transparent;border-radius:18px;padding:1rem 1.05rem;display:flex;flex-direction:column;gap:.45rem}.plan-card.is-hot{background:#e7f7f1}.plan-card.is-selected{border-color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-strong)}.plan-badge{position:absolute;top:.65rem;right:.65rem;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:#dff7ef;color:#047857;padding:.15rem .45rem;border-radius:999px}.plan-badge.is-current{background:#e7f3ff;color:#1d4ed8}.plan-card h3{margin:0;font-size:1.1rem;font-weight:800}.plan-price{margin:0;display:flex;align-items:baseline;gap:.25rem}.plan-price strong{font-family:var(--display);font-size:1.45rem;font-weight:800;letter-spacing:-.03em}.plan-price span{font-size:.8rem;color:var(--ink-soft)}.plan-blurb{margin:0;font-size:.82rem;color:var(--ink-soft);line-height:1.4}.plan-features{margin:.15rem 0 .5rem;padding-left:1.05rem;display:flex;flex-direction:column;gap:.28rem;flex:1}.plan-features li{font-size:.8rem;line-height:1.35}.plan-card .btn{align-self:stretch}.plan-pill{display:inline-block;margin-top:.15rem;font-weight:700}@media(max-width:980px){.plan-grid{grid-template-columns:1fr}}.page-header{margin-bottom:.25rem}.page-kicker{margin:0 0 .15rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-strong)}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:.95rem 1.05rem;margin-bottom:.85rem;box-shadow:var(--shadow-sm)}.panel.narrow{max-width:540px}.tabs{display:inline-flex;gap:.2rem;padding:.22rem;background:#e7eef1;border-radius:999px}.tabs a{padding:.42rem .85rem;border-radius:999px;color:#61747e;font-weight:700;font-size:.82rem}.tabs a.is-active{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}@media(max-width:980px){.promo-banner,.insight-card,.story-grid,.dash-split,.setup-grid,.kpi-strip{grid-template-columns:1fr}.promo-stack,.promo-visual .promo-stack{display:none}.promo-illu{transform:none;width:min(160px,50%)}.preview-panel{position:static}.kpi-strip{grid-template-columns:repeat(2,1fr)}@media(min-width:720px){.kpi-strip{grid-template-columns:repeat(3,1fr)}}}@media(max-width:860px){.admin-shell{display:block;padding-bottom:calc(var(--admin-bottom-h) + env(safe-area-inset-bottom,0px))}.admin-nav{position:fixed;left:0;top:0;bottom:0;width:min(84vw,290px);transform:translate(-105%);transition:transform .22s ease;box-shadow:18px 0 40px #12212b29;z-index:40;padding-top:env(safe-area-inset-top,0px)}.admin-shell.menu-open .admin-nav{transform:translate(0)}.admin-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;border:none;background:#12212b66;z-index:35}.admin-menu-close{display:grid;place-items:center;margin-left:auto;width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}.admin-menu-btn{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink)}.admin-topbar{display:flex;align-items:center;gap:.55rem;position:sticky;top:0;z-index:20;min-height:calc(var(--admin-topbar-h) + env(safe-area-inset-top,0px));padding:calc(.45rem + env(safe-area-inset-top,0px)) .85rem .45rem;background:#f4f7f8eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.admin-topbar-brand{display:flex;flex-direction:column;min-width:0;flex:1}.admin-topbar-guest{min-height:40px;display:inline-flex;align-items:center}.admin-main{padding:.95rem .9rem 1.35rem}.admin-bottom{display:grid;grid-template-columns:repeat(6,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;height:calc(var(--admin-bottom-h) + env(safe-area-inset-bottom,0px));padding:.3rem .15rem calc(.3rem + env(safe-area-inset-bottom,0px));background:#fffffff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line)}.admin-bottom-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;font-size:.62rem;font-weight:700;color:#6b7c86;border-radius:12px;min-height:48px;text-decoration:none;border:none;background:transparent;font-family:inherit;cursor:pointer;padding:.2rem .1rem}.admin-bottom-item.is-active{color:var(--accent-strong);background:var(--accent-soft)}.admin-bottom-kiosk{grid-template-columns:1fr 1fr}.admin-shell.staff-kiosk{display:block}.admin-shell.staff-kiosk .admin-nav{display:none}.till-code-input,.till-last4-input,.till-pin-input{min-height:56px;font-size:1.35rem;letter-spacing:.08em;text-align:center}.till-redeem-btn{width:100%;min-height:52px;font-size:1.05rem;margin-top:.35rem}.till-head .dash-title{font-size:1.45rem}.till-surface{padding:1.1rem}.insight-card{min-height:0}.seg-tabs{width:100%}.surface-narrow{max-width:none}.title-input{width:100%}}.admin-shell.staff-kiosk{grid-template-columns:1fr}.admin-shell.staff-kiosk .admin-nav,.admin-shell.staff-kiosk .admin-bottom{display:none}@media(max-width:860px){.admin-shell.staff-kiosk .admin-bottom{display:grid}}.guest-shell{--g-accent: #0f766e;--g-accent-soft: #ecfdf8;--g-accent-ink: #f0fdfa;--g-shell-a: #d8efe9;--g-shell-b: #f3e0c8;--g-card: #fffcf7;--g-kicker: #0f766e;position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;display:flex;align-items:stretch;justify-content:center;padding:max(.75rem,env(safe-area-inset-top,0px)) max(.75rem,env(safe-area-inset-right,0px)) max(.75rem,env(safe-area-inset-bottom,0px)) max(.75rem,env(safe-area-inset-left,0px));overflow-x:hidden;overflow-y:auto;background:radial-gradient(900px 520px at 12% -8%,var(--g-shell-a) 0%,transparent 55%),radial-gradient(800px 480px at 100% 0%,var(--g-shell-b) 0%,transparent 50%),var(--bg);transition:background .45s ease}@media(max-width:560px){.guest-shell{padding:0;align-items:stretch}.guest-card{width:100%;min-height:100dvh;border-radius:0;border-left:none;border-right:none;border-top:none;padding:max(1.1rem,env(safe-area-inset-top,0px)) 1.15rem max(1.35rem,calc(1rem + env(safe-area-inset-bottom,0px)));box-shadow:none;display:flex;flex-direction:column}.guest-step{flex:1;display:flex;flex-direction:column}.guest-actions{margin-top:auto;position:sticky;bottom:0;padding-top:.85rem;padding-bottom:env(safe-area-inset-bottom,0px);background:linear-gradient(180deg,transparent 0%,var(--g-card) 28%)}.guest-actions .btn-row{flex-wrap:wrap}.guest-actions .btn-primary,.guest-step>.btn-primary.btn-glow,.guest-cta{min-height:48px;width:100%;font-size:1rem}.rating-row{gap:.55rem;margin:1.15rem 0 .5rem}.rating-row-stack .rating-btn{min-height:60px;padding:.75rem 1rem;border-radius:16px}.rating-row-stack .rating-emoji{font-size:1.5rem}.rating-row-stack .rating-label{font-size:1.02rem;font-weight:650;line-height:1.2}.option-grid-rows .option-chip{min-height:60px;padding:.8rem 1rem}.option-grid-rows .option-emoji{font-size:1.4rem}.option-grid-rows .option-label{font-size:.98rem}.guest-step h1{font-size:1.65rem}.guest-lead{font-size:1.02rem}.treat-card{margin-top:.85rem;padding:1.15rem 1rem 1.25rem}.treat-pass .treat-code{font-size:1.45rem}.treat-terms{grid-template-columns:1fr}.field-input,.field-textarea{min-height:48px;font-size:16px}.field-textarea{min-height:120px}}.guest-shell.mood-recovery{--g-accent: #9a3412;--g-accent-soft: #fff7ed;--g-accent-ink: #fff7ed;--g-shell-a: #fed7aa;--g-shell-b: #fecaca;--g-card: #fffaf5;--g-kicker: #c2410c}.guest-shell.mood-warm{--g-accent: #0f766e;--g-accent-soft: #ecfdf8;--g-accent-ink: #f0fdfa;--g-shell-a: #a7f3d0;--g-shell-b: #fde68a;--g-card: #fffcf7;--g-kicker: #0f766e}.guest-shell.mood-club{--g-accent: #b45309;--g-accent-soft: #fffbeb;--g-accent-ink: #fffbeb;--g-shell-a: #fcd34d;--g-shell-b: #f9a8d4;--g-card: #1c1917;--g-kicker: #fbbf24;color:#fafaf9}.guest-shell.mood-club .muted{color:#a8a29e}.guest-shell.mood-club .field-input,.guest-shell.mood-club .field-textarea{background:#292524;border-color:#44403c;color:#fafaf9}.guest-orb{position:absolute;border-radius:50%;filter:blur(40px);opacity:.45;pointer-events:none;z-index:0;animation:drift 12s ease-in-out infinite alternate}.guest-orb-a{width:220px;height:220px;background:var(--g-shell-a);top:8%;left:-40px}.guest-orb-b{width:260px;height:260px;background:var(--g-shell-b);bottom:5%;right:-60px;animation-delay:-4s}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(18px,-14px) scale(1.08)}}.guest-card{position:relative;z-index:1;width:min(440px,100%);background:var(--g-card);border:1px solid color-mix(in srgb,var(--g-accent) 18%,var(--line));border-radius:26px;padding:1.4rem 1.3rem 1.65rem;box-shadow:0 18px 50px #1c19171f,0 0 0 1px #fff6 inset;transition:background .35s ease,border-color .35s ease,color .35s ease}.guest-shell.mood-club .guest-card{border-color:#fbbf2459;box-shadow:0 24px 60px #00000073,0 0 40px #fbbf241f}.guest-top{margin-bottom:.85rem}.guest-brand-row{display:flex;align-items:center;gap:.65rem;margin-bottom:.7rem}.guest-brand-mark{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:1rem;background:color-mix(in srgb,var(--g-accent) 12%,#fff);border:1px solid color-mix(in srgb,var(--g-accent) 22%,var(--line));flex-shrink:0}.guest-brand{font-family:var(--display);font-size:1.05rem;margin:0;color:var(--ink);letter-spacing:-.02em;font-weight:700}.guest-brand-sub{margin:.1rem 0 0;font-size:.72rem;color:var(--ink-soft);letter-spacing:.01em}.guest-shell.mood-club .guest-brand{color:#fbbf24}.guest-shell.mood-club .guest-brand-sub{color:#a8a29e}.guest-progress-block{margin-top:.15rem}.guest-progress-meta{display:flex;justify-content:space-between;gap:.5rem;font-size:.72rem;color:var(--ink-soft);margin-bottom:.35rem}.guest-progress{height:5px;border-radius:999px;background:color-mix(in srgb,#e8d5c4 70%,#f5ebe0);overflow:hidden}.guest-progress-fill{height:100%;border-radius:999px;background:var(--g-accent);transition:width .4s cubic-bezier(.22,1,.36,1)}.guest-hero-icon{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-size:1.85rem;background:color-mix(in srgb,#fce7f3 55%,#fff7ed);margin:.35rem 0 .85rem}.guest-pill{display:inline-flex;align-items:center;margin:0 0 .55rem;padding:.35rem .75rem;border-radius:999px;background:#f5e6d3;color:#7c4a1a;font-size:.78rem;font-weight:600}.guest-pill-win{background:#ccfbf1;color:#0f766e}.guest-pill-soft{background:#ffedd5;color:#9a3412}.treat-thanks{margin:.35rem 0 .85rem;font-size:1.05rem;font-weight:700;color:color-mix(in srgb,var(--g-accent) 70%,#134e4a)}.treat-reveal{text-align:left}.treat-burst{position:relative;width:88px;height:88px;margin:.2rem 0 .9rem;display:grid;place-items:center}.treat-burst-emoji{position:relative;z-index:1;width:72px;height:72px;border-radius:22px;display:grid;place-items:center;font-size:2.15rem;background:linear-gradient(145deg,#ecfdf8,#fef3c7);box-shadow:0 10px 28px color-mix(in srgb,var(--g-accent) 22%,transparent);animation:treat-pop .65s cubic-bezier(.22,1,.36,1) both}.treat-reveal.is-recovery .treat-burst-emoji{background:linear-gradient(145deg,#fff7ed,#fecaca)}.treat-spark{position:absolute;width:8px;height:8px;border-radius:50%;background:#f59e0b;animation:treat-spark 1.1s ease-out both}.treat-spark-a{top:4px;right:6px;animation-delay:.08s}.treat-spark-b{bottom:10px;left:2px;background:#14b8a6;animation-delay:.18s}.treat-spark-c{top:18px;left:-2px;width:6px;height:6px;background:#fb7185;animation-delay:.28s}.treat-prize{display:flex;align-items:center;gap:.75rem;margin:.15rem 0 .95rem;padding:.8rem .9rem;border-radius:16px;background:linear-gradient(135deg,#ecfdf8,#fffbeb);border:1px solid color-mix(in srgb,#0f766e 18%,#fde68a);animation:rise .5s .12s cubic-bezier(.22,1,.36,1) both}.treat-prize.is-recovery{background:linear-gradient(135deg,#fff7ed,#fff1f2);border-color:color-mix(in srgb,#c2410c 20%,#fecaca)}.treat-prize-emoji{font-size:1.85rem;line-height:1}.treat-prize-label{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.treat-prize-name{margin:.15rem 0 0;font-size:1.2rem;font-weight:800;line-height:1.2;color:var(--ink)}@keyframes treat-pop{0%{opacity:0;transform:scale(.55) rotate(-8deg)}60%{opacity:1;transform:scale(1.08) rotate(3deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes treat-spark{0%{opacity:0;transform:scale(.4)}40%{opacity:1;transform:scale(1.2)}to{opacity:.55;transform:scale(1) translateY(-4px)}}.guest-actions-stack{display:flex;flex-direction:column;gap:.55rem;margin-top:1.1rem}.guest-actions-stack .btn{width:100%;min-height:48px;justify-content:center}.guest-foot{text-align:center;margin:.15rem 0 0}.consent-hint{margin:-.25rem 0 .5rem 1.7rem}.consent-optional{margin-top:.15rem}.guest-kicker{display:inline-block;margin:0 0 .45rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g-kicker)}.recovery-kicker{color:#c2410c}.club-kicker{color:#fbbf24}.guest-step h1{font-size:1.5rem;line-height:1.2}.guest-shell.mood-club .guest-step h1{color:#fffbeb}.guest-lead{color:var(--ink-soft);font-size:.98rem}.guest-shell.mood-club .guest-lead,.guest-shell.mood-club .club-tagline{color:#d6d3d1}.welcome-promises{list-style:none;padding:0;margin:.85rem 0 1.15rem;display:flex;flex-direction:column;gap:.45rem}.welcome-promises li{display:flex;align-items:center;gap:.55rem;padding:.55rem .7rem;border-radius:12px;background:color-mix(in srgb,var(--g-accent) 8%,transparent);font-size:.9rem}.btn-glow{box-shadow:0 8px 24px color-mix(in srgb,var(--g-accent) 35%,transparent)}.guest-shell .btn-primary{background:var(--g-accent);color:var(--g-accent-ink)}.guest-shell.mood-club .btn-ghost{color:#e7e5e4;border-color:#57534e}.guest-actions{margin-top:1rem}.guest-actions .btn-row{display:flex;gap:.5rem;align-items:center}.rating-row{display:flex;gap:.4rem;margin:1rem 0 .35rem}.rating-row-stack{flex-direction:column;gap:.55rem;margin-top:1.1rem}.rating-row-stack .rating-btn{flex:none;width:100%;flex-direction:row;justify-content:flex-start;align-items:center;gap:.85rem;min-height:58px;padding:.7rem 1rem;border-radius:16px;text-align:left}.rating-emoji-wrap{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,#fce7f3 40%,#fff7ed);flex-shrink:0}.rating-row-stack .rating-emoji{font-size:1.45rem}.rating-row-stack .rating-label{font-size:1rem;font-weight:600;color:var(--ink);text-align:left}.rating-btn{flex:1;min-width:0;border:1px solid var(--line);background:#fff;border-radius:16px;padding:.7rem .15rem .55rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.guest-shell.mood-club .rating-btn{background:#292524;border-color:#44403c;color:#fafaf9}.rating-btn:hover{transform:translateY(-2px)}.rating-btn.is-selected{transform:scale(1.06);border-color:var(--g-accent);background:var(--g-accent-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--g-accent) 35%,transparent);animation:pop .35s ease}.rating-btn.tone-1.is-selected,.rating-btn.tone-2.is-selected{border-color:#ea580c;background:#fff7ed;box-shadow:0 0 0 2px #ea580c4d}.rating-btn.tone-4.is-selected,.rating-btn.tone-5.is-selected{border-color:#0f766e;background:#ecfdf8}.rating-emoji{font-size:1.55rem;line-height:1}.rating-label{font-size:.62rem;font-weight:600;color:var(--ink-soft);text-align:center;line-height:1.15}.tap-hint{text-align:center;font-size:.8rem;color:var(--ink-soft);margin:.35rem 0 0}.back-link{margin-top:.35rem;padding-left:0;border:none}.option-grid{display:grid;grid-template-columns:1fr;gap:.55rem;margin:.85rem 0 .35rem}.option-grid-rows .option-chip{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;gap:.85rem;min-height:58px;padding:.75rem 1rem;border-radius:16px;border:1px solid var(--line);background:#fff;animation:rise .4s ease both;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.option-grid-rows .option-chip:hover{transform:translateY(-1px)}.option-emoji-wrap{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,#fce7f3 35%,#fff7ed);flex-shrink:0}.option-grid-rows .option-chip:nth-child(5n+1) .option-emoji-wrap{background:#fef3c7}.option-grid-rows .option-chip:nth-child(5n+2) .option-emoji-wrap{background:#ffedd5}.option-grid-rows .option-chip:nth-child(5n+3) .option-emoji-wrap{background:#dcfce7}.option-grid-rows .option-chip:nth-child(5n+4) .option-emoji-wrap{background:#ffe4e6}.option-grid-rows .option-chip:nth-child(5n+5) .option-emoji-wrap{background:#e0e7ff}.rating-row-stack .rating-btn:nth-child(1) .rating-emoji-wrap{background:#fef3c7}.rating-row-stack .rating-btn:nth-child(2) .rating-emoji-wrap{background:#ffedd5}.rating-row-stack .rating-btn:nth-child(3) .rating-emoji-wrap{background:#f5f5f4}.rating-row-stack .rating-btn:nth-child(4) .rating-emoji-wrap{background:#ffe4e6}.rating-row-stack .rating-btn:nth-child(5) .rating-emoji-wrap{background:#fee2e2}.option-grid-rows .option-emoji{font-size:1.35rem;line-height:1}.option-grid-rows .option-label{flex:1;font-size:.98rem;font-weight:600;line-height:1.25;letter-spacing:-.01em}.option-grid-rows .option-check{font-size:.95rem;margin-left:auto}.option-chip{display:flex;align-items:center;gap:.65rem;text-align:left;border:1px solid var(--line);background:#fff;border-radius:14px;padding:.8rem .9rem;animation:rise .4s ease both;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.option-chip:hover{transform:translate(3px)}.option-chip.is-selected{border-color:var(--g-accent);background:var(--g-accent-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--g-accent) 28%,transparent);animation:pop .32s ease}.option-grid.variant-recovery .option-chip.is-selected{border-color:#ea580c;background:#fff7ed;box-shadow:0 0 0 2px #ea580c40}.option-grid.variant-warm .option-chip.is-selected{border-color:#0f766e;background:#ecfdf8}.option-emoji{font-size:1.25rem}.option-label{flex:1;font-weight:500}.option-check{font-weight:700;color:var(--g-accent)}.option-grid.variant-recovery .option-check{color:#c2410c}.guest-note{border-radius:14px;border-color:color-mix(in srgb,var(--g-accent) 25%,var(--line))}.phone-row{display:flex;gap:.4rem;align-items:center}.phone-prefix{padding:.65rem .7rem;background:color-mix(in srgb,var(--g-accent) 10%,var(--bg-deep));border-radius:10px;color:var(--ink-soft);font-weight:600}.char-count{text-align:right;font-size:.75rem;color:var(--ink-soft);margin:0}.treat-card{text-align:center;padding:1.1rem;border-radius:18px;background:linear-gradient(160deg,#ecfdf8,#fff7ed);border:1px solid var(--line)}.treat-card.treat-pass{text-align:left;background:color-mix(in srgb,#ecfdf8 55%,#fff);border:1.5px dashed color-mix(in srgb,#0f766e 28%,#99f6e4);border-radius:16px;padding:1rem 1.05rem 1.1rem;animation:rise .55s .18s cubic-bezier(.22,1,.36,1) both}.treat-card.treat-celebrate{background:linear-gradient(165deg,#ecfdf8,#fffbeb);border-color:color-mix(in srgb,#0f766e 30%,#fde68a);box-shadow:0 12px 28px color-mix(in srgb,#0f766e 10%,transparent)}.treat-card.treat-code-only{text-align:center;margin:1.25rem auto .85rem;max-width:280px;padding:1.15rem 1.25rem 1.25rem;background:color-mix(in srgb,#ecfdf8 55%,#fff);border:1.5px dashed color-mix(in srgb,#0f766e 28%,#99f6e4);border-radius:16px}.treat-code-only .treat-eyebrow{margin:0 0 .35rem}.treat-code-only .treat-code{margin:0;font-size:1.65rem;color:#0f766e;letter-spacing:.04em}.guest-outcome-final{text-align:center;align-items:center}.guest-outcome-final .guest-hero-icon{margin-left:auto;margin-right:auto}.guest-outcome-final h1{margin-bottom:.45rem}.guest-outcome-final .guest-lead{max-width:22rem;margin-left:auto;margin-right:auto}.treat-pass-top{display:flex;align-items:center;justify-content:space-between;gap:.85rem}.treat-pass-code{min-width:0;flex:1}.treat-pass-qr{flex-shrink:0;padding:.35rem;background:#fff;border-radius:10px;border:1px solid var(--line);line-height:0}.treat-pass .treat-eyebrow{margin:0 0 .2rem;color:var(--ink-soft)}.treat-pass .treat-code{margin:0;font-size:1.55rem;color:#0f766e;letter-spacing:.04em}.treat-scan-hint{margin:.75rem 0 .55rem;font-size:.82rem;color:var(--ink-soft)}.treat-terms{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.35rem .75rem}.treat-terms li{font-size:.8rem;color:var(--ink);font-weight:500}.treat-callout{margin-top:.85rem;padding:.7rem .85rem;border-radius:12px;background:#fffbeb;border:1px solid #fde68a;font-size:.88rem;color:#78350f;animation:rise .5s .28s cubic-bezier(.22,1,.36,1) both}.treat-card.treat-recovery{background:linear-gradient(165deg,#fff7ed,#fff1f2);border-color:color-mix(in srgb,#c2410c 28%,#fdba74);box-shadow:0 10px 24px color-mix(in srgb,#c2410c 8%,transparent)}.treat-reveal.is-recovery .treat-pass .treat-code,.guest-shell.mood-recovery .treat-code-only .treat-code{color:#9a3412}.treat-card.treat-club{background:linear-gradient(165deg,#292524,#1c1917);border-color:#fbbf2466;color:#fffbeb}.treat-card.treat-club .muted{color:#a8a29e}.treat-eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;color:var(--ink-soft);font-weight:700}.treat-card.treat-club .treat-eyebrow{color:#fbbf24}.treat-code{font-size:1.35rem;font-weight:700;letter-spacing:.06em;margin:.4rem 0}.club-invite{text-align:center}.club-badge{width:52px;height:52px;margin:0 auto .75rem;border-radius:50%;display:grid;place-items:center;font-size:1.4rem;color:#1c1917;background:radial-gradient(circle at 30% 30%,#fde68a,#f59e0b 70%);box-shadow:0 0 0 6px #fbbf2426,0 10px 30px #f59e0b59;animation:pulse-gold 2.2s ease-in-out infinite}@keyframes pulse-gold{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.club-tagline{margin-bottom:1rem}.club-offer-card{text-align:left;padding:1rem 1.05rem;border-radius:18px;background:linear-gradient(145deg,#292524,#0c0a09);border:1px solid rgba(251,191,36,.35);margin-bottom:1rem;box-shadow:inset 0 1px #fbbf2426}.club-price{font-family:var(--display);font-size:2.1rem;margin:0;color:#fbbf24;line-height:1}.club-price-sub{margin:.25rem 0 .85rem;font-size:.85rem;color:#a8a29e}.club-perks{margin:0 0 .75rem;padding-left:1.1rem;color:#e7e5e4}.club-perks li{margin-bottom:.35rem}.club-fine{margin:0}.btn-club{width:100%;background:linear-gradient(135deg,#fbbf24,#f59e0b)!important;color:#1c1917!important;font-weight:700;box-shadow:0 10px 28px #f59e0b66}.btn-club.is-joining{opacity:.85}.club-skip{width:100%;margin-top:.55rem}.google-ask{margin-top:1.25rem;padding-top:1rem;border-top:1px solid color-mix(in srgb,var(--g-accent) 25%,transparent)}.animate-in{animation:rise .4s cubic-bezier(.22,1,.36,1) both}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.05)}to{transform:scale(1.02)}}@media(max-width:860px){.setup-grid{grid-template-columns:1fr}.preview-panel{position:static;order:-1}.setup-grid{display:flex;flex-direction:column}.preview-summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between}.preview-summary:after{content:"▾";font-size:.85rem;color:var(--ink-soft)}.preview-details:not([open]) .preview-tree,.preview-details:not([open]) .muted{display:none}.programs-desktop-table{display:none}.programs-mobile-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.programs-mobile-card{display:block;text-decoration:none;color:inherit;border:1px solid var(--line);background:#fff;border-radius:16px;padding:.95rem 1rem;min-height:88px}.programs-mobile-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.programs-mobile-treat{margin:.35rem 0 .55rem}.programs-mobile-open{font-size:.85rem;font-weight:700;color:var(--accent-strong)}.qr-panel{max-width:none}.qr-action-btn{min-height:48px;font-size:1rem}}@media(min-width:861px){.programs-mobile-list{display:none}.preview-summary{pointer-events:none}.preview-summary:after{display:none}}.platform-impersonation-banner{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;box-sizing:border-box;padding:.55rem 1rem;background:#1c2a24;color:#f4efe6;font-size:.86rem}.platform-impersonation-email{opacity:.75;font-weight:400}.admin-shell.has-impersonation{min-height:calc(100dvh - 44px)}.type-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#121a1673;display:grid;place-items:center;padding:1rem}.type-confirm-dialog{width:min(100%,420px);padding:1.15rem 1.2rem 1.25rem;box-shadow:0 18px 40px #0000002e}.type-confirm-dialog h2{margin:0 0 .4rem;font-size:1.15rem}.type-confirm-dialog .btn-row{margin-top:.85rem;justify-content:flex-end}.platform-shell{min-height:100dvh;padding:1.25rem 1.25rem 2.5rem;background:#f3f5f4;max-width:1200px;margin:0 auto}.platform-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.platform-bootstrap{margin-bottom:1rem}.platform-health{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem;margin-bottom:1rem}.platform-health>div{background:#fff;border:1px solid var(--line, #d8ddd9);border-radius:10px;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.2rem}.platform-health-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}.platform-health-label{font-size:.72rem;color:var(--muted, #5c6b63);text-transform:uppercase;letter-spacing:.04em}.platform-treat-cell{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.2rem}@media(max-width:960px){.platform-health{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:560px){.platform-health{grid-template-columns:repeat(2,minmax(0,1fr))}}.platform-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:1rem}@media(max-width:960px){.platform-layout{grid-template-columns:1fr}}.platform-filters{display:flex;gap:.4rem;margin-bottom:.75rem;flex-wrap:wrap}.platform-audit{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;max-height:220px;overflow:auto}.platform-audit li{display:grid;grid-template-columns:10rem 1fr 1fr;gap:.5rem;font-size:.82rem}.reward-emoji-row{display:flex;align-items:center;gap:.55rem}.reward-emoji-preview{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-size:1.6rem;background:#ecfdf5;border:1px solid #a7f3d0;flex-shrink:0}.todo-card-emoji,.treat-thanks-emoji{margin-right:.15rem}
