.app-shell{min-height:100svh;padding:16px}.app-frame{width:min(100%,760px);margin:0 auto}.topbar{border:3px solid var(--ink);background:var(--paper);box-shadow:5px 5px 0 var(--ink);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.brand-lockup{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{border:3px solid var(--ink);background:var(--green);border-radius:8px;width:48px;height:48px}.brand-title,.card-title,.screen-title,.metric-value{color:var(--ink);font-weight:900}.brand-title{font-size:clamp(20px,6vw,30px);line-height:1}.brand-subtitle,.field-label,.muted{color:var(--muted);font-weight:800}.brand-subtitle{margin-top:4px;font-size:15px}.screen-head{justify-content:space-between;align-items:end;gap:12px;margin:38px 0 16px;display:flex}.screen-title{letter-spacing:0;margin:0;font-size:clamp(56px,18vw,96px);line-height:.9}.section-title{justify-content:space-between;align-items:center;margin:28px 0 10px;display:flex}.section-title h2{margin:0;font-size:24px}.grid{gap:12px;display:grid}.section-grid{margin-top:12px}.metrics-grid,.action-grid,.two-grid,.method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card,.entry-card,.form-card,.notice,.setup-card,.report-card{border:3px solid var(--ink);background:var(--paper);box-shadow:5px 5px 0 var(--ink);border-radius:8px}.metric-card{min-height:118px;padding:16px}.metric-label{color:var(--muted);font-size:15px;font-weight:900}.metric-value{margin-top:10px;font-size:clamp(34px,10vw,48px);line-height:1}.metric-value.danger{color:var(--red)}.entry-card,.form-card,.setup-card,.report-card{padding:16px}.entry-card{gap:14px;display:grid}.entry-main{justify-content:space-between;align-items:start;gap:12px;display:flex}.entry-name{color:var(--ink);margin:0;font-size:24px;font-weight:900;line-height:1.05}.entry-meta{color:var(--muted);margin-top:6px;font-weight:800}.booking-time{border:2px solid var(--ink);background:var(--yellow);min-height:34px;color:var(--ink);border-radius:999px;align-items:center;margin-bottom:8px;padding:6px 10px;font-size:14px;font-weight:900;display:inline-flex}.mini-ledger{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mini-ledger div{border:2px solid var(--line);background:var(--soft);border-radius:8px;min-width:0;padding:10px}.mini-ledger span{color:var(--muted);font-size:12px;font-weight:900;display:block}.mini-ledger strong{color:var(--ink);overflow-wrap:anywhere;margin-top:4px;display:block}.mini-ledger small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:900;line-height:1.25;display:block}.balance-focus{border:3px solid var(--ink);background:var(--pink);box-shadow:5px 5px 0 var(--ink);border-radius:8px;padding:16px}.balance-focus span{color:var(--red);font-size:14px;font-weight:900}.balance-focus h3{color:var(--ink);margin:6px 0 4px;font-size:clamp(28px,8vw,44px);line-height:1}.balance-focus p,.card-copy{color:var(--muted);margin:0;font-weight:800}.card-heading{color:var(--ink);margin:0 0 4px;font-size:24px;font-weight:900;line-height:1.1}.primary-task-card{background:var(--mint)}.badge{border:3px solid var(--ink);background:var(--blue);color:var(--ink);border-radius:999px;flex:none;padding:9px 12px;font-size:14px;font-weight:900;line-height:1}.badge.due{background:var(--pink)}.badge.paid{background:var(--mint)}.badge.radd{background:var(--pink);color:var(--red)}.radd-card{opacity:.9}.notice{background:var(--yellow-soft);box-shadow:none;border-style:dashed;padding:16px}.notice.success{background:var(--mint);border-style:solid}.notice.danger-notice{background:var(--pink)}.compact-notice{padding:10px 12px}.notice h3{color:var(--ink);margin:0 0 6px;font-size:24px}.notice p{color:var(--muted);margin:0;font-weight:800}.button,.chip,.input,.select{border:3px solid var(--ink);background:var(--paper);min-height:52px;color:var(--ink);font:inherit;border-radius:8px;font-weight:900}.button{cursor:pointer;width:100%;box-shadow:5px 5px 0 var(--ink);justify-content:center;align-items:center;gap:8px;padding:14px 18px;text-decoration:none;display:inline-flex}.button.primary{background:var(--green)}.button.secondary{background:var(--paper)}.button.danger{background:var(--pink);color:var(--red)}.button.subtle-danger{background:var(--paper);color:var(--red)}.button.ghost{box-shadow:none}.button:disabled,.chip:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.chip-row,.tabs{gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.chip{cursor:pointer;flex:none;justify-content:center;align-items:center;gap:6px;min-width:110px;padding:10px 14px;display:inline-flex}.chip.active{background:var(--green)}.search-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:18px 0 12px;display:grid}.search-row-solo{grid-template-columns:1fr}.field{gap:8px;display:grid}.field-label{font-size:14px}.input,.select{box-sizing:border-box;width:100%;padding:0 14px}.read-only-input{color:var(--muted);background:var(--soft)}.locked-ledger{margin-top:2px}.input:focus,.select:focus,.chip:focus-visible,.button:focus-visible{outline:4px solid var(--focus);outline-offset:3px}.form-stack{gap:12px;display:grid}.danger-zone{border-top:2px solid var(--line);gap:12px;margin-top:12px;padding-top:12px;display:grid}.balance-card{border:3px dashed var(--ink);background:var(--yellow-soft);border-radius:8px;padding:16px}.balance-card h3{color:var(--ink);margin:0;font-size:24px}.balance-card p{margin:6px 0 0}.empty-state{color:var(--muted);padding:22px 0;font-weight:800}.empty-explainer{border:3px dashed var(--ink);background:var(--yellow-soft);border-radius:8px;gap:12px;padding:16px;display:grid}.empty-explainer h3{color:var(--ink);margin:0;font-size:24px}.empty-explainer p{color:var(--muted);margin:0;font-weight:800}.suggestion-list{border:2px dashed var(--line);background:var(--soft);border-radius:8px;gap:8px;padding:8px;display:grid}.suggestion-item{border:2px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.suggestion-item strong,.suggestion-item small{display:block}.suggestion-item small{color:var(--muted);margin-top:3px;font-size:13px;font-weight:800;line-height:1.25}.suggestion-item em{color:var(--muted);flex:none;font-size:12px;font-style:normal;font-weight:900}.selected-customer-note{border:2px solid var(--green);background:var(--mint);color:var(--ink);border-radius:8px;padding:10px 12px;font-weight:900}.payment-inline{border-top:2px solid var(--line);gap:10px;padding-top:12px;display:grid}.card-actions{gap:10px;display:grid}.compact-action{min-height:48px}.history-toggle{border:3px solid var(--ink);background:var(--paper);width:100%;min-height:54px;color:var(--ink);box-shadow:5px 5px 0 var(--ink);font:inherit;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:26px;padding:12px 16px;font-weight:900;display:flex}.history-toggle strong{border:3px solid var(--ink);background:var(--pink);min-width:36px;min-height:36px;color:var(--red);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.report-list{gap:0;display:grid}.report-row{border-bottom:2px solid var(--line);color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;font-weight:900;display:flex}.report-row:last-child{border-bottom:0}.auth-wrap,.missing-wrap{place-items:center;min-height:100svh;padding:18px;display:grid}.auth-card{gap:18px;width:min(100%,620px);display:grid}.auth-card h1,.setup-card h1,.missing-wrap h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(48px,13vw,82px);line-height:.9}.auth-card p,.setup-card p,.missing-wrap p{color:var(--muted);font-size:18px;font-weight:800}.env-list{border:2px solid var(--line);background:var(--soft);color:var(--ink);overflow-wrap:anywhere;border-radius:8px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.otp-card{border:3px solid var(--ink);background:var(--paper);box-shadow:5px 5px 0 var(--ink);border-radius:8px;gap:14px;padding:16px;display:grid}.danger-text{color:var(--red);font-weight:900}@media (width<=560px){.app-shell{padding:10px}.topbar{padding:12px}.brand-mark{width:42px;height:42px}.screen-head{align-items:center}.metrics-grid,.action-grid,.two-grid,.method-grid,.search-row,.mini-ledger{grid-template-columns:1fr}.button{min-height:56px}}@media print{@page{margin:12mm}body{background:#fff!important}body.printing-parchi *{visibility:hidden!important}body.printing-parchi .print-target,body.printing-parchi .print-target *{visibility:visible!important}body.printing-parchi .print-target{width:100%;box-shadow:none;position:absolute;inset:0 auto auto 0}body.printing-parchi .print-target .card-actions,body.printing-parchi .print-target .payment-inline{display:none!important}}:root{--ink:#1c1c1b;--paper:#fffdf6;--bg:#f7f2e8;--soft:#fff8e8;--muted:#6f675c;--line:#d8c9ad;--green:#2bd36b;--mint:#d8ffe8;--yellow:#ffdc68;--yellow-soft:#fff7d9;--pink:#ffdfe3;--red:#9d2525;--blue:#dff3ff;--focus:#2bd36b59;color:var(--ink);background:linear-gradient(#1c1c1b0e 1px, transparent 1px), linear-gradient(90deg, #1c1c1b0e 1px, transparent 1px), var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-size:44px 44px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-height:100%}body{min-width:320px;min-height:100svh;margin:0}button,input,select{letter-spacing:0}#root{min-height:100svh}
