:root{color-scheme:light;--bg: #f7f7f7;--bg-2: #ededed;--text: #0b0b0b;--muted: #6a6a6a;--line: #cfcfcf;--accent: #111111;--shadow: none}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Space Grotesk,Helvetica Neue,Arial,sans-serif;color:var(--text);background:linear-gradient(135deg,var(--bg),var(--bg-2));min-height:100vh}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(to right,rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,0,0,.04) 1px,transparent 1px);background-size:140px 140px;pointer-events:none;z-index:0}#root{position:relative;z-index:1}.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}.toast-host{width:min(960px,100%);display:grid;gap:10px;margin:0 auto}.toast{border:1px solid var(--line);background:#ffffffeb;box-shadow:none;padding:12px 12px 12px 14px;display:block;width:100%;line-height:1.35;animation:toast-in .16s ease both;will-change:transform,opacity}.toast-message{font-weight:600;overflow-wrap:anywhere}.toast.toast-error{border-color:#dc262659}.toast.toast-success{border-color:#16a34a59}.toast.toast-info{border-color:#2563eb59}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.toast.is-leaving{animation:toast-out .18s ease both}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.auth-shell .toast-host{width:min(720px,100%)}.route-transition{transform-origin:top center}.route-transition.is-entering{animation:route-fade .22s ease both}.route-transition.shell-auth.is-entering{animation:none}.route-transition.shell-auth.is-entering .auth-page{animation:route-fade .22s ease both}.route-transition.shell-dashboard.is-entering{animation:none}.route-transition.shell-dashboard.is-entering .dash-shell-main{animation:route-fade .22s ease both}.route-progress{position:fixed;top:0;left:0;right:0;height:2px;pointer-events:none;z-index:9999;opacity:0;transition:opacity .12s ease}.route-progress:before{content:"";position:absolute;top:0;left:-30%;width:30%;height:100%;background:var(--text);animation:route-progress .7s ease-in-out infinite}.route-progress.is-active{opacity:.9}@keyframes route-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes route-progress{0%{left:-30%}50%{left:55%}to{left:110%}}@media(prefers-reduced-motion:reduce){.route-transition.is-entering,.route-transition.shell-auth.is-entering .auth-page,.route-transition.shell-dashboard.is-entering .dash-shell-main{animation:none}.route-progress:before{animation:none}}.loading-block{display:grid;gap:14px}.loading-shimmer{height:10px;border-radius:999px;background:linear-gradient(90deg,#0000000f,#00000029,#0000000f 70%);background-size:240% 100%;animation:shimmer .9s ease-in-out infinite}.loading-lines{display:grid;gap:10px}.loading-line{height:14px;border-radius:10px;background:#00000012}.loading-line.short{width:60%}@keyframes shimmer{0%{background-position:0% 0%}to{background-position:100% 0%}}@media(prefers-reduced-motion:reduce){.loading-shimmer{animation:none}}.page{padding:40px 6vw 80px;display:flex;flex-direction:column;gap:80px}.public-menu-page{gap:40px;--brand-primary: var(--text);--brand-secondary: var(--muted)}.public-menu-logo{max-height:72px;max-width:min(320px,80vw);object-fit:contain;display:block}.public-menu-title h1{font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin:0;color:var(--brand-primary)}.public-menu-title p{margin:8px 0 0;color:var(--brand-secondary)}.public-menu-section{min-height:unset}.public-menu-section h3{color:var(--brand-primary)}.public-menu-section p{color:var(--brand-secondary)}.public-menu-section-card{cursor:pointer;text-align:left;width:100%;display:grid;gap:8px;min-height:unset;appearance:none;background:#ffffffeb;box-shadow:0 1px #0000000a;color:var(--text);font-family:inherit;text-transform:none;letter-spacing:normal;border-color:var(--line)}.public-menu-section-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.public-menu-section-card-meta{color:var(--muted);font-size:.9rem;white-space:nowrap}.public-menu-section-card:hover{filter:brightness(.98)}.public-menu-back-row{display:flex;margin-bottom:12px}.public-ad-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;pointer-events:none}.public-ad-overlay.is-open{pointer-events:auto}.public-ad-backdrop{position:fixed;inset:0;background:#000000eb;opacity:0;transition:opacity .24s ease-out;cursor:pointer}.public-ad-overlay.is-open .public-ad-backdrop{opacity:1}.public-ad-card{width:min(420px,92vw);display:grid;gap:10px;cursor:default;transform:translateY(140%);transition:transform .78s cubic-bezier(.16,1,.3,1)}.public-ad-overlay.is-open .public-ad-card{transform:translateY(0)}.public-ad-head{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#ffffffe6}.public-ad-title{font-weight:700;letter-spacing:.2px}.public-ad-media{width:100%;border-radius:16px;aspect-ratio:9 / 16;background:#ffffff0f;object-fit:cover;display:block}.public-ad-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:18px;text-align:center;color:#ffffffe6}.public-ad-placeholder-title{font-weight:800;letter-spacing:.2px}.public-ad-placeholder-sub{color:#ffffffb3;font-weight:600}.public-ad-banner{position:fixed;left:0;right:0;bottom:0;z-index:950;background:#111111eb;border:1px solid rgba(255,255,255,.12);color:#ffffffe6;border-radius:0;padding:12px 14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transform:translateY(140%);opacity:0;pointer-events:none;transition:transform .42s cubic-bezier(.22,.8,.22,1),opacity .24s ease-out}.public-ad-banner.is-open{transform:translateY(0);opacity:1;pointer-events:auto}.public-ad-banner-btn{width:100%;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:#ffffffeb;font-weight:700;padding:12px 14px;cursor:pointer;text-transform:none;letter-spacing:normal}.public-ad-banner-btn:hover{background:#ffffff1f}.public-ad-banner-btn:focus-visible{outline:2px solid rgba(255,255,255,.45);outline-offset:2px}@media(prefers-reduced-motion:reduce){.public-ad-overlay,.public-ad-banner,.public-ad-backdrop,.public-ad-card{transition:none}}.public-menu-section-toggle{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center;border:0;padding:0;background:transparent;font:inherit;font-weight:800;color:var(--text);text-transform:none;letter-spacing:normal;cursor:pointer}.public-menu-chevron{display:inline-flex;transition:transform .22s ease}.public-menu-chevron.open{transform:rotate(180deg)}.public-menu-collapsed-content{overflow:hidden;max-height:0;transition:max-height .42s ease}.public-menu-collapsed-content.open{max-height:2000px}.public-menu-collapsed-section{background:#ffffffeb;box-shadow:0 1px #0000000a;cursor:pointer}.public-menu-items{display:grid;gap:16px;margin-top:14px}.public-menu-items-animated{animation:public-menu-filter-in .22s ease both}@keyframes public-menu-filter-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.public-menu-item{border-top:1px solid var(--line);padding-top:14px;display:grid;gap:10px}.public-menu-item:first-child{border-top:0;padding-top:0}.public-menu-item-main{display:flex;justify-content:space-between;gap:14px;align-items:start}.public-menu-item-name{font-weight:800;display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--brand-primary)}.public-menu-item-desc{margin-top:6px;color:var(--brand-secondary)}.public-menu-item-price{font-weight:800;white-space:nowrap;color:var(--brand-primary)}.public-menu-item-image img{width:100%;height:200px;max-height:200px;object-fit:contain;display:block;border:none;background:transparent}.public-menu-tag{display:inline-flex;align-items:center;gap:6px;color:var(--text)}.public-menu-tag-btn{appearance:none;background:transparent;cursor:pointer}button.pill.public-menu-tag-btn{color:var(--text)}.public-menu-tag-btn:hover{filter:brightness(.98)}.public-menu-tag-btn.is-active{border-color:var(--brand-primary);color:var(--brand-primary);background:#00000008}.public-menu-tag-filters{align-items:center}.public-menu-item-button{width:100%;text-align:left;cursor:pointer;border:none;border-top:1px solid var(--line);background:transparent;padding:14px 0 0;color:inherit;font:inherit}.public-menu-item-button:first-child{border-top:0;padding-top:0}.public-menu-item-button:hover{background:#00000005}.public-menu-item-button:focus-visible{outline:2px solid var(--brand-primary);outline-offset:4px;border-radius:12px}.public-menu-modal-backdrop{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.public-menu-modal{width:min(780px,100%);max-height:85vh;overflow:auto}.public-menu-modal-head{display:flex;align-items:start;justify-content:space-between;gap:14px}.public-menu-modal-price{margin-top:8px;font-weight:800;color:var(--brand-primary)}.public-menu-modal-body{margin-top:14px;display:grid;gap:14px}.public-menu-modal-media img{width:100%;height:260px;max-height:260px;object-fit:contain;display:block;border:none;background:#00000008;border-radius:14px}.public-menu-modal-placeholder{width:100%;height:260px;border-radius:14px;background:linear-gradient(135deg,#0000000a,#00000005);display:flex;align-items:center;justify-content:center;font-weight:700;color:#0000008c}.dash-modal-backdrop{position:fixed;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;padding:18px;z-index:60;animation:dashModalFadeIn .14s ease-out}.dash-modal{width:min(560px,100%);max-height:85vh;overflow:auto;animation:dashModalPopIn .16s ease-out}@keyframes dashModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dashModalPopIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.dash-modal-backdrop,.dash-modal{animation:none}}@media(min-width:720px){.public-menu-modal-body{grid-template-columns:320px 1fr;align-items:start}}.nav{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:40px}.logo{font-size:1.1rem;text-transform:uppercase;letter-spacing:.2em;color:inherit;text-decoration:none}.nav-meta{font-size:.9rem;color:var(--muted)}.hero{display:flex;flex-direction:column;gap:48px;animation:fade-up .8s ease both}.hero-grid{display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center}.hero-copy h1{font-size:clamp(2.4rem,4vw,4rem);line-height:1.05;margin-bottom:20px}.hero-copy p{font-size:1.1rem;color:var(--muted);max-width:560px;margin-bottom:24px}.eyebrow{text-transform:uppercase;font-size:.75rem;letter-spacing:.3em;color:var(--muted);margin-bottom:16px}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}button,.btn{font-family:IBM Plex Mono,Courier New,monospace;border:1px solid var(--text);background:var(--text);color:#fff;padding:12px 22px;font-size:.9rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:transform .2s ease}button:hover,.btn:hover{filter:brightness(.98)}button.ghost,.btn.ghost{background:transparent;color:var(--text)}button.white,.btn.white{background:#fff;color:var(--text);border-color:var(--line)}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:focus,button:focus{outline:2px solid rgba(17,17,17,.25);outline-offset:2px}.btn[aria-disabled=true]{opacity:.6;pointer-events:none}.nav-actions{display:flex;gap:10px;align-items:center}.meta-row{display:flex;flex-wrap:wrap;gap:12px}.pill{border:1px solid var(--line);padding:6px 14px;font-size:.85rem;color:var(--muted)}button.pill,.btn.pill{color:#fff}.hero-panel{display:grid;gap:18px}.panel-card{border:1px solid var(--line);padding:20px;background:#ffffffb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-up .9s ease both}.panel-title{font-size:.9rem;text-transform:uppercase;letter-spacing:.2em;margin-bottom:12px}.panel-line{height:1px;background:var(--line);margin:12px 0}.panel-item{display:flex;justify-content:space-between;font-weight:500}.panel-label{font-weight:600}.panel-desc{font-size:.8rem;color:var(--muted);margin-bottom:6px}.panel-sub{font-size:.85rem;color:var(--muted)}.ghost-card{background:transparent;box-shadow:none}.signal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.signal-number{font-size:1.6rem;font-weight:600}.signal-label{font-size:.8rem;color:var(--muted)}.signal-bar{height:8px;border-radius:999px;background:linear-gradient(90deg,#000 0% 40%,#c7c7c7 40% 100%);margin-top:16px}.section{display:flex;flex-direction:column;gap:32px}.section-head h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:12px}.section-head p{color:var(--muted);max-width:640px}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.card{border:1px solid var(--line);padding:20px;background:#ffffff8c;min-height:180px}.card.dash-modal{background:#fff}.card.role-card{color:var(--text);font-family:inherit;text-transform:none;letter-spacing:normal}.card.role-card.is-selected{border-color:#00000047;box-shadow:0 0 0 3px #0000000f;background:#fffc}.card.role-card:hover{filter:none}.card h3{font-size:1.1rem;margin-bottom:12px}.card p{color:var(--muted)}.card.public-menu-section h3{color:var(--brand-primary)}.card.public-menu-section p{color:var(--brand-secondary)}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;align-items:start}.list{display:flex;flex-direction:column;gap:12px}.list-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:8px}.mono{font-family:IBM Plex Mono,Courier New,monospace;font-size:.85rem;color:var(--muted)}.request-failed-page{gap:48px}.request-failed-nav{margin-bottom:0}.request-failed-content{width:100%;max-width:880px;margin:0 auto;display:grid;gap:24px}.request-failed-head{display:grid;gap:10px}.request-failed-title{font-size:clamp(2rem,3vw,2.8rem);line-height:1.08;margin:0}.request-failed-subtitle{margin:0;color:var(--muted);max-width:60ch}.request-failed-card{min-height:unset;padding:22px;display:grid;gap:14px}.request-failed-message{margin:0;font-family:IBM Plex Mono,Courier New,monospace;font-size:.85rem;color:var(--muted);word-break:break-word}.request-failed-actions{margin-bottom:0}.step{font-family:IBM Plex Mono,Courier New,monospace;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:16px;color:var(--muted)}.plans .plan{border:1px solid var(--text);padding:22px;background:#fff;position:relative}.plans .plan.is-active:after{content:"";position:absolute;inset:10px;border:2px dashed rgba(80,80,80,.75);pointer-events:none}.plans .plan.is-selected{box-shadow:inset 0 0 0 2px #5050508c}.plan-badge{position:absolute;top:14px;right:14px;display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;border:1px dashed rgba(80,80,80,.75);background:#ffffffd9;font-family:IBM Plex Mono,Courier New,monospace;font-size:.75rem;color:var(--text);letter-spacing:.02em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.plan-title{font-size:1.2rem;font-weight:600}.plan-summary{color:var(--muted);margin:8px 0 16px}.plan ul{list-style:none;display:grid;gap:8px;font-size:.95rem}.plan li:before{content:"-";margin-right:10px}.cta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px}.cta h2{font-size:clamp(1.6rem,3vw,2.4rem);margin-bottom:8px}.cta p{color:var(--muted)}.footer{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--muted)}.footer a{color:inherit;text-decoration:none}.legal-page{min-height:100vh}.legal-hero{display:grid;gap:16px;max-width:720px}.legal-hero h1{font-size:clamp(2.2rem,4vw,3.4rem)}.legal-hero p{color:var(--muted);font-size:1.05rem}.legal-back{text-transform:uppercase;letter-spacing:.2em}.legal-body{display:grid;gap:24px;max-width:720px}.legal-block{border:1px solid var(--line);padding:20px;background:#fff9}.auth-page{padding:0 0 80px;display:grid;gap:22px;justify-items:center}.auth-shell{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr auto;padding:40px 6vw 0}.auth-header{width:min(720px,100%);margin:0 auto 22px;display:flex;justify-content:space-between;align-items:center}.auth-card{width:min(720px,100%);border:1px solid var(--line);padding:28px;background:#fffc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.auth-head{margin-bottom:18px}.auth-head h1{font-size:2rem;line-height:1.1;margin-bottom:10px}.auth-head p{color:var(--muted);max-width:56ch}.auth-form{display:grid;gap:14px}.field{display:grid;gap:8px}.field span{font-weight:600}.field small{color:var(--muted);font-size:.85rem;margin-top:2px}.field input,.field select{border:1px solid var(--line);padding:12px 14px;border-radius:10px;background:#ffffffe6;font-size:1rem;font-family:inherit;width:100%;max-width:100%;box-sizing:border-box}.field textarea{border:1px solid var(--line);padding:12px 14px;border-radius:10px;background:#ffffffe6;font-size:1rem;font-family:inherit;width:100%;max-width:100%;box-sizing:border-box;resize:vertical;min-height:44px}.field input[type=range]{padding:0;border:1px solid var(--line);border-radius:10px;background:#ffffffe6;height:42px;accent-color:var(--text)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(17,17,17,.25);outline-offset:2px}.field input:disabled,.field select:disabled,.field textarea:disabled{opacity:.75;cursor:not-allowed;background:#ffffffa6}.field-control{border:1px solid var(--line);padding:10px 12px;border-radius:10px;background:#ffffffe6;font-size:.95rem;font-family:inherit}.field-control:focus{outline:2px solid rgba(17,17,17,.25);outline-offset:2px}.field-control:disabled{opacity:.6}.notice{border:1px solid var(--line);padding:12px 14px;border-radius:12px;font-size:.95rem}.notice.error{border-color:#a01e1e59;background:#ffe6e6cc}.notice.success{border-color:#14783259;background:#e1ffebcc}.auth-foot{display:flex;gap:8px;justify-content:center;color:var(--muted);font-size:.95rem;padding-top:8px}.auth-foot a{color:inherit;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.2)}.auth-foot button{appearance:none;background:transparent;border:0;padding:0;color:inherit;font:inherit;font-weight:700;border-bottom:1px solid rgba(0,0,0,.2);cursor:pointer}.auth-foot a:hover,.auth-foot button:hover{border-bottom-color:#00000073}.auth-footer{padding:18px 0 26px;color:var(--muted);font-size:.95rem}.auth-footer-inner{width:min(720px,100%);margin:0 auto;display:flex;gap:14px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px}.auth-footer-links{display:flex;gap:12px}.auth-footer-links a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.2);font-weight:700}.auth-footer-links a:hover{border-bottom-color:#00000073}.benefits{margin-top:10px;padding-left:18px;display:grid;gap:6px}.benefits li{color:var(--text)}.password-rules{list-style:none;padding-left:0;margin-top:10px;display:grid;gap:6px;color:#a01e1ed9;font-size:.9rem}.password-rules li{display:flex;gap:8px;align-items:baseline}.password-rules li:before{content:"•";opacity:.85}.password-rules li.ok{color:#147832e6}.dash-page{padding:40px 6vw 80px;display:grid;gap:22px;justify-items:center}.dash-shell{min-height:100vh;grid-template-rows:auto auto 1fr auto;justify-items:center}.dash-shell-main{width:min(960px,100%);margin:0 auto}.dash-footer{padding:18px 0 26px;color:var(--muted);font-size:.95rem}.dash-footer-inner{width:min(960px,100%);margin:0 auto;display:flex;gap:14px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px}.dash-footer-links{display:flex;gap:12px}.dash-footer-links a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.2);font-weight:700}.dash-footer-links a:hover{border-bottom-color:#00000073}.dash-header{width:min(960px,100%);margin:0 auto;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px}.dash-meta{display:grid;justify-items:end;gap:2px;color:var(--muted);font-size:.9rem}.dash-user{color:var(--text);font-weight:700}.dash-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center}.dash-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.dash-drag-header{display:flex;gap:10px;align-items:center;min-width:0;cursor:grab;-webkit-user-select:none;user-select:none}.dash-drag-header:active{cursor:grabbing}.dash-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid rgba(0,0,0,.12);background:#ffffffa6;color:#000000b3;flex:0 0 auto}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid rgba(0,0,0,.12);background:#ffffffa6;color:#000000bf;font:inherit;line-height:1;cursor:pointer;flex:0 0 auto;-webkit-user-select:none;user-select:none}.icon-btn:hover{filter:brightness(.98)}.icon-btn:focus-visible{outline:2px solid rgba(17,17,17,.25);outline-offset:2px}.dash-card{width:min(960px,100%);border:1px solid var(--line);padding:28px;background:#fffc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dash-title{margin-bottom:18px}.dash-title h1{font-size:2rem;line-height:1.1;margin-bottom:10px}.dash-title p{color:var(--muted);max-width:70ch}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.dash-grid.dash-grid-single{grid-template-columns:1fr}.dash-pill-sections{display:grid;gap:16px}.dash-pill-section{border:1px solid var(--line);padding:18px;background:#ffffffa6;border-radius:0;display:grid;gap:10px;align-content:start;box-shadow:0 1px #00000005}.dash-pill-section h2{margin:0;font-size:1.1rem;line-height:1.25}.dash-pill-section p{margin:0;color:var(--muted)}.dash-referral-link{display:block;width:100%;text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85rem;color:var(--muted);border:1px solid rgba(0,0,0,.06);background:#ffffffb3;padding:10px 12px;word-break:break-all}.dash-referral-link-button{cursor:pointer}.dash-referral-link-button:disabled{cursor:not-allowed;opacity:.7}.dash-referral-link-button:hover:not(:disabled){filter:brightness(.98)}.dash-tile{border:1px solid var(--line);padding:18px;background:#ffffffa6;display:grid;gap:8px;align-content:start;min-height:140px;color:inherit;text-decoration:none;text-transform:none;letter-spacing:normal;box-shadow:0 1px #00000005;transition:background .12s ease,filter .12s ease}.dash-kpi-value{font-size:2.2rem;line-height:1;font-weight:700;letter-spacing:-.02em}.dash-kpi-label{font-weight:600}.dash-kpi-meta{color:var(--muted);font-size:.95rem}a.dash-tile:hover{filter:brightness(.98)}a.dash-tile:focus-visible{outline:2px solid rgba(0,0,0,.28);outline-offset:3px;filter:brightness(.98)}button.dash-tile{width:100%;text-align:left;cursor:pointer;font:inherit}button.dash-tile:hover{filter:brightness(.98)}button.dash-tile:focus-visible{outline:2px solid rgba(0,0,0,.28);outline-offset:3px;filter:brightness(.98)}.dash-tile.is-disabled{opacity:.5}.dash-tile.is-selected{border-color:#00000047;box-shadow:0 0 0 3px #0000000f}.dash-list li.is-disabled,.dash-list.is-disabled{opacity:.5}.dash-tile h2,.dash-tile h3{margin:0;font-size:1.1rem;line-height:1.25;text-transform:none;letter-spacing:normal}.dash-tile p{margin:0;color:var(--muted);text-transform:none;letter-spacing:normal}.dash-tile-list{list-style:none;padding-left:0;display:grid;gap:8px;margin:0}.dash-tile-list li{border:1px solid rgba(0,0,0,.06);padding:10px 12px;background:#ffffffb3}.dash-tile-link{display:flex;justify-content:space-between;gap:12px;width:100%;min-width:0;color:inherit;text-decoration:none}.dash-tile-link:hover .dash-tile-title{text-decoration:underline}.dash-tile-title{font-weight:700;min-width:0;overflow-wrap:anywhere}.dash-tile-meta{color:var(--muted);font-size:.9rem}.dash-table{width:100%;border-collapse:collapse;background:#ffffffb3;border:1px solid rgba(0,0,0,.06)}.dash-table th,.dash-table td{padding:10px 12px;border-top:1px solid rgba(0,0,0,.06);text-align:left;vertical-align:top}.dash-table th{font-size:.85rem;font-weight:700;color:var(--muted);border-top:0;background:#ffffffe6}.dash-table-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.dash-table-muted{color:var(--muted)}.dash-table-row-link{cursor:pointer}.dash-table-row-link:hover td{background:#00000005}.dash-table-row-link:focus td{background:#00000008}.dash-table-link{display:block;width:100%;color:inherit;text-decoration:none}.dash-table-link:hover{text-decoration:underline}.dash-status-dot{width:10px;height:10px;border-radius:999px;display:inline-block;flex:0 0 auto;box-shadow:0 0 0 1px #0000001f inset}.dash-status-dot--active{background:#22c55e}.dash-status-dot--inactive{background:#ef4444}.campaign-setup{display:grid;gap:12px}.campaign-progress{height:10px;border-radius:999px;background:#0000000f;overflow:hidden}.campaign-progress-bar{height:100%;background:var(--text);width:0;transition:width .18s ease}.campaign-steps{display:flex;flex-wrap:wrap;gap:10px}button.campaign-step{border:1px solid var(--line);background:#ffffffe6;color:var(--text);border-radius:999px;padding:10px 12px;font:inherit;font-weight:800;cursor:pointer;text-transform:none;letter-spacing:normal}button.campaign-step.active{border-color:var(--text);background:var(--text);color:#fff}button.campaign-step.done:not(.active){border-color:#0000003d}button.campaign-step.disabled{opacity:.6;cursor:not-allowed}.campaign-autocomplete{position:absolute;inset:auto 0 0;transform:translateY(calc(100% + 6px));background:#fffffffa;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 28px #00000014;z-index:5;display:grid}.campaign-autocomplete-item{padding:10px 12px;text-align:left;background:transparent;color:var(--text);border:0;border-bottom:1px solid rgba(0,0,0,.06);cursor:pointer;font:inherit;text-transform:none;letter-spacing:normal}.campaign-autocomplete-item:hover{background:#00000008}.campaign-autocomplete-item:last-child{border-bottom:0}.campaign-mapbox{border:1px solid rgba(0,0,0,.08);background:#ffffffb3;overflow:hidden;display:grid;gap:0}.campaign-mapbox-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(0,0,0,.06);background:#ffffffd1}.campaign-mapbox-title{font-weight:900}.campaign-mapbox-sub{margin-top:2px;color:var(--muted);font-size:.9rem}.campaign-mapbox-loading{width:16px;height:16px;border-radius:999px;border:2px solid rgba(0,0,0,.22);border-top-color:#0000009e;animation:field-spin .8s linear infinite}.campaign-mapbox-canvas{height:320px;width:100%}.campaign-mapbox-missing{padding:14px}.campaign-mapbox .mapboxgl-ctrl-attrib{font-family:inherit}.campaign-mapbox .mapboxgl-ctrl-logo{display:none!important}.campaign-dropzone{margin-top:12px;border:2px dashed rgba(0,0,0,.18);background:#ffffffbf;border-radius:14px;padding:18px 16px;width:100%;text-align:center;font:inherit;font-weight:700;color:var(--text);cursor:pointer}.campaign-dropzone:hover{filter:brightness(.99)}.campaign-dropzone.is-active{border-color:var(--text);background:#00000008}.campaign-dropzone:focus-visible{outline:2px solid rgba(17,17,17,.25);outline-offset:2px}.campaign-dropzone:disabled{opacity:.6;cursor:not-allowed}.campaign-media-grid{list-style:none;padding-left:0;margin:0;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.asset-position-toggle{display:inline-flex;border:1px solid rgba(0,0,0,.14);border-radius:999px;overflow:hidden;background:#ffffffb3}.asset-position-toggle button{all:unset;padding:6px 10px;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;cursor:pointer;color:var(--text);line-height:1}.asset-position-toggle button.is-active{background:var(--text);color:#fff}.asset-position-toggle button:focus-visible{outline:2px solid rgba(17,17,17,.25);outline-offset:-2px}.asset-position-toggle button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:920px){.campaign-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.campaign-media-grid{grid-template-columns:1fr}}.field.is-loading input{padding-right:44px}.field-spinner{position:absolute;right:14px;top:44px;width:16px;height:16px;border-radius:999px;border:2px solid rgba(0,0,0,.22);border-top-color:#0000009e;animation:field-spin .8s linear infinite;pointer-events:none}@keyframes field-spin{to{transform:rotate(360deg)}}.campaign-map{border:1px solid rgba(0,0,0,.08);background:#ffffffb3;display:grid;gap:10px;padding:14px}.campaign-map-top{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;justify-content:space-between}.campaign-map-badge{font-weight:900;font-size:.85rem;padding:6px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#ffffffe6}.campaign-map-meta{color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.campaign-map-dot{opacity:.7}.campaign-map-canvas{position:relative;height:220px;border:1px solid rgba(0,0,0,.06);background:linear-gradient(180deg,#00000005,#00000003);overflow:hidden}.campaign-map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.04) 1px,transparent 1px);background-size:36px 36px;opacity:.5}.campaign-map-pin{position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:999px;background:var(--text);transform:translate(-50%,-50%);box-shadow:0 10px 24px #00000024}.campaign-map-circle{position:absolute;left:50%;top:50%;width:220px;height:220px;border-radius:999px;transform:translate(-50%,-50%);background:#0000000f;border:1px solid rgba(0,0,0,.12)}.dash-sections{display:grid;gap:18px}.dash-menu{border:1px solid var(--line);background:#ffffffb3;padding:10px;display:flex;flex-wrap:wrap;gap:10px;position:sticky;top:16px;z-index:2}.dash-menu-inline{position:relative;top:auto;z-index:0}.dash-menu-item{border:1px solid var(--line);padding:10px 12px;border-radius:999px;text-decoration:none;color:var(--text);background:#ffffffe6;font-weight:700;font-size:.95rem}button.dash-menu-item{cursor:pointer;font:inherit}.dash-menu-item:hover{filter:brightness(.98)}.dash-menu-item.active{border-color:var(--text);background:var(--text);color:#fff}.dash-section{border:1px solid var(--line);padding:18px;background:#ffffff8c;display:grid;gap:14px}.dash-section-head{display:grid;grid-template-columns:1fr auto;align-items:start;gap:14px}.dash-section-head h2{font-size:1.2rem;margin-bottom:6px}.dash-section-head p{color:var(--muted)}.dash-section-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}.dash-form{display:grid;gap:12px;padding:14px;border:1px dashed var(--line);background:#ffffffa6}.dash-form.dash-form-no-border{border:none}.dash-form.dash-form-plain{padding:0;border:none;background:transparent}.dash-section.dash-section-plain{border:none;padding:0;background:transparent}.dash-form-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start}.dash-lists{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dash-list{border:1px solid var(--line);padding:14px;background:#ffffff73;display:grid;grid-template-rows:auto 1fr auto;gap:10px}.dash-list-title{font-weight:800;letter-spacing:.01em}.dash-list ul,.dash-items{list-style:none;padding-left:0;display:grid;gap:8px}.dash-list li{border:1px solid rgba(0,0,0,.06);padding:10px 12px;background:#ffffffbf}.dash-items li{border:1px solid rgba(0,0,0,.06);padding:16px;background:#fffc}.translations-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.translations-sidebar{position:sticky;top:16px;align-self:start}.translations-item-button{background:transparent;border:none;padding:0;cursor:pointer;font:inherit;color:var(--text)}.translations-item-button:hover,.translations-item-button.is-active{text-decoration:underline}.translations-item-button:focus-visible{outline:2px solid rgba(17,17,17,.25);outline-offset:2px}.translations-items{display:grid;gap:10px}.translations-pill-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}@media(max-width:980px){.translations-grid{grid-template-columns:1fr}.translations-sidebar{position:static}}.dash-restaurant-card{display:grid;gap:10px;color:inherit;text-decoration:none}.dash-restaurant-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.dash-restaurant-card-title{font-weight:800;letter-spacing:.01em}.dash-restaurant-card-meta{display:flex;flex-wrap:wrap;gap:10px}.dash-item-link{display:flex;justify-content:space-between;gap:12px;width:100%;color:inherit;text-decoration:none}.dash-item-link:hover .dash-item-title{text-decoration:underline}.dash-item-title{font-weight:700}.dash-item-meta{color:var(--muted);font-size:.9rem}.dash-empty{color:var(--muted);font-size:.95rem}.dash-list-footer{display:flex;justify-content:center;margin-top:6px}.dash-breadcrumbs{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.95rem}.dash-crumb{color:inherit;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.2);font-weight:700}.dash-crumb:hover{border-bottom-color:#00000073}.dash-crumb-sep{opacity:.7}.dash-crumb-current{color:var(--text);font-weight:700}.dash-kv{display:grid;gap:10px;border:1px solid var(--line);padding:14px;background:#ffffff73}.dash-kv-row{display:grid;grid-template-columns:160px 1fr;gap:12px}.dash-kv-key{color:var(--muted);font-weight:700}.dash-kv-val{color:var(--text)}@media(max-width:720px){.dash-header{grid-template-columns:1fr;justify-items:start}.dash-meta{justify-items:start}.dash-actions{width:100%;justify-content:flex-start}.dash-section-head{grid-template-columns:1fr}.dash-section-actions{justify-content:flex-start}.dash-menu{top:10px}}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.page{padding:28px 6vw 60px}.nav{flex-direction:column;align-items:flex-start;gap:6px}.cta{align-items:flex-start}button,.btn{width:100%}}.conditions-disclosure{padding:12px}.conditions-disclosure-toggle{width:100%;background:transparent;border:0;padding:0;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;color:inherit;font:inherit}.conditions-disclosure-summary{font-weight:700}.conditions-disclosure-chevron{width:28px;height:28px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.1);background:#fff9;transition:transform .2s ease;flex:0 0 auto}.conditions-disclosure-toggle[aria-expanded=true] .conditions-disclosure-chevron{transform:rotate(180deg)}.conditions-disclosure-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .22s ease,opacity .22s ease}.conditions-disclosure-body.is-open{grid-template-rows:1fr;opacity:1}.conditions-disclosure-body-inner{overflow:hidden;padding-top:10px;color:var(--muted);line-height:1.55;font-size:14px}@media(prefers-reduced-motion:reduce){.conditions-disclosure-chevron,.conditions-disclosure-body{transition:none}}
