:root{--receipt-bg:#E8E0D2;--receipt-ink:#1A1612;--receipt-ink-secondary:#3A3630;--receipt-ink-citation:#6A6458;--receipt-red:#8B0000;--receipt-red-faded:#6B0000;--receipt-font:'JetBrains Mono','Courier New',monospace;--receipt-width:380px;--signal-red:#CC0000;--bone-white:#F0ECE4;--void-black:#0A0A09}.receipt-page__header{text-align:center;padding:3rem 1rem 2rem;max-width:600px;margin:0 auto}.receipt-page__icon{color:var(--signal-red);font-size:2rem;line-height:1;margin-bottom:0.5rem}.receipt-page__title{font-family:'Anybody','Space Mono',sans-serif;font-weight:800;font-size:clamp(2rem,6vw,3.5rem);color:var(--bone-white);letter-spacing:0.05em;line-height:1.1;margin-bottom:0.75rem}.receipt-page__subtitle{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-secondary);letter-spacing:0.02em;margin-bottom:0.5rem}.receipt-page__note{font-size:var(--text-xs);color:var(--text-dim);font-style:italic}.receipt-form{max-width:440px;margin:0 auto 3rem;padding:0 1rem}.receipt-form__section{margin-bottom:2rem}.receipt-form__section-label{font-family:var(--font-heading);font-size:var(--text-xs);color:var(--text-primary);letter-spacing:0.15em;border-bottom:1px solid var(--border-highlight);padding-bottom:0.5rem;margin-bottom:1.25rem}.receipt-form__section-note{font-size:var(--text-xs);color:var(--text-secondary);margin-top:-0.75rem;margin-bottom:1.25rem}.receipt-form__group{margin-bottom:1.25rem}.receipt-form__label{display:block;font-family:var(--font-heading);font-size:var(--text-xs);color:var(--text-primary);letter-spacing:0.1em;margin-bottom:0.4rem}.receipt-form__select{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;background:var(--bg-elevated);color:var(--bone-white);border:1px solid var(--border-highlight);padding:10px 36px 10px 12px;font-family:var(--font-body);font-size:var(--text-sm);line-height:1.4;cursor:crosshair;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px}.receipt-form__select:focus{outline:none;border-color:var(--signal-red);box-shadow:0 0 0 1px var(--signal-red)}.receipt-form__select:invalid,.receipt-form__select option[value=""]{color:var(--text-muted)}.receipt-form__select option{background:var(--bg-elevated);color:var(--bone-white)}.receipt-form__toggle-group{margin-bottom:1rem}.receipt-form__toggle{display:flex;align-items:center;gap:12px;cursor:crosshair;user-select:none}.receipt-form__toggle input[type="checkbox"]{position:absolute;opacity:0;width:0;height:0}.toggle-switch{position:relative;display:inline-block;width:36px;height:18px;background:var(--bg-surface);border:1px solid var(--border-highlight);border-radius:9px;flex-shrink:0;transition:background 0.2s,border-color 0.2s}.toggle-switch::after{content:'';position:absolute;top:2px;left:2px;width:12px;height:12px;background:var(--text-muted);border-radius:50%;transition:transform 0.2s,background 0.2s}.receipt-form__toggle input:checked+.toggle-switch{background:var(--signal-red);border-color:var(--signal-red)}.receipt-form__toggle input:checked+.toggle-switch::after{transform:translateX(18px);background:var(--bone-white)}.receipt-form__toggle input:focus-visible+.toggle-switch{box-shadow:0 0 0 2px var(--signal-red)}.toggle-text{font-size:var(--text-sm);color:var(--text-primary)}.receipt-form__submit{display:block;width:100%;padding:14px;background:var(--signal-red);color:var(--bone-white);border:none;font-family:var(--font-heading);font-size:var(--text-base);font-weight:700;letter-spacing:0.1em;cursor:crosshair;transition:background 0.2s,transform 0.1s;margin-top:0.5rem}.receipt-form__submit:hover{background:#e60000}.receipt-form__submit:active{transform:scale(0.98)}.receipt-form__error{color:var(--signal-red);font-size:var(--text-xs);margin-top:0.75rem;min-height:1.2em}.receipt-output{display:flex;flex-direction:column;align-items:center;padding:0 1rem 3rem}.receipt-capture{background:var(--void-black);padding:40px 40px 30px;display:inline-block}.receipt__tear{width:var(--receipt-width);height:10px;display:block}.receipt__tear--top{background:linear-gradient(135deg,var(--receipt-bg) 33.33%,transparent 33.33%) 0 0 / 10px 10px repeat-x,linear-gradient(225deg,var(--receipt-bg) 33.33%,transparent 33.33%) 0 0 / 10px 10px repeat-x}.receipt__tear--bottom{background:linear-gradient(315deg,var(--receipt-bg) 33.33%,transparent 33.33%) 0 0 / 10px 10px repeat-x,linear-gradient(45deg,var(--receipt-bg) 33.33%,transparent 33.33%) 0 0 / 10px 10px repeat-x}.receipt{width:var(--receipt-width);background:var(--receipt-bg);color:var(--receipt-ink);font-family:var(--receipt-font);font-size:11px;line-height:1.5;padding:20px 18px;position:relative;overflow:hidden;background-image:repeating-linear-gradient( to bottom,transparent,transparent 3px,rgba(0,0,0,0.012) 3px,rgba(0,0,0,0.012) 4px );background-color:var(--receipt-bg)}.receipt__scanline{position:absolute;left:0;right:0;height:4px;background:linear-gradient( to bottom,transparent,rgba(0,0,0,0.03),transparent );pointer-events:none;z-index:1;animation:scanline 8s linear infinite}@keyframes scanline{0%{top:-4px}100%{top:100%}}.reduced-motion .receipt__scanline{animation:none;display:none}.receipt__header{text-align:center;padding-bottom:12px}.receipt__logo{font-size:18px;color:var(--receipt-red);line-height:1;margin-bottom:6px}.receipt__store-name{font-size:13px;font-weight:700;letter-spacing:0.08em;color:var(--receipt-ink)}.receipt__store-sub{font-size:10px;color:var(--receipt-ink-secondary);letter-spacing:0.05em}.receipt__meta{padding:8px 0}.receipt__meta-row{display:flex;justify-content:space-between;font-size:10px;line-height:1.8}.receipt__meta-row span:first-child{color:var(--receipt-ink-citation);letter-spacing:0.05em}.receipt__meta-row span:last-child{color:var(--receipt-ink);text-align:right}.receipt__divider{border:none;margin:10px 0}.receipt__divider--single{border-top:1px solid var(--receipt-ink-citation)}.receipt__divider--double{border-top:3px double var(--receipt-ink)}.receipt__divider--dotted{border-top:1px dotted var(--receipt-ink-citation)}.receipt__item{padding:8px 0}.receipt__item+.receipt__item{border-top:1px dotted rgba(26,22,18,0.15)}.receipt__item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.receipt__item-label{font-weight:700;font-size:11px;letter-spacing:0.03em;color:var(--receipt-ink);flex:1}.receipt__item-amount{font-weight:700;font-size:11px;white-space:nowrap;text-align:right;color:var(--receipt-ink)}.receipt__item-sub{font-size:10px;font-style:italic;color:var(--receipt-ink-secondary);margin-top:2px;line-height:1.4}.receipt__item-delta{font-size:9px;color:var(--receipt-red);margin-top:3px}.receipt__item-source{font-size:8px;color:var(--receipt-ink-citation);margin-top:2px;letter-spacing:0.02em}.receipt__footer-item .receipt__item-header{opacity:0.6}.receipt__footer-item .receipt__item-amount{font-weight:400}.receipt__item-amount--pending{font-style:italic;font-weight:400;letter-spacing:0.05em}.receipt__totals{padding:10px 0}.receipt__total-row{display:flex;justify-content:space-between;font-size:11px;line-height:2}.receipt__total-row--grand{font-size:14px;font-weight:800;color:var(--receipt-ink);letter-spacing:0.02em}.receipt__total-row--grand .receipt__total-amount{color:var(--receipt-red)}.receipt__total-delta{font-size:10px;color:var(--receipt-red);margin-top:2px;text-align:right}.receipt__footer-text{text-align:center;padding:16px 0 8px;font-size:9px;line-height:1.6;color:var(--receipt-ink-secondary);white-space:pre-line}.receipt__footer-text strong{color:var(--receipt-ink);font-weight:700}.receipt__footer-brand{text-align:center;padding:8px 0;font-size:10px;font-weight:700;letter-spacing:0.08em;color:var(--receipt-ink)}.receipt__footer-url{text-align:center;font-size:8px;color:var(--receipt-ink-citation);letter-spacing:0.05em}.receipt__footer-legal{text-align:center;font-size:7px;color:var(--receipt-ink-citation);margin-top:12px;letter-spacing:0.03em}.receipt__sources{text-align:center;font-size:7px;color:var(--receipt-ink-citation);padding:8px 0;letter-spacing:0.03em;line-height:1.6}.receipt-output--printing .receipt-capture{overflow:hidden;animation:printReceipt 2.5s ease-out forwards}@keyframes printReceipt{from{max-height:0;opacity:0.7}to{max-height:8000px;opacity:1}}.reduced-motion .receipt-output--printing .receipt-capture{animation:none;max-height:none;opacity:1}.receipt-actions{display:flex;gap:12px;margin-top:2rem;flex-wrap:wrap;justify-content:center}.receipt-actions__download{padding:12px 24px;background:var(--signal-red);color:var(--bone-white);border:none;font-family:var(--font-heading);font-size:var(--text-sm);font-weight:700;letter-spacing:0.08em;cursor:crosshair;transition:background 0.2s}.receipt-actions__download:hover{background:#e60000}.receipt-actions__recalc{padding:12px 24px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-highlight);font-family:var(--font-heading);font-size:var(--text-sm);font-weight:700;letter-spacing:0.08em;cursor:crosshair;transition:border-color 0.2s,color 0.2s}.receipt-actions__recalc:hover{border-color:var(--text-secondary);color:var(--bone-white)}.receipt-actions__share{text-align:center;font-size:var(--text-xs);color:var(--text-dim);margin-top:1.5rem;letter-spacing:0.05em}@media (max-width:520px){:root{--receipt-width:calc(100vw - 40px)}.receipt-capture{padding:20px 10px 15px}.receipt{padding:16px 12px;font-size:10px}.receipt__store-name{font-size:12px}.receipt__item-label,.receipt__item-amount{font-size:10px}.receipt__total-row--grand{font-size:12px}.receipt-actions{flex-direction:column;align-items:stretch;padding:0 1rem}.receipt-actions__download,.receipt-actions__recalc{text-align:center}}@media (max-width:400px){.receipt{padding:12px 10px}.receipt__meta-row{font-size:9px}}@media print{body,html{background:#fff !important;color:#000 !important}.tgwc-nav,.tgwc-footer,.tgwc-ticker,.tgwc-back-to-top,.tgwc-compliance-score,.tgwc-daily-status,.skip-link,.crt-noise,.receipt-form,.receipt-page__header,.receipt-actions,.haha-float{display:none !important}body::after,body::before{display:none !important}.receipt-output{display:block !important}.receipt-capture{box-shadow:none !important}.receipt{max-width:100% !important;animation:none !important;border:1px solid #ccc}*{animation:none !important;transition:none !important}}