:root{--bg:#f3f1ea;--surface:#fffdf9;--ink:#12211e;--ink-soft:#2f3d39;--ink-dashed:#2f3d39;--muted:#5e6a65;--faint:#6e7974;--line:#e4e1d8;--line-soft:#eeece4;--line-dashed:#a5aba2;--brand:#0b3f39;--brand-soft:#e1ece8;--brand-off:#a3b8b2;--gold:#b99a5b;--lift:0 1px 2px #12211e0d, 0 10px 24px -8px #12211e1a;--lift-brand:0 8px 18px -6px #0b3f3980;--red:#a12a1e;--amber:#8a4b00;--green:#2d6a4f;--blue:#1f4e8c}html,body{background:var(--bg);margin:0}button{cursor:pointer;font-family:inherit;transition:transform .12s,background-color .15s,color .15s}button:active:not(:disabled){transform:scale(.975)}button:disabled{cursor:default}input{font-family:inherit}h1,h2{margin:0}.app{background:var(--bg);width:100%;max-width:480px;height:100dvh;color:var(--ink);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;flex-direction:column;margin:0 auto;font-family:Manrope,system-ui,sans-serif;display:flex;position:relative;overflow:hidden}.scroll{padding:max(20px, env(safe-area-inset-top)) 16px 24px;flex:1;overflow-y:auto}.scroll>*{animation:.28s cubic-bezier(.2,.7,.2,1) screen-in}@keyframes screen-in{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.scroll>*{animation:none}button{transition:none}}.stack{flex-direction:column;display:flex}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-14{gap:14px}.gap-16{gap:16px}.gap-18{gap:18px}.gap-20{gap:20px}.between{justify-content:space-between;align-items:center;display:flex}.between-top{justify-content:space-between;align-items:flex-start;display:flex}.chips{gap:8px;display:flex}.chips-wrap{flex-wrap:wrap;gap:8px;display:flex}.grow{flex:1;min-width:0}.title{letter-spacing:-.03em;font-size:20px;font-weight:700}.title-sm{letter-spacing:-.03em;font-size:19px;font-weight:700}.section{letter-spacing:-.015em;font-size:13.5px;font-weight:700}.section-head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.hint{color:var(--muted);font-size:12px}.sub{color:var(--muted);font-size:11.5px}.sub-2{color:var(--muted);margin-top:2px;font-size:11.5px}.sub-13{color:var(--muted);margin-top:4px;font-size:12px}.name{font-size:12.5px;font-weight:600}.name-15{font-size:13px;font-weight:600}.field-label{color:var(--muted);font-size:12px;font-weight:500}.label-gap{margin-bottom:8px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px}.row-card{background:var(--surface);border:1px solid var(--line);text-align:left;color:inherit;border-radius:14px;align-items:center;gap:12px;padding:10px;display:flex}.row-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px}.stat-label{color:var(--muted);font-size:11.5px}.stat-value{letter-spacing:-.03em;margin-top:8px;font-size:16px;font-weight:800}.stat-value-lg{letter-spacing:-.03em;margin-top:6px;font-size:19px;font-weight:800}.minis{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mini{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px}.mini-label{color:var(--muted);font-size:10.5px}.mini-value{margin-top:4px;font-size:13px;font-weight:700}.message{border-radius:12px;padding:12px 14px;font-size:12px;font-weight:600}.message-14{border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.thumb{border-radius:12px;flex-shrink:0;position:relative;overflow:hidden}.thumb:after{content:"";background:linear-gradient(90deg, transparent 49.3%, #00000047 50%, transparent 50.7%), linear-gradient(100deg, #fff3, transparent 45%, #00000038), var(--tone);position:absolute;inset:8% 10% 4%;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 80' preserveAspectRatio='none'%3E%3Cpath d='M24 3Q30 8 36 3L44 7Q53 14 59 38L50 42L45 25L51 77Q30 80 9 77L15 25L10 42L1 38Q7 14 16 7Z'/%3E%3C/svg%3E") 50%/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 80' preserveAspectRatio='none'%3E%3Cpath d='M24 3Q30 8 36 3L44 7Q53 14 59 38L50 42L45 25L51 77Q30 80 9 77L15 25L10 42L1 38Q7 14 16 7Z'/%3E%3C/svg%3E") 50%/100% 100% no-repeat}.thumb.has-photo:after{display:none}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb-30,.thumb-36,.thumb-42{width:30px;height:40px}.thumb-48{width:40px;height:52px}.thumb-63{width:46px;height:60px}.thumb-240{width:210px;height:280px}.tone-out{color:var(--red);background:#fbe3df}.tone-low{color:var(--amber);background:#fdebd2}.tone-ok{color:var(--green);background:#e2f1e8}.tone-blue{color:var(--blue);background:#e3ecf8}.tone-grey{background:var(--line-soft);color:var(--ink-soft)}.badge{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:10.5px;font-weight:700}.cell{border-radius:8px;padding:4px 8px;font-size:11.5px;font-weight:600}.cells{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--surface);height:34px;color:var(--ink-soft);border-radius:17px;padding:0 12px;font-size:13px;font-weight:600}.chip.on{border-color:var(--brand);background:var(--brand);color:#fff}.big{color:#fff;background:var(--brand);height:44px;box-shadow:var(--lift-brand);border:none;border-radius:14px;font-size:13.5px;font-weight:700}.big:disabled{background:var(--brand-off);box-shadow:none}.plain{border:1px solid var(--line);background:var(--surface);height:44px;color:var(--brand);border-radius:12px;font-size:13px;font-weight:700}.plain.danger{color:var(--red)}.outline{border:1px solid var(--brand);background:var(--surface);height:44px;color:var(--brand);border-radius:12px;font-size:13px;font-weight:700}.outline-danger{border:1px solid var(--line);background:var(--surface);height:44px;color:var(--red);border-radius:12px;font-size:13px;font-weight:700}.pill{background:var(--brand);color:#fff;height:36px;box-shadow:var(--lift-brand);border:none;border-radius:18px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:flex}.round{background:var(--brand);color:#fff;width:38px;height:38px;box-shadow:var(--lift-brand);border:none;border-radius:19px;justify-content:center;align-items:center;display:flex}.link{color:var(--brand);background:0 0;border:none;padding:8px 0;font-size:12px;font-weight:600}.back{color:var(--brand);background:0 0;border:none;align-self:flex-start;align-items:center;gap:4px;height:44px;padding:0;font-size:13px;font-weight:600;display:flex}.cancel{color:var(--brand);background:0 0;border:none;height:44px;padding:0;font-size:13px;font-weight:600}.form-title{font-size:13.5px;font-weight:700}.form-spacer{width:52px}.dashed-brand{border:1px dashed var(--brand);background:var(--brand-soft);height:48px;color:var(--brand);border-radius:12px;font-size:13px;font-weight:600}.dashed{border:1px dashed var(--line-dashed);height:52px;color:var(--ink-dashed);background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.step{border-radius:10px;width:36px;height:36px;font-size:16px}.step-lg{border-radius:14px;width:52px;height:52px;font-size:16px}.step-minus{border:1px solid var(--line);background:var(--bg);color:var(--ink)}.step-plus{background:var(--brand);color:#fff;border:none}.step-value{text-align:center;width:26px;font-size:13.5px;font-weight:700}.step-value.zero{color:#b0a99f}.field-wrap{flex-direction:column;gap:6px;display:flex}.field{border:1px solid var(--line);background:var(--surface);height:48px;color:var(--ink);border-radius:12px;outline:none;padding:0 14px;font-size:13px}.field-amount{border-radius:14px;height:64px;font-size:23px;font-weight:700}.search{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:8px;height:44px;padding:0 12px;display:flex}.search-input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:13px}.offscreen{position:absolute;left:-9999px}.fee-row{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.fee-input{border:1px solid var(--line);background:var(--bg);text-align:right;width:96px;height:40px;color:var(--ink);border-radius:10px;outline:none;padding:0 10px;font-size:13px}@media (pointer:coarse){.field:not(.field-amount),.search-input,.fee-input{font-size:16px}}.adding{color:var(--amber);background:#fdebd2;border-radius:12px;align-items:center;gap:10px;padding:8px 8px 8px 14px;display:flex}.adding-text{flex:1;font-size:12px;font-weight:600}.adding-cancel{background:var(--surface);height:36px;color:var(--amber);border:none;border-radius:10px;padding:0 12px;font-size:12px;font-weight:600}.gate{flex-direction:column;flex:1;justify-content:center;gap:16px;padding:24px 16px;display:flex}.notice{top:max(12px, env(safe-area-inset-top));z-index:10;background:var(--ink);color:#fff;text-align:left;border:none;border-radius:16px;padding:14px 16px;font-size:13px;font-weight:600;position:absolute;left:16px;right:16px;box-shadow:0 12px 28px -8px #12211e80}.home{gap:28px}.home .section-head{margin-bottom:8px}.home .stack{gap:8px}.home .row-card{padding:8px 10px}.next-step{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:5px;font-size:11.5px;font-weight:500;overflow:hidden}.next-who{color:var(--ink);font-weight:600}.sale-groups{flex-direction:column;gap:14px;display:flex}.sale-group-head{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;margin:0 2px 6px;font-size:10.5px;font-weight:600;display:flex}.sale-group{background:var(--surface);box-shadow:var(--lift);border-radius:16px;overflow:hidden}.sale-group-row{width:100%;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:8px 10px;display:flex}.sale-group-row+.sale-group-row{box-shadow:inset 0 1px 0 var(--line-soft)}.sale-group-go{color:var(--faint);flex-shrink:0;display:flex}.sale-group-go svg{width:14px;height:14px}.clear{color:var(--muted);font-size:12px}.account{color:var(--muted);margin-top:-16px;font-size:12px}.account-links{flex-wrap:wrap;gap:0 16px;display:flex}.empty{color:var(--muted);text-align:center;padding:32px 16px;font-size:13px}.avatar{background:var(--brand);color:#fff;width:30px;height:30px;box-shadow:0 0 0 2px var(--bg), 0 0 0 3.5px var(--gold);border:none;border-radius:15px;justify-content:center;align-items:center;padding:0;font-size:13px;font-weight:600;display:flex}.stage{text-align:left;border:none;border-radius:12px;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;display:flex}.stage-count{font-size:16px;font-weight:700}.stage-label{font-size:10.5px;font-weight:600}.incoming{text-align:left;color:#1f3f6e;background:#e3ecf8;border:none;border-radius:20px;align-items:center;gap:12px;padding:14px;display:flex}.incoming-title{font-size:13px;font-weight:700}.hold-rail{scroll-snap-type:x mandatory;scrollbar-width:none;gap:12px;margin:0 -16px -12px;padding:2px 16px 26px;scroll-padding:16px;display:flex;overflow-x:auto}.hold-rail::-webkit-scrollbar{display:none}.hold-tile{scroll-snap-align:start;flex:0 0 132px;height:141px;position:relative}.hold-face{box-sizing:border-box;background:var(--surface);width:100%;height:100%;color:var(--ink);text-align:left;box-shadow:var(--lift);border:none;border-radius:16px;flex-direction:column;align-items:flex-start;padding:10px;display:flex;position:relative}.hold-face .thumb{border-radius:0;align-self:center;width:68px;height:78px;margin:0 0 6px}.hold-time{z-index:1;white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:10.5px;font-weight:700;position:absolute;top:8px;left:8px}.hold-name{white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:12.5px;font-weight:600;overflow:hidden}.tag{align-items:center;gap:5px;width:100%;margin-top:6px;display:flex}.tag-text{letter-spacing:.03em;text-transform:uppercase;min-width:0;color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;font-weight:500;overflow:hidden}.tag-square{background:var(--swatch);border-radius:2px;flex-shrink:0;width:9px;height:9px;box-shadow:inset 0 0 0 1px #0000001f}.hold-actions{z-index:2;box-sizing:border-box;background:var(--surface);color:#111;box-shadow:var(--lift);border-radius:16px;flex-direction:column;justify-content:center;gap:6px;padding:0 12px;animation:.18s ease-out hold-turn;display:flex;position:absolute;inset:0}@keyframes hold-turn{0%{opacity:0}}.hold-action{color:#111;background:#efede8;border:none;border-radius:8px;flex:0 0 30px;padding:0;font-size:10px;font-weight:600}.hold-action.main{color:#fff;background:#111}.hold-action.danger{color:#111;background:0 0;box-shadow:inset 0 0 0 1px #d5d1c9}@media (prefers-reduced-motion:reduce){.hold-actions{animation:none}}.sold{flex-direction:column;gap:8px;padding-left:22px;display:flex;position:relative}.sold:before{content:"";background:var(--line-dashed);opacity:.6;width:1.5px;position:absolute;top:8px;bottom:8px;left:5px}.sold-row{background:var(--surface);box-shadow:var(--lift);color:var(--ink);text-align:left;border:none;border-radius:16px;align-items:center;gap:12px;padding:7px 8px 7px 10px;display:flex;position:relative}.sold-row:before{content:"";box-sizing:border-box;border:2px solid var(--brand);background:var(--bg);border-radius:50%;width:11px;height:11px;margin-top:-5.5px;position:absolute;top:50%;left:-22px}.sold-row .thumb{background:var(--bg);border-radius:50%;width:32px;height:32px}.sold-detail{color:var(--brand);margin-top:2px;font-size:11.5px;font-weight:500}.sold-row>svg{width:14px;height:14px;color:var(--faint);flex-shrink:0}.sold-when{color:var(--muted);white-space:nowrap;font-size:11.5px}.product-card{background:var(--surface);border:1px solid var(--line);text-align:left;color:inherit;border-radius:16px;align-items:center;gap:10px;padding:10px;display:flex}.product-hero{flex-direction:column;align-items:center;gap:12px;display:flex}.photo-row{align-items:center;gap:14px;display:flex}.hero-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.photo-button{background:var(--surface);height:36px;color:var(--brand);cursor:pointer;box-shadow:var(--lift);border:none;border-radius:18px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.colour-dot{background:var(--swatch);border-radius:50%;flex-shrink:0;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0000001f}.colour-dot-lg{width:44px;height:44px;margin-top:22px}.colour-name{align-items:flex-start;gap:12px;display:flex}.colour-photo{cursor:crosshair;background:0 0;border:none;border-radius:14px;align-self:center;width:210px;height:280px;padding:0;position:relative;overflow:hidden}.colour-photo img{object-fit:cover;width:100%;height:100%;display:block}.colour-mark{box-sizing:border-box;background:var(--swatch);border:3px solid #fff;border-radius:50%;width:26px;height:26px;margin:-13px 0 0 -13px;position:absolute;box-shadow:0 2px 8px #0006}.colour-hint{text-align:center}.swatches{flex-wrap:wrap;gap:12px;display:flex}.swatch{border:3px solid var(--surface);background:var(--swatch);width:44px;height:44px;box-shadow:var(--lift);border-radius:50%;padding:0}.swatch.on{box-shadow:0 0 0 2px var(--brand)}.swatch-custom{box-sizing:border-box;border:1px dashed var(--line-dashed);width:40px;height:40px;box-shadow:none;color:var(--ink-soft);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:flex}.size-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:8px 10px 8px 14px;display:flex}.size-name{width:40px;font-size:13px;font-weight:600}.size-state{flex-direction:column;flex:1;align-items:flex-start;gap:3px;display:flex}.size-extra{color:var(--blue);font-size:10.5px;font-weight:600}.hold{background:var(--brand);color:#fff;height:36px;box-shadow:var(--lift-brand);border:none;border-radius:10px;padding:0 14px;font-size:13px;font-weight:600}.adjust-link{border:1px solid var(--line);background:var(--surface);height:48px;color:var(--ink-soft);border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:-4px;font-size:13px;font-weight:600;display:flex}.history-row{align-items:flex-start;gap:10px;display:flex}.history-dot{background:var(--brand);border-radius:4px;flex-shrink:0;width:8px;height:8px;margin-top:6px}.history-text{font-size:13px}.adjust-box{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;align-items:center;gap:12px;padding:14px;display:flex}.adjust-steps{align-items:center;gap:20px;display:flex}.adjust-delta{text-align:center;width:72px;color:var(--green);font-size:23px;font-weight:700}.adjust-delta.minus{color:var(--red)}.adjust-preview{color:var(--ink-soft);font-size:13px;font-weight:600}.adjust-preview.bad{color:var(--red)}.order-card{background:var(--surface);border:1px solid var(--line);text-align:left;color:inherit;border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.order-card-id{font-size:13.5px;font-weight:700}.order-thumbs{align-items:center;gap:6px;display:flex}.order-group{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:12px;padding:10px;display:flex}.pick-head{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:10px;display:flex}.pick-row{align-items:center;gap:10px;padding:4px 10px 4px 14px;display:flex}.pick-size{width:40px;font-size:13px;font-weight:600}.pick-have{color:var(--muted);flex:1;font-size:11.5px}.order-footer{background:var(--bg);flex-direction:column;gap:8px;margin-bottom:-24px;padding:8px 0 24px;display:flex;position:sticky;bottom:-24px}.line{justify-content:space-between;font-size:13px;display:flex}.receive-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;padding:8px 10px;display:flex}.receive-note{color:var(--muted);margin-top:2px;font-size:11.5px}.receive-note.short{color:var(--amber);font-weight:600}.receive-note.extra{color:var(--blue);font-weight:600}.keep-open{color:var(--muted);text-align:center;margin-top:-8px;font-size:11.5px}.sale-item{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:10px;padding:10px;display:flex}.sale-item-top{align-items:center;gap:12px;display:flex}.sale-item-meta{color:var(--muted);margin-top:2px;font-size:12px}.sale-item-price{margin-top:2px;font-size:12px;font-weight:600}.sale-item-return{color:var(--muted);font-size:11.5px;font-weight:600}.remove{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--red);border-radius:12px;justify-content:center;align-items:center;display:flex}.return{border:1px solid var(--line);background:var(--bg);height:44px;color:var(--brand);border-radius:10px;flex:1;font-size:12px;font-weight:600}.return.danger{color:var(--red)}.totals{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.totals-muted{color:var(--muted)}.totals-sum{border-top:1px solid var(--line-soft);justify-content:space-between;padding-top:8px;font-size:13.5px;font-weight:700;display:flex}.totals-pay{justify-content:space-between;font-size:12px;display:flex}.totals-pay-value{font-weight:600}.customer{background:var(--surface);border:1px solid var(--line);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.customer-initial{background:var(--brand-soft);width:40px;height:40px;color:var(--brand);border-radius:20px;justify-content:center;align-items:center;font-weight:700;display:flex}.progress{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.progress-title{font-size:12px;font-weight:700}.progress-row{align-items:center;gap:10px;display:flex}.progress-dot{box-sizing:border-box;border:2px solid #d5cec4;border-radius:6px;flex-shrink:0;width:12px;height:12px}.progress-dot.done{background:var(--brand);border:none}.progress-text{color:var(--faint);font-size:13px}.progress-text.done{color:var(--ink-soft)}.progress-text.now{color:var(--ink);font-weight:700}.spent{color:#fff;background:linear-gradient(150deg,#0f4f47,#082e2a);border-radius:18px;padding:16px;box-shadow:0 16px 32px -12px #082e2a99}.spent-label{opacity:.85;font-size:12px}.spent-value{letter-spacing:-.03em;margin-top:4px;font-size:23px;font-weight:800}.spent-cats{flex-direction:column;gap:10px;margin-top:14px;display:flex}.spent-cat{justify-content:space-between;font-size:12px;display:flex}.spent-track{background:#fff3;border-radius:3px;height:6px;margin-top:5px}.spent-bar{background:#d9be85;border-radius:3px;height:6px}.partners{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.partner{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 12px}.partner-value{margin-top:4px;font-size:13px;font-weight:700}.expense-row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.expense-amount{white-space:nowrap;font-size:13px;font-weight:600}.nav{margin:0 12px max(12px, env(safe-area-inset-bottom));background:var(--surface);border-radius:20px;justify-content:space-around;padding:4px;display:flex;box-shadow:0 2px 4px #12211e0f,0 14px 30px -8px #12211e33}.nav-button{min-width:0;min-height:42px;color:var(--faint);background:0 0;border:none;border-radius:16px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 0;font-size:10.5px;font-weight:600;display:flex}.nav-button svg{width:18px;height:18px}.nav-button.on{color:var(--brand);background:var(--brand-soft)}.stat,.mini,.card,.row-card,.product-card,.order-card,.order-group,.sale-item,.totals,.customer,.progress,.partner,.adjust-box,.search{box-shadow:var(--lift);border-color:#0000;border-radius:16px}
