:root{--bg:#f4f2ed;--bg2:#ece8e0;--card:#fff;--ink:#22201c;--muted:#7a746b;--line:#e4dfd6;--espresso:#2e1e14;--espresso2:#46301f;--espresso-ink:#fff;--gold:#c8893f;--cash:#9a4f00;--cash-bg:#fbeedb;--ok:#2f7d54;--ok-bg:#e4f1ea;--warn:#b3261e;--warn-bg:#fbe7e5;--r-lg:20px;--r-sm:12px;--shadow-sm:0 1px 2px rgba(46,30,20,.05),0 1px 3px rgba(46,30,20,.06);--shadow:0 2px 6px rgba(46,30,20,.06),0 8px 24px rgba(46,30,20,.07);--shadow-lg:0 10px 40px rgba(46,30,20,.12);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-size:16px;line-height:1.5;letter-spacing:-.006em;background:radial-gradient(1200px 500px at 100% -10%,rgba(200,137,63,.06),transparent 60%),radial-gradient(900px 500px at -10% 0,rgba(46,30,20,.04),transparent 55%),var(--bg);background-attachment:fixed}button,input,select{font:inherit}:focus-visible{outline:3px solid var(--espresso);outline-offset:2px}.wrap{max-width:560px;margin:0 auto;padding:16px 16px 120px}.wide{max-width:1100px}.top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}h1{letter-spacing:-.02em;font-weight:700}h2,h3{letter-spacing:-.015em}.top h1{font-size:22px;margin:0;letter-spacing:-.01em}.sub{color:var(--muted);font-size:15px}.btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:60px;border:0;border-radius:var(--r-lg);background:linear-gradient(180deg,var(--espresso2),var(--espresso));color:var(--espresso-ink);font-size:18px;font-weight:650;box-shadow:var(--shadow-sm);transition:transform .08s ease,box-shadow .15s ease,filter .15s ease;text-decoration:none;cursor:pointer;padding:0 18px}.btn:disabled{opacity:.5}.btn:active{transform:translateY(1px) scale(.995)}.btn:hover{filter:brightness(1.06)}.btn.ok{background:linear-gradient(180deg,#3b9568,var(--ok))}.btn.ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line);min-height:52px;font-size:16px;box-shadow:var(--shadow-sm)}.btn.ghost:hover{filter:none;border-color:#d2ccc1;background:#fdfcfa}.btn.small{width:auto;min-height:40px;font-size:15px;border-radius:var(--r-sm);padding:0 14px}.card{background:linear-gradient(180deg,#fff,#fdfbf8);border-radius:var(--r-lg);padding:18px;margin-bottom:16px;border:1px solid hsla(39,21%,87%,.9);box-shadow:var(--shadow)}.stop{display:grid;grid-template-columns:44px 1fr;grid-gap:12px;gap:12px}.stopno{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:20px}.addr,.stopno{font-weight:700}.addr{font-size:22px;line-height:1.25;margin:0}.notes{font-size:18px;margin:4px 0 0}.cash{margin:14px 0;padding:12px 14px;border-radius:var(--r-sm);background:var(--cash-bg);color:var(--cash)}.cash strong{display:block;font-size:34px;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card-pay{margin:14px 0;padding:12px 14px;border-radius:var(--r-sm);background:#e3ecf7;color:#1b4b80}.card-pay strong{display:block;font-size:34px;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.paid{margin:14px 0;padding:12px 14px;background:var(--ok-bg);color:var(--ok);font-weight:650}.paid,.warn{border-radius:var(--r-sm)}.warn{background:var(--warn-bg);color:var(--warn);padding:8px 12px;margin-top:10px;font-weight:600;font-size:15px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.stack>*+*{margin-top:10px}.items{color:var(--muted);font-size:15px;margin-top:6px}.tel{color:var(--ink);font-weight:650}.err{background:var(--warn-bg);color:var(--warn);padding:12px 14px;border-radius:var(--r-sm);font-weight:600}.err,.field{margin-bottom:14px}.field,.field span{display:block}.field span{font-size:15px;color:var(--muted);margin-bottom:6px}.field input,.field select{width:100%;min-height:54px;border-radius:var(--r-sm);border:1.5px solid var(--line);padding:0 14px;font-size:18px;background:#fff;box-shadow:var(--shadow-sm);transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,137,63,.15)}.vehicle{text-align:left;justify-content:space-between;background:var(--card);color:var(--ink);border:2px solid var(--line)}.tag{font-size:12px;padding:4px 10px;border-radius:99px;background:var(--bg2);color:var(--muted);font-weight:600}.cols{display:grid;grid-gap:18px;gap:18px;grid-template-columns:1fr}@media (min-width:900px){.cols{grid-template-columns:2fr 1fr}}.status{font-size:13px;font-weight:700;padding:3px 9px;border-radius:99px;background:var(--bg)}.empty{text-align:center;padding:40px 10px}.empty,.sec{color:var(--muted)}.sec{font-size:17px;margin:22px 0 10px;font-weight:650}.avail{border-style:dashed;border-width:2px}.cancelled{background:var(--warn-bg);border:3px solid var(--warn)}.cancel-title{display:block;color:var(--warn);font-size:24px;letter-spacing:.04em;margin-bottom:4px}.cancel-do{font-size:19px;font-weight:650;margin:6px 0 14px}.cashup{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:6px 16px;margin:0 0 14px}.cu-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cu-row.muted{color:var(--muted);font-size:15px}.cu-total{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0 10px;font-weight:700}.cu-total strong{font-size:34px;color:var(--cash);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cash-now{background:var(--cash-bg);color:var(--cash);border-radius:var(--r-sm);padding:10px 14px;margin-bottom:14px;font-weight:600}.cash-now strong{font-size:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.changes{background:var(--warn-bg);border:2px solid var(--warn);border-radius:var(--r-sm);padding:10px 12px;margin:10px 0;color:var(--warn)}.changes>strong{display:block;margin-bottom:6px}.change-row{padding:6px 0}.change-check,.change-row{border-top:1px solid #f0c9c5;color:var(--ink)}.change-check{display:flex;gap:10px;align-items:flex-start;padding:8px 0;cursor:pointer}.change-check input{width:24px;height:24px;margin-top:2px;flex:none;accent-color:var(--warn)}.hint{display:block;font-size:13px;color:var(--muted);margin-top:2px}.chg-badge{margin-left:10px;background:var(--warn);color:#fff;border-radius:99px;padding:2px 9px;font-size:13px;font-weight:700}.table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow)}.hist{width:100%;border-collapse:collapse;font-size:15px;min-width:820px}.hist th{text-align:left;font-size:12px;color:var(--muted);font-weight:650;letter-spacing:.03em;text-transform:uppercase;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap;background:#faf8f4}.hist td{padding:12px 14px;border-bottom:1px solid #f0ece4;vertical-align:top}.hist tbody tr:hover td{background:#fcfbf8}.hist .sub{font-size:13px}.row-warn td{background:var(--warn-bg)}.row-cancel td{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:#c9c9c9;text-decoration-color:#c9c9c9}.row-hold td{background:#fff6d6}.olist{border:1px solid var(--line);border-radius:var(--r-sm);margin:10px 0;background:#fff}.olist-head{justify-content:space-between;align-items:center}.olist-head,.orow{display:flex;padding:10px 12px;border-bottom:1px solid var(--line)}.orow{gap:10px;align-items:flex-start;cursor:default}.orow input{width:22px;height:22px;margin-top:2px;flex:none;accent-color:var(--ok);cursor:pointer}.orow-main{display:flex;flex-direction:column;flex:1 1;min-width:0;gap:2px}.orow-top{display:flex;gap:8px;align-items:baseline}.orow-pay{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.orow-chg{background:var(--warn-bg)}.orow-seen{background:var(--ok-bg)}.orow-seen.orow-chg{background:var(--warn-bg)}.pay-tag{font-size:12px;font-weight:700;padding:2px 8px;border-radius:99px}.pay-cash{background:var(--cash-bg);color:var(--cash)}.pay-card{background:#e3ecf7;color:#1b4b80}.pay-prepaid{background:var(--ok-bg);color:var(--ok)}.chg-note{font-size:12px;color:var(--warn);font-weight:650}.olist-foot{padding:10px 12px;font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.olist-total{color:var(--cash);font-size:17px}.prob{background:var(--cash-bg);color:var(--cash);border-radius:var(--r-sm);padding:10px 12px;margin:0 0 12px;font-size:15px}.prob-ok{background:var(--ok-bg);color:var(--ok)}.prob-btn{align-self:flex-start;color:var(--warn);border-color:#e8b4af}.prob-panel{border:2px solid var(--warn);padding:12px;display:flex;flex-direction:column;gap:8px}.prob-note,.prob-panel{border-radius:var(--r-sm)}.prob-note{min-height:48px;border:2px solid var(--line);padding:0 12px;font-size:16px}.prob-card{background:var(--warn-bg);border:3px solid var(--warn);border-radius:var(--r-lg);padding:14px 16px;margin-bottom:12px}.mrow{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px}.inactive{opacity:.6}.okmsg{background:var(--ok-bg);color:var(--ok);padding:12px 14px;border-radius:var(--r-sm);margin-bottom:14px;font-weight:600}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.pos-touch,.pos-touch *{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.pos-touch [contenteditable],.pos-touch input,.pos-touch select,.pos-touch textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text}.pos-touch{touch-action:manipulation;overscroll-behavior:none}.pos-touch .pos-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.pos-touch.dragging,.pos-touch.dragging *{cursor:-webkit-grabbing!important;cursor:grabbing!important}