:root{--asphalt:#1b2430;--asphalt-2:#262f3d;--pump-orange:#ff6b35;--pump-orange-dark:#e2551f;--pump-yellow:#ffc857;--paper:#f7f3ec;--paper-line:#e4ddcb;--ink:#2a2620;--ink-muted:#8a8378}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--asphalt);color:var(--ink);background-image:radial-gradient(circle at 50% 0,#ffc85714,#0000 45%);justify-content:center;min-height:100vh;font-family:Noto Sans JP,sans-serif;display:flex}.app{background:var(--asphalt);width:100%;max-width:460px;min-height:100vh;position:relative}.hero{padding:34px 24px 26px;position:relative;overflow:hidden}.hero:after{content:"";background:repeating-linear-gradient(90deg, var(--pump-yellow) 0 22px, transparent 22px 40px);opacity:.9;height:6px;position:absolute;bottom:0;left:0;right:0}.hero-eyebrow{letter-spacing:.18em;color:var(--pump-yellow);text-transform:uppercase;margin:0 0 8px;font-family:JetBrains Mono,monospace;font-size:12px}.hero h1{color:#fff;margin:0 0 10px;font-family:Zen Kaku Gothic New,sans-serif;font-size:40px;font-weight:900;line-height:1}.hero h1 span{color:var(--pump-orange)}.hero p{color:#aeb6c2;margin:0;font-size:13.5px;line-height:1.6}main{padding:22px 20px 60px}.card{background:var(--paper);border-radius:18px;margin-bottom:18px;padding:22px 20px;box-shadow:0 10px 30px #00000047}.card h2{color:var(--ink);align-items:center;gap:8px;margin:0 0 16px;font-family:Zen Kaku Gothic New,sans-serif;font-size:15px;font-weight:700;display:flex}.card h2 .num{background:var(--asphalt);width:20px;height:20px;color:var(--pump-yellow);border-radius:5px;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.field{margin-bottom:16px}.field:last-child{margin-bottom:0}.field label{color:var(--ink-muted);margin-bottom:6px;font-size:12.5px;font-weight:500;display:block}.input-row{border:1.5px solid var(--paper-line);background:#fff;border-radius:12px;align-items:center;padding:0 14px;transition:border-color .15s;display:flex}.input-row:focus-within{border-color:var(--pump-orange)}.input-row input[type=number],.input-row input[type=text]{color:var(--ink);background:0 0;border:none;outline:none;flex:1;width:100%;min-width:0;padding:13px 0;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:500}.input-row input[type=text]{font-family:Noto Sans JP,sans-serif;font-size:14.5px;font-weight:400}.unit{color:var(--ink-muted);white-space:nowrap;padding-left:8px;font-size:13px;font-weight:500}.segmented{border:1.5px solid var(--paper-line);background:#fff;border-radius:12px;gap:4px;padding:4px;display:flex}.segmented button{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:10px 4px;font-family:Noto Sans JP,sans-serif;font-size:13.5px;font-weight:500;transition:all .15s}.segmented button.active{background:var(--asphalt);color:var(--pump-yellow);font-weight:700}.stepper{border:1.5px solid var(--paper-line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:4px;display:flex}.stepper button{background:var(--asphalt);color:#fff;cursor:pointer;border:none;border-radius:9px;width:40px;height:40px;font-size:18px;font-weight:700}.stepper .count{font-family:JetBrains Mono,monospace;font-size:19px;font-weight:700}.extra-row{gap:8px;margin-bottom:10px;display:flex}.extra-row .input-row{padding:0 12px}.extra-row .name-input{flex:1.3}.extra-row .amount-input{flex:1}.remove-btn{border:1.5px solid var(--paper-line);color:#b5473a;cursor:pointer;background:#fff;border-radius:12px;flex-shrink:0;width:38px;font-size:16px}.add-extra-btn{border:1.5px dashed var(--paper-line);width:100%;color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:12px;margin-top:2px;padding:12px;font-size:13.5px;font-weight:500}.add-extra-btn:hover{border-color:var(--pump-orange);color:var(--pump-orange-dark)}#receiptWrap{padding:4px 0 0}.receipt{background:var(--paper);border-radius:4px;padding:26px 24px 20px;position:relative;box-shadow:0 14px 34px #00000059}.receipt-zigzag{background:linear-gradient(135deg, var(--paper) 50%, transparent 50%) 0 0/14px 14px, linear-gradient(-135deg, var(--paper) 50%, transparent 50%) 0 0/14px 14px;background-repeat:repeat-x;height:12px}.receipt-zigzag.bottom{transform:scaleY(-1)}.receipt-title{text-align:center;margin-bottom:18px}.receipt-title .mark{letter-spacing:.04em;font-family:Zen Kaku Gothic New,sans-serif;font-size:22px;font-weight:900}.receipt-title .mark .accent{color:var(--pump-orange-dark)}.receipt-title .sub{color:var(--ink-muted);letter-spacing:.14em;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:10.5px}.dashed{border:none;border-top:2px dashed var(--paper-line);margin:14px 0}.line{color:var(--ink);justify-content:space-between;align-items:baseline;padding:5px 0;font-size:13.5px;display:flex}.line .lbl{color:var(--ink-muted)}.line .val{font-family:JetBrains Mono,monospace;font-weight:500}.line.sub .lbl{padding-left:14px;font-size:12.5px}.line.sub .val{color:var(--ink-muted);font-size:12.5px}.total-block{background:var(--asphalt);border-radius:12px;margin:16px 0 14px;padding:16px 18px}.total-block .row1{color:#aeb6c2;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:12.5px;display:flex}.total-block .row1 .val{color:#fff;font-family:JetBrains Mono,monospace;font-size:15px;font-weight:700}.per-person{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.per-person .lbl{color:var(--pump-yellow);font-size:13px;font-weight:700}.per-person .val{color:#fff;text-shadow:0 0 18px #ff6b358c;font-family:JetBrains Mono,monospace;font-size:34px;font-weight:700}.adjust-note{color:var(--ink-muted);text-align:right;margin-top:-6px;margin-bottom:8px;font-size:11.5px}.receipt-footer{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.barcode{background:repeating-linear-gradient(90deg, var(--ink) 0 2px, transparent 2px 3px, var(--ink) 3px 4px, transparent 4px 7px, var(--ink) 7px 9px, transparent 9px 11px);opacity:.75;flex:1;height:26px}.timestamp{color:var(--ink-muted);white-space:nowrap;margin-left:12px;font-family:JetBrains Mono,monospace;font-size:10px}.actions{gap:10px;margin-top:16px;display:flex}.btn{cursor:pointer;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:15px;font-family:Noto Sans JP,sans-serif;font-size:14.5px;font-weight:700;display:flex}.btn-primary{background:var(--pump-orange);color:#fff;box-shadow:0 8px 20px #ff6b3559}.btn-primary:active{background:var(--pump-orange-dark)}.status{text-align:center;color:var(--pump-yellow);min-height:16px;margin-top:10px;font-size:12px}footer{text-align:center;color:#5d6672;letter-spacing:.06em;padding:6px 0 26px;font-family:JetBrains Mono,monospace;font-size:11px}
