:root{--navy: #0a1f3d;--navy-mid: #153e5c;--teal: #00b3a6;--teal-soft: #d7f5f2;--bg: #eef3f7;--surface: #ffffff;--text: #0a1f3d;--muted: #5a6b7d;--line: #d5dee8;--warn: #b45309;--warn-bg: #fff7ed;--error: #b91c1c;--error-bg: #fef2f2;--ok: #0f766e;--ok-bg: #ecfdf8;--shadow: 0 18px 40px rgba(10, 31, 61, .1);--radius: 22px;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);font-family:DM Sans,system-ui,sans-serif;color:var(--text);background:var(--bg);line-height:1.35;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:radial-gradient(900px 420px at 10% -10%,#d9e8f4 0%,transparent 55%),radial-gradient(700px 360px at 100% 0%,#d7f5f2 0%,transparent 50%),var(--bg)}button,input{font:inherit}button{cursor:pointer;border:none;background:none}.app{max-width:440px;margin:0 auto;min-height:100dvh;padding:calc(16px + var(--safe-t)) 16px calc(88px + var(--safe-b));position:relative}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;animation:rise .55s ease both}.brand{display:flex;flex-direction:column;gap:2px}.brand-mark{font-family:Fraunces,Georgia,serif;font-weight:700;font-size:1.35rem;letter-spacing:-.02em;color:var(--navy)}.brand-sub{font-size:.78rem;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.store-pill{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:.85rem;font-weight:600;color:var(--navy-mid);box-shadow:0 6px 16px #0a1f3d0d}.hero-card{background:linear-gradient(155deg,var(--navy) 0%,var(--navy-mid) 70%,#0f4a4a 100%);color:#f4f7fa;border-radius:28px;padding:22px 20px 20px;box-shadow:var(--shadow);position:relative;overflow:hidden;animation:rise .65s ease both .05s}.hero-card:after{content:"";position:absolute;inset:auto -20% -40% 40%;height:180px;background:radial-gradient(circle,rgba(0,179,166,.35),transparent 65%);pointer-events:none}.hero-kicker{font-size:.78rem;opacity:.75;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.hero-title{font-family:Fraunces,Georgia,serif;font-size:1.7rem;font-weight:600;margin:0 0 8px;letter-spacing:-.02em;max-width:16ch}.hero-copy{margin:0;font-size:.95rem;opacity:.88;max-width:32ch}.meta-block{margin-top:22px;display:grid;grid-template-columns:112px 1fr;gap:16px;align-items:center;position:relative;z-index:1}.ring-wrap{width:112px;height:112px;position:relative}.ring-wrap svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-track{fill:none;stroke:#ffffff1f;stroke-width:9}.ring-progress{fill:none;stroke:var(--teal);stroke-width:9;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.22,1,.36,1)}.ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center}.ring-pct{font-family:Fraunces,Georgia,serif;font-size:1.35rem;font-weight:700}.ring-label{font-size:.68rem;opacity:.7;text-transform:uppercase;letter-spacing:.06em}.meta-stats{display:flex;flex-direction:column;gap:10px}.stat{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:.72rem;opacity:.7;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-weight:650;font-size:1.05rem}.section{margin-top:22px;animation:rise .7s ease both .1s}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.section-title{font-family:Fraunces,Georgia,serif;font-size:1.2rem;margin:0}.section-link{color:var(--teal);font-weight:600;font-size:.85rem}.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 28px #0a1f3d0d}.day-status{padding:16px;display:flex;gap:14px;align-items:center}.day-status-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--teal-soft);color:var(--ok);font-size:1.3rem;flex-shrink:0}.day-status-icon.warn{background:var(--warn-bg);color:var(--warn)}.day-status-icon.ok{background:var(--ok-bg);color:var(--ok)}.day-status h3{margin:0 0 4px;font-size:1.05rem}.day-status p{margin:0;color:var(--muted);font-size:.9rem}.cta-primary{display:flex;width:100%;align-items:center;justify-content:center;gap:8px;margin-top:14px;padding:16px 18px;border-radius:18px;background:var(--teal);color:#042a27;font-weight:700;font-size:1.05rem;box-shadow:0 12px 24px #00b3a647;transition:transform .15s ease,box-shadow .15s ease}.cta-primary:active{transform:translateY(1px) scale(.99)}.cta-primary.secondary{background:var(--navy);color:#f4f7fa;box-shadow:0 12px 24px #0a1f3d38}.cta-ghost{width:100%;margin-top:10px;padding:12px;border-radius:14px;color:var(--navy-mid);font-weight:600;background:transparent;border:1px dashed var(--line)}.lane{display:grid;gap:10px}.lane-item{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px}.lane-item+.lane-item{border-top:1px solid var(--line)}.lane-left{display:flex;flex-direction:column;gap:2px}.lane-title{font-weight:650}.lane-sub{font-size:.8rem;color:var(--muted)}.lane-value{font-weight:700;font-variant-numeric:tabular-nums}.lane-value.up{color:var(--ok)}.lane-value.down{color:var(--error)}.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;padding:10px 12px;border-radius:16px;background:var(--surface);border:1px solid var(--line);min-width:108px}.chip strong{display:block;font-size:.95rem;margin-top:2px}.chip span{font-size:.72rem;color:var(--muted);text-transform:capitalize}.channel-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.channel-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:8px 12px;font-size:.85rem;cursor:pointer}.channel-chip.on{border-color:var(--accent, #1f4b7a);background:color-mix(in srgb,var(--accent, #1f4b7a) 14%,var(--surface));font-weight:600}.channel-chip.warn{outline:1px dashed #b45309}.app.app-wizard{padding-bottom:calc(16px + var(--safe-b));min-height:100dvh;display:flex;flex-direction:column}.wizard{flex:1;display:flex;flex-direction:column;min-height:0;animation:rise .4s ease both}.wizard-body{flex:1;min-height:0;overflow-y:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch}.wizard-actions{flex-shrink:0;padding-top:12px;background:linear-gradient(180deg,rgba(238,243,247,0),var(--bg) 35%)}.wizard-actions .cta-primary{margin-top:0}.wizard-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-shrink:0}.back-btn{width:42px;height:42px;border-radius:14px;background:var(--surface);border:1px solid var(--line);font-size:1.1rem;color:var(--navy)}.step-dots{display:flex;gap:6px}.dot{width:8px;height:8px;border-radius:999px;background:var(--line);transition:width .25s ease,background .25s ease}.dot.on{width:22px;background:var(--teal)}.wizard-title{font-family:Fraunces,Georgia,serif;font-size:1.55rem;margin:0 0 6px;letter-spacing:-.02em}.wizard-copy{margin:0 0 18px;color:var(--muted)}.field-list{display:grid;gap:10px}.field{display:block;position:relative;z-index:1;isolation:isolate;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px 14px 12px;transition:border-color .15s ease,box-shadow .15s ease}.field:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #00b3a62e}.field-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px}.field-label{font-weight:650}.field-hint{font-size:.78rem;color:var(--muted)}.field-tone{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:999px;background:var(--bg);color:var(--muted)}.field-tone.cash{background:#fff4d6;color:#92400e}.field-tone.card{background:#e8eef5;color:var(--navy-mid)}.field-tone.delivery{background:#ffe4e6;color:#9f1239}.field-tone.digital{background:var(--teal-soft);color:var(--ok)}.money-row{display:flex;align-items:baseline;gap:6px}.money-prefix{font-weight:700;color:var(--muted);font-size:1.15rem}.money-input{width:100%;border:none;outline:none;background:transparent;font-size:1.55rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--navy);padding:0}.summary-grid{display:grid;gap:10px;margin-bottom:14px}.summary-card{padding:16px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}.summary-card.accent{background:linear-gradient(145deg,var(--teal-soft),#fff);border-color:#b7ebe5}.summary-card .k{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.summary-card .v{margin-top:4px;font-family:Fraunces,Georgia,serif;font-size:1.45rem;font-weight:650}.diff-banner{padding:14px 16px;border-radius:16px;margin:12px 0 4px;font-weight:600}.diff-banner.ok{background:var(--ok-bg);color:var(--ok)}.diff-banner.warn{background:var(--warn-bg);color:var(--warn)}.diff-banner.bad{background:var(--error-bg);color:var(--error)}.note-input{width:100%;margin-top:10px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--surface);resize:vertical;min-height:72px}.footer-bar{display:none}.sealed{text-align:center;padding:36px 12px 12px;animation:seal .7s cubic-bezier(.22,1,.36,1) both}.sealed-badge{width:88px;height:88px;margin:0 auto 16px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;font-size:2.2rem;box-shadow:0 0 0 10px #0f766e14}.sealed h2{font-family:Fraunces,Georgia,serif;font-size:1.8rem;margin:0 0 8px}.sealed p{color:var(--muted);margin:0 0 20px}.nav-tabs{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:min(440px,100%);display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:4px;padding:10px 12px calc(10px + var(--safe-b));background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:30}.nav-tab{padding:10px 6px;border-radius:14px;color:var(--muted);font-size:.78rem;font-weight:650}.nav-tab.on{background:var(--teal-soft);color:var(--ok)}.meta-editor{padding:16px}.meta-editor label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:6px}.hint-box{margin-top:12px;padding:12px 14px;border-radius:14px;background:#e8eef5;color:var(--navy-mid);font-size:.88rem}.tiny{font-size:.78rem;color:var(--muted)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes seal{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
