.app-shell{width:min(980px,100%);min-height:100svh;margin:0 auto;padding:14px 16px 96px}.loading-shell{text-align:center;place-items:center;display:grid}.loading-mark{object-fit:contain;width:116px;height:116px}.topbar{justify-content:space-between;align-items:center;gap:16px;padding:8px 2px 14px;display:flex}.topbar h1{letter-spacing:0;margin:0;font-size:clamp(26px,4.5vw,36px);line-height:1.02}.topbar-actions{align-items:center;gap:10px;display:flex}.topbar-setup{border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:8px;align-items:center;gap:6px;min-height:42px;padding:0 12px;font-weight:800;display:inline-flex}.topbar-setup.active{border-color:var(--green);color:var(--green-dark);background:#16834d1a}.topbar input,input,select,textarea{border:1px solid var(--line);background:var(--white);min-height:42px;color:var(--ink);border-radius:8px;outline:none;padding:0 12px}.screen{gap:14px;display:grid}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.metric-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.panel{border:1px solid var(--line);background:#fffdf7e0;border-radius:8px;box-shadow:0 8px 24px #2a21160f}.metric{gap:6px;min-height:104px;padding:15px;display:grid}.metric span{color:var(--muted);font-size:13px;font-weight:700}.metric strong{font-size:clamp(18px,4vw,26px)}.metric.warn strong{color:var(--amber)}.metric-icon svg{width:18px;height:18px;color:var(--green)}.panel{padding:14px}.notice-panel{background:#fff8eaf0;border-color:#a66b166b}.action-panel{border-color:#16834d42}.locked-panel{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel h2{letter-spacing:0;margin:0;font-size:clamp(20px,4vw,26px)}.panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-head .row-actions{max-width:520px}.panel-head.compact{margin-bottom:10px}.timeline{gap:10px;display:grid}.row{background:var(--white);border:1px solid #ded0b8cc;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.row strong,.row span{display:block}.row span{color:var(--muted);font-size:13px}.job-card-row{align-items:flex-start}.job-card-main{width:100%;min-width:0}.job-card-detail{gap:3px;margin-top:6px;display:grid}.job-card-detail span{color:var(--ink);overflow-wrap:anywhere;font-size:12px}.booking-row{border-style:dashed}.counter-hero{background:linear-gradient(135deg,#fffdf7fa,#f7efded1);border:1px solid #16834d47;border-radius:8px;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:18px;padding:18px;display:grid;box-shadow:0 14px 34px #2a211617}.counter-hero.warn{background:linear-gradient(135deg,#fff8eafa,#ffedccb8);border-color:#a66b1673}.counter-hero.closed{background:#fffdf7db;border-color:#756b5f42}.counter-hero h2{letter-spacing:0;margin:0;font-size:clamp(28px,5vw,42px);line-height:1}.counter-hero p:last-child{color:var(--muted);margin:8px 0 0;font-size:17px}.counter-hero .primary-action{min-height:58px}.dashboard-hero{grid-template-columns:minmax(0,1fr) auto}.hero-navigation{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.hero-navigation .secondary-action,.hero-navigation .ghost-action{min-height:48px}.money-ribbon,.counter-ribbon{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.money-ribbon div,.counter-ribbon div{background:#fffdf7eb;border:1px solid #ded0b8c7;border-radius:8px;padding:10px 12px}.money-ribbon span,.money-ribbon strong,.counter-ribbon span,.counter-ribbon strong{display:block}.money-ribbon span,.counter-ribbon span{color:var(--muted);font-size:12px;font-weight:800}.money-ribbon strong,.counter-ribbon strong{margin-top:3px;font-size:clamp(18px,3vw,24px)}.money-ribbon .attention strong,.counter-ribbon .attention strong{color:var(--amber)}.counter-nudge{background:#a66b1612;border:1px solid #a66b1638;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.counter-nudge span{color:var(--amber);font-weight:900}.counter-nudge .ghost-action{min-height:34px}.filter-pills{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.filter-pills button{border:1px solid var(--line);background:var(--white);min-height:38px;color:var(--muted);border-radius:999px;align-items:center;gap:7px;padding:0 10px;font-weight:900;display:inline-flex}.filter-pills button.active{border-color:var(--green);color:var(--green-dark);background:#16834d1a}.filter-pills strong{min-width:22px;height:22px;color:var(--ink);background:#756b5f1f;border-radius:999px;place-items:center;font-size:12px;display:inline-grid}.slip-stack-panel{border-color:#16834d38}.slip-row{position:relative;overflow:hidden}.slip-row:before{content:"";background:#756b5f3d;width:5px;position:absolute;inset:0 auto 0 0}.slip-row.needs-money:before{background:var(--amber)}.slip-row.is-paid:before{background:var(--green)}.slip-row.is-open:before,.slip-row.is-booking:before{background:#2f6f94}.slip-row.is-cancelled{opacity:.7}.slip-title-line{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.slip-title-line strong{font-size:17px}.slip-title-line small{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:800}.slip-tags{flex-wrap:wrap;gap:6px;margin:7px 0 0;display:flex}.slip-tags span{color:var(--muted);background:#fff8ead1;border:1px solid #ded0b8d1;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.slip-tags .warn-tag{color:var(--amber);background:#a66b161a;border-color:#a66b1638}.slip-tags .inside-tag{color:#2f6f94;background:#2f6f941a;border-color:#2f6f943d}.slip-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.slip-mini-grid span{color:var(--ink);overflow-wrap:anywhere;border-top:1px solid #ded0b8c7;padding-top:8px;font-size:13px}.slip-mini-grid b{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px;font-size:11px;display:block}.status-pill{white-space:nowrap;color:var(--green-dark);text-transform:capitalize;background:#16834d1f;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.status-pill.warn{color:var(--amber);background:#a66b161f}.empty-state{text-align:center;min-height:180px;color:var(--muted);border:1px dashed var(--line);border-radius:8px;place-items:center;padding:22px;display:grid}.empty-state img{object-fit:contain;width:72px;height:72px}.close-panel{justify-content:space-between;align-items:center;gap:16px;display:flex}.stack-actions,.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.primary-action,.secondary-action,.ghost-action{border-radius:8px;min-height:42px;padding:0 14px;font-weight:800}.primary-action:disabled,.secondary-action:disabled,.ghost-action:disabled{cursor:not-allowed;opacity:.52}.secondary-action{border:1px solid var(--green);color:var(--green-dark);background:#16834d14}a.secondary-action,a.primary-action{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.ghost-action{border:1px solid var(--line);color:var(--ink);background:var(--white)}.danger-action{color:var(--rose)}.cancel-job-confirm{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;max-width:360px;display:flex}.cancel-job-confirm span,.cancel-job-confirm small{color:var(--muted);text-align:right;flex-basis:100%;font-size:12px;font-weight:800}.cancel-job-confirm small{color:var(--rose)}.cancel-job-confirm button{background:var(--white);min-height:34px;color:var(--ink);border:1px solid #ded0b8e6;border-radius:999px;padding:0 10px;font-size:12px;font-weight:800}.cancel-job-confirm button:first-of-type,.cancel-job-confirm button:nth-of-type(2),.cancel-job-confirm button:nth-of-type(3){color:var(--rose);background:#b4484812;border-color:#b4484842}.cancel-job-confirm button.keep-action{border-color:var(--green);color:var(--green-dark);background:#16834d1a}.quiet-cancel{color:var(--muted);text-underline-offset:3px;background:0 0;border:none;min-height:34px;padding:0 6px;font-weight:700;text-decoration:underline}.quiet-cancel:hover{color:var(--rose)}.quick-entry{gap:10px;margin-bottom:10px;display:grid}.quick-entry span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:800;display:block}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}label{color:var(--muted);gap:6px;font-size:13px;font-weight:800;display:grid}.flow-hint{flex-wrap:wrap;gap:6px;margin:10px 0 12px;display:flex}.flow-hint span{color:var(--muted);background:#fffdf7bd;border:1px solid #ded0b8db;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.line-form{grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) 120px auto;align-items:end;gap:8px;margin-top:8px;display:grid}.line-form label{min-width:0}.line-form input,.line-form select{width:100%}.line-form.payment{grid-template-columns:120px 150px minmax(0,1fr) auto}.line-form.booking{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 120px minmax(0,1fr) auto}.line-form.service-line{border-top:1px solid #ded0b8a3;grid-template-columns:54px minmax(0,2fr) minmax(0,1.2fr) 120px auto;padding-top:10px}.service-line-number{background:#fffdf7e0;border:1px solid #ded0b8d1;border-radius:8px;align-content:center;place-items:center;gap:1px;min-height:58px;display:grid}.service-line-number span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.service-line-number strong{color:var(--ink);font-size:20px;line-height:1}.empty-row-note{color:var(--muted);background:#fffdf7b3;border:1px dashed #ded0b8e6;border-radius:8px;margin:8px 0 0;padding:12px;font-size:13px;font-weight:700}.form-message{color:var(--ink);background:#a66b1617;border:1px solid #a66b1647;border-radius:8px;margin:8px 0 12px;padding:12px;font-size:14px;font-weight:800}.form-message.warn{color:var(--amber)}.remove-row-action{min-width:82px}.customer-reuse{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.customer-reuse button{border:1px solid var(--line);background:var(--white);min-height:52px;color:var(--ink);text-align:left;border-radius:8px;padding:8px 10px}.customer-reuse button.selected{border-color:var(--green);background:#16834d1a}.customer-reuse strong,.customer-reuse span{display:block}.customer-reuse span{color:var(--muted);font-size:12px}.sticky-actions{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fff8eaf0;border-radius:8px;grid-template-columns:1.2fr 1fr;gap:10px;padding:10px;display:grid;position:sticky;bottom:84px}.bill-editor{flex-direction:column;gap:14px;display:flex}.editor-block{border-top:1px solid var(--line);padding-top:14px}.editor-block-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.editor-block-head h3{color:var(--ink);margin:0;font-size:15px;font-weight:800}.editor-actions{grid-template-columns:1.4fr 1fr;gap:10px;margin-top:4px;display:grid}.editor-actions .primary-action,.editor-actions .secondary-action,.editor-actions .ghost-action{min-height:48px}.editor-actions.single{flex-direction:column;align-items:center;gap:4px;display:flex}.primary-action.full{width:100%;min-height:54px;font-size:17px}.link-action{color:var(--green-dark);cursor:pointer;background:0 0;border:none;padding:8px 4px;font-size:14px;font-weight:800}.link-action:disabled{opacity:.5}.add-line,.split-link{color:var(--muted);margin-top:6px;display:block}.editor-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:800;display:block}.pay-methods{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px;display:grid}.pay-method{border:1.5px solid var(--line);background:var(--white);min-height:52px;color:var(--ink);border-radius:10px;font-size:15px;font-weight:800}.pay-method.is-selected{border-color:var(--green);color:var(--green-dark);background:#16834d1f}.pay-method.is-pending.is-selected{border-color:var(--amber);color:var(--amber);background:#b0891f24}.taken-by-line{color:var(--muted);align-items:center;gap:8px;margin-top:10px;font-size:13px;font-weight:700;display:flex}.taken-by-line select{flex:1;min-height:40px}.taken-by-note{color:var(--muted);margin:8px 0 0;font-size:13px}.split-actions{gap:16px;margin-top:8px;display:flex}.tap-grid{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.tap-chip{border:1.5px solid var(--line);background:var(--white);min-height:44px;color:var(--ink);border-radius:999px;padding:0 18px;font-size:14.5px;font-weight:700}.tap-chip.is-selected{border-color:var(--green);color:var(--green-dark);background:#16834d1f}.tap-grid.service-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px;display:grid}.tap-card{text-align:left;border:1.5px solid var(--line);min-height:60px;color:var(--ink);background:#fffdf7b3;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:11px 14px;display:flex}.tap-card strong{font-size:14.5px;font-weight:700;line-height:1.2}.tap-card span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.tap-card:active{border-color:var(--green);background:#16834d14}.bill-lines{gap:8px;margin-top:14px;display:grid}.bill-line{border:1px solid var(--line);background:var(--white);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.bill-line-top{align-items:center;gap:12px;display:flex}.bill-line-service{flex:1;min-width:0;font-size:15px;font-weight:700}.bill-line-staff-row{border-top:1px solid var(--line);align-items:center;gap:10px;padding-top:8px;display:flex}.bill-line-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:800}.bill-line-staff{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--ink);border-radius:8px;flex:1;padding:0 12px;font-size:14.5px;font-weight:700}.bill-line-staff.is-empty{color:var(--amber);border-color:var(--amber)}.bill-line-amt{color:var(--muted);align-items:center;gap:4px;font-weight:800;display:flex}.bill-line-amt input{text-align:right;width:88px;min-height:40px;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:800}.line-remove{color:var(--muted);background:0 0;border:none;border-radius:8px;padding:6px 9px;font-size:17px;line-height:1}.line-remove:hover{color:var(--rose);background:#b4484814}.job-card-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.job-card-totals div{background:var(--white);border:1px solid #ded0b8cc;border-radius:8px;padding:10px 12px}.job-card-totals span,.job-card-totals strong{display:block}.job-card-totals span{color:var(--muted);font-size:12px;font-weight:800}.job-card-totals strong{margin-top:3px;font-size:18px}.job-card-totals .balance-due strong{color:var(--amber)}.method-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.method-total,.daily-register,.pending-list{background:var(--white);border:1px solid #ded0b8cc;border-radius:8px;padding:10px 12px}.method-total span,.method-total strong{display:block}.method-total span{color:var(--muted);font-size:12px;font-weight:800}.method-total strong{margin-top:3px;font-size:18px}.daily-sheet-split{margin-bottom:12px}.daily-register{background:linear-gradient(transparent 35px, #ded0b861 36px), var(--white);background-size:100% 36px;margin-bottom:12px}.daily-register h3{margin-bottom:10px}.daily-register-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.daily-register h4{margin-bottom:8px}.register-list{gap:8px;display:grid}.register-line{border-top:1px solid #ded0b894;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0 0;display:flex}.register-line strong,.register-line span,.register-line small{display:block}.register-line span,.register-line small{color:var(--muted);font-size:12px}.register-line>strong{white-space:nowrap}.pending-list h3{margin-bottom:10px}.split-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.finish-panel{border-color:#16834d66}.finish-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.finish-actions{justify-content:flex-end;margin-top:14px;display:flex}.summary-list{border:1px solid var(--line);background:#fffdf7d1;border-radius:8px;padding:12px}.summary-list h3{margin-bottom:10px}.summary-row{border-top:1px solid #ded0b8b3;justify-content:space-between;padding:8px 0;display:flex}.setup-intro-panel{border-color:#16834d38}.pin-gate{justify-items:stretch;gap:10px;width:min(420px,100%);margin:6vh auto 0;display:grid}.pin-input{letter-spacing:.4em;text-align:center;width:100%;margin:6px 0;font-size:26px;font-weight:800}.pin-submit{width:100%;min-height:50px}.setup-hint{color:var(--muted);font-size:12px;font-weight:600}.setup-empty{color:var(--muted);font-size:13px}.setup-chip.is-cashier{border-color:var(--green);color:var(--green-dark);background:#16834d1a}.start-panel{text-align:center}.start-using{width:100%;min-height:54px;font-size:17px}.setup-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:18px;display:grid}.setup-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.setup-form.service-setup{grid-template-columns:minmax(0,1fr) 130px auto}.chip-list{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.chip{border:1px solid var(--line);background:var(--white);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.setup-chip{align-items:center;gap:7px;padding-right:6px;display:inline-flex}.setup-chip button{width:22px;height:22px;color:var(--rose);background:#a8363614;border:0;border-radius:999px;place-items:center;font-size:16px;font-weight:900;line-height:1;display:inline-grid}.chip-button{min-height:34px}.pending-queue{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.pending-card,.customer-row{text-align:left;color:var(--ink)}.pending-card{background:var(--white);border:1px solid #ded0b8cc;border-radius:8px;padding:10px 12px}.pending-card strong,.pending-card span,.selected-pending strong,.selected-pending span{display:block}.pending-card span,.selected-pending span{color:var(--muted);font-size:12px}.pending-card.selected,.customer-row.selected{border-color:var(--green);background:#16834d14}.selected-pending{background:#fff8eae6;border:1px solid #a66b1647;border-radius:8px;margin-bottom:10px;padding:10px 12px}.customer-row{width:100%}.customer-memory-grid{margin-bottom:12px}.whatsapp-action{white-space:nowrap}.device-limit-shell{align-content:start;gap:16px;display:grid}.device-limit-card{justify-items:start;gap:12px;max-width:620px;display:grid}.device-mail-link{min-height:46px}.device-list{gap:8px;width:100%;margin:4px 0 8px;display:grid}.device-row{border:1px solid var(--line);background:var(--white);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.device-row strong,.device-row span{display:block}.device-row span{color:var(--muted);font-size:12px}.device-limit-note{font-size:13px}.search-box{border:1px solid var(--line);background:var(--white);border-radius:8px;align-items:center;gap:8px;margin-bottom:12px;padding:0 12px;display:flex}.search-box input{background:0 0;border:0;flex:1}.ok-icon{color:var(--green)}.bottom-nav{border:1px solid var(--line);width:min(620px,100% - 24px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;background:#fffdf7f0;border-radius:8px;grid-template-columns:repeat(5,1fr);gap:6px;padding:8px;display:grid;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}.bottom-nav button{min-height:50px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;gap:2px;font-size:11px;font-weight:800;display:grid}.bottom-nav button.active{color:var(--green-dark);background:#16834d1f}.bottom-nav svg{width:18px;height:18px}@media (width<=760px){.app-shell{padding:14px 12px 92px}.topbar{align-items:flex-start}.topbar-actions{flex-direction:column;align-items:flex-end}.counter-hero{grid-template-columns:1fr;gap:12px;padding:14px}.dashboard-hero{grid-template-columns:1fr}.hero-navigation{justify-content:stretch}.hero-navigation>*{flex:1}.counter-hero h2{font-size:clamp(25px,9vw,34px)}.counter-hero p:last-child{font-size:15px}.money-ribbon,.counter-ribbon{gap:6px}.money-ribbon div,.counter-ribbon div{padding:8px}.money-ribbon strong,.counter-ribbon strong{font-size:16px}.counter-nudge{flex-direction:column;align-items:stretch}.slip-title-line{flex-direction:column;align-items:flex-start;gap:2px}.slip-mini-grid{grid-template-columns:1fr;gap:4px}.metric-grid,.metric-grid.four,.field-grid,.job-card-totals,.method-strip,.pending-queue,.split-list,.daily-register-columns,.finish-grid,.setup-grid,.setup-form,.setup-form.service-setup,.line-form,.line-form.payment,.line-form.booking{grid-template-columns:1fr}.line-form.service-line{grid-template-columns:48px minmax(0,1fr)}.line-form.service-line label,.line-form.service-line .remove-row-action{grid-column:2}.service-line-number{grid-row:1/span 4;align-self:stretch}.row,.close-panel,.locked-panel,.panel-head{flex-direction:column;align-items:stretch}.row-actions,.stack-actions{justify-content:stretch}.cancel-job-confirm{justify-content:stretch;max-width:none}.cancel-job-confirm span,.cancel-job-confirm small{text-align:left}.cancel-job-confirm button{flex:46%}.filter-pills{justify-content:stretch}.filter-pills button{flex:30%;justify-content:center}.row-actions>*,.stack-actions>*{flex:1}}.onboarding-shell{align-content:start;gap:16px;display:grid}.onboarding-card{justify-items:start;gap:12px;width:min(460px,100%);margin:6vh auto 0;padding:24px;display:grid}.onboarding-mark{object-fit:contain;width:64px;height:64px}.onboarding-card h2{margin:0;font-size:clamp(22px,5vw,30px);line-height:1.1}.onboarding-fields{gap:14px;width:100%;margin-top:6px;display:grid}.onboarding-fields input{width:100%}.onboarding-help{color:var(--muted);font-size:12px;font-weight:700}.onboarding-type{gap:8px;width:100%;display:grid}.onboarding-type-label{color:var(--ink);font-size:13px;font-weight:800}.type-picker{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.type-chip{border:2px solid var(--ink);background:var(--white);color:var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--shadow);border-radius:12px;padding:12px 10px;font-size:15px;font-weight:800;transition:transform .12s,box-shadow .12s,background .12s}.type-chip:hover{box-shadow:3px 3px 0 var(--shadow);transform:translate(-1px,-1px)}.type-chip.is-selected{background:var(--green);box-shadow:inset 2px 2px 0 var(--shadow)}.onboarding-cta{width:100%;min-height:54px;margin-top:4px;font-size:17px}.onboarding-trial{text-align:center;width:100%;color:var(--muted);margin:2px 0 0;font-size:13px;font-weight:800}.sheet-panel{padding:0;overflow:hidden}.sheet-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:12px;padding:14px 16px 12px;display:flex}.sheet-head h2{margin:0;font-size:clamp(20px,4vw,26px)}.sheet-meta{text-align:right;white-space:nowrap}.sheet-date{color:var(--ink);font-weight:800}.sheet-count{color:var(--muted);font-size:12px;font-weight:700;display:block}.sheet-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.daily-sheet{border-collapse:collapse;width:100%;min-width:760px;font-size:14px}.daily-sheet th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line);background:#f3e8d180;padding:9px 10px;font-size:11px;font-weight:800}.daily-sheet td{vertical-align:top;border-bottom:1px solid #ded0b880;padding:10px}.daily-sheet .c-ord{width:84px;color:var(--ink);white-space:nowrap;font-weight:800}.daily-sheet .c-pending{color:var(--amber)}.daily-sheet .bill-row.is-multi{cursor:pointer}.daily-sheet .bill-row.is-multi:hover td{background:#16834d0d}.bill-toggle{align-items:center;gap:7px;font-weight:800;display:inline-flex}.bill-toggle .chev{width:14px;color:var(--green);place-items:center;font-size:11px;display:inline-grid}.daily-sheet .service-subrow td{background:#f3e8d129;border-bottom:1px solid #ded0b852;padding-top:7px;padding-bottom:7px}.daily-sheet .service-subrow .c-service.sub{color:var(--muted);padding-left:24px;font-weight:600}.peter-close{background:linear-gradient(135deg,#fffdf7fa,#f7efded1);border-color:#16834d47}.close-line{letter-spacing:0;margin:6px 0 14px;font-size:clamp(18px,2.6vw,24px);line-height:1.3}.close-money{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.close-stat{background:#fffdf7b3;border:1px solid #ded0b8b3;border-radius:8px;padding:10px 12px}.close-stat span{color:var(--muted);font-size:12px;font-weight:800;display:block}.close-stat strong{margin-top:3px;font-size:clamp(16px,2vw,22px);display:block}.close-stat.hero{border-color:var(--green);background:#16834d14}.close-stat.attn strong{color:var(--amber)}.team-list{gap:11px;display:grid}.team-row{grid-template-columns:22px minmax(80px,1fr) 2fr auto;align-items:center;gap:12px;display:grid}.team-rank{color:var(--muted);font-size:13px;font-weight:800}.team-name{align-items:center;gap:8px;font-weight:700;display:inline-flex}.team-star{text-transform:uppercase;letter-spacing:.05em;color:var(--green-dark);background:#16834d1f;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:800}.team-bar{background:#ded0b873;border-radius:999px;height:8px;overflow:hidden}.team-bar-fill{background:var(--green);border-radius:999px;height:100%}.team-amt{font-variant-numeric:tabular-nums;white-space:nowrap}.close-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.close-report-btn{white-space:nowrap}.report-panel{border-color:#16834d42}.report-presets{flex-wrap:wrap;gap:8px;margin:4px 0 12px;display:flex}.report-range{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.report-download{width:100%;min-height:48px}@media (width<=760px){.close-money{grid-template-columns:repeat(2,1fr)}.team-row{grid-template-columns:20px 1fr auto}.team-bar{display:none}}.daily-sheet .c-service{color:var(--ink);font-weight:700}.daily-sheet .c-amt{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;width:88px}.daily-sheet .c-att{white-space:nowrap;color:var(--muted)}.daily-sheet tr.is-pending td{background:#a66b160f}.pending-flag{color:var(--amber);text-transform:uppercase;letter-spacing:.04em;background:#a66b161a;border:1px solid #a66b164d;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:10px;font-weight:800;display:inline-block}.daily-sheet .sheet-empty{text-align:center;color:var(--muted);padding:28px 12px}.daily-sheet tfoot .sheet-total td{border-top:2px solid var(--line);background:#f3e8d166;border-bottom:0;padding:12px 10px;font-weight:900}.sheet-add{border-top:1px solid var(--line);background:#fffdf799;padding:14px 16px}.sheet-add-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:12px;font-weight:800}.sheet-add-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) 88px 104px minmax(0,1fr) minmax(0,1fr) auto;gap:8px;display:grid}.sheet-add-grid input,.sheet-add-grid select{width:100%}.sheet-error{margin:8px 0 0}.sheet-note{margin:0;padding:16px}.sheet-pending-total{border-top:1px solid var(--line);color:var(--amber);margin:0;padding:12px 16px;font-weight:800}@media (width<=760px){.sheet-add-grid{grid-template-columns:1fr 1fr}.sheet-add-grid .primary-action{grid-column:1/-1}}:root{--paper:#fff8ea;--paper-strong:#f3e8d1;--ink:#211c17;--muted:#756b5f;--line:#ded0b8;--green:#16834d;--green-dark:#0f5c38;--rose:#b44848;--amber:#a66b16;--white:#fffdf7;--shadow:0 18px 45px #2a211624;color:var(--ink);background:var(--paper);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:radial-gradient(circle at 1px 1px, #211c1712 1px, transparent 0) 0 0 / 28px 28px, var(--paper);min-width:320px;min-height:100svh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}#root{min-height:100svh}.auth-page{place-items:center;min-height:100svh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);width:min(440px,100%);box-shadow:var(--shadow);text-align:center;background:#fffdf7e0;border-radius:8px;padding:28px}.auth-mark{object-fit:contain;width:112px;height:112px;margin-bottom:10px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--green-dark);margin:0 0 8px;font-size:12px;font-weight:800}h1,h2,h3,p{margin-top:0}.muted{color:var(--muted)}.primary-action{background:var(--green);color:#fff;border:0;border-radius:8px;width:100%;min-height:48px;padding:0 16px;font-weight:800;box-shadow:0 10px 22px #16834d3d}
