@font-face{font-family:Prompt;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/Prompt-Regular-DiBzP1oc.ttf) format("truetype")}@font-face{font-family:Prompt;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/Prompt-Medium-D10sta-M.ttf) format("truetype")}@font-face{font-family:Prompt;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Prompt-SemiBold-CjAZVCPa.ttf) format("truetype")}@font-face{font-family:Prompt;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/Prompt-Bold-C-Ht9nTF.ttf) format("truetype")}@font-face{font-family:Prompt;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/Prompt-ExtraBold-VG397IvK.ttf) format("truetype")}:root{--orange-50: #FFF6EC;--orange-100: #FFE7CB;--orange-200: #FBCB90;--orange-300: #F9B44E;--orange-400: #F5972B;--orange-500: #EE7F00;--orange-600: #D96E00;--orange-700: #B85C00;--orange-800: #8F4700;--ink-950: #1A1A1A;--ink-900: #1E1E1E;--ink-800: #262626;--ink-700: #313231;--ink-600: #434343;--ink-500: #5C5C5C;--ink-400: #7A7A7A;--ink-300: #A3A3A3;--ink-200: #CFCFCF;--ink-150: #E1E1E1;--ink-100: #ECECEC;--ink-50: #F5F5F4;--white: #FFFFFF;--grad-metal: linear-gradient(168deg, #F59020 0%, #F8B44E 42%, #FDE6BE 78%, #FFFFFF 100%);--grad-orange: linear-gradient(135deg, #F5972B 0%, #EE7F00 60%, #D96E00 100%);--success-500: #2E9E5B;--success-50: #E7F5ED;--warning-500: #E8A317;--warning-50: #FCF3DD;--danger-500: #D6443A;--danger-50: #FBE9E7;--info-500: #2F77C4;--info-50: #E6F0FA;--brand: var(--orange-500);--brand-hover: var(--orange-600);--brand-active: var(--orange-700);--brand-contrast: var(--white);--bg-base: var(--white);--bg-subtle: var(--ink-50);--bg-muted: var(--ink-100);--bg-inverse: var(--ink-700);--bg-inverse-deep: var(--ink-900);--surface-card: var(--white);--surface-card-inverse: var(--ink-800);--text-strong: var(--ink-900);--text-body: var(--ink-700);--text-muted: var(--ink-400);--text-inverse: var(--white);--text-inverse-muted: var(--ink-300);--text-brand: var(--orange-600);--text-on-brand: var(--white);--border-subtle: var(--ink-150);--border-default: var(--ink-200);--border-strong: var(--ink-400);--border-brand: var(--orange-500);--border-inverse: rgba(255,255,255,.14);--focus-ring: var(--orange-400)}:root{--font-sans: "Prompt", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: var(--font-sans);--font-body: var(--font-sans);--fw-thin: 100;--fw-extralight: 200;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold: 800;--fw-black: 900;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-md: 18px;--text-lg: 20px;--text-xl: 24px;--text-2xl: 30px;--text-3xl: 38px;--text-4xl: 48px;--text-5xl: 62px;--text-6xl: 80px;--leading-tight: 1.05;--leading-snug: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.65;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-caps: .08em}body{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:root{--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-32: 128px;--radius-xs: 3px;--radius-sm: 5px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 18px;--radius-pill: 999px;--radius-circle: 50%;--border-width: 1px;--border-width-strong: 2px;--shadow-xs: 0 1px 2px rgba(26,26,26,.06);--shadow-sm: 0 1px 3px rgba(26,26,26,.1), 0 1px 2px rgba(26,26,26,.06);--shadow-md: 0 4px 12px rgba(26,26,26,.1), 0 2px 4px rgba(26,26,26,.06);--shadow-lg: 0 12px 28px rgba(26,26,26,.14), 0 4px 8px rgba(26,26,26,.06);--shadow-xl: 0 24px 56px rgba(26,26,26,.2);--shadow-brand: 0 6px 18px rgba(238,127,0,.32);--ease-standard: cubic-bezier(.2, 0, .1, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .32s;--container-sm: 640px;--container-md: 880px;--container-lg: 1120px;--container-xl: 1320px}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg-subtle);-webkit-tap-highlight-color:transparent}button{font-family:inherit}.app{min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;background:var(--bg-inverse);color:var(--text-inverse);padding:calc(env(safe-area-inset-top) + var(--space-3)) var(--space-4) var(--space-3);display:flex;align-items:center;gap:var(--space-3);min-height:56px}.topbar__back{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-left:calc(-1 * var(--space-2));border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-inverse);cursor:pointer}.topbar__back:active{background:#ffffff14}.topbar__title{flex:1;min-width:0}.topbar__eyebrow{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--orange-400)}.topbar__heading{font-size:var(--text-md);font-weight:var(--fw-extrabold);text-transform:uppercase;letter-spacing:var(--tracking-tight);line-height:var(--leading-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar__logo{height:22px;display:block}.page{flex:1;width:100%;max-width:var(--container-sm);margin:0 auto;padding:var(--space-4) var(--space-4) calc(var(--space-24) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-4)}.actionbar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--bg-base);border-top:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom))}.actionbar__inner{max-width:var(--container-sm);margin:0 auto;display:flex;gap:var(--space-3)}.actionbar__inner>*{flex:1}.syncbar{position:sticky;top:calc(56px + env(safe-area-inset-top));z-index:15;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--fw-medium);border-bottom:1px solid var(--border-subtle);background:var(--bg-base);color:var(--text-body)}.syncbar--offline{background:var(--warning-50);color:var(--ink-900)}.syncbar--error{background:var(--danger-50);color:var(--ink-900)}.syncbar--ok{color:var(--success-500)}.syncbar__spin{animation:rs-spin .9s linear infinite}@keyframes rs-spin{to{transform:rotate(360deg)}}.eyebrow{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-brand)}.h1{margin:0;font-size:var(--text-2xl);font-weight:var(--fw-extrabold);text-transform:uppercase;letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);color:var(--text-strong)}.h2{margin:0;font-size:var(--text-lg);font-weight:var(--fw-extrabold);text-transform:uppercase;letter-spacing:var(--tracking-tight);color:var(--text-strong)}.muted{color:var(--text-muted);font-size:var(--text-sm)}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.stack-lg{display:flex;flex-direction:column;gap:var(--space-5)}.row{display:flex;align-items:center;gap:var(--space-3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.grid-2{align-items:start;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.stat{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);text-align:left}.stat__value{font-size:var(--text-2xl);font-weight:var(--fw-extrabold);line-height:1;color:var(--text-strong)}.stat__label{margin-top:var(--space-1);font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.stat--brand{border-color:var(--border-brand)}.stat--brand .stat__value{color:var(--text-brand)}.stat--danger .stat__value{color:var(--danger-500)}.list-button{all:unset;display:block;width:100%;cursor:pointer;-webkit-user-select:none;user-select:none}.list-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-md)}.kv{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-4);font-size:var(--text-sm)}.kv dt{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted)}.kv dd{margin:0;color:var(--text-strong);font-weight:var(--fw-medium)}.stepper{display:flex;gap:2px}.stepper__item{min-width:0;overflow:hidden}.stepper__item{flex:1;border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.stepper__bar{height:4px;border-radius:var(--radius-pill);background:var(--border-default)}.stepper__item--done .stepper__bar{background:var(--success-500)}.stepper__item--current .stepper__bar{background:var(--brand)}.stepper__label{margin-top:var(--space-2);font-size:10px;font-weight:var(--fw-bold);letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;color:var(--text-muted)}.stepper__item--current .stepper__label{color:var(--text-strong)}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--space-2)}.segmented__option{min-height:52px;border:var(--border-width-strong) solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-base);color:var(--text-strong);font-size:var(--text-base);font-weight:var(--fw-semibold);cursor:pointer}.segmented__option[aria-pressed=true]{border-color:var(--brand);background:var(--orange-50);color:var(--orange-700)}.chip-code{white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 var(--space-2);border-radius:var(--radius-md);background:var(--bg-inverse);color:var(--text-inverse);font-weight:var(--fw-extrabold);font-size:var(--text-md)}.chip-code--sm{min-width:34px;height:30px;font-size:var(--text-sm)}.chip-code--brand{background:var(--brand)}.add-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.add-btn{display:flex;align-items:center;gap:var(--space-2);min-height:52px;padding:0 var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--bg-base);color:var(--text-strong);font-size:var(--text-sm);font-weight:var(--fw-semibold);cursor:pointer}.add-btn:active{background:var(--orange-50);border-color:var(--brand)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-base);color:var(--text-strong);cursor:pointer}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn--danger{color:var(--danger-500)}.sketch{width:100%;height:auto;display:block;background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.progress-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle);font-weight:var(--fw-medium)}.progress-row:last-child{border-bottom:0}.center-screen{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:var(--space-6) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom));background:var(--bg-inverse)}.center-screen__card{width:100%;max-width:420px;margin:0 auto}.textarea{width:100%;min-height:88px;padding:var(--space-3) var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-base);color:var(--text-strong);resize:vertical}.textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #f5972b40}.field-label{display:block;margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.skeleton{height:84px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--ink-100),var(--ink-50),var(--ink-100));background-size:200% 100%;animation:skeleton 1.2s ease-in-out infinite}@keyframes skeleton{to{background-position:-200% 0}}.campaign-logo{display:block;align-self:flex-start;width:auto;max-width:60%;border-radius:var(--radius-sm)}.photo-slot{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-subtle)}.photo-slot--missing{border-color:var(--warning-500);background:var(--warning-50)}.photo-slot__label{font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--text-strong)}.photo-slot__req{font-weight:var(--fw-medium);color:var(--text-brand)}.photo-slot__count{min-width:26px;height:26px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--bg-inverse);color:var(--text-inverse);font-size:var(--text-xs);font-weight:var(--fw-bold);display:inline-flex;align-items:center;justify-content:center}.photo-slot__error{font-size:var(--text-xs);color:var(--danger-500)}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.photo-thumb{position:relative;aspect-ratio:1;padding:0;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--ink-100);overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.photo-thumb--busy{animation:skeleton 1.2s ease-in-out infinite;background:linear-gradient(90deg,var(--ink-100),var(--ink-50),var(--ink-100));background-size:200% 100%}.photo-thumb__state{position:absolute;right:3px;bottom:3px;width:22px;height:22px;border-radius:var(--radius-circle);display:flex;align-items:center;justify-content:center;color:var(--white);box-shadow:var(--shadow-sm)}.photo-thumb__state.is-done{background:var(--success-500)}.photo-thumb__state.is-pending{background:var(--ink-600)}.photo-thumb__state.is-failed{background:var(--danger-500)}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--ink-950);display:flex;flex-direction:column}.viewer__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:calc(env(safe-area-inset-top) + var(--space-3)) var(--space-4) var(--space-3);color:var(--text-inverse)}.viewer__img{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.viewer__img img{max-width:100%;max-height:100%;object-fit:contain}.viewer__actions{padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom))}.question{display:flex;flex-direction:column;gap:var(--space-3)}.question__title{font-size:var(--text-base);font-weight:var(--fw-bold);color:var(--text-strong)}.question__detail{display:flex;flex-direction:column;gap:var(--space-3);padding-left:var(--space-3);border-left:3px solid var(--orange-200)}.hours-row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle)}.hours-row:last-child{border-bottom:0}.time-input{width:100%;min-height:48px;padding:0 var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-base);font-family:inherit;font-size:var(--text-base);color:var(--text-strong)}.time-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #f5972b40}.time-input--error{border-color:var(--danger-500)}.update-banner{position:fixed;left:var(--space-3);right:var(--space-3);bottom:calc(96px + env(safe-area-inset-bottom));z-index:40;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-inverse);color:var(--text-inverse);box-shadow:var(--shadow-lg);font-size:var(--text-sm)}.update-banner button{flex-shrink:0;min-height:40px;padding:0 var(--space-4);border:0;border-radius:var(--radius-md);background:var(--brand);color:var(--text-on-brand);font-weight:var(--fw-semibold);cursor:pointer}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#1a1a1a80;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:var(--container-sm);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));background:var(--bg-base);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-xl)}
