:root{color:var(--text-strong,#17211d);background:var(--page-base,#f4f6f1);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--page-base,#f4f6f1);margin:0}button,input{letter-spacing:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-base:#f5f8ff;--app-background:linear-gradient(180deg, #f4f8fffa 0%, #fffffffa 38%, #f1f6fffa 100%), var(--page-base);--grid-border:#2563eb12;--grid-line:#2563eb0e;--text-hero:#081327;--text-strong:#0f172a;--text-body:#53647f;--text-muted:#60708c;--text-soft:#65758f;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-deep:#1e3a8a;--accent-soft:#dbeafe;--accent-softer:#eff6ff;--accent-contrast:#fff;--success:#0f9f9a;--surface:#ffffffeb;--surface-solid:#fff;--surface-soft:#f8fbff;--surface-hover:#eff6ff;--surface-tint:#f1f6ff;--surface-neutral:#f8fafc;--surface-warm:#fffaf7;--border:#1e40af1c;--border-subtle:#1e40af1a;--border-control:#1e40af24;--border-strong:#2563eb57;--border-hover:#2563eb9e;--focus-border:#2563eb94;--focus-ring:#2563eb1c;--panel-shadow:0 16px 44px #1e40af14;--accent-shadow:0 16px 34px #2563eb38;--brand-shadow:0 12px 26px #2563eb2e;--chip-shadow:0 8px 22px #2563eb14;--replace-shadow:0 8px 18px #1e40af1f;--input-bg:#fff;--danger-text:#8b4a35;--danger-soft:#fff0eb;--danger-strong:#ef4444;--warning-border:#c4774857;--assignment-selected-text:#1e3a8a;--empty-text:#687895;--participant-text:#075985;--participant-border:#0ea5e938;--participant-bg:linear-gradient(180deg, #fffffffa, #eff9fffa), #fff;--participant-shadow:0 10px 22px #0f172a0f, inset 0 1px 0 #ffffffe0;--participant-remove-bg:#e0f2fedb;--participant-remove-text:#0284c7;--avatar-bg:linear-gradient(135deg, #0ea5e9, #38bdf8);--avatar-shadow:0 7px 16px #0ea5e93d;--theme-toggle-bg:#ffffffc7;--theme-toggle-hover-bg:#eff6fff0}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-base:#07111f;--app-background:radial-gradient(circle at 76% 9%, #0f9f9a29, transparent 30%), linear-gradient(180deg, #070f1cfa 0%, #091220fa 42%, #060d18fa 100%), var(--page-base);--grid-border:#60a5fa1f;--grid-line:#60a5fa17;--text-hero:#f8fbff;--text-strong:#e6edf7;--text-body:#b8c7dc;--text-muted:#9aaac0;--text-soft:#8fa1b8;--accent:#60a5fa;--accent-strong:#93c5fd;--accent-deep:#bfdbfe;--accent-soft:#60a5fa33;--accent-softer:#60a5fa21;--accent-contrast:#06101f;--success:#2dd4bf;--surface:#0d192ae6;--surface-solid:#101c2e;--surface-soft:#0c1728;--surface-hover:#122541;--surface-tint:#60a5fa1f;--surface-neutral:#94a3b814;--surface-warm:#2dd4bf14;--border:#7db1ff2e;--border-subtle:#7db1ff24;--border-control:#7db1ff33;--border-strong:#60a5fa6b;--border-hover:#93c5fdb3;--focus-border:#93c5fdb8;--focus-ring:#60a5fa2e;--panel-shadow:0 16px 50px #00000057;--accent-shadow:0 16px 34px #2563eb47;--brand-shadow:0 12px 26px #2dd4bf29;--chip-shadow:0 8px 24px #0000003d;--replace-shadow:0 8px 20px #00000047;--input-bg:#060f1cd1;--danger-text:#fca5a5;--danger-soft:#ef444421;--danger-strong:#f87171;--warning-border:#60a5fa3d;--assignment-selected-text:#dbeafe;--empty-text:#9aaac0;--participant-text:#bae6fd;--participant-border:#38bdf83d;--participant-bg:linear-gradient(180deg, #0e233afa, #081b2ffa), #0f1b2d;--participant-shadow:0 10px 22px #00000038, inset 0 1px 0 #ffffff0f;--participant-remove-bg:#0ea5e929;--participant-remove-text:#7dd3fc;--avatar-bg:linear-gradient(135deg, #0284c7, #2dd4bf);--avatar-shadow:0 7px 18px #2dd4bf2e;--theme-toggle-bg:#0d192ac7;--theme-toggle-hover-bg:#122541f0}.app-shell{min-height:100vh;color:var(--text-body);background:var(--app-background);padding:0 24px 24px}.landing-section{max-width:1400px;min-height:min(820px,100vh - 28px);margin:0 auto;padding:22px 0 46px;position:relative;overflow:hidden}.landing-section:before{border:1px solid var(--grid-border);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);content:"";pointer-events:none;background-size:38px 38px;width:min(48vw,640px);height:min(48vw,640px);position:absolute;inset:72px -18px auto auto;-webkit-mask-image:linear-gradient(135deg,#0000 6%,#000 42%,#0000 86%);mask-image:linear-gradient(135deg,#0000 6%,#000 42%,#0000 86%)}.site-nav{z-index:2;justify-content:space-between;align-items:center;gap:14px;min-height:58px;display:flex;position:relative}.brand-lockup,.site-nav a,.primary-cta{text-decoration:none}.brand-lockup{width:fit-content;color:var(--text-strong);align-items:center;gap:10px;font-size:17px;font-weight:820;display:inline-flex}.brand-mark{color:#fff;width:36px;height:36px;box-shadow:var(--brand-shadow);background:linear-gradient(135deg,#2563eb,#0f9f9a);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.theme-toggle{border:1px solid var(--border-control);width:38px;min-height:38px;color:var(--accent-strong);background:var(--theme-toggle-bg);box-shadow:var(--chip-shadow);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;transition:transform .15s,border-color .15s,background .15s;display:inline-flex}.theme-toggle:hover{border-color:var(--border-hover);background:var(--theme-toggle-hover-bg);transform:translateY(-1px)}.theme-toggle:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.hero-grid{z-index:1;max-width:900px;padding:92px 0 82px;display:grid;position:relative}.hero-copy{gap:24px;display:grid}.hero-copy h1{max-width:680px;color:var(--text-hero);margin:0;font-size:clamp(56px,7vw,94px);font-weight:840;line-height:.94}.hero-copy p{max-width:590px;color:var(--text-body);margin:0;font-size:20px;line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;padding-top:6px;display:flex}.primary-cta{min-height:48px;color:var(--accent-contrast);background:var(--accent);box-shadow:var(--accent-shadow);border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:0 19px 0 21px;font-size:15px;font-weight:790;display:inline-flex}.hero-proof{gap:10px;max-width:500px;padding-top:6px;display:grid}.hero-proof div{color:var(--text-body);align-items:center;gap:9px;font-size:14px;font-weight:690;display:flex}.hero-proof svg{color:var(--success);flex:none}.workspace-section{max-width:1400px;margin:0 auto;padding:16px 0 0}.topbar{justify-content:space-between;align-items:end;gap:20px;margin:0 0 18px;display:flex}.topbar h2{color:var(--text-strong);margin:0 0 5px;font-size:38px;font-weight:780;line-height:1}.topbar p{max-width:620px;color:var(--text-muted);font-size:15px;line-height:1.45}.privacy-chip{border:1px solid var(--border-control);min-height:38px;color:var(--accent-strong);background:var(--theme-toggle-bg);box-shadow:var(--chip-shadow);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:720;display:inline-flex}.dashboard{grid-template-columns:minmax(280px,.72fr) minmax(620px,1.6fr) minmax(320px,.86fr);align-items:start;gap:18px;max-width:1400px;margin:0 auto;display:grid}.panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--panel-shadow);border-radius:8px}.upload-panel,.participants-panel,.items-panel,.summary-panel{padding:18px}.panel-header,.panel-title{align-items:center;display:flex}.panel-header{justify-content:space-between;gap:12px;margin-bottom:12px}.panel-title{color:var(--accent);gap:9px}.panel-title h2{color:var(--text-strong);margin:0;font-size:17px;font-weight:760;line-height:1.2}.dropzone{aspect-ratio:4/5;border:1px dashed var(--border-strong);background:var(--surface-soft);cursor:pointer;border-radius:8px;place-items:center;width:100%;margin-top:13px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid;position:relative;overflow:hidden}.dropzone:hover{border-color:var(--border-hover);background:var(--surface-hover)}.dropzone input{opacity:0;cursor:pointer;position:absolute;inset:0}.dropzone img{object-fit:contain;background:var(--surface-solid);width:100%;height:100%}.dropzone.has-receipt{background:var(--surface-solid);align-items:center}.dropzone-empty{color:var(--accent);place-items:center;gap:10px;font-size:14px;font-weight:760;display:grid}.dropzone.is-scanning{box-shadow:inset 0 0 0 2px var(--focus-ring);border-style:solid}.replace-receipt{border:1px solid var(--border-control);min-height:34px;color:var(--accent-strong);background:var(--theme-toggle-bg);box-shadow:var(--replace-shadow);border-radius:999px;align-items:center;gap:7px;padding:0 11px;font-size:12px;font-weight:760;display:inline-flex;position:absolute;bottom:10px;right:10px}.status-text{min-height:42px;color:var(--text-muted);align-items:center;gap:8px;margin:12px 0 0;font-size:13px;line-height:1.4;display:flex}.status-text.is-active{color:var(--accent-strong);font-weight:700}.status-text svg{flex:none;animation:1s linear infinite spin}input,textarea{box-sizing:border-box;border:1px solid var(--border-control);background:var(--input-bg);width:100%;color:var(--text-strong);font:inherit;border-radius:7px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}input:focus,textarea:focus{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-ring)}button{font:inherit;border:0}.secondary-button,.icon-button,.ghost-icon-button,.assignment-grid button,.participant-pill button{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.icon-button{width:38px;height:38px;color:var(--accent-contrast);background:var(--accent);border-radius:7px;flex:none;transition:transform .15s,background .15s}.icon-button:hover{background:var(--accent-strong);transform:translateY(-1px)}.ghost-icon-button{width:36px;height:36px;color:var(--danger-text);background:var(--danger-soft);border-radius:7px}.work-stack{gap:18px;min-width:0;display:grid}.items-list{gap:12px;max-height:calc(100vh - 238px);padding-right:2px;display:grid;overflow:auto}.item-row{border:1px solid var(--border-subtle);background:var(--surface-solid);border-radius:8px;gap:10px;padding:12px;display:grid}.item-row.needs-owner{border-color:var(--warning-border);background:var(--surface-warm)}.item-fields{grid-template-columns:minmax(180px,1fr) 112px 36px;gap:9px;display:grid}.participant-entry input,.discount-field input{height:38px;padding:0 10px;font-size:14px}.item-fields textarea,.item-fields input{min-height:42px;padding:9px 10px;font-size:14px;line-height:1.3}.item-fields textarea{resize:vertical;overflow:hidden}.price-input{text-align:right}.assignment-grid{flex-wrap:wrap;gap:8px;min-height:32px;display:flex}.assignment-grid button{border:1px solid var(--border-subtle);min-height:32px;color:var(--text-muted);background:var(--surface-neutral);border-radius:999px;padding:0 11px;font-size:13px;font-weight:720}.assignment-grid button.assigned{border-color:var(--border-strong);color:var(--assignment-selected-text);background:var(--accent-soft)}.assignment-empty,.inline-empty{color:var(--empty-text);font-size:13px;line-height:1.4}.empty-state{border:1px dashed var(--border-control);min-height:260px;color:var(--text-muted);background:var(--surface-soft);text-align:center;border-radius:8px;place-items:center;gap:8px;padding:28px;display:grid}.empty-state svg{color:var(--accent)}.empty-state strong{color:var(--text-strong);font-size:16px}.empty-state span{max-width:260px;font-size:13px;line-height:1.45}.participant-entry{grid-template-columns:1fr 38px;gap:9px;margin-top:14px;display:grid}.participants-panel{grid-template-columns:auto minmax(280px,1fr);align-items:center;gap:12px 16px;display:grid}.participants-heading{min-width:150px;color:var(--accent);align-items:center;gap:9px;display:flex}.participants-heading h2{color:var(--text-strong);margin:0;font-size:17px;font-weight:760;line-height:1.2}.participants-panel .participant-entry,.participants-panel .participant-list{margin-top:0}.participants-panel .participant-entry{grid-column:2/-1}.participants-panel .participant-list{grid-column:1/-1}.participant-list{flex-wrap:wrap;gap:8px;min-height:34px;margin-top:14px;display:flex}.participant-pill{border:1px solid var(--participant-border);max-width:100%;min-height:38px;color:var(--participant-text);background:var(--participant-bg);box-shadow:var(--participant-shadow);border-radius:999px;align-items:center;gap:8px;padding:3px 6px 3px 4px;font-size:14px;font-weight:760;display:inline-flex}.participant-avatar{color:#fff;background:var(--avatar-bg);width:28px;height:28px;box-shadow:var(--avatar-shadow);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:820;line-height:1;display:inline-flex}.participant-pill>span:not(.participant-avatar){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.participant-pill button{width:26px;height:26px;color:var(--participant-remove-text);background:var(--participant-remove-bg);border-radius:50%;flex:none;transition:transform .15s,color .15s,background .15s}.participant-pill button:hover{color:#fff;background:var(--danger-strong);transform:translateY(-1px)}.participant-pill button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.discount-field{color:var(--text-muted);gap:8px;margin:14px 0 16px;font-size:13px;font-weight:760;display:grid}.charge-controls{gap:10px;margin-bottom:16px;display:grid}.charge-toggle{border:1px solid var(--border-subtle);background:var(--surface-soft);color:var(--text-muted);border-radius:8px;align-items:start;gap:10px;padding:11px;display:flex}.charge-toggle input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin-top:2px}.charge-toggle span{gap:3px;display:grid}.charge-toggle strong{color:var(--text-strong);font-size:14px}.charge-toggle small{color:var(--text-soft);font-size:12px;line-height:1.35}.charge-rate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.charge-rate-grid .discount-field{margin:0}.summary-list{display:grid}.summary-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;gap:14px;padding:12px 0;display:flex}.summary-row div{gap:2px;display:grid}.summary-row strong{color:var(--text-strong)}.summary-row span{color:var(--text-soft);font-size:13px}.totals-box{background:var(--surface-tint);border-radius:8px;gap:9px;margin-top:16px;padding:13px;display:grid}.totals-box div{color:var(--text-muted);justify-content:space-between;gap:12px;font-size:14px;display:flex}.totals-box strong{color:var(--text-strong)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1180px){.hero-grid{padding:68px 0 58px}.hero-copy h1,.hero-copy p{max-width:780px}.dashboard{grid-template-columns:minmax(250px,.8fr) minmax(420px,1.25fr)}.summary-panel{grid-column:1/-1}.participants-panel{grid-template-columns:1fr}.items-list{max-height:none}}@media (width<=760px){.app-shell{padding:0 14px 14px}.landing-section{min-height:auto;padding-top:12px}.site-nav{min-height:48px}.brand-mark{width:34px;height:34px}.hero-grid{padding:42px 0 34px}.hero-copy{gap:18px}.hero-copy h1{font-size:clamp(44px,13vw,60px);line-height:.96}.hero-copy p{font-size:17px;line-height:1.48}.hero-actions{align-items:stretch}.primary-cta{flex:180px}.topbar{gap:12px;margin-bottom:14px;display:grid}.topbar h2{font-size:32px}.topbar p{font-size:14px}.privacy-chip{justify-self:start}.dashboard{grid-template-columns:1fr}.upload-panel,.participants-panel,.items-panel,.summary-panel{padding:14px}.participants-panel{grid-template-columns:1fr;align-items:start}.participants-heading{min-width:0}.participants-panel .participant-entry{grid-column:1;margin-top:4px}.participants-panel .participant-list{grid-column:1}.dropzone{aspect-ratio:16/11;height:auto;min-height:0}.dropzone.has-receipt{aspect-ratio:auto;background:var(--surface-solid);width:100%;min-height:200px}.dropzone.has-receipt img{object-fit:cover;border-radius:6px;width:100%;height:100%;max-height:72vh}.empty-state{min-height:180px}}@media (width<=480px){.brand-lockup{font-size:15px}.hero-copy h1{font-size:clamp(40px,12vw,52px)}.hero-copy p{font-size:16px}.hero-proof div{align-items:flex-start}.dropzone.has-receipt{aspect-ratio:auto;min-height:200px;max-height:72vh}.dropzone.has-receipt img{object-fit:contain;border-radius:6px;width:100%;height:auto;max-height:72vh}.topbar h2{font-size:30px}.panel-title h2{font-size:16px}.item-fields{grid-template-columns:1fr 82px 34px;gap:7px}.item-fields input,.item-fields textarea{min-width:0;font-size:13px}.ghost-icon-button{width:34px}.assignment-grid button{min-height:31px;padding:0 10px}.replace-receipt{max-width:calc(100% - 16px);bottom:8px;right:8px}}
