:root{--bg-primary:#f4f4f6;--bg-secondary:#fff;--bg-tertiary:#e5e5ea;--text-primary:#1c1c1e;--text-secondary:#8e8e93;--accent-color:#007aff;--accent-color-rgb:0, 122, 255;--accent-gradient:linear-gradient(135deg, #007aff 0%, #00c7e1 100%);--accent-secondary:#5856d6;--accent-danger:#ff3b30;--border-primary:#00000014;--font-ui:"SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-vintage:"SF Pro Display", -apple-system, BlinkMacSystemFont, sans-serif;--font-script:"Exmouth", "Italianno", "Pinyon Script", cursive;--text-home:#1c1c1e;--text-home-secondary:#1c1c1e99;--receipt-bg:#fff;--receipt-text:#000;--font-receipt:"Courier Prime", Courier, monospace;--ios-glass-bg:#ffffffbf;--ios-glass-border:#fff6;--ios-glass-blur:saturate(180%) blur(20px);--ios-glass-shadow:0 8px 32px 0 #0000000a, 0 2px 8px 0 #00000005;--ios-shadow-soft:0 10px 40px #0000000a;--ios-shadow-button:0 4px 14px #007aff40}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;touch-action:manipulation;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-ui);width:100vw;height:100vh;overflow:hidden}.kiosk-app-frame{background-color:#f4f4f6;background-image:radial-gradient(at 0 0,#007aff1f 0,#0000 60%),radial-gradient(at 100% 100%,#af52de1f 0,#0000 60%),radial-gradient(at 0 100%,#00c8e11f 0,#0000 60%);background-size:200% 200%;width:100vw;height:100vh;animation:15s infinite mesh-gradient-move;position:relative;overflow:hidden}@keyframes mesh-gradient-move{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.views-slider{width:100vw;height:100vh;position:relative;overflow:hidden}.view-panel{width:100vw;height:100vh;padding:calc(env(safe-area-inset-top,0px) + 24px) 24px calc(env(safe-area-inset-bottom,0px) + 24px) 24px;box-sizing:border-box;will-change:transform, opacity;backface-visibility:hidden;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;background:radial-gradient(circle at 50% 0,#fff 0%,#f4f4f6 100%);flex-direction:column;display:none;position:absolute;top:0;left:0;overflow:hidden;transform:translate(0,0)}.view-panel.active-slide{z-index:2;opacity:1;display:flex;transform:translate(0,0)}.view-panel.slide-out-left{z-index:1;animation:.45s cubic-bezier(.16,1,.3,1) forwards ios-slide-out-left;display:flex!important}.view-panel.slide-in-right{z-index:3;animation:.45s cubic-bezier(.16,1,.3,1) forwards ios-slide-in-right;box-shadow:-4px 0 16px #00000014;display:flex!important}.view-panel.slide-out-right{z-index:3;animation:.45s cubic-bezier(.16,1,.3,1) forwards ios-slide-out-right;box-shadow:-4px 0 16px #00000014;display:flex!important}.view-panel.slide-in-left{z-index:1;animation:.45s cubic-bezier(.16,1,.3,1) forwards ios-slide-in-left;display:flex!important}.views-slider.transitioning *{-webkit-backdrop-filter:none!important}.views-slider.transitioning .screen-header,.views-slider.transitioning .preview-options-panel,.views-slider.transitioning .sticker-drawer,.views-slider.transitioning .package-card-option,.views-slider.transitioning .order-summary-card,.views-slider.transitioning .floating-paper-badge{background:#fffffff2!important;border-color:#00000014!important}@keyframes ios-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0,0)}}@keyframes ios-slide-out-left{0%{opacity:1;transform:translate(0,0)}to{opacity:.8;transform:translate(-30%)}}@keyframes ios-slide-in-left{0%{opacity:.8;transform:translate(-30%)}to{opacity:1;transform:translate(0,0)}}@keyframes ios-slide-out-right{0%{transform:translate(0,0)}to{transform:translate(100%)}}.screen-header{background:var(--ios-glass-bg);-webkit-backdrop-filter:var(--ios-glass-blur);border:1px solid var(--ios-glass-border);box-shadow:var(--ios-glass-shadow);box-sizing:border-box;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:100%;margin-bottom:25px;padding:14px 24px;display:flex;position:relative}.kiosk-app-bar{width:100%;min-height:72px;padding-top:calc(env(safe-area-inset-top,0px) + 8px);box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:20px;display:flex;position:relative}.kiosk-app-bar-titles{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.kiosk-screen-title{letter-spacing:-.4px!important;color:#1c1c1e!important;text-align:center!important;margin:0!important;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,sans-serif!important;font-size:28px!important;font-weight:700!important}.kiosk-screen-subtitle{color:#8e8e93!important;text-align:center!important;margin-top:4px!important;margin-bottom:0!important;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif!important;font-size:14px!important;font-weight:500!important}@media (width>=768px){.kiosk-screen-title{letter-spacing:-.5px!important;font-size:38px!important}.kiosk-screen-subtitle{margin-top:6px!important;font-size:16px!important}}.kiosk-back-btn{color:#1c1c1e;cursor:pointer;letter-spacing:.2px;z-index:20;background:#fff;border:1px solid #00000014;border-radius:99px;justify-content:center;align-items:center;gap:8px;min-width:96px;min-height:48px;padding:10px 20px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:14px;font-weight:700;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,background-color .2s;display:inline-flex;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:0 4px 14px #00000014}.kiosk-back-btn:hover{background:#f8f9fa;box-shadow:0 6px 18px #0000001f}.kiosk-back-btn:active{transform:translateY(-50%)scale(.94)!important;box-shadow:0 2px 8px #0000000f!important}.kiosk-floating-bottom-bar{z-index:9999;pointer-events:none;justify-content:center;align-items:center;width:auto;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.kiosk-floating-bottom-back{pointer-events:auto;-webkit-backdrop-filter:blur(28px)saturate(200%);color:#1c1c1e;cursor:pointer;letter-spacing:-.2px;background:#ffffffe0;border:1px solid #ffffffb3;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:14px 28px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:15px;font-weight:700;transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s,box-shadow .2s;display:inline-flex;box-shadow:0 16px 40px #00000024,0 4px 12px #00000014}.kiosk-floating-bottom-back:hover{background:#fff;transform:scale(1.03);box-shadow:0 20px 48px #0000002e}.kiosk-floating-bottom-back:active{box-shadow:0 8px 20px #0000001a;transform:scale(.95)!important}.btn-back{color:var(--accent-color);min-width:48px;min-height:48px;font-family:var(--font-ui);cursor:pointer;letter-spacing:-.2px;z-index:10;background:#0000000d;border:1px solid #0000000f;border-radius:99px;justify-content:center;align-items:center;gap:6px;padding:12px 20px;font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;left:20px}.btn-back:hover{background:#00000014;transform:scale(1.02)}.btn-back:active{transform:scale(.96)!important}.btn{font-family:var(--font-ui);cursor:pointer;letter-spacing:-.2px;border:none;border-radius:99px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:14px 28px;font-size:15px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn:active,.mode-option-card:active,.package-card-option:active,.template-selection-item:active,.review-photo-card:active,.kiosk-back-btn:active{transform:scale(.96)!important}.kiosk-modal-overlay{-webkit-backdrop-filter:saturate(180%)blur(20px);z-index:10000;box-sizing:border-box;background:#0006;justify-content:center;align-items:center;width:100vw;height:100vh;padding:24px;animation:.25s cubic-bezier(.16,1,.3,1) forwards modal-fade-in;display:flex;position:fixed;top:0;left:0}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.kiosk-modal-card{text-align:center;background:#fffffff2;border:1px solid #fffc;border-radius:28px;flex-direction:column;align-items:center;width:100%;max-width:440px;padding:36px 32px;animation:.3s cubic-bezier(.16,1,.3,1) forwards modal-pop-in;display:flex;box-shadow:0 24px 48px #0000001f,0 4px 12px #0000000a}@keyframes modal-pop-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.kiosk-modal-icon-badge{background:#007aff14;border-radius:24px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:16px;font-size:48px;display:flex}.kiosk-modal-title{color:#1c1c1e;letter-spacing:-.3px;margin:0 0 8px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:22px;font-weight:800}.kiosk-modal-desc{color:#636366;margin:0 0 24px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:14px;line-height:1.5}.kiosk-modal-input{text-align:center;letter-spacing:4px;background:#fff;border:1.5px solid #0000001f;border-radius:14px;outline:none;width:100%;margin-bottom:20px;padding:14px 18px;font-family:Courier Prime,monospace;font-size:18px;font-weight:700;transition:border-color .2s,box-shadow .2s}.kiosk-modal-input:focus{border-color:#007aff;box-shadow:0 0 0 4px #007aff26}.kiosk-modal-actions{gap:12px;width:100%;display:flex}.kiosk-modal-actions .btn{flex:1}.paper-low-badge{letter-spacing:.5px;color:#ff9500;background:#ff95001f;border:1px solid #ff950040;border-radius:99px;align-items:center;gap:4px;padding:4px 10px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:11px;font-weight:700;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--ios-shadow-button)}.btn-primary:hover{filter:brightness(1.05);transform:translateY(-2px)}.btn-primary:active{filter:brightness(.95);transform:translateY(0)scale(.96)}.btn-primary:disabled{color:#8e8e93;cursor:not-allowed;box-shadow:none;background:#d1d1d6;transform:none}.btn-secondary{color:var(--text-primary);background:#0000000d;border:1px solid #00000005}.btn-secondary:hover{background:#00000014;transform:translateY(-2px)}.btn-secondary:active{transform:translateY(0)scale(.96)}.btn-pulse{animation:2s infinite alternate start-pulse}@keyframes start-pulse{0%{box-shadow:var(--ios-shadow-button);transform:scale(1)}to{transform:scale(1.04);box-shadow:0 6px 20px #007aff66}}#view-idle{background-color:var(--bg-primary);padding:0}.idle-screen-content{width:100%;height:100%;padding:calc(env(safe-area-inset-top,0px) + 40px) 24px calc(env(safe-area-inset-bottom,0px) + 40px) 24px;box-sizing:border-box;z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.admin-hotspot{z-index:100;cursor:default;background:0 0;width:100%;height:80px;position:absolute;top:0;left:0}.home-mode-graphic .printer-attract-hardware,.home-mode-graphic .idle-footer{display:none!important}.idle-background-media-container{z-index:0;pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:cover;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.sparkles-container{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.sparkle-star{pointer-events:none;color:var(--text-color-home,var(--text-primary,#fff));opacity:0;will-change:transform, opacity;filter:drop-shadow(0 0 6px #fff9);animation:ease-in-out infinite sparkle-twinkle;position:absolute;transform:scale(.2)rotate(0)}@keyframes sparkle-twinkle{0%{opacity:0;transform:scale(.2)rotate(0)}50%{opacity:var(--sparkle-max-opacity,.85);transform:scale(1.1)rotate(45deg)}to{opacity:0;transform:scale(.2)rotate(90deg)}}.sparkle-burst-group{pointer-events:none;z-index:10;position:absolute;transform:translate(-50%,-50%)}.sparkle-star.burst{opacity:1;color:var(--accent-color,#007aff);filter:drop-shadow(0 0 8px var(--accent-color,#007affcc));animation:.8s cubic-bezier(.16,1,.3,1) forwards sparkle-burst;position:absolute;top:0;left:0;transform:translate(0)scale(1)rotate(0)}@keyframes sparkle-burst{0%{opacity:1;transform:translate(0)scale(.5)rotate(0)}70%{opacity:.9;transform:translate(var(--tx,30px), var(--ty,30px)) scale(1.2) rotate(120deg)}to{opacity:0;transform:translate(calc(var(--tx,30px) * 1.2), calc(var(--ty,30px) * 1.2)) scale(.2) rotate(180deg)}}.idle-background-video{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.attract-logo-container{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:4px;width:100%;max-width:320px;margin:20px auto 15px;display:flex;position:relative}.kiosk-badge{border:1px solid var(--text-home-secondary);color:var(--text-home-secondary);font-family:var(--font-vintage);letter-spacing:2.5px;background:0 0;border-radius:0;margin-bottom:20px;padding:6px 16px;font-size:12px;font-style:italic;display:inline-block}.attract-top-subtitle{color:var(--text-home-secondary);text-transform:uppercase;letter-spacing:2.5px;text-align:center;opacity:.85;margin-bottom:12px;font-family:SF Pro,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px;font-weight:600;display:block}.brand-title{font-family:var(--font-vintage);letter-spacing:4px;text-transform:uppercase;color:var(--text-home);font-size:52px;font-weight:300}.brand-subtitle{font-family:var(--font-ui);color:var(--text-home);letter-spacing:1.5px;text-transform:uppercase;opacity:.75;margin-top:10px;font-size:25px;font-weight:400}.printer-attract-hardware{flex-direction:column;align-items:center;width:300px;height:350px;margin:auto;display:flex;position:relative;overflow:visible}.printer-hardware-mouth{z-index:10;background:linear-gradient(#3a3d40 0%,#1e2022 40%,#0a0b0c 100%);border-radius:27px;justify-content:center;align-items:center;width:280px;height:54px;display:flex;position:relative;box-shadow:0 6px 12px #00000026,inset 0 2px 2px #ffffff1a,inset 0 -2px 3px #000000b3}.printer-hardware-slot{box-sizing:border-box;background:#000;border:1px solid #0000;border-radius:4px;width:210px;height:8px;animation:3s ease-in-out infinite slot-breath;box-shadow:inset 0 2px 4px #000000e6}@keyframes slot-breath{0%,to{box-shadow:inset 0 2px 4px #000000e6, 0 0 8px rgba(var(--accent-color-rgb), .25), 0 0 15px rgba(var(--accent-color-rgb), .1);border-color:rgba(var(--accent-color-rgb), .3)}50%{box-shadow:inset 0 2px 4px #000000e6, 0 0 18px rgba(var(--accent-color-rgb), .75), 0 0 30px rgba(var(--accent-color-rgb), .4);border-color:rgba(var(--accent-color-rgb), .6)}}.printer-paper-clipper{z-index:20;width:176px;height:315px;position:absolute;top:27px;left:50%;overflow:hidden;transform:translate(-50%)}.attract-loop-receipt{color:#000;box-sizing:border-box;opacity:0;transform-origin:top;background:#fff;border-left:1px solid #0000000d;border-right:1px solid #0000000d;flex-direction:column;justify-content:center;align-items:center;width:100%;height:240px;display:flex;position:relative;overflow:visible;transform:translateY(-100%);box-shadow:0 10px 24px #00000014}.receipt-elegant-prompt{font-family:var(--font-ui);text-align:center;color:#000;-webkit-user-select:none;user-select:none;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;font-size:26px;font-weight:800;line-height:1.25;display:flex}.animate-print{animation:7s cubic-bezier(.25,1,.5,1) infinite attract-print-loop}.tear-off{animation:.45s cubic-bezier(.3,0,.2,1) forwards receipt-tear-off}.orange-tear-line{border-bottom:2px dashed #ff6b35;width:100%;margin:2px 0 6px}.receipt-brand-label{font-family:var(--font-receipt);letter-spacing:1px;color:#222;text-transform:uppercase;font-size:16px;font-weight:700}.receipt-abstract-divider{color:#888;letter-spacing:2.2px;font-size:8px;line-height:1}.receipt-photo-frame{box-sizing:border-box;background:#fff;border:1px solid #333;flex-direction:column;gap:6px;padding:6px;display:flex}.receipt-halftone-photo{background-color:#fff;background-image:radial-gradient(#000 20%,#0000 20%),radial-gradient(#000 20%,#0000 20%);background-position:0 0,1.5px 1.5px;background-size:3px 3px;border:1px solid #444;justify-content:center;align-items:center;height:75px;display:flex;position:relative}.photo-emoji{z-index:2;background:#fff;border:1px solid #333;border-radius:4px;padding:4px 10px;font-size:32px;line-height:1}.photo-caption{font-size:8px;font-family:var(--font-receipt);color:#333;letter-spacing:.5px;text-transform:uppercase;margin-top:2px;font-weight:700}.receipt-abstract-total{color:#222;justify-content:space-between;align-items:center;font-size:13px;font-weight:700;display:flex}.total-symbol{font-weight:700}.receipt-abstract-double-divider{border-top:1px solid #333;border-bottom:1px solid #333;width:100%;height:2px}.receipt-start-prompt{font-family:var(--font-receipt);letter-spacing:1.5px;color:#222;text-transform:uppercase;border:2px dashed #333;margin:2px 4px 6px;padding:6px 10px;font-size:12px;font-weight:700;animation:1.8s ease-in-out infinite prompt-pulse;display:block}@keyframes prompt-pulse{0%{opacity:.8;transform:scale(.97)}50%{opacity:1;border-color:#000;transform:scale(1.03)}to{opacity:.8;transform:scale(.97)}}.receipt-jagged-edge{z-index:10;background-image:linear-gradient(-135deg,#fff 4px,#0000 0),linear-gradient(135deg,#fff 4px,#0000 0);background-repeat:repeat-x;background-size:8px 8px;width:100%;height:6px;position:absolute;bottom:-6px;left:0}@keyframes attract-print-loop{0%{opacity:0;transform:translateY(-100%)}5%{opacity:1;transform:translateY(-100%)}45%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(0)}95%{opacity:1;transform:translateY(-100%)}to{opacity:0;transform:translateY(-100%)}}@keyframes receipt-tear-off{0%{opacity:1;transform:translateY(0)rotate(0)}25%{opacity:1;transform:translateY(-8px)rotate(1deg)}}.swipe-back-track{background:rgba(var(--accent-color-rgb), .06);border:1px solid rgba(var(--accent-color-rgb), .12);-webkit-user-select:none;user-select:none;touch-action:pan-x;cursor:grab;border-radius:99px;width:100%;max-width:680px;height:68px;position:relative;overflow:hidden}.swipe-back-track:active{cursor:grabbing}.swipe-back-label{font-family:var(--font-ui);color:var(--accent-color);letter-spacing:.5px;pointer-events:none;justify-content:center;align-items:center;font-size:16.5px;font-weight:700;display:flex;position:absolute;inset:0}.swipe-back-thumb{background:var(--accent-gradient);width:58px;height:58px;box-shadow:0 4px 14px rgba(var(--accent-color-rgb), .35);z-index:2;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;transition:left .1s,box-shadow .2s;display:flex;position:absolute;top:5px;left:5px}.swipe-back-thumb svg{fill:#fff;width:22px;height:22px}.swipe-back-track.swiped .swipe-back-thumb{box-shadow:0 0 20px rgba(var(--accent-color-rgb), .5)}.swipe-back-track.swiped .swipe-back-label{opacity:0}@keyframes swipe-hint-pulse{0%,to{left:5px}50%{left:18px}}.swipe-back-thumb.hint{animation:1.8s cubic-bezier(.4,0,.2,1) infinite swipe-hint-pulse}.templates-grid-wrapper{box-sizing:border-box;flex-grow:1;justify-content:center;align-items:center;width:100%;padding:20px;display:flex}.templates-paginated-viewport{touch-action:pan-y;box-sizing:border-box;flex:1;justify-content:center;align-items:center;width:100%;padding-top:16px;padding-bottom:0;display:flex;position:relative;overflow:hidden}.templates-pages-track{will-change:transform;width:100%;height:100%;transition:transform .45s cubic-bezier(.16,1,.3,1);display:flex}.template-page-slide{box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;width:100%;height:100%;padding:0 20px;display:flex}.template-pagination-controls{z-index:10;justify-content:center;align-items:center;gap:16px;margin-top:14px;margin-bottom:78px;display:flex}.template-pagination-dots{align-items:center;gap:10px;display:flex}.template-pagination-dots .dot{cursor:pointer;background:#00000026;border-radius:50%;width:12px;height:12px;transition:all .3s}.template-pagination-dots .dot.active{background:var(--accent-color,#007aff);border-radius:99px;width:28px}.template-nav-arrow{width:36px;height:36px;color:var(--text-primary);cursor:pointer;background:#0000000f;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:700;transition:all .2s;display:flex}.template-nav-arrow:hover{background:#0000001f;transform:scale(1.1)}.template-nav-arrow.hidden{opacity:0;pointer-events:none}.template-card-boarding-mockup{box-sizing:border-box;-webkit-user-select:none;user-select:none;width:310px;height:380px;font-family:var(--font-ui), "Space Grotesk", sans-serif;background:#fff;border:1px solid #0000001f;border-radius:4px;flex-direction:column;justify-content:space-between;padding:16px 14px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 16px #0000000d}.card-boarding-header{font-family:var(--font-ui), "Space Grotesk", sans-serif;letter-spacing:.5px;color:#1c1c1e;text-transform:uppercase;justify-content:flex-end;align-items:center;gap:6px;width:100%;font-size:14px;font-weight:800;display:flex}.card-boarding-header .plane-icon-svg{color:#1c1c1e;flex-shrink:0;width:18px;height:18px}.card-boarding-photo-area{box-sizing:border-box;background:#111113;border:1.5px solid #000;border-radius:4px;justify-content:center;align-items:center;width:100%;height:175px;margin:6px 0;display:flex}.boarding-photo-placeholder-inner{opacity:.85;justify-content:center;align-items:center;display:flex}.card-boarding-info-grid{width:100%;font-family:var(--font-ui), "Space Grotesk", sans-serif;justify-content:space-between;padding:2px 0;display:flex}.card-boarding-info-grid .info-col{flex-direction:column;display:flex}.card-boarding-info-grid .info-col.center{align-items:center}.card-boarding-info-grid .info-col.right{align-items:flex-end}.card-boarding-info-grid .lbl{color:#555;letter-spacing:.5px;text-transform:uppercase;font-size:9.5px;font-weight:800}.card-boarding-info-grid .val{color:#000;letter-spacing:.3px;font-size:12.5px;font-weight:900}.card-boarding-divider{border-bottom:1.5px dashed #000;width:100%;margin:6px 0}.card-boarding-route{font-family:var(--font-ui), "Space Grotesk", sans-serif;letter-spacing:2px;color:#000;box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;padding:2px 4px;font-size:30px;font-weight:900;display:flex}.card-boarding-route .route-plane{font-size:20px}.card-boarding-label{font-family:var(--font-ui), "Space Grotesk", sans-serif;text-align:center;letter-spacing:3px;color:#1c1c1e;text-transform:uppercase;margin:3px 0;font-size:11px;font-weight:900}.card-boarding-barcode-wrap{flex-direction:column;align-items:center;width:100%;margin-top:2px;display:flex}.card-boarding-barcode-wrap svg{width:100%;height:38px}.card-boarding-barcode-sub{color:#000;margin-top:2px;font-family:Courier New,monospace;font-size:10px;font-weight:700}.template-boarding-pass-container{box-sizing:border-box;flex-direction:column;width:100%;display:flex;color:#000!important;font-family:var(--font-ui), "Space Grotesk", sans-serif!important;background:#fff!important;padding:16px 12px!important}.template-boarding-pass-container .boarding-header{justify-content:flex-end!important;align-items:center!important;gap:8px!important;width:100%!important;margin-bottom:12px!important;display:flex!important}.template-boarding-pass-container .boarding-airplane-svg{color:#000!important;flex-shrink:0!important}.template-boarding-pass-container .boarding-cafe-title{font-family:var(--font-ui), "Space Grotesk", sans-serif!important;letter-spacing:.5px!important;color:#000!important;text-transform:uppercase!important;font-weight:800!important}.template-boarding-pass-container .boarding-photo-wrapper{box-sizing:border-box!important;background:#000!important;border:2px solid #000!important;border-radius:2px!important;width:100%!important;margin-bottom:14px!important;overflow:hidden!important}.template-boarding-pass-container .boarding-photo-wrapper .photo-item{object-fit:cover!important;width:100%!important;height:auto!important;display:block!important}.template-boarding-pass-container .boarding-info-row{width:100%!important;font-family:var(--font-ui), "Space Grotesk", sans-serif!important;justify-content:space-between!important;margin-bottom:10px!important;padding:0 2px!important;display:flex!important}.template-boarding-pass-container .boarding-info-col{flex-direction:column!important;display:flex!important}.template-boarding-pass-container .boarding-info-col.center{align-items:center!important}.template-boarding-pass-container .boarding-info-col.right{align-items:flex-end!important}.template-boarding-pass-container .boarding-info-label{color:#444!important;letter-spacing:.5px!important;text-transform:uppercase!important;font-size:10px!important;font-weight:800!important;font-family:var(--font-ui), "Space Grotesk", sans-serif!important;margin-bottom:2px!important}.template-boarding-pass-container .boarding-info-val{color:#000!important;letter-spacing:.3px!important;font-size:13px!important;font-weight:900!important;font-family:var(--font-ui), "Space Grotesk", sans-serif!important}.template-boarding-pass-container .boarding-dashed-divider{border-bottom:1.5px dashed #000!important;width:100%!important;margin:10px 0!important}.template-boarding-pass-container .boarding-route-section{box-sizing:border-box!important;justify-content:space-between!important;align-items:center!important;width:100%!important;padding:6px 8px!important;display:flex!important}.template-boarding-pass-container .boarding-airport-code{font-family:var(--font-ui), "Space Grotesk", sans-serif!important;letter-spacing:2px!important;color:#000!important;font-size:38px!important;font-weight:900!important}.template-boarding-pass-container .boarding-route-plane{color:#000!important}.template-boarding-pass-container .boarding-pass-title-badge{font-family:var(--font-ui), "Space Grotesk", sans-serif!important;text-align:center!important;letter-spacing:3px!important;color:#000!important;text-transform:uppercase!important;margin:8px 0!important;font-size:12px!important;font-weight:900!important}.template-boarding-pass-container .boarding-barcode-wrapper{flex-direction:column!important;align-items:center!important;width:100%!important;margin-top:8px!important;display:flex!important}.template-boarding-pass-container .boarding-barcode-wrapper svg{width:100%!important;height:60px!important}.template-boarding-pass-container .boarding-barcode-sub{color:#000!important;margin-top:6px!important;font-family:Courier New,monospace!important;font-size:11px!important;font-weight:700!important}.template-passport-stamp-container{box-sizing:border-box!important;width:100%!important;font-family:var(--font-ui), "Space Grotesk", sans-serif!important;color:#000!important;-webkit-user-select:none!important;user-select:none!important;background:#fff!important;padding:8px 12px!important}.template-passport-stamp-container .passport-photo-wrapper{aspect-ratio:1!important;box-sizing:border-box!important;background:#111113!important;border:1.5px solid #000!important;border-radius:2px!important;justify-content:center!important;align-items:center!important;width:100%!important;margin-bottom:12px!important;display:flex!important;overflow:hidden!important}.template-passport-stamp-container .passport-photo-img{object-fit:cover!important;width:100%!important;height:100%!important;display:block!important}.template-passport-stamp-container .passport-info-row{width:100%!important;font-family:var(--font-ui), "Space Grotesk", sans-serif!important;justify-content:space-between!important;padding:4px 0 8px!important;display:flex!important}.template-passport-stamp-container .passport-info-row .info-col{flex-direction:column!important;display:flex!important}.template-passport-stamp-container .passport-info-row .info-col.center{align-items:center!important}.template-passport-stamp-container .passport-info-row .info-col.right{align-items:flex-end!important}.template-passport-stamp-container .passport-info-row .info-lbl{color:#555!important;letter-spacing:.5px!important;text-transform:uppercase!important;font-size:10px!important;font-weight:700!important}.template-passport-stamp-container .passport-info-row .info-val{color:#000!important;letter-spacing:.3px!important;text-transform:uppercase!important;font-size:13px!important;font-weight:900!important}.template-passport-stamp-container .passport-dashed-divider{border-bottom:1.5px dashed #000!important;width:100%!important;margin:6px 0 14px!important}.template-passport-stamp-container .passport-stamps-wrapper{box-sizing:border-box!important;width:100%!important;min-height:220px!important;font-family:var(--font-ui), "Space Grotesk", sans-serif!important;margin-top:6px!important;position:relative!important}.template-passport-stamp-container .stamp-main-arrival{text-align:center!important;box-sizing:border-box!important;background:#fff!important;border:2.5px solid #000!important;border-radius:20px!important;margin:10px 24px!important;padding:12px 14px!important;position:relative!important}.template-passport-stamp-container .stamp-main-arrival:before{content:""!important;pointer-events:none!important;border:1px dashed #000!important;border-radius:16px!important;position:absolute!important;inset:3px!important}.template-passport-stamp-container .arrival-header-row{letter-spacing:2px!important;color:#000!important;justify-content:center!important;align-items:center!important;gap:10px!important;font-size:16px!important;font-weight:900!important;display:flex!important}.template-passport-stamp-container .arrival-year-row{letter-spacing:1px!important;color:#000!important;margin-top:2px!important;font-size:14px!important;font-weight:900!important}.template-passport-stamp-container .arrival-dots-divider{letter-spacing:1px!important;color:#000!important;white-space:nowrap!important;margin:4px 0!important;font-size:8px!important;overflow:hidden!important}.template-passport-stamp-container .arrival-cafe-brand{letter-spacing:1.5px!important;color:#000!important;margin:4px 0!important;font-size:16px!important;font-weight:900!important}.template-passport-stamp-container .arrival-serial-row{color:#333!important;justify-content:space-between!important;align-items:center!important;margin-top:4px!important;font-family:Courier New,monospace!important;font-size:8.5px!important;font-weight:700!important;display:flex!important}.template-passport-stamp-container .arrival-address-text{white-space:nowrap!important;text-overflow:ellipsis!important;max-width:170px!important;font-size:7.5px!important;overflow:hidden!important}.template-passport-stamp-container .stamp-circular-shaka{z-index:4!important;background:0 0!important;width:72px!important;height:72px!important;position:absolute!important;top:-8px!important;left:-4px!important}.template-passport-stamp-container .stamp-circular-island{z-index:4!important;background:0 0!important;width:72px!important;height:72px!important;position:absolute!important;top:10px!important;right:-4px!important}.template-passport-stamp-container .stamp-postmark-waves{opacity:.85!important;width:110px!important;height:38px!important;position:absolute!important;bottom:0!important;left:8px!important}.template-passport-stamp-container .stamp-arrived-badge{z-index:5!important;background:#fff!important;border:2.5px solid #000!important;border-radius:10px!important;padding:6px 12px!important;position:absolute!important;bottom:4px!important;right:6px!important}.template-passport-stamp-container .arrived-badge-inner{letter-spacing:1px!important;color:#000!important;align-items:center!important;gap:6px!important;font-size:13px!important;font-weight:900!important;display:flex!important}.origin-modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:9999;opacity:0;pointer-events:none;background:#000000a6;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:fixed;inset:0}.origin-modal-overlay.active{opacity:1;pointer-events:auto}.origin-modal-card{box-sizing:border-box;text-align:center;background:#fff;border-radius:24px;flex-direction:column;align-items:center;width:90%;max-width:480px;padding:32px 28px;transition:transform .35s cubic-bezier(.16,1,.3,1);display:flex;transform:scale(.9)translateY(20px);box-shadow:0 24px 60px #0000004d}.origin-modal-overlay.active .origin-modal-card{transform:scale(1)translateY(0)}.origin-modal-icon{margin-bottom:8px;font-size:42px}.origin-modal-title{font-family:var(--font-ui);color:#1c1c1e;margin:0 0 6px;font-size:22px;font-weight:800}.origin-modal-subtitle{color:#666;margin:0 0 20px;font-size:13px;line-height:1.4}.origin-presets-grid{grid-template-columns:repeat(2,1fr);gap:10px;width:100%;margin-bottom:16px;display:grid}.origin-preset-btn{font-family:var(--font-ui);color:#1c1c1e;cursor:pointer;background:#f2f2f7;border:2px solid #0000;border-radius:12px;padding:12px 14px;font-size:13.5px;font-weight:700;transition:all .2s}.origin-preset-btn:hover{background:#e5e5ea}.origin-preset-btn.active{color:#007aff;background:#007aff1a;border-color:#007aff}.origin-custom-input-group{flex-direction:column;align-items:center;width:100%;margin-bottom:16px;display:flex}.origin-custom-input-group.hidden{display:none}#origin-custom-input{text-align:center;width:160px;font-family:var(--font-ui);letter-spacing:4px;text-transform:uppercase;color:#000;background:#f8f9fa;border:2px solid #007aff;border-radius:14px;outline:none;padding:10px;font-size:28px;font-weight:900}.origin-input-hint{color:#888;margin-top:6px;font-size:11px}.origin-preview-badge{color:#fff;font-family:var(--font-ui);letter-spacing:1px;box-sizing:border-box;background:#1c1c1e;border-radius:99px;width:100%;margin-bottom:24px;padding:10px 20px;font-size:14px}.origin-preview-badge strong{color:#34c759;margin-left:4px;font-size:16px}.origin-modal-actions{gap:12px;width:100%;display:flex}.btn-cancel-origin{color:#666;cursor:pointer;background:#f2f2f7;border:none;border-radius:14px;flex:1;padding:14px;font-size:14px;font-weight:700}.btn-confirm-origin{color:#fff;letter-spacing:.5px;cursor:pointer;background:#007aff;border:none;border-radius:14px;flex:2;padding:14px;font-size:14px;font-weight:800;transition:transform .2s;box-shadow:0 8px 20px #007aff4d}.btn-confirm-origin:active{transform:scale(.97)}.templates-static-grid{box-sizing:border-box;grid-template-columns:repeat(2,clamp(300px,28vw,420px));place-content:center;align-items:center;gap:clamp(16px,2.2vh,32px) clamp(28px,4vw,64px);margin:auto;transition:all .3s;display:grid}.template-selection-item{flex-direction:column;align-items:center;transition:opacity .4s,filter .4s,transform .5s cubic-bezier(.16,1,.3,1);display:flex}.templates-static-grid.has-selection .template-selection-item:not(.selected-item){opacity:0;filter:blur(8px);pointer-events:none;transform:scale(.8)}.templates-static-grid.has-selection .template-selection-item.selected-item{z-index:10}.template-card-mockup-png-wrapper{cursor:pointer;box-sizing:border-box;background-color:#fff;border:1px solid #00000014;border-radius:0;flex-direction:column;align-items:center;width:100%;max-width:clamp(300px,28vw,420px);transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000000a,0 2px 8px #00000005}.template-card-mockup-png-wrapper:hover{transform:translateY(-6px);box-shadow:0 16px 36px #00000014}.template-card-mockup-png-wrapper:active,.template-card-mockup-png-wrapper.selected-active{filter:brightness(.95);transform:scale(.95);box-shadow:0 4px 12px #0000000f}.template-mockup-png-bg{pointer-events:none;width:100%;height:auto;display:block}.template-card-logo-overlay{pointer-events:none;background-color:#fff;justify-content:center;align-items:center;height:14%;display:flex;position:absolute;top:5%;left:7%;right:7%}.template-card-logo-overlay.boarding-pass-logo-overlay{pointer-events:none;z-index:5;box-sizing:border-box;justify-content:flex-end;align-items:center;gap:4px;width:62%;height:5.2%;padding:0 4px;display:flex;position:absolute;top:1.2%;left:auto;right:3.5%;background:#fff!important}.template-card-logo-overlay.boarding-pass-logo-overlay:before{content:"✈";color:#000;margin-right:2px;font-size:13px;font-weight:900}.template-card-logo-overlay.boarding-pass-logo-overlay .overlay-cafe-name{font-family:var(--font-ui), "Space Grotesk", sans-serif;color:#000;text-transform:uppercase;font-size:12.5px;font-weight:800}.template-card-logo-overlay.boarding-pass-logo-overlay .overlay-cafe-logo{max-width:110px;max-height:26px}.overlay-cafe-logo{object-fit:contain;pointer-events:none;max-width:150px;max-height:48px;display:block}.overlay-cafe-name{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:1px;color:#000;text-align:center;font-size:15px;font-weight:700}.template-mockup-name{font-family:var(--font-ui);text-transform:none;color:var(--text-primary);text-align:center;margin-top:14px;font-size:16px;font-weight:600}.template-card-mockup .template-footer{font-family:var(--font-ui);color:#000;margin-top:0;padding-top:0;font-size:9px;font-weight:500;border-top:none!important}.template-card-mockup .template-footer-location{font-family:var(--font-ui);text-transform:none;color:#000;font-weight:500}.template-card-mockup .template-footer-date{font-family:var(--font-ui);color:#000;font-weight:500}@media (width<=767px){.templates-static-grid{grid-template-columns:repeat(2,1fr);justify-content:center;gap:16px 20px;width:100%;max-width:520px}.template-card-mockup-png-wrapper{width:100%;max-width:240px}.overlay-cafe-name{font-size:11px}}.capture-screen-content{flex-direction:column;height:100%;display:flex}.camera-viewport-container{box-shadow:var(--ios-shadow-soft);background:#000;border:4px solid #fff;border-radius:24px;flex-grow:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.webcam-feed{object-fit:cover;width:100%;height:100%}.webcam-feed.mirror{transform:scaleX(-1)}.camera-frame-guide{pointer-events:none;z-index:5;border:1px dashed #fff6;border-radius:16px;position:absolute;inset:10%}.camera-frame-guide:before{content:"FOCUS GUIDE";color:#fff;letter-spacing:2px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;border:1px solid #ffffff40;border-radius:99px;padding:4px 14px;font-size:10px;font-weight:600;position:absolute;top:-24px;left:50%;transform:translate(-50%)}.countdown-overlay{z-index:20;-webkit-backdrop-filter:blur(16px);background:#00000073;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.countdown-ring{pointer-events:none;border:4px solid #fffc;border-radius:50%;width:250px;height:250px;animation:1s cubic-bezier(.16,1,.3,1) forwards ring-expand;position:absolute;box-shadow:0 0 20px #ffffff4d,inset 0 0 20px #ffffff4d}@keyframes ring-expand{0%{opacity:1;border-width:8px;transform:scale(.6)}to{opacity:0;border-width:1px;transform:scale(2.5)}}#countdown-text{font-family:var(--font-vintage);color:#fff;text-shadow:0 8px 32px #00000080;z-index:2;font-size:160px;font-weight:800}.scale-pulse{animation:1s ease-out forwards num-pulse}@keyframes num-pulse{0%{opacity:.2;transform:scale(.7)}30%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.shutter-flash{z-index:30;opacity:0;pointer-events:none;background:#fff;position:absolute;inset:0}.shutter-flash.active{animation:.4s ease-out forwards flash-animation}@keyframes flash-animation{0%{opacity:1}to{opacity:0}}.capture-controls{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;margin-top:20px;display:flex}.shutter-button{cursor:pointer;background:#fff;border:6px solid #0000001a;border-radius:50%;outline:none;justify-content:center;align-items:center;width:80px;height:80px;margin:10px 0;padding:0;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 0 0 4px #fff,0 8px 24px #00000026}.shutter-button:hover:not(:disabled){transform:scale(1.04)}.shutter-button:active:not(:disabled){background:#f4f4f6;transform:scale(.92)}.shutter-button:disabled{opacity:.3;cursor:not-allowed;background:#d1d1d6;border-color:#0000000d;transform:none;box-shadow:0 0 0 4px #d1d1d6}.shutter-inner-ring{pointer-events:none;border:2px solid #00000014;border-radius:50%;transition:all .2s;position:absolute;inset:4px}.shutter-icon{color:#1c1c1e;z-index:2;font-size:24px;line-height:1;transition:transform .2s;display:inline-block}.shutter-button:hover:not(:disabled) .shutter-icon{transform:scale(1.1)}.camera-status-tag{color:var(--text-secondary);letter-spacing:-.1px;background:#0000000d;border:1px solid #0000000a;border-radius:99px;padding:6px 16px;font-size:12px;font-weight:500}.sequence-progress{gap:12px;margin-bottom:5px;display:flex}.seq-dot{width:32px;height:32px;color:var(--text-secondary);background:#00000008;border:1.5px solid #00000026;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.seq-dot.active{border-color:var(--accent-color);color:var(--accent-color);background:#007aff14;transform:scale(1.1);box-shadow:0 4px 10px #007aff26}.seq-dot.captured{color:#fff;background:#34c759;border-color:#34c759;box-shadow:0 4px 10px #34c75933}.hidden{display:none!important}.preview-screen-content{flex-direction:column;height:100%;display:flex}.preview-layout-container{background:#000;border:1px solid #ffffff26;flex-grow:1;justify-content:center;padding:20px;display:flex;position:relative;overflow:hidden}.thermal-paper-scroll-wrapper{scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;width:100%;max-width:380px;height:100%;padding-bottom:20px;overflow-y:auto}.thermal-paper-scroll-wrapper::-webkit-scrollbar{width:4px}.thermal-paper-scroll-wrapper::-webkit-scrollbar-thumb{background:#fff3}.thermal-paper{background-color:var(--receipt-bg);color:var(--receipt-text);font-family:var(--font-receipt);border:1px solid #000;width:100%;padding:30px 10px;position:relative}.thermal-paper:before,.receipt-footer-tear{content:"";z-index:10;background-size:16px 10px;height:10px;position:absolute;left:0;right:0}.thermal-paper:before{background-image:linear-gradient(135deg,#000 25%,#0000 25%),linear-gradient(225deg,#000 25%,#0000 25%);top:-5px}.receipt-footer-tear{background-image:linear-gradient(45deg,#000 25%,#0000 25%),linear-gradient(-45deg,#000 25%,#0000 25%);bottom:-5px}.dither-loader{color:#111;flex-direction:column;justify-content:center;align-items:center;height:250px;display:flex}.spinner{border:3px solid #0000001a;border-left-color:#000;border-radius:50%;width:36px;height:36px;margin-bottom:15px;animation:1s linear infinite spin}.spinner-accent{border:3px solid #ffffff26;border-left-color:#fff}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-text{letter-spacing:1.5px;font-size:11px;font-weight:700}.preview-actions-bar{flex-shrink:0;gap:15px;margin-top:20px;display:flex}.btn-half{flex:1}.receipt-content-target{font-size:12px;line-height:1.5}.receipt-header{text-align:center;margin-bottom:15px}.receipt-title{font-family:var(--font-receipt);text-transform:uppercase;font-size:18px;font-weight:700}.receipt-subtitle{margin-top:2px;font-size:11px}.receipt-divider{text-align:center;letter-spacing:-.5px;margin:10px 0;font-weight:700}.receipt-info-block{margin-bottom:12px;font-size:11px}.info-row{justify-content:space-between;display:flex}.receipt-itemized-header{justify-content:space-between;font-size:11px;font-weight:700;display:flex}.receipt-item-row{justify-content:space-between;margin:4px 0;display:flex}.receipt-photo-container{border:1px dashed var(--receipt-text);text-align:center;background:#fff;margin:15px 0;padding:6px}.receipt-photo{width:100%;height:auto;image-rendering:pixelated;display:block}.receipt-photo-caption{margin-top:6px;font-size:9px;font-weight:700}.receipt-total-block{font-size:12px}.total-row{justify-content:space-between;margin:2px 0;display:flex}.total-row.bold{margin-top:4px;font-size:14px;font-weight:700}.receipt-nutrition{font-size:11px}.nutrition-title{text-align:center;margin-bottom:6px;font-weight:700}.nutrition-row{justify-content:space-between;margin:2px 0;display:flex}.receipt-message{text-align:center;padding:10px 5px;font-size:11px;font-style:italic}.receipt-barcode{flex-direction:column;align-items:center;margin-top:15px;display:flex}.barcode-lines{background:repeating-linear-gradient(90deg,#000,#000 2px,#0000 2px 5px,#000 5px 6px,#0000 6px 8px);width:160px;height:35px}.barcode-text{letter-spacing:2px;margin-top:4px;font-size:9px}.receipt-qr-block{flex-direction:column;align-items:center;padding:10px 0;display:flex}.qr-info-text{margin-bottom:6px;font-size:10px;font-weight:700}.receipt-qr-image{width:110px;height:110px;display:block}.qr-web-link{letter-spacing:1px;margin-top:4px;font-size:9px}.receipt-fortune-wrapper{text-align:center;box-sizing:border-box;width:100%;display:none}.receipt-fortune-block{flex-direction:column;align-items:center;margin:10px 0;display:flex}.fortune-title{letter-spacing:1px;margin-bottom:4px;font-size:16px;font-weight:700}.fortune-text{padding:0 4px;font-size:16px;font-weight:700;line-height:1.45}.filmstrip-container{background:#000;flex-direction:column;gap:10px;margin:15px 0;padding:15px 5px;display:flex}.filmstrip-frame{justify-content:space-between;align-items:center;width:100%;display:flex}.sprockets-left,.sprockets-right{flex-direction:column;justify-content:space-around;height:200px;display:flex}.sprocket{background:var(--receipt-bg);border-radius:0;width:8px;height:12px}.filmstrip-image-container{background:#000;border:1px solid #111;width:82%}.filmstrip-photo{width:100%;height:auto;image-rendering:pixelated;display:block}.filmstrip-cell-divider{color:#fff;text-align:center;letter-spacing:3px;margin:2px 0;font-size:8px}.hearts-border{letter-spacing:2.2px;white-space:nowrap;font-size:12px;overflow:hidden}.date-photo-container{position:relative}.heart-corner{color:#000;font-size:16px;position:absolute}.heart-corner.top-left{top:10px;left:10px}.heart-corner.top-right{top:10px;right:10px}.heart-corner.bottom-left{bottom:10px;left:10px}.heart-corner.bottom-right{bottom:10px;right:10px}.receipt-chemistry{font-size:13px}.chem-title{text-align:center;margin-bottom:5px;font-weight:700}.chem-row{justify-content:space-between;margin:2px 0;display:flex}.journal-quote{text-align:center;font-size:13px}.quote-text{margin-top:4px}.journal-lines-container{padding:10px 0}.journal-lines-header{margin-bottom:5px;font-size:12px;font-weight:700}.journal-dot-line{letter-spacing:1px;color:#999;margin:8px 0}.seasonal-border{letter-spacing:1.5px;white-space:nowrap;font-size:13px;overflow:hidden}.coupon-block{text-align:center;border:1px dashed #000;margin:15px 0;padding:10px}.coupon-title{font-size:14px;font-weight:700}.coupon-desc{margin:4px 0;font-size:12px}.coupon-discount{letter-spacing:1px;margin:6px 0;font-size:18px;font-weight:700}.coupon-fineprint{color:#555;font-size:10px}.printing-screen-content{flex-direction:column;justify-content:space-between;align-items:center;height:100%;padding:40px 0;display:flex}.printing-status-container{text-align:center;flex-direction:column;align-items:center;gap:15px;display:flex}.printing-headline{font-family:var(--font-vintage);color:var(--text-primary);letter-spacing:2px;font-size:24px;font-weight:400}.printing-subline{color:var(--text-secondary);font-size:13px}.virtual-printer-box{flex-direction:column;justify-content:flex-start;align-items:center;width:340px;height:380px;margin:auto 0;display:flex;position:relative}.printer-body{background:var(--bg-tertiary);z-index:20;border:1px solid #fff3;border-radius:20px;width:100%;height:120px;position:relative}.printer-status-led{background:#34c759;border-radius:50%;width:10px;height:10px;animation:1.5s ease-in-out infinite alternate led-pulse;position:absolute;top:14px;right:20px;box-shadow:0 0 10px #34c759}@keyframes led-pulse{0%{opacity:.5;box-shadow:0 0 4px #34c759}to{opacity:1;box-shadow:0 0 12px #34c759}}.printer-slot-opening{background:#000;border-bottom:1px solid #fff3;height:10px;position:absolute;top:40px;left:30px;right:30px}.printed-paper-delivery{z-index:10;pointer-events:none;height:280px;position:absolute;top:45px;left:45px;right:45px;overflow:hidden}.printed-paper-animation{background:#fff;border:1px solid #000;width:100%;padding:20px 15px;animation:3s cubic-bezier(.1,.8,.25,1) forwards receipt-eject;transform:translateY(-100%)}@keyframes receipt-eject{0%{transform:translateY(-100%)}to{transform:translateY(0%)}}.printing-footer-hint{text-align:center;color:var(--text-secondary);font-size:12px}.printing-footer-hint-group{flex-direction:column;align-items:center;gap:15px;width:100%;display:flex}.printing-proceed-container{justify-content:center;width:100%;animation:.4s ease-out fadeIn;display:flex}.printing-proceed-container.hidden{display:none!important}.finished-screen-content{flex-direction:column;justify-content:space-between;align-items:center;height:100%;padding:30px 0;display:flex}.success-banner{text-align:center}.success-icon{color:#fff;background:#34c759;border:none;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:15px;font-size:32px;display:inline-flex;box-shadow:0 8px 24px #34c75959}.finished-title{font-family:var(--font-vintage);color:var(--text-primary);letter-spacing:-.5px;font-size:26px;font-weight:700}.finished-subtitle{color:var(--text-secondary);margin-top:4px;font-size:14px}.finished-download-card{text-align:center;width:100%;max-width:440px;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;border-radius:0;padding:0}.download-label{color:var(--text-primary);letter-spacing:-.1px;font-size:13px;font-weight:600}.finished-qr-container{background:#fff;border:1px solid #0000000d;border-radius:16px;justify-content:center;align-items:center;width:164px;height:164px;margin:18px auto;padding:12px;display:flex;box-shadow:0 4px 12px #00000008}.finished-qr-image{width:140px;height:140px}.btn-download-png{width:100%;color:var(--accent-color);cursor:pointer;letter-spacing:-.1px;text-transform:none;background:#007aff14;border:none;border-radius:99px;margin-bottom:15px;padding:12px 20px;font-size:13px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-download-png:hover:not(:disabled){background:#007aff1f;transform:translateY(-1px)}.btn-download-png:active:not(:disabled){transform:scale(.96)}.btn-download-png:disabled{opacity:.4;color:var(--text-secondary);cursor:not-allowed;background:#0000000d}.cafe-tag{color:var(--text-secondary);font-size:12.5px;line-height:1.5}.cafe-tag strong{color:var(--text-primary)}.finished-controls{gap:15px;width:100%;max-width:400px;padding:0 20px;display:flex}.finished-controls button{flex:1}.auto-reset-indicator{color:var(--text-secondary);letter-spacing:-.1px;font-size:12px;font-weight:500}#print-container{display:none}@media print{@page{size:58mm auto;margin:0}html,body{color:#000!important;background:#fff!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important}body>:not(#print-container){display:none!important}#print-container{box-sizing:border-box;max-width:100%;font-family:Courier Prime,Courier,monospace;font-size:9.5pt;color:#000!important;background:#fff!important;width:100%!important;margin:0!important;padding:2mm 1.5mm!important;display:block!important}#print-container *{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#000!important;opacity:1!important;text-shadow:none!important}.fortune-text{font-size:17px!important;font-style:normal!important;font-weight:700!important;line-height:1.45!important}.fortune-title{font-size:16px!important;font-weight:800!important}.template-footer{font-size:15px!important;font-weight:700!important}.comfort-card-title{font-size:22px!important;font-weight:800!important}.comfort-card-text{font-size:21px!important;font-style:normal!important;font-weight:700!important;line-height:1.55!important}.comfort-card-svg{width:90px!important;height:90px!important}.receipt-info-block,.receipt-itemized-header,.receipt-item-row{font-size:12px!important;font-weight:700!important}#print-container .qr-divider,#print-container .receipt-qr-block{display:none!important}.receipt-photo-container{background:#fff!important;border:1px dashed #000!important}.receipt-photo,.filmstrip-photo,.polaroid-image,.postcard-image,.collage-image{width:100%!important;height:auto!important;display:block!important}.filmstrip-container{color:#fff!important;background:#000!important;padding:15px 5px!important}.sprocket{background:#fff!important}.barcode-lines{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:repeating-linear-gradient(90deg,#000,#000 2px,#0000 2px 5px)!important}.polaroid-wrapper{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff!important;border:1px solid #000!important}.collage-grid-container{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#000!important}.collage-cell{background:#fff!important}.postcard-postmark,.postcard-postage-stamp{border-color:#000!important}.collage-receipt-container{color:#000!important;background:#fff!important;flex-direction:column!important;align-items:center!important;width:100%!important;margin:0!important;padding:0!important;display:flex!important}.template-header{justify-content:center!important;width:100%!important;margin-bottom:12px!important;display:flex!important}.template-header-logo{object-fit:contain!important;max-width:220px!important;max-height:80px!important;margin:0 auto!important;display:block!important}.template-header-name{text-transform:uppercase!important;text-align:center!important;font-family:Playfair Display,Georgia,serif!important;font-size:24px!important;font-weight:700!important}.template-photo-grid-1,.template-photo-grid-3,.template-photo-grid-4,.template-photo-grid-6{width:100%!important;margin-bottom:10px!important}.template-photo-grid-1{justify-content:center!important;display:flex!important}.template-photo-grid-3{flex-direction:column!important;gap:6px!important;display:flex!important}.template-photo-grid-4,.template-photo-grid-6{grid-template-columns:repeat(2,1fr)!important;gap:6px!important;display:grid!important}.photo-item{object-fit:cover!important;border:1px solid #000!important;width:100%!important;display:block!important}.template-footer{justify-content:space-between!important;align-items:center!important;width:100%!important;margin-top:12px!important;font-family:Courier Prime,Courier New,Courier,monospace!important;font-size:15px!important;font-weight:700!important;display:flex!important}.template-footer-location{text-align:left!important;white-space:nowrap!important;text-overflow:ellipsis!important;text-transform:uppercase!important;max-width:60%!important;overflow:hidden!important}.template-footer-date{text-align:right!important;max-width:40%!important}#print-container .receipt-fortune-wrapper{display:block!important}}.polaroid-wrapper{background:#fff;border:1px solid #000;margin:15px 0;padding:12px 12px 24px;box-shadow:0 4px 10px #00000026}.polaroid-frame-container{background:#000;width:100%}.polaroid-image{width:100%;height:auto;display:block}.polaroid-handwritten-caption{font-family:var(--font-script);color:#000;text-align:center;text-transform:none;background:#fff;margin-top:12px;font-size:26px;line-height:1.1}.postcard-stamp-row{justify-content:space-between;align-items:center;margin:10px 0 20px;display:flex}.postcard-postmark{text-align:center;text-transform:uppercase;border:3px double #000;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:76px;height:76px;padding:5px;font-size:8px;line-height:1.2;display:flex}.postmark-text{font-weight:700}.postmark-date,.postmark-loc{font-size:7px}.postcard-postage-stamp{border:1px dashed #000;flex-direction:column;justify-content:center;align-items:center;width:48px;height:58px;padding:4px;display:flex}.postage-emoji{font-size:18px}.postage-value{margin-top:2px;font-size:8px;font-weight:700}.postcard-body-container{justify-content:space-between;height:190px;margin:15px 0;display:flex}.postcard-left-pane{flex-direction:column;justify-content:space-between;width:48%;display:flex}.postcard-photo-frame{background:#fff;border:1px solid #000;padding:3px}.postcard-image{width:100%;display:block}.postcard-caption{text-align:center;letter-spacing:2px;margin-top:5px;font-size:8px;font-weight:700}.postcard-center-divider{border-left:1px dashed #000;width:1px;height:100%}.postcard-right-pane{flex-direction:column;justify-content:center;gap:15px;width:44%;display:flex}.postcard-address-title{letter-spacing:2px;text-align:center;font-size:8px;font-weight:700}.postcard-address-line{border-bottom:1px dotted #888;padding-bottom:2px;font-size:10px}.collage-grid-container{background:#000;flex-direction:column;gap:8px;margin:15px 0;padding:8px;display:flex}.collage-grid-row{gap:8px;display:flex}.collage-cell{background:#fff;border:1px solid #111;flex:1;position:relative}.collage-image{width:100%;height:auto;display:block}.collage-cell-num{color:#fff;font-size:8px;font-family:var(--font-receipt);background:#000000b3;padding:1px 4px;position:absolute;bottom:4px;right:4px}.thermal-paper.slide-down-exit{animation:.8s cubic-bezier(.47,0,.745,.715) forwards paper-drop-down!important}@keyframes paper-drop-down{0%{transform:translateY(0)}to{transform:translateY(120%)}}.minimal-qr-block{background:0 0;justify-content:center;align-items:center;padding:15px 0 5px;display:flex}.minimal-qr-image{background:#fff;border:1px solid #000;margin:0 auto;padding:2px;width:76px!important;height:76px!important;display:block!important}.admin-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(25px);box-sizing:border-box;background:#0000004d;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-modal-content{width:100%;max-width:860px;height:85vh;min-height:520px;color:var(--text-primary);background:#fffffff0;border:1px solid #ffffff80;border-radius:24px;flex-direction:column;animation:.35s cubic-bezier(.16,1,.3,1) forwards adminModalFadeIn;display:flex;overflow:hidden;box-shadow:0 20px 50px #0000001f,0 5px 15px #0000000a}@keyframes adminModalFadeIn{0%{opacity:0;transform:scale(.95)translateY(15px)}to{opacity:1;transform:scale(1)translateY(0)}}.admin-modal-header{z-index:10;background:0 0;border-bottom:1px solid #0000000f;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.admin-modal-title{font-family:var(--font-ui);letter-spacing:-.3px;color:var(--text-primary);font-size:20px;font-weight:700}.admin-close-x{color:var(--text-primary);cursor:pointer;background:#0000000d;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:22px;transition:all .2s;display:flex}.admin-close-x:hover{background:#0000001a}.admin-modal-body{flex-direction:column;flex-grow:1;display:flex;overflow:hidden}.admin-form-split{flex-direction:row;width:100%;height:100%;display:flex;overflow:hidden}.admin-sidebar{background:#00000005;border-right:1px solid #0000000f;flex-direction:column;flex-shrink:0;gap:4px;width:230px;padding:16px 10px;display:flex;overflow-y:auto}.admin-tab-btn{color:#666;font-family:var(--font-ui);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:13.5px;font-weight:500;transition:all .2s;display:flex}.admin-tab-btn:hover{color:var(--text-primary);background:#0000000a}.admin-tab-btn.active{color:var(--accent-color);background:#fff;font-weight:600;box-shadow:0 2px 8px #0000000a,0 1px 2px #00000005}.admin-form-pane{background:#fff;flex-direction:column;flex-grow:1;height:100%;display:flex;overflow:hidden}.admin-form-scrollable{flex-direction:column;flex-grow:1;gap:20px;padding:24px 32px;display:flex;overflow-y:auto}.admin-tab-content{flex-direction:column;gap:20px;animation:.25s forwards adminTabFadeIn;display:flex}@keyframes adminTabFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.admin-tab-content.hidden{display:none!important}.admin-tab-section-title{font-family:var(--font-ui);letter-spacing:-.2px;color:var(--text-primary);border-bottom:1px solid #0000000f;margin-bottom:8px;padding-bottom:10px;font-size:18px;font-weight:700}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-primary);font-size:12.5px;font-weight:600}.form-group input[type=text],.form-group input[type=password],.form-group textarea,.form-group select{color:var(--text-primary);font-family:var(--font-ui);background:#0000000a;border:1px solid #00000005;border-radius:10px;outline:none;width:100%;padding:11px 14px;font-size:14px;transition:all .2s}.form-group input[type=text]:focus,.form-group input[type=password]:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent-color);background:#fff;box-shadow:0 0 0 3px #007aff26}.form-group input[type=text]::placeholder,.form-group input[type=password]::placeholder,.form-group textarea::placeholder{color:#a0a0a5}.form-group #input-admin-pin{letter-spacing:2px;font-family:var(--font-receipt)!important}.form-row{gap:16px;display:flex}.half-width{flex:1}.inline-checkbox-group{align-items:center;gap:12px;padding:8px 0;display:flex}.inline-checkbox-group input[type=checkbox]{appearance:none;cursor:pointer;background:#78788014;border:1px solid #78788033;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:inline-flex;position:relative}.inline-checkbox-group input[type=checkbox]:checked{background:#34c759;border-color:#0000}.inline-checkbox-group input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:15px;font-weight:700}.inline-checkbox-group label{cursor:pointer;margin:0;font-weight:500;text-transform:none!important;letter-spacing:-.1px!important;color:var(--text-primary)!important;font-size:13.5px!important}.color-picker-wrapper{align-items:center;gap:12px;display:flex}.color-picker-wrapper input[type=color]{appearance:none;cursor:pointer;background:0 0;border:1px solid #00000014;border-radius:50%;width:44px;height:44px;padding:0;transition:all .2s;overflow:hidden}.color-picker-wrapper input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-picker-wrapper input[type=color]::-webkit-color-swatch{border:none}.color-picker-wrapper input[type=color]:hover{transform:scale(1.05)}.file-uploader-box{width:100%;position:relative}.file-input-hidden{display:none!important}.file-uploader-label{cursor:pointer;text-transform:none;letter-spacing:-.1px;color:var(--accent-color);text-align:center;background:#007aff08;border:1px dashed #007aff4d;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:20px 16px;font-size:12px;font-weight:600;transition:all .2s;display:flex!important}.file-uploader-label:hover{border-color:var(--accent-color);background:#007aff14}.uploader-preview-img{text-align:center;background:#fff;border:1px solid #0000000f;border-radius:8px;margin-top:12px;padding:8px;display:inline-block;box-shadow:0 4px 10px #0000000a}.uploader-preview-img img,.uploader-preview-img video{object-fit:contain;max-width:100%;max-height:80px;display:block}.btn-remove-media{color:#fff;cursor:pointer;background:#ff3b30;border:none;border-radius:6px;margin-top:8px;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:600;transition:background-color .2s,transform .1s;display:inline-block}.btn-remove-media:hover{background:#e02d22}.btn-remove-media:active{transform:scale(.95)}.offline-sync-card{background:#00000005;border:1px solid #0000000d;border-radius:12px;flex-direction:column;gap:12px;margin-bottom:10px;padding:16px;display:flex}.offline-sync-header{color:var(--text-primary);font-size:12px;font-weight:600}.offline-sync-row{justify-content:space-between;align-items:center;display:flex}.offline-sync-count{font-family:var(--font-receipt);color:#000;font-size:13px;font-weight:700}.form-actions{background:0 0;border-top:1px solid #0000000f;flex-shrink:0;justify-content:flex-end;gap:12px;margin-top:0;padding:14px 30px;display:flex}.btn-admin{font-size:13px;font-family:var(--font-ui);text-transform:none;letter-spacing:-.1px;cursor:pointer;border:none;border-radius:99px;justify-content:center;align-items:center;min-width:110px;padding:12px 24px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-admin-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--ios-shadow-button)}.btn-admin-primary:hover{transform:translateY(-1px)}.btn-admin-primary:active{transform:scale(.96)}.btn-admin-primary:disabled{color:#aeaeb2;cursor:not-allowed;background:#d1d1d6}.btn-admin-secondary{color:var(--accent-color);background:#78788014}.btn-admin-secondary:hover{background:#78788029}.btn-admin-secondary:active{transform:scale(.96)}.btn-admin-danger{color:#ff3b30;background:#ff3b3014}.btn-admin-danger:hover{background:#ff3b3026}.btn-admin-danger:active{transform:scale(.96)}.btn-admin-warning{color:#ff9500;background:#ff950014}.btn-admin-warning:hover{background:#ff950026}.btn-admin-warning:active{transform:scale(.96)}@media (width<=767px){.admin-modal-content{max-width:95%;height:90vh}.admin-form-split{flex-direction:column}.admin-sidebar{white-space:nowrap;scrollbar-width:none;border-bottom:1px solid #000;border-right:none;flex-direction:row;width:100%;height:auto;overflow-x:auto}.admin-sidebar::-webkit-scrollbar{display:none}.admin-tab-btn{border-bottom:none;border-right:1px solid #00000014;padding:12px 16px;display:inline-flex}.admin-tab-btn.active:after{width:auto;height:3px;inset:auto 0 0}.admin-form-scrollable{padding:16px 20px}.form-actions{flex-wrap:wrap;gap:8px;padding:12px 20px}.btn-admin{flex:45%;padding:10px 12px}}.logo-image-wrapper{justify-content:center;align-items:center;width:100%;padding:10px 0;display:flex}.attract-cafe-logo{object-fit:contain;max-width:100%;max-height:180px;margin:0 auto;display:block}.idle-footer{color:var(--text-home-secondary);text-transform:uppercase;letter-spacing:2px;opacity:.6;text-align:center;pointer-events:none;font-family:SF Pro,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px;position:absolute;bottom:24px}.collage-receipt-container{box-sizing:border-box;flex-direction:column;align-items:center;width:100%;padding:6px 0;display:flex}.template-header{text-align:center;flex-direction:column;align-items:center;gap:8px;width:100%;margin-bottom:8px;display:flex}.template-header-logo{object-fit:contain;max-width:220px;max-height:80px;display:block}.template-header-name{font-family:var(--font-vintage);letter-spacing:.5px;text-transform:uppercase;color:#000;font-size:24px;font-weight:700;line-height:1.2}.template-photo-grid-1{justify-content:center;width:100%;margin-bottom:10px;display:flex}.template-photo-grid-1 .photo-item{aspect-ratio:1;object-fit:cover;width:100%;image-rendering:pixelated;border:1px solid #000}.template-photo-grid-4{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);gap:6px;width:100%;margin-bottom:10px;display:grid}.template-photo-grid-4 .photo-item{aspect-ratio:1;object-fit:cover;width:100%;image-rendering:pixelated;border:1px solid #000}.template-photo-grid-3{flex-direction:column;gap:6px;width:100%;margin-bottom:10px;display:flex}.template-photo-grid-3 .photo-item{aspect-ratio:1.5;object-fit:cover;width:100%;image-rendering:pixelated;border:1px solid #000}.template-photo-grid-6{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(2,1fr);gap:6px;width:100%;margin-bottom:10px;display:grid}.template-photo-grid-6 .photo-item{aspect-ratio:1.5;object-fit:cover;width:100%;image-rendering:pixelated;border:1px solid #000}.photo-placeholder{color:#888;font-family:var(--font-receipt);background:#f0f0f0;justify-content:center;align-items:center;font-size:11px;display:flex}.receipt-dashed-line{border-top:1.5px dashed #000;width:100%;margin:6px 0}.template-footer{width:100%;font-family:var(--font-receipt), "Courier New", monospace;color:#000;flex-direction:column;align-items:center;margin-top:8px;display:flex}.receipt-meta-row{box-sizing:border-box;justify-content:space-between;align-items:flex-start;width:100%;padding:4px 0;display:flex}.receipt-meta-col{flex-direction:column;gap:2px;display:flex}.receipt-meta-col.left{text-align:left}.receipt-meta-col.right{text-align:right}.receipt-meta-col .meta-label{letter-spacing:1px;color:#444;text-transform:uppercase;font-size:9.5px;font-weight:700;font-family:var(--font-receipt), "Courier New", monospace}.receipt-meta-col .meta-val{letter-spacing:.5px;color:#000;text-transform:uppercase;font-size:11.5px;font-weight:800;font-family:var(--font-receipt), "Courier New", monospace}.receipt-barcode-section{flex-direction:column;align-items:center;gap:4px;width:100%;margin-top:6px;display:flex}.receipt-barcode-brand-name{font-family:var(--font-receipt), "Courier New", monospace;letter-spacing:2.5px;text-transform:uppercase;color:#000;text-align:center;font-size:12px;font-weight:800}.theme-selector-container{box-sizing:border-box;flex-direction:column;gap:8px;width:100%;max-width:400px;margin:12px auto 0;display:flex}.theme-selector-label{font-family:var(--font-ui);letter-spacing:1.5px;color:var(--text-primary);text-transform:uppercase;font-size:11px;font-weight:700}.theme-options-list{scrollbar-width:none;gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.theme-options-list::-webkit-scrollbar{display:none}.theme-option-item{color:var(--text-primary);font-family:var(--font-ui);cursor:pointer;letter-spacing:-.1px;background:#0000000d;border:1px solid #00000005;border-radius:99px;flex:none;align-items:center;gap:8px;padding:8px 18px;font-size:13px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.theme-option-item:hover{background:#00000014;transform:translateY(-1px)}.theme-option-item:active{transform:scale(.96)}.theme-option-item.active{background:var(--accent-gradient);color:#fff;box-shadow:var(--ios-shadow-button);border-color:#0000}.theme-option-indicator{background:0 0;border:1.5px solid #00000026;border-radius:50%;width:8px;height:8px;transition:all .2s;display:inline-block}.theme-option-item.active .theme-option-indicator{background:#fff;border-color:#fff}.preview-options-panel{background:var(--ios-glass-bg);width:100%;max-width:420px;-webkit-backdrop-filter:var(--ios-glass-blur);border:1px solid var(--ios-glass-border);box-shadow:var(--ios-glass-shadow);box-sizing:border-box;border-radius:20px;justify-content:space-between;align-items:center;gap:20px;margin:20px auto 10px;padding:16px 24px;display:flex}.option-control-group{align-items:center;gap:12px;display:flex}.option-label{font-family:var(--font-ui);letter-spacing:-.1px;color:var(--text-primary);font-size:13px;font-weight:600}.quantity-selector{background:#0000000a;border:1px solid #00000014;border-radius:99px;align-items:center;height:36px;padding:2px;display:flex;overflow:hidden}.btn-qty{cursor:pointer;width:32px;height:100%;color:var(--accent-color);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:500;transition:all .2s;display:flex}.btn-qty:hover{background:#0000000d}.btn-qty:active{transform:scale(.85)}.qty-val{font-family:var(--font-ui);text-align:center;width:28px;color:var(--text-primary);font-size:14px;font-weight:700}.toggle-switch{width:51px;height:31px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:#78788029;border-radius:99px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:25px;height:25px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;bottom:3px;left:3px;box-shadow:0 3px 8px #00000026,0 1px 1px #00000029}input:checked+.toggle-slider{background-color:#34c759}input:checked+.toggle-slider:before{transform:translate(20px)}.receipt-mirrored .photo-item{transform:scaleX(-1)}@media (width<=767px){.view-panel{padding:calc(env(safe-area-inset-top,0px) + 16px) 16px calc(env(safe-area-inset-bottom,0px) + 16px) 16px}.screen-header{margin-bottom:12px;padding-bottom:10px}.view-title{letter-spacing:1px;font-size:20px}.view-subtitle{font-size:10px}.btn-back{padding:6px 12px;font-size:10px}.template-screen-header{padding:20px 20px 10px}.btn-tmpl-back-minimal-center{padding:10px 20px;font-size:11px}.template-screen-footer{margin-top:20px;margin-bottom:15px}.mode-selection-screen{padding:8px 16px 12px}.mode-selection-screen .template-screen-header{margin-top:5px;margin-bottom:5px;padding:0 10px}.mode-selection-screen .template-screen-footer{margin-top:8px;margin-bottom:8px}.mode-options-container{flex-direction:column;flex:1;justify-content:center;gap:10px;min-height:0;max-height:calc(100vh - 150px);display:flex}.mode-option-card{border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;min-height:0;max-height:180px;padding:10px 16px;display:flex}.mode-option-icon{margin-bottom:0;font-size:32px}.mode-option-title{font-size:16px}.mode-option-desc{max-width:240px;font-size:11px;line-height:1.3}.mode-option-btn{max-width:180px;margin-top:2px;padding:6px 12px;font-size:11px}.template-choose-title{letter-spacing:.5px;font-size:18px}.script-title{margin-left:6px;font-size:32px}.templates-grid-wrapper{box-sizing:border-box;flex-grow:1;justify-content:center;align-items:center;padding:10px;display:flex}.templates-static-grid{grid-template-columns:repeat(2,1fr);gap:12px 16px;width:100%;max-width:340px;margin:0 auto}.template-card-mockup-png-wrapper{width:100%;max-width:150px;margin:0 auto}.overlay-cafe-logo{max-width:90%;max-height:90%}.overlay-cafe-name{font-size:8px}.template-mockup-name{text-align:center;margin-top:6px;font-size:12px}.preview-layout-container{padding:10px}.preview-options-panel{gap:10px;margin:8px auto 4px;padding:8px 12px}.theme-selector-container{gap:6px;margin:8px auto 0}.theme-option-item{padding:6px 12px;font-size:11px}.preview-actions-bar{padding-top:8px;padding-bottom:8px}.finished-title{font-size:20px}.finished-subtitle,.download-label{font-size:11px}.finished-download-card{padding:15px 10px}.finished-qr-image{width:120px;height:120px}.btn-download-png{padding:12px 18px;font-size:11px}}.activation-screen-content{box-sizing:border-box;flex-direction:column;justify-content:space-between;align-items:center;height:100%;padding:60px 20px;display:flex}.activation-header{text-align:center;margin-top:40px;margin-bottom:20px}.activation-header .brand-title{font-family:var(--font-vintage);letter-spacing:4px;text-transform:uppercase;color:var(--text-primary);margin:0 0 10px;font-size:38px;font-weight:400}.activation-header .brand-subtitle{color:var(--text-secondary);letter-spacing:1.5px;text-transform:uppercase;margin:0;font-size:11px}.activation-card{background:var(--bg-tertiary);border:1px solid var(--border-primary);box-sizing:border-box;text-align:center;width:100%;max-width:400px;padding:40px 30px;transition:transform .3s,box-shadow .3s;position:relative}.activation-card:hover{transform:translateY(-2px)}.activation-title{font-family:var(--font-vintage);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-primary);margin:0 0 8px;font-size:22px;font-weight:400}.activation-subtitle{color:var(--text-secondary);margin:0 0 30px;font-size:12px;line-height:1.6}.activation-form{text-align:left;flex-direction:column;gap:20px;display:flex}.activation-form .form-group{flex-direction:column;gap:8px;display:flex}.activation-form label{text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);font-size:11px;font-weight:600}.activation-input{width:100%;font-size:16px;font-family:var(--font-receipt);letter-spacing:2px;color:var(--text-primary);border:1px solid var(--border-primary);box-sizing:border-box;text-align:center;text-transform:uppercase;background:0 0;padding:16px;transition:border-color .2s}.activation-input:focus{border-color:var(--text-primary);outline:none}.activation-status-message{text-align:center;box-sizing:border-box;border-radius:0;padding:12px;font-size:12px;line-height:1.5}.status-loading{color:var(--text-secondary);border:1px dashed var(--border-primary);background:#ffffff0d}.status-success{color:#2e7d32;background:#2e7d321a;border:1px solid #2e7d32}.status-error{color:#c62828;background:#c628281a;border:1px solid #c62828}.device-info-footer{color:var(--text-secondary);letter-spacing:.5px;text-align:center;margin-bottom:20px;font-size:11px}.device-info-footer code{font-family:var(--font-receipt);background:var(--bg-tertiary);border:1px solid var(--border-primary);padding:4px 8px}.shake-error{animation:.5s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-6px)}20%,40%,60%,80%{transform:translate(6px)}}.mode-selection-screen{box-sizing:border-box;flex-direction:column;width:100%;height:100%;padding:12px 24px 24px;display:flex}.mode-selection-screen .template-screen-header{padding:0 40px 10px}.mode-selection-screen .template-screen-footer{margin-top:20px;margin-bottom:20px}.mode-options-container{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;width:100%;max-width:480px;margin:0 auto;display:flex}@media (width>=768px){.mode-options-container{flex-direction:row;align-items:stretch;gap:30px;max-width:800px}}.mode-option-card{box-sizing:border-box;background:var(--ios-glass-bg);border:1px solid var(--ios-glass-border);cursor:pointer;width:100%;-webkit-backdrop-filter:var(--ios-glass-blur);box-shadow:var(--ios-glass-shadow);text-align:center;border-radius:24px;flex-direction:column;flex:1;align-items:center;gap:12px;padding:32px 24px;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),background .3s,opacity .4s cubic-bezier(.16,1,.3,1),filter .4s cubic-bezier(.16,1,.3,1);display:flex}body:not(.dark-theme) .mode-option-card{color:var(--text-primary);background:#ffffffd9;border-color:#fff9}body:not(.dark-theme) .mode-option-card:hover{background:#fff;transform:translateY(-6px)scale(1.02);box-shadow:0 15px 35px #0000000f}.mode-option-card:hover{background:#ffffffe6;border-color:#ffffffb3;transform:translateY(-6px)scale(1.02);box-shadow:0 15px 35px #00000014}.mode-option-icon{background:#007aff14;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;margin-bottom:6px;font-size:40px;transition:all .3s;display:flex}.mode-option-badge{letter-spacing:1px;text-transform:uppercase;color:var(--accent-color);background:#007aff14;border-radius:99px;margin-bottom:4px;padding:4px 12px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:11px;font-weight:700}#mode-option-comfort .mode-option-badge{color:var(--accent-secondary);background:#5856d614}.mode-option-icon-badge{background:#ffffffe6;border:1px solid #fffc;border-radius:24px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:8px;font-size:44px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s;display:flex;box-shadow:0 8px 24px #0000000f}.mode-option-card:hover .mode-option-icon-badge{transform:scale(1.08)rotate(4deg);box-shadow:0 12px 30px #0000001a}.package-card-top{justify-content:space-between;align-items:center;width:100%;margin-bottom:12px;display:flex}.package-card-badge{letter-spacing:1px;color:var(--accent-color);background:#007aff14;border-radius:99px;padding:4px 10px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:11px;font-weight:700}.package-card-icon-badge{background:#ffffffe6;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;font-size:28px;display:flex;box-shadow:0 4px 14px #0000000d}.package-card-price-pill{color:#1c1c1e;background:#0000000a;border:1px solid #0000000a;border-radius:99px;margin-top:12px;padding:8px 18px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:22px;font-weight:800;transition:all .2s}.package-card-option:hover .package-card-price-pill{background:var(--accent-color);color:#fff;border-color:#0000}#mode-option-comfort .mode-option-icon{color:var(--accent-secondary);background:#af52de14}#mode-option-photo .mode-option-icon{color:var(--accent-color)}.mode-option-card:hover .mode-option-icon{transform:scale(1.1)rotate(5deg)}.mode-option-title{font-family:var(--font-vintage);letter-spacing:-.2px;margin:0;font-size:20px;font-weight:700}.mode-option-desc{color:var(--text-secondary);max-width:240px;margin:0 0 8px;font-size:13px;font-weight:400;line-height:1.5}.mode-option-btn{pointer-events:none;width:100%;max-width:200px;margin-top:4px}.mode-option-card.selected{z-index:10;border-color:var(--accent-color)!important;background:#fff!important;transform:scale(1.05)translateY(-4px)!important;box-shadow:0 12px 30px #007aff33!important}#mode-option-comfort.mode-option-card.selected{border-color:var(--accent-secondary)!important;box-shadow:0 12px 30px #af52de33!important}body:not(.dark-theme) .mode-option-card.selected{background:#fff!important}.mode-option-card.fade-out{opacity:.15;filter:blur(2px);pointer-events:none;transform:scale(.92)}@media (width>=768px){.mode-selection-screen .template-screen-header{padding:30px 40px 10px}.mode-selection-screen .template-screen-footer{margin-top:30px;margin-bottom:25px}.mode-options-container{flex-direction:row;align-items:stretch;gap:32px;max-width:900px}.mode-option-card{flex:1;justify-content:space-between;gap:12px;min-height:320px;padding:32px 24px}.mode-option-icon{margin-bottom:8px;font-size:56px}.mode-option-title{font-size:22px}.mode-option-desc{max-width:320px;font-size:13px}.mode-option-btn{margin-top:8px;padding:10px 16px;font-size:13px}.view-panel{padding:calc(env(safe-area-inset-top,0px) + 40px) 40px calc(env(safe-area-inset-bottom,0px) + 40px) 40px}.view-title,.template-choose-title,.screen-title,.printing-headline,.finished-title{letter-spacing:-.5px!important;font-size:38px!important}.view-subtitle,.template-choose-subtitle,.screen-subtitle,.printing-subline,.finished-subtitle{margin-top:8px!important;font-size:16px!important}.btn-back{padding:12px 22px;font-size:14px}.btn{padding:20px 36px;font-size:16px}.activation-header .brand-title{font-size:52px}.activation-header .brand-subtitle{font-size:15px}.activation-card{max-width:500px;padding:50px 40px}.activation-title{font-size:28px}.activation-subtitle{font-size:15px}.activation-input{padding:20px;font-size:22px}.attract-logo-container{max-width:480px;margin-top:40px;margin-bottom:24px}.brand-title{letter-spacing:6px;font-size:72px}.brand-subtitle{font-size:35px;font-weight:400}.attract-top-subtitle{letter-spacing:3px;margin-bottom:16px;font-size:14px}.kiosk-badge{margin-bottom:30px;padding:8px 20px;font-size:15px}.printer-attract-hardware{width:420px;height:480px}.printer-hardware-mouth{border-radius:38px;width:392px;height:76px}.printer-hardware-slot{border-radius:5px;width:294px;height:11px}.printer-paper-clipper{width:246px;height:430px;top:38px}.attract-loop-receipt{height:336px}.receipt-elegant-prompt{font-size:52px}.templates-static-grid{grid-template-columns:repeat(2,clamp(320px,30vw,440px));place-content:center;align-items:center;gap:clamp(18px,2.4vh,36px) clamp(32px,4.5vw,68px);margin:auto}.template-card-mockup-png-wrapper{width:100%;max-width:clamp(320px,30vw,440px)}.template-choose-title{font-size:38px}.script-title{margin-left:16px;font-size:68px}.seq-dot{width:40px;height:40px;font-size:16px}.sequence-progress{gap:20px;margin-bottom:12px}.shutter-button{border-width:6px;width:96px;height:96px;margin:15px 0}.shutter-icon{font-size:32px}.camera-status-tag{padding:8px 18px;font-size:14px}#countdown-text{font-size:200px}.thermal-paper-scroll-wrapper{max-width:580px}.preview-options-panel{border:2px solid var(--text-primary);box-sizing:border-box;gap:30px;width:100%;max-width:100%;padding:20px 30px}.option-label{font-size:16px}.quantity-selector{border:2px solid var(--text-primary);height:48px}.btn-qty{width:48px;font-size:24px}.qty-val{width:44px;font-size:20px}.toggle-switch{width:76px;height:38px}.toggle-slider{border:2px solid var(--text-primary)}.toggle-slider:before{background-color:var(--text-primary);border:none;width:26px;height:26px;bottom:4px;left:4px}input:checked+.toggle-slider{background-color:var(--text-primary)}input:checked+.toggle-slider:before{background-color:var(--bg-primary);transform:translate(38px)}.theme-selector-container{gap:16px;width:100%;max-width:100%}.theme-selector-label{font-size:16px}.theme-options-list{gap:16px;width:100%;display:flex}.theme-option-item{border:2px solid var(--text-primary);background:var(--bg-tertiary);color:var(--text-primary);text-transform:uppercase;letter-spacing:1.5px;flex:1;justify-content:center;align-items:center;padding:18px 24px;font-size:16px;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.theme-option-item:hover{background:#ffffff1a}.theme-option-item.active{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.theme-option-indicator{border-width:2px;width:10px;height:10px}.preview-actions-bar{gap:20px;width:100%;max-width:100%;margin:24px auto 0}.preview-actions-bar .btn{letter-spacing:2px;border-width:2px;padding:24px 44px;font-size:18px;font-weight:700}.printing-headline{font-size:32px}.printing-subline{font-size:16px}.virtual-printer-box{width:450px;height:530px}.printer-body{height:170px}.printer-slot-opening{height:14px;top:56px;left:42px;right:42px}.printed-paper-delivery{height:350px;bottom:104px;left:63px;right:63px}.printing-footer-hint{font-size:15px}.success-icon{width:70px;height:70px;margin-bottom:20px;font-size:32px}.finished-title{font-size:38px}.finished-subtitle{font-size:16px}.finished-download-card{max-width:450px;padding:32px}.download-label{font-size:14px}.finished-qr-container{width:210px;height:210px;margin:20px auto}.finished-qr-image{width:180px;height:180px}.btn-download-png{margin-bottom:20px;padding:16px;font-size:14px}.cafe-tag{font-size:15px}.finished-controls{gap:24px;max-width:550px;padding:0}.auto-reset-indicator{font-size:14px}}@media (height<=800px){.view-panel{padding:12px 16px!important}.template-screen-header{margin-bottom:8px!important;padding:12px 16px 4px!important}.template-choose-title{font-size:20px!important}.script-title{font-size:24px!important}.packages-grid-wrapper,.templates-grid-wrapper{max-height:52vh!important;overflow-y:auto!important}.mode-options-container{gap:16px!important}.mode-option-card{padding:20px 16px!important}.thermal-paper-scroll-wrapper{max-height:48vh!important}}.comfort-card-receipt{text-align:center;flex-direction:column;align-items:center;padding:20px 0;display:flex}.comfort-card-illustration-wrapper{justify-content:center;align-items:center;width:100%;margin:16px 0;display:flex}.comfort-card-svg{width:90px;height:90px;display:block}.comfort-card-body{width:100%;margin:12px 0}.comfort-card-title{font-family:var(--font-receipt);letter-spacing:1px;margin-bottom:6px;font-size:22px;font-weight:700}.comfort-card-text{font-family:var(--font-receipt);padding:0 8px;font-size:21px;font-weight:700;line-height:1.5}.collage-receipt-container.theme-vintage{color:#000;box-sizing:border-box;background:#fff;flex-direction:column;align-items:center;padding:30px 0;display:flex}.vintage-theme-header{text-align:center;width:100%;margin-bottom:20px}.vintage-title-container{justify-content:center;align-items:baseline;gap:6px;margin-bottom:8px;display:flex}.vintage-title-snap{font-family:var(--font-ui);letter-spacing:2px;font-size:30px;font-weight:800}.vintage-title-script{font-family:var(--font-script);font-size:44px;font-weight:400;display:inline-block;transform:rotate(-5deg)}.vintage-divider-line{background-color:#000;width:100%;height:2px;margin:6px 0}.vintage-photo-container-solo{aspect-ratio:1;box-sizing:border-box;border:2px solid #000;width:100%;margin-bottom:20px;overflow:hidden}.vintage-photo-container-solo .photo-item{object-fit:cover;width:100%;height:100%}.vintage-photo-container-grid-4{aspect-ratio:1;box-sizing:border-box;background-color:#000;border:2px solid #000;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:6px;width:100%;margin-bottom:20px;display:grid;overflow:hidden}.vintage-photo-container-grid-4 .photo-item{object-fit:cover;width:100%;height:100%}.vintage-photo-container-grid-3{box-sizing:border-box;background-color:#000;border:2px solid #000;flex-direction:column;gap:6px;width:100%;margin-bottom:20px;display:flex;overflow:hidden}.vintage-photo-container-grid-3 .photo-item{aspect-ratio:1.5;object-fit:cover;width:100%}.vintage-theme-footer{flex-direction:column;align-items:center;width:100%;display:flex}.vintage-event-name{font-family:var(--font-ui);letter-spacing:1px;text-transform:uppercase;text-align:center;white-space:nowrap;text-overflow:ellipsis;width:100%;margin:4px 0;font-size:38px;font-weight:900;overflow:hidden}.vintage-date{font-family:var(--font-ui);letter-spacing:1px;text-transform:uppercase;margin:8px 0;font-size:16px;font-weight:700}.collage-receipt-container.theme-boarding{color:#000;box-sizing:border-box;background:#fff;flex-direction:column;align-items:center;padding:24px 0;display:flex}.boarding-theme-header{justify-content:flex-end;width:100%;margin-bottom:12px;display:flex}.boarding-header-right{font-family:var(--font-ui);letter-spacing:1px;font-size:12px;font-weight:700}.boarding-plane-icon{font-size:12px}.boarding-photo-container-solo{aspect-ratio:1;box-sizing:border-box;border:2px solid #000;width:100%;margin-bottom:16px;overflow:hidden}.boarding-photo-container-solo .photo-item{object-fit:cover;width:100%;height:100%}.boarding-theme-footer{flex-direction:column;align-items:center;width:100%;display:flex}.boarding-info-grid{text-align:left;grid-template-columns:1fr 1.2fr .8fr;width:100%;margin-bottom:12px;display:grid}.boarding-info-item{flex-direction:column;display:flex}.boarding-info-label{font-family:var(--font-ui);color:#666;letter-spacing:.5px;margin-bottom:2px;font-size:11px;font-weight:700}.boarding-info-value{font-family:var(--font-ui);text-transform:uppercase;font-size:14px;font-weight:900}.boarding-dashed-line{border-top:1.5px dashed #000;width:100%;margin:8px 0 12px}.boarding-pass-codes{justify-content:center;align-items:center;gap:16px;margin-bottom:4px;display:flex}.boarding-code{font-family:var(--font-ui);letter-spacing:1px;font-size:44px;font-weight:900}.boarding-plane-divider{font-size:32px}.boarding-pass-label{font-family:var(--font-ui);letter-spacing:4px;text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:700}.theme-footer-scan-section{border-top:1px dashed #00000026;justify-content:space-between;align-items:center;gap:16px;width:100%;margin-top:16px;padding-top:12px;display:flex}.theme-qr-container{flex-direction:column;flex:0 0 90px;align-items:center;display:flex}.theme-qr-container img{background:#fff;border:1px solid #000;width:80px;height:80px;padding:2px}.theme-qr-label{font-family:var(--font-ui);letter-spacing:.5px;text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:700}.theme-barcode-container{flex-direction:column;flex-grow:1;align-items:center;display:flex}.theme-barcode-container svg{width:100%;max-width:180px;height:50px}.theme-barcode-number{font-family:var(--font-receipt);letter-spacing:1px;margin-top:4px;font-size:11px;font-weight:700}.curtain-mode{background-color:#000;width:100vw;height:100vh;position:relative;overflow:hidden}.curtain-container{z-index:15;pointer-events:none;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.curtain-panel{box-sizing:border-box;width:50%;height:100%;transition:transform 1.2s cubic-bezier(.25,1,.3,1);position:relative}.curtain-left{background-color:var(--curtain-color,#111);transform-origin:0;background-image:repeating-linear-gradient(90deg,#00000026,#00000026 20px,#ffffff14 40px,#0000004d 60px);border-right:2px dashed #ffffff40;box-shadow:inset -15px 0 25px #000000f2,8px 0 20px #000000b3}.curtain-right{background-color:var(--curtain-color,#111);transform-origin:100%;background-image:repeating-linear-gradient(90deg,#0000004d,#ffffff14 20px,#00000026 40px 60px);border-left:2px dashed #ffffff40;box-shadow:inset 15px 0 25px #000000f2,-8px 0 20px #000000b3}.curtains-parted .curtain-left{transform:translate(-100%)}.curtains-parted .curtain-right{transform:translate(100%)}.curtain-overlay-panel{z-index:25;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .4s,transform .4s;display:flex;position:absolute;top:0;left:0}.curtains-parted .curtain-overlay-panel{opacity:0;transform:scale(.95)}.curtain-custom-graphic{justify-content:center;align-items:center;max-width:80%;max-height:55vh;margin-bottom:35px;display:flex}.curtain-custom-graphic img{object-fit:contain;filter:drop-shadow(0 12px 28px #000000a6);max-width:100%;max-height:55vh}.curtain-fallback-branding{text-align:center;margin-bottom:45px}.curtain-fallback-branding .brand-title{text-shadow:0 4px 12px #000000d9;margin-top:10px;color:#fff!important}.curtain-fallback-branding .brand-subtitle{text-shadow:0 2px 6px #000000d9;color:#fff!important}.curtain-prompt{font-family:var(--font-receipt);color:#fff;text-transform:uppercase;letter-spacing:4px;text-shadow:0 2px 4px #00000080;background-color:#000000bf;border:2px solid #fff;padding:12px 28px;font-size:24px;font-weight:700;animation:2s ease-in-out infinite curtain-glow-pulse;box-shadow:0 8px 24px #0009}@keyframes curtain-glow-pulse{0%,to{opacity:.7;transform:scale(.97);box-shadow:0 8px 20px #00000080}50%{opacity:1;transform:scale(1.03);box-shadow:0 12px 28px #fff3}}.views-slider.no-transition{transition:none!important}.global-curtain-container{z-index:9000;pointer-events:auto;width:100vw;height:100vh;position:absolute;top:0;left:0}.curtain-revealing .view-panel.active-slide{transform-origin:50%;animation:1.2s cubic-bezier(.16,1,.3,1) forwards curtain-reveal-zoom}@keyframes curtain-reveal-zoom{0%{opacity:.5;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.packages-grid-wrapper{box-sizing:border-box;flex-grow:1;justify-content:center;align-items:center;width:100%;padding:20px 40px;display:flex}.packages-list-grid{box-sizing:border-box;grid-template-columns:repeat(2,1fr);place-content:center;gap:28px;width:100%;max-width:85vw;display:grid}.package-card-option{background:var(--ios-glass-bg);border:1px solid var(--ios-glass-border);text-align:center;cursor:pointer;box-shadow:var(--ios-glass-shadow);-webkit-backdrop-filter:var(--ios-glass-blur);box-sizing:border-box;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;min-height:32vh;padding:48px 30px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.package-card-option:hover{background:#fff;transform:translateY(-6px);box-shadow:0 16px 36px #00000014}.package-card-option:active{transform:scale(.95);box-shadow:0 4px 12px #0000000a}.package-card-icon{background:#007aff0f;border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;margin-bottom:16px;font-size:42px;transition:all .3s;display:flex}.package-card-option:hover .package-card-icon{background:#007aff1a;transform:scale(1.08)rotate(5deg)}.package-card-title{color:var(--text-primary);font-size:22px;font-weight:700;font-family:var(--font-ui);letter-spacing:-.2px;margin:0 0 8px}.package-card-desc{color:var(--text-secondary);margin:0 0 22px;font-size:15px;line-height:1.5}.package-card-price{color:#fff;font-size:26px;font-weight:800;font-family:var(--font-ui);background:var(--accent-gradient);box-shadow:var(--ios-shadow-button);border-radius:99px;padding:10px 26px;display:inline-block}#view-order-summary .template-screen-content{justify-content:center;align-items:center}.order-summary-card{background:var(--ios-glass-bg);border:1px solid var(--ios-glass-border);width:90%;max-width:750px;box-shadow:var(--ios-glass-shadow);-webkit-backdrop-filter:var(--ios-glass-blur);box-sizing:border-box;border-radius:24px;margin:0 auto;padding:48px 52px}.summary-row{border-bottom:1px dashed var(--border-primary);justify-content:space-between;margin-bottom:26px;padding-bottom:22px;font-size:19px;display:flex}.summary-label{color:var(--text-secondary);font-weight:500}.summary-val{font-family:var(--font-ui);color:var(--text-primary);font-weight:600}.summary-total-row{border-bottom:none;padding-top:14px;padding-bottom:0;font-size:28px;font-weight:800}.summary-total-price-val{color:var(--accent-color);font-family:var(--font-ui)}.payment-notification-box{text-align:center;color:var(--accent-color);background:#007aff0d;border:1px solid #007aff1a;border-radius:16px;margin-top:36px;padding:24px;font-size:17px;line-height:1.6}.summary-actions-bar{box-sizing:border-box;gap:18px;width:90%;max-width:750px;margin-top:32px;margin-left:auto;margin-right:auto;padding:0;display:flex}.summary-actions-bar .btn-secondary{flex:1;padding:18px 30px;font-size:16px}.summary-actions-bar .btn-primary{flex:2;padding:18px 30px;font-size:17px;font-weight:700}.floating-paper-badge{z-index:999;background:var(--ios-glass-bg);-webkit-backdrop-filter:var(--ios-glass-blur);border:1px solid var(--ios-glass-border);box-shadow:var(--ios-glass-shadow);font-family:var(--font-ui);color:var(--text-primary);pointer-events:none;letter-spacing:-.1px;border-radius:99px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;bottom:24px;right:24px}.floating-paper-badge.hidden{opacity:0;pointer-events:none;visibility:hidden;transform:translateY(12px)scale(.9)}.floating-paper-badge.low-paper{color:#d9480f;background:#fff3e6d9;border-color:#fd7e1466;animation:2s infinite pulse-warn;box-shadow:0 4px 12px #fd7e1426}.floating-paper-badge.out-of-paper{color:#c92a2a;background:#fff0f0e6;border-color:#e4292966;box-shadow:0 4px 12px #e4292933}@keyframes pulse-warn{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.chart-node circle{transition:r .2s,fill .2s}.chart-node:hover circle{r:8px;fill:#ff9500}.timeline-card{transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s}.timeline-card:hover{transform:translateY(-2px);box-shadow:0 6px 15px #0000000a}.timeline-ledger::-webkit-scrollbar{width:6px}.timeline-ledger::-webkit-scrollbar-track{background:0 0}.timeline-ledger::-webkit-scrollbar-thumb{background:#00000014;border-radius:99px}.timeline-ledger::-webkit-scrollbar-thumb:hover{background:#00000029}@keyframes card-entrance{0%{opacity:0;transform:scale(.82)translateY(30px)}to{opacity:1;transform:scale(1)translateY(0)}}.card-stagger-enter{opacity:0;animation:.55s cubic-bezier(.16,1,.3,1) forwards card-entrance}.card-stagger-enter:first-child{animation-delay:80ms}.card-stagger-enter:nth-child(2){animation-delay:.18s}.card-stagger-enter:nth-child(3){animation-delay:.28s}.card-stagger-enter:nth-child(4){animation-delay:.38s}@keyframes header-slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header-animate-in{animation:.5s cubic-bezier(.16,1,.3,1) forwards header-slide-down}@keyframes footer-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.footer-animate-in{opacity:0;animation:.5s cubic-bezier(.16,1,.3,1) .45s forwards footer-slide-up}.hero-zoom-overlay{z-index:50;-webkit-backdrop-filter:blur(20px);opacity:0;pointer-events:none;background:#ffffffbf;flex-direction:column;justify-content:center;align-items:center;transition:opacity .4s;display:flex;position:absolute;inset:0}.hero-zoom-overlay.active{opacity:1;pointer-events:all}@keyframes confirmation-pop{0%{opacity:0;transform:translateY(15px)scale(.9)}60%{opacity:1;transform:translateY(-3px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}.hero-confirmation-label{font-family:var(--font-ui);color:var(--text-primary);opacity:0;margin-top:20px;font-size:20px;font-weight:700;animation:.5s cubic-bezier(.16,1,.3,1) .25s forwards confirmation-pop}.hero-confirmation-check{opacity:0;width:72px;height:72px;margin-bottom:12px;animation:.4s cubic-bezier(.16,1,.3,1) .1s forwards confirmation-pop;display:inline-block}.confirmation-svg{width:100%;height:100%}.confirmation-svg .circle-path{stroke:var(--accent-color);stroke-width:2.5px}.confirmation-svg .check-path{stroke:var(--accent-color);stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:48;stroke-dashoffset:48px;animation:.5s cubic-bezier(.16,1,.3,1) .25s forwards stroke-draw}@keyframes stroke-draw{to{stroke-dashoffset:0}}.hero-card-clone{z-index:55;pointer-events:none;transition:all .55s cubic-bezier(.16,1,.3,1);position:absolute}.hero-card-clone.centered{margin:0!important;top:42%!important;left:50%!important;transform:translate(-50%,-50%)scale(1.12)!important}@keyframes hero-exit{0%{opacity:1;transform:translate(-50%,-50%)scale(1.12)}to{opacity:0;transform:translate(-50%,-50%)scale(1.3)}}.hero-card-clone.exiting{animation:.35s cubic-bezier(.4,0,1,1) forwards hero-exit}.ripple-container{position:relative;overflow:hidden}@keyframes ripple-spread{0%{opacity:.35;transform:translate(-50%,-50%)scale(0)}to{opacity:0;transform:translate(-50%,-50%)scale(4)}}.ripple-wave{pointer-events:none;background:#007aff2e;border-radius:50%;width:100px;height:100px;animation:.65s ease-out forwards ripple-spread;position:absolute}@keyframes card-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.008)}}.card-breathing{animation:3.5s ease-in-out infinite card-breathe;opacity:1!important}.card-breathing:nth-child(2){animation-delay:.8s}.card-breathing:nth-child(3){animation-delay:1.6s}.card-breathing:nth-child(4){animation-delay:2.4s}.tilt-card{transform:perspective(1000px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg)) scale3d(1, 1, 1);transform-style:preserve-3d;will-change:transform;transition:transform .1s ease-out,box-shadow .1s ease-out}.photo-strip{justify-content:center;gap:12px;width:100%;margin:10px 0 15px;display:flex}.photo-strip-slot{background:var(--bg-secondary);box-sizing:border-box;border-radius:8px;justify-content:center;align-items:center;width:72px;height:72px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.photo-strip-slot.slot-empty{opacity:.55;border:1.5px dashed #00000026}.photo-strip-slot.slot-active{border:2px solid var(--accent-color);background:#007aff0a;transform:scale(1.05);box-shadow:0 0 0 4px #007aff1a}.photo-strip-slot.slot-captured{border:1.5px solid var(--border-primary);background:#fff;box-shadow:0 2px 6px #0000000d}.photo-strip-slot img.slot-thumbnail{object-fit:cover;width:100%;height:100%;animation:.3s cubic-bezier(.34,1.56,.64,1) forwards photo-strip-in}@keyframes photo-strip-in{0%{opacity:0;transform:scale(.8)rotate(-3deg)}to{opacity:1;transform:scale(1)rotate(0)}}.review-screen-content{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}.review-grid-container{flex:1;justify-content:center;align-items:center;padding:15px;display:flex;overflow-y:auto}.review-grid{gap:20px;width:100%;max-width:600px;margin:0 auto;display:grid}.review-grid.grid-1{grid-template-columns:1fr;max-width:320px}.review-grid.grid-2{grid-template-columns:1fr 1fr;max-width:480px}.review-grid.grid-3{grid-template-columns:1fr 1fr 1fr;max-width:580px}.review-grid.grid-4{grid-template-columns:1fr 1fr;max-width:440px}.review-photo-card{aspect-ratio:1;border:1.5px solid var(--border-primary);cursor:pointer;background:#fff;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 6px 18px #0000000d}.review-photo-card:hover{transform:translateY(-4px)scale(1.02);box-shadow:0 10px 25px #00000014}.review-thumbnail{object-fit:cover;width:100%;height:100%;display:block}.review-card-overlay{-webkit-backdrop-filter:blur(8px);opacity:.9;z-index:3;pointer-events:none;background:#000000bf;border:1px solid #ffffff40;border-radius:99px;flex-direction:row;justify-content:center;align-items:center;gap:6px;padding:6px 14px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}.review-photo-card:active .review-card-overlay,.review-photo-card:hover .review-card-overlay{opacity:1;background:var(--accent-color);transform:translate(-50%)scale(1.05)}.review-card-overlay .overlay-icon{color:#fff;font-size:14px}.review-card-overlay .overlay-text{color:#fff;letter-spacing:.5px;text-transform:uppercase;font-size:10.5px;font-weight:700}.review-photo-badge{color:#fff;z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:flex;position:absolute;top:8px;left:8px}.review-actions-container{box-sizing:border-box;justify-content:center;align-items:center;width:100%;padding:20px 40px 40px;display:flex}.btn-wide{letter-spacing:-.1px;border-radius:99px;min-width:320px;height:52px;font-size:16px;font-weight:700}.swipe-print-track{background:rgba(var(--accent-color-rgb), .06);border:1px solid rgba(var(--accent-color-rgb), .12);-webkit-user-select:none;user-select:none;touch-action:pan-x;cursor:grab;border-radius:99px;width:100%;max-width:680px;height:68px;transition:background .3s,border-color .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 4px 15px #00000005}.swipe-print-track:active{cursor:grabbing}.swipe-print-track.dragging{background:rgba(var(--accent-color-rgb), .1);border-color:rgba(var(--accent-color-rgb), .25);box-shadow:0 4px 20px rgba(var(--accent-color-rgb), .15)}.swipe-print-label{font-family:var(--font-ui);color:var(--accent-color);letter-spacing:.5px;pointer-events:none;justify-content:center;align-items:center;font-size:16.5px;font-weight:700;transition:opacity .2s;display:flex;position:absolute;inset:0}.swipe-print-thumb{background:var(--accent-gradient);width:58px;height:58px;box-shadow:0 4px 14px rgba(var(--accent-color-rgb), .3);z-index:2;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;transition:left .1s,box-shadow .2s,transform .2s;display:flex;position:absolute;top:5px;left:5px}.swipe-print-track.dragging .swipe-print-thumb{box-shadow:0 6px 20px rgba(var(--accent-color-rgb), .4);transform:scale(1.08)}.swipe-print-thumb svg{fill:#fff;width:24px;height:24px}.swipe-print-track.swiped .swipe-print-thumb{box-shadow:0 0 20px rgba(var(--accent-color-rgb), .5)}.swipe-print-track.swiped .swipe-print-label{opacity:0}.animate-pop-in{animation:.4s cubic-bezier(.34,1.56,.64,1) both pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes spin-clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.selection-footer{box-sizing:border-box;justify-content:center;align-items:center;width:100%;margin-top:10px;padding:20px 24px;display:flex}.swipe-arrows{vertical-align:middle;margin-left:8px;display:inline-flex}.swipe-arrows span{opacity:.3;margin-right:-2px;font-size:20px;font-weight:900;line-height:1;animation:1.5s infinite arrow-glow}.swipe-arrows span:first-child{animation-delay:0s}.swipe-arrows span:nth-child(2){animation-delay:.3s}.swipe-arrows span:nth-child(3){animation-delay:.6s}.swipe-print-track.dragging .swipe-arrows span{color:var(--accent-color);animation-duration:.8s}@keyframes arrow-glow{0%,to{opacity:.3;transform:translate(0)}50%{opacity:1;transform:translate(4px)}}.finished-thank-you-card{box-sizing:border-box;text-align:center;background:#fff;border:1px solid #0000000d;border-bottom:none;border-radius:12px 12px 0 0;flex-direction:column;justify-content:center;align-items:center;width:95%;max-width:530px;margin:20px auto 35px;padding:48px 44px 60px;display:flex;position:relative;overflow:visible;box-shadow:0 10px 30px #0000000a}.finished-thank-you-card .receipt-cutout{background-color:var(--bg-primary);z-index:2;border-radius:50%;width:28px;height:28px;position:absolute;top:36%;box-shadow:inset 0 2px 5px #00000005}.finished-thank-you-card .receipt-cutout.left{border-right:1px solid #0000000d;left:-14px}.finished-thank-you-card .receipt-cutout.right{border-left:1px solid #0000000d;right:-14px}.finished-thank-you-card .receipt-bottom-scallops{z-index:2;background:radial-gradient(circle at 50% 0,#fff 6px,#0000 7px) 0 0/14px 10px repeat-x;width:100%;height:10px;position:absolute;bottom:-10px;left:0}.thank-you-logo{object-fit:contain;max-width:250px;max-height:85px;margin-bottom:18px}.thank-you-logo-placeholder{margin-bottom:12px;font-size:44px}.thank-you-cafe-name{font-family:var(--font-ui);letter-spacing:1px;text-transform:uppercase;color:var(--text-primary);margin:0 0 10px;font-size:24px;font-weight:800}.thank-you-message{font-family:var(--font-ui);color:var(--text-secondary);margin:0 0 20px;font-size:16px;font-weight:500;line-height:1.5}.thank-you-divider{border-top:1.5px dashed #0000001a;width:100%;margin:18px 0}.receipt-meta-grid{text-align:left;grid-template-columns:1fr 1fr;gap:12px;width:100%;margin:4px 0;display:grid}.receipt-meta-item{flex-direction:column;display:flex}.receipt-meta-label{font-family:var(--font-ui);color:#888;letter-spacing:.5px;margin-bottom:4px;font-size:12px;font-weight:700}.receipt-meta-val{color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:15px;font-weight:700}.thank-you-barcode{justify-content:center;width:100%;margin-top:10px;display:flex}.thank-you-barcode svg{max-width:360px}.finished-top-logo{object-fit:contain;max-width:280px;max-height:100px;margin:10px auto 20px;display:block}.finished-top-cafe-name{font-family:var(--font-ui);letter-spacing:1px;text-transform:uppercase;color:var(--text-primary);margin:10px auto 20px;font-size:28px;font-weight:800}.attract-receipt-logo{object-fit:contain;max-width:80px;max-height:35px;margin-top:10px;margin-bottom:4px}.attract-receipt-logo-placeholder{margin-top:10px;margin-bottom:2px;font-size:22px}.attract-receipt-title{font-family:var(--font-ui);letter-spacing:.5px;color:var(--text-primary);text-transform:uppercase;margin:0 0 2px;font-size:13px;font-weight:800}.attract-receipt-msg{font-family:var(--font-ui);color:var(--text-secondary);margin:0 0 6px;padding:0 10px;font-size:8px;font-weight:500;line-height:1.3}.attract-receipt-divider{border-top:1px dashed #0000001a;width:90%;margin:4px 0}.attract-receipt-meta{text-align:left;grid-template-columns:1fr 1fr;gap:4px;width:90%;margin:2px 0;display:grid}.attract-meta-item{flex-direction:column;display:flex}.attract-meta-label{font-family:var(--font-ui);color:#888;letter-spacing:.25px;margin-bottom:1px;font-size:6px;font-weight:700}.attract-meta-val{color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:8px;font-weight:700}.attract-start-banner{background:var(--accent-gradient);color:#fff;box-sizing:border-box;text-align:left;border-radius:8px;align-items:center;gap:8px;width:90%;margin:4px 0;padding:6px 10px;display:flex}.attract-start-icon{font-size:14px}.attract-start-text{flex-direction:column;display:flex}.attract-start-main{font-family:var(--font-ui);letter-spacing:1px;font-size:11px;font-weight:900}.attract-start-sub{font-family:var(--font-ui);opacity:.85;font-size:7.5px;font-weight:600}.attract-receipt-barcode{justify-content:center;width:90%;margin-top:4px;display:flex}.attract-receipt-barcode svg{max-width:100%}.order-summary-printer-container{flex-direction:column;align-items:center;width:100%;max-width:680px;height:720px;margin:15px auto 25px;display:flex;position:relative;overflow:visible}.order-summary-printer-container .printer-hardware-mouth{z-index:10;background:linear-gradient(#3a3d40 0%,#1e2022 40%,#0a0b0c 100%);border-radius:36px;justify-content:center;align-items:center;width:600px;height:72px;display:flex;position:relative;box-shadow:0 6px 12px #00000026,inset 0 2px 2px #ffffff1a,inset 0 -2px 3px #000000b3}.order-summary-printer-container .printer-hardware-slot{box-sizing:border-box;background:#000;border:1px solid #0000;border-radius:6px;width:520px;height:12px;animation:3s ease-in-out infinite slot-breath;box-shadow:inset 0 2px 4px #000000e6}.order-summary-printer-container .printer-paper-clipper{z-index:20;width:530px;height:660px;position:absolute;top:36px;left:50%;overflow:hidden;transform:translate(-50%)}.order-summary-receipt{color:#000;box-sizing:border-box;background:#fff;border:1px solid #0000000d;border-bottom:none;border-radius:12px 12px 0 0;flex-direction:column;justify-content:flex-start;align-items:center;width:100%;height:auto;min-height:580px;padding:48px 48px 100px;animation:1.5s cubic-bezier(.25,1,.5,1) forwards order-receipt-eject;display:flex;position:relative;overflow:visible;box-shadow:0 10px 30px #0000000a}@keyframes order-receipt-eject{0%{opacity:.5;transform:translateY(-80%)}to{opacity:1;transform:translateY(0)}}.order-summary-receipt .receipt-cutout{background-color:var(--bg-primary);z-index:2;border-radius:50%;width:32px;height:32px;position:absolute;top:38%;box-shadow:inset 0 2px 5px #00000005}.order-summary-receipt .receipt-cutout.left{border-right:1px solid #0000000d;left:-16px}.order-summary-receipt .receipt-cutout.right{border-left:1px solid #0000000d;right:-16px}.order-summary-receipt .thank-you-logo{object-fit:contain;max-width:260px;max-height:85px;margin-bottom:12px}.order-summary-receipt .thank-you-logo-placeholder{margin-bottom:10px;font-size:40px}.receipt-order-title{font-family:var(--font-ui);letter-spacing:1px;color:var(--text-primary);margin:6px 0 0;font-size:24px;font-weight:800}.order-receipt-item-row{text-align:left;justify-content:space-between;align-items:center;width:100%;margin:10px 0;display:flex}.order-receipt-item-col{flex-direction:column;display:flex}.order-receipt-item-title{font-family:var(--font-ui);color:var(--text-primary);font-size:18px;font-weight:800}.order-receipt-item-sub{font-family:var(--font-ui);color:#888;margin-top:2px;font-size:13.5px}.order-receipt-item-price{color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:18px;font-weight:700}.order-receipt-total-row{width:100%;font-family:var(--font-ui);color:var(--text-primary);justify-content:space-between;align-items:center;margin:10px 0;font-size:19px;font-weight:800;display:flex}.order-receipt-total-val{color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:26px;font-weight:900}.receipt-cafe-name{font-family:var(--font-ui);color:#888;text-transform:uppercase;letter-spacing:1px;margin:4px 0 0;font-size:12px;font-weight:700}.order-receipt-payment-info{box-sizing:border-box;width:100%;font-family:var(--font-ui);color:#555;text-align:center;background:#f8f9fa;border:1px solid #0000000d;border-radius:14px;flex-direction:column;align-items:center;margin-top:16px;padding:16px;font-size:13.5px;line-height:1.45;display:flex}.payment-badge-pill{background:var(--accent-gradient);color:#fff;letter-spacing:.5px;box-shadow:var(--ios-shadow-button);border-radius:99px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.order-summary-footer{box-sizing:border-box;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:520px;margin:30px auto;padding:0 20px;display:flex}.order-summary-footer .btn-wide{letter-spacing:1px;text-transform:uppercase;border-radius:16px;width:100%;padding:20px 30px;font-size:18px;font-weight:800}.paywall-container{flex-direction:column;align-items:center;width:100%;margin-top:12px;display:flex}.paywall-qr-box{background:#fff;border:2px dashed #000;border-radius:12px;flex-direction:column;align-items:center;margin:10px 0;padding:12px;display:flex;box-shadow:0 4px 12px #0000000f}.paywall-qr-img{object-fit:contain;border-radius:6px;width:100%;max-width:180px;height:auto;max-height:180px}.paywall-account-details{color:#333;text-align:center;margin-top:6px;font-size:12px;font-weight:600}.paywall-instructions{color:#555;text-align:center;margin:6px 0 10px;font-size:12px;line-height:1.35}.paywall-ref-group{flex-direction:column;gap:6px;width:100%;margin-top:10px;display:flex}.paywall-ref-label{text-transform:uppercase;color:#111;letter-spacing:.5px;text-align:left;font-size:12px;font-weight:700}.paywall-ref-input{letter-spacing:1.5px;color:#000;width:100%;box-sizing:border-border-box;text-transform:uppercase;background:#fff;border:2px solid #000;border-radius:10px;outline:none;padding:12px 14px;font-family:monospace;font-size:16px;font-weight:700;transition:border-color .2s,box-shadow .2s}.paywall-ref-input:focus{border-color:var(--accent-color,#007aff);box-shadow:0 0 0 3px #007aff26}.paywall-error-banner{color:#c92a2a;text-align:center;box-sizing:border-box;background:#fff0f0;border:1px solid #ffc9c9;border-radius:8px;width:100%;margin-top:8px;padding:10px 14px;font-size:12px;font-weight:600}.paywall-staff-override-btn{color:#777;cursor:pointer;background:0 0;border:none;margin-top:4px;padding:4px 8px;font-size:12px;font-weight:500;text-decoration:underline;transition:color .2s}.paywall-staff-override-btn:hover{color:#111}.payment-screen-card-container{box-sizing:border-box;justify-content:center;align-items:center;width:100%;max-width:520px;margin:20px auto;padding:0 16px;display:flex}.payment-screen-card{box-sizing:border-box;text-align:center;background:#fff;border:1px solid #00000014;border-radius:20px;flex-direction:column;align-items:center;width:100%;padding:24px;display:flex;box-shadow:0 12px 36px #0000001a}.payment-amount-header{flex-direction:column;align-items:center;margin-bottom:16px;display:flex}.payment-amount-label{letter-spacing:1px;color:var(--text-secondary,#777);text-transform:uppercase;font-size:11px;font-weight:700}.payment-amount-val{color:var(--text-primary,#111);font-size:36px;font-weight:800;font-family:var(--font-ui,sans-serif);margin-top:2px}.payment-qr-display-box{box-sizing:border-box;background:#fff;border:2px dashed #000;border-radius:16px;flex-direction:column;align-items:center;width:100%;max-width:280px;margin:12px 0;padding:16px;display:flex}.payment-screen-qr-img{object-fit:contain;border-radius:8px;width:100%;max-width:240px;height:auto;max-height:240px}.payment-qr-placeholder{color:#fff;text-align:center;background:#000;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:180px;height:180px;padding:28px;display:flex}.payment-account-badge{color:#111;flex-direction:column;align-items:center;margin-top:10px;font-size:13px;font-weight:700;display:flex}.payment-account-badge .account-number{color:#555;margin-top:2px;font-family:monospace;font-size:14px}.payment-instructions-text{color:#555;max-width:360px;margin:10px 0 16px;font-size:13px;line-height:1.4}.payment-ref-field-group{text-align:left;flex-direction:column;gap:6px;width:100%;display:flex}.payment-ref-field-label{text-transform:uppercase;color:#111;letter-spacing:.5px;font-size:12px;font-weight:700}.payment-page-ref-input{letter-spacing:2px;color:#000;box-sizing:border-box;text-transform:uppercase;background:#fff;border:2px solid #000;border-radius:12px;outline:none;width:100%;padding:14px 16px;font-family:monospace;font-size:18px;font-weight:700;transition:border-color .2s,box-shadow .2s}.payment-page-ref-input:focus{border-color:var(--accent-color,#007aff);box-shadow:0 0 0 4px #007aff33}.attract-prompt-wrapper{text-align:center;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;width:100%;height:120px;margin-top:28px;margin-bottom:8px;padding:0 12px;display:flex}.attract-prompt-sub{font-family:var(--font-ui);color:#888;letter-spacing:2px;text-transform:uppercase;margin-bottom:8px;font-size:9px;font-weight:800}.attract-prompt-main{font-family:var(--font-ui);color:var(--accent-color);letter-spacing:.5px;text-transform:uppercase;margin:0;font-size:26px;font-weight:900;line-height:1.2;animation:2s ease-in-out infinite pulse-blue-text}@keyframes pulse-blue-text{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}.stickers-screen-content{box-sizing:border-box;flex-direction:column;width:100%;height:100%;padding:30px;display:flex}.stickers-vertical-layout{box-sizing:border-box;flex-direction:column;flex:1;align-items:center;width:100%;display:flex;overflow-y:auto}.stickers-layout-container{box-sizing:border-box;background:#000;border:1px solid #ffffff26;border-radius:20px;flex-grow:1;justify-content:center;width:100%;max-width:680px;margin:0 auto 10px;padding:20px;display:flex;position:relative;overflow:hidden}.stickers-paper-scroll-wrapper{scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;width:100%;max-width:460px;height:100%;padding-bottom:20px;overflow-y:auto}.stickers-paper-scroll-wrapper::-webkit-scrollbar{width:4px}.stickers-paper-scroll-wrapper::-webkit-scrollbar-thumb{background:#fff3}.sticker-workspace-wrapper{background:#fff;border:4px solid #fff;border-radius:12px;justify-content:center;align-items:center;padding:8px;display:flex;box-shadow:0 10px 30px #00000014}.sticker-workspace{background:#000;border-radius:6px;position:relative;overflow:hidden}.workspace-bg-image{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.placed-sticker{-webkit-user-select:none;user-select:none;transition:box-shadow .15s}.placed-sticker:hover{border:1.5px dashed var(--accent-primary);box-shadow:0 0 10px #4e73df33}.placed-sticker:active{cursor:grabbing!important}.stickers-photo-selector{justify-content:center;gap:12px;width:100%;margin-top:10px;margin-bottom:5px;padding:5px 0;display:flex}.sticker-photo-thumb{cursor:pointer;border:2px solid #0000;border-radius:10px;width:60px;height:60px;transition:all .2s;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000f}.sticker-photo-thumb img{object-fit:cover;width:100%;height:100%}.sticker-photo-thumb.active{border-color:var(--accent-primary);transform:scale(1.1);box-shadow:0 4px 12px #4e73df33}.sticker-photo-thumb .thumb-badge{color:#fff;background:#000000b3;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:800;display:flex;position:absolute;top:2px;left:2px}.stickers-carousel-container{background:var(--bg-secondary);border:1px solid var(--border-primary);box-sizing:border-box;border-radius:16px;width:100%;max-width:680px;margin:15px 0;padding:10px 0;overflow-x:auto}.stickers-carousel-container::-webkit-scrollbar{display:none}.stickers-carousel-track{gap:15px;width:max-content;padding:5px 20px;display:flex}.btn-carousel-sticker{border:1px solid var(--border-primary);cursor:pointer;background:#fff;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:76px;height:76px;padding:0;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:0 2px 6px #00000008}.btn-carousel-sticker .emoji-preview{font-size:38px}.btn-carousel-sticker:hover{border-color:var(--accent-primary);transform:translateY(-4px)scale(1.08);box-shadow:0 6px 16px #4e73df26}.btn-carousel-sticker:active{transform:scale(.95)}.stickers-actions-footer{box-sizing:border-box;gap:20px;width:100%;max-width:680px;margin-top:10px;padding:0 10px 20px;display:flex}.stickers-actions-footer .btn{flex:1;padding:16px 24px;font-size:14px}.stickers-bake-loader{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;width:100%;height:100%;font-family:var(--font-ui);color:var(--text-primary);background:#ffffffe6;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;animation:.25s fade-in;display:flex;position:absolute;top:0;left:0}.loader-spinner{border:4px solid #4e73df26;border-top-color:var(--accent-primary);border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}.pose-guide-overlay{-webkit-backdrop-filter:blur(12px);z-index:8;box-sizing:border-box;background:#00000073;justify-content:center;align-items:center;width:100%;height:100%;padding:24px;animation:.3s fade-in;display:flex;position:absolute;top:0;left:0}.pose-guide-card{text-align:center;background:#fffffff2;border:1px solid #fffc;border-radius:24px;flex-direction:column;align-items:center;max-width:320px;padding:28px 24px;animation:.3s cubic-bezier(.16,1,.3,1) forwards modal-pop-in;display:flex;box-shadow:0 16px 36px #00000026}.pose-guide-icon{background:#007aff14;border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:14px;font-size:40px;display:flex}.pose-guide-title{color:#1c1c1e;margin:0 0 6px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:20px;font-weight:800}.pose-guide-sub{color:#636366;margin:0;font-size:13px;line-height:1.4}.btn-inline-retake{color:#ff3b30;cursor:pointer;background:#ff3b301a;border:1px solid #ff3b3033;border-radius:99px;align-items:center;gap:6px;margin-top:8px;padding:8px 16px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:12px;font-weight:700;transition:all .2s;display:inline-flex}.btn-inline-retake:hover{background:#ff3b302e;transform:translateY(-1px)}.finished-qr-container-clickable{cursor:zoom-in;transition:transform .2s}.finished-qr-container-clickable:hover{transform:scale(1.03)}.receipt-tear-hint{letter-spacing:1px;text-transform:uppercase;color:#8e8e93;justify-content:center;align-items:center;gap:6px;margin-top:8px;font-size:11px;font-weight:700;display:flex}.out-of-service-card{-webkit-backdrop-filter:blur(20px);text-align:center;background:#fffffff2;border:1px solid #fffc;border-radius:28px;flex-direction:column;align-items:center;width:100%;max-width:440px;padding:44px 32px;display:flex;box-shadow:0 20px 40px #00000014}.wizard-modal-card{text-align:center;background:#fffffff5;border:1px solid #fffc;border-radius:32px;flex-direction:column;align-items:center;width:100%;max-width:460px;padding:36px 32px;animation:.3s cubic-bezier(.16,1,.3,1) forwards modal-pop-in;display:flex;box-shadow:0 24px 48px #00000024,0 4px 16px #0000000a}.wizard-step-badge{letter-spacing:1px;text-transform:uppercase;color:#007aff;background:#007aff1a;border-radius:99px;margin-bottom:14px;padding:4px 12px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:11px;font-weight:800}.wizard-step-dots{gap:8px;margin-bottom:20px;display:flex}.wizard-dot{background:#0000001f;border-radius:50%;width:10px;height:10px;transition:all .25s}.wizard-dot.active{background:#007aff;border-radius:99px;width:24px}.auto-start-banner{-webkit-backdrop-filter:blur(12px);color:#fff;letter-spacing:.5px;z-index:10;background:#000000bf;border:1px solid #fff3;border-radius:99px;align-items:center;gap:8px;padding:10px 22px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:13px;font-weight:700;animation:.3s cubic-bezier(.16,1,.3,1) forwards fade-in-down;display:flex;position:absolute;top:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}@keyframes fade-in-down{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.kiosk-step-pill{letter-spacing:1px;text-transform:uppercase;color:#00000073;background:#0000000d;border-radius:99px;margin-left:8px;padding:3px 8px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:10px;font-weight:800}.payment-pin-display{justify-content:center;gap:12px;margin:14px 0 18px;display:flex}.payment-pin-digit{color:#1c1c1e;background:#fff;border:1.5px solid #00000026;border-radius:14px;justify-content:center;align-items:center;width:54px;height:60px;font-family:Courier Prime,monospace;font-size:26px;font-weight:800;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:inset 0 2px 4px #00000008}.payment-pin-digit.active{border-color:var(--accent-color);transform:scale(1.05);box-shadow:0 0 0 4px #007aff26}.payment-pin-digit.filled{background:#007aff0a;border-color:#0000004d}.kiosk-keypad-grid,.keypad-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:320px;margin:0 auto 16px;display:grid}.pin-modal-card{text-align:center;max-width:360px!important;padding:24px 20px!important}.pin-display-row{justify-content:center;gap:12px;margin:16px 0;display:flex}.pin-slot{color:#1c1c1e;background:#00000008;border:2px solid #0000001f;border-radius:14px;justify-content:center;align-items:center;width:52px;height:58px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,monospace;font-size:24px;font-weight:800;transition:all .2s;display:flex;box-shadow:inset 0 2px 4px #0000000d}.pin-slot.filled{color:#007aff;background:#007aff14;border-color:#007aff}.pin-slot.active{border-color:#007aff;box-shadow:0 0 0 3px #007aff33}.keypad-btn{color:#1c1c1e;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#ffffffe6;border:1px solid #0000001a;border-radius:16px;justify-content:center;align-items:center;height:52px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:20px;font-weight:700;transition:all .15s;display:flex;box-shadow:0 2px 6px #0000000a}.keypad-btn:active{background:#00000014;transform:scale(.94)!important}.keypad-btn-action{letter-spacing:.5px;color:#636366;background:#0000000a;font-size:13px;font-weight:800}.keypad-btn-primary{background:var(--accent-gradient);color:#fff;font-size:14px}.payment-method-screen-wrapper{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}.payment-method-centered-container{box-sizing:border-box;flex:1;justify-content:center;align-items:center;width:100%;padding:10px 0 30px;display:flex}.payment-method-grid{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:24px;width:100%;max-width:660px;margin:0 auto;display:grid}.payment-method-card{-webkit-backdrop-filter:blur(24px);text-align:center;cursor:pointer;background:#fffffff5;border:1.5px solid #00000014;border-radius:28px;flex-direction:column;align-items:center;padding:32px 24px 28px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative;box-shadow:0 16px 40px #0000000f}.payment-method-card.cash:hover{border-color:#34c759;transform:translateY(-4px)scale(1.02);box-shadow:0 24px 48px #34c7592e}.payment-method-card.cashless:hover{border-color:#007aff;transform:translateY(-4px)scale(1.02);box-shadow:0 24px 48px #007aff2e}.payment-method-card:active{transform:scale(.97)}.pm-card-badge{letter-spacing:.8px;text-transform:uppercase;color:#34c759;background:#34c7591f;border-radius:99px;padding:4px 10px;font-size:9px;font-weight:800;position:absolute;top:16px;right:16px}.pm-card-badge.cashless{color:#007aff;background:#007aff1f}.pm-icon-wrapper{border-radius:24px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;display:flex}.pm-icon-wrapper.cash{color:#34c759;background:#34c7591f}.pm-icon-wrapper.cashless{color:#007aff;background:#007aff1f}.pm-card-title{color:#1c1c1e;margin:0 0 8px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:20px;font-weight:800}.pm-card-desc{color:#636366;flex-grow:1;margin:0 0 24px;font-size:12.5px;line-height:1.45}.btn-pm-cta{letter-spacing:.5px;cursor:pointer;border:none;border-radius:99px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 20px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:12.5px;font-weight:800;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.btn-pm-cta.cash{color:#fff;background:#34c759;box-shadow:0 6px 20px #34c75959}.btn-pm-cta.cashless{color:#fff;background:#007aff;box-shadow:0 6px 20px #007aff59}.btn-pm-cta:hover{filter:brightness(1.05);transform:translateY(-1px)}.anim-icon-wrapper{justify-content:center;align-items:center;display:flex;position:relative}.anim-svg{display:block}.anim-camera-qr .svg-laser-line{color:#34c759;animation:1.8s cubic-bezier(.4,0,.2,1) infinite alternate svg-laser-sweep}@keyframes svg-laser-sweep{0%{opacity:.3;transform:translateY(-6px)}50%{opacity:1}to{opacity:.3;transform:translateY(6px)}}.anim-camera-qr .svg-lens-ring{transform-origin:24px 24px;animation:2s ease-in-out infinite alternate svg-lens-pulse}@keyframes svg-lens-pulse{0%{opacity:.7;transform:scale(.92)}to{opacity:1;transform:scale(1.08)}}.anim-phone-qr .svg-signal-wave{transform-origin:50%;animation:1.6s ease-in-out infinite svg-signal-pulse}.anim-phone-qr .svg-signal-wave.w2{animation-delay:.4s}@keyframes svg-signal-pulse{0%{opacity:.2;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}to{opacity:.2;transform:scale(.92)}}.anim-phone-qr .svg-qr-blk{animation:2.4s ease-in-out infinite alternate svg-qr-blink}.anim-phone-qr .svg-qr-blk.b2{animation-delay:.3s}.anim-phone-qr .svg-qr-blk.b3{animation-delay:.6s}@keyframes svg-qr-blink{0%{opacity:.4}to{opacity:1}}.anim-heart-beat .svg-heart{transform-origin:50%;color:#ff2d55;animation:1.4s cubic-bezier(.215,.61,.355,1) infinite svg-heart-beat}@keyframes svg-heart-beat{0%{transform:scale(1)}14%{transform:scale(1.22)}28%{transform:scale(1)}42%{transform:scale(1.15)}70%{transform:scale(1)}}.anim-checkmark .svg-check-circle{stroke-dasharray:145;stroke-dashoffset:145px;animation:.6s cubic-bezier(.65,0,.45,1) forwards svg-circle-draw}.anim-checkmark .svg-check-path{stroke-dasharray:40;stroke-dashoffset:40px;animation:.4s cubic-bezier(.65,0,.45,1) .4s forwards svg-check-draw}@keyframes svg-circle-draw{to{stroke-dashoffset:0}}@keyframes svg-check-draw{to{stroke-dashoffset:0}}.anim-envelope-wave .svg-envelope-heart{transform-origin:50%;animation:2s ease-in-out infinite alternate svg-float-up}@keyframes svg-float-up{0%{transform:translateY(0)scale(1)}to{transform:translateY(-4px)scale(1.15)}}.cash-instruction-container{box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;padding:20px 20px 85px;display:flex}.cash-instruction-card{-webkit-backdrop-filter:blur(24px);text-align:center;background:#fffffff5;border:1px solid #00000014;border-radius:32px;flex-direction:column;align-items:center;width:100%;max-width:480px;padding:36px 30px;display:flex;box-shadow:0 24px 60px #0000001f,0 4px 16px #0000000a}.cash-cards-illustration{pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:100%;max-width:720px;margin-top:28px;display:flex}.cash-cards-img{filter:drop-shadow(0 20px 48px #0000001f);width:100%;max-width:680px;height:auto;display:block}.cash-icon-badge{background:#34c7591f;border-radius:24px;justify-content:center;align-items:center;width:78px;height:78px;margin-bottom:18px;font-size:42px;display:flex;box-shadow:inset 0 0 0 1px #34c75933}.cash-title{color:#1c1c1e;letter-spacing:-.3px;margin:0 0 20px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:22px;font-weight:800}.cash-steps-list{text-align:left;flex-direction:column;gap:14px;width:100%;margin-bottom:24px;display:flex}.cash-step-item{background:#00000006;border:1px solid #0000000f;border-radius:18px;align-items:flex-start;gap:14px;padding:14px 18px;transition:transform .2s,background-color .2s;display:flex}.cash-step-item:hover{background:#0000000a}.cash-step-item .step-num{background:var(--accent-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:2px;font-size:13px;font-weight:800;display:flex;box-shadow:0 2px 8px #007aff40}.cash-step-item .step-text{flex-direction:column;gap:3px;display:flex}.cash-step-item .step-text strong{color:#1c1c1e;font-size:14px;font-weight:700}.cash-step-item .step-text span{color:#636366;font-size:12.5px;line-height:1.45}.cash-notice-box{box-sizing:border-box;text-align:left;background:#ff950014;border:1px dashed #ff950066;border-radius:18px;align-items:center;gap:12px;width:100%;margin-bottom:24px;padding:12px 18px;display:flex}.cash-notice-box p{color:#c97a00;margin:0;font-size:12px;font-weight:600;line-height:1.4}.qr-scanner-viewport-container{box-sizing:border-box;flex:1;justify-content:center;align-items:center;width:100%;padding:20px 20px 80px;display:flex}.qr-scanner-frame-card{flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:480px;margin:auto;display:flex}.camera-viewfinder-box{background:#000;border:3px solid #ffffffe6;border-radius:36px;width:340px;height:340px;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000029,0 4px 16px #0000000f}.qr-video-stream{object-fit:cover;width:100%;height:100%}.viewfinder-overlay{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.corner-bracket{border-style:solid;border-color:#34c759;width:36px;height:36px;position:absolute}.corner-bracket.top-left{border-width:4px 0 0 4px;border-top-left-radius:12px;top:30px;left:30px}.corner-bracket.top-right{border-width:4px 4px 0 0;border-top-right-radius:12px;top:30px;right:30px}.corner-bracket.bottom-left{border-width:0 0 4px 4px;border-bottom-left-radius:12px;bottom:30px;left:30px}.corner-bracket.bottom-right{border-width:0 4px 4px 0;border-bottom-right-radius:12px;bottom:30px;right:30px}.scan-laser-line{background:linear-gradient(90deg,#0000,#34c759,#0000);height:3px;animation:2.2s ease-in-out infinite alternate laser-sweep;position:absolute;left:30px;right:30px;box-shadow:0 0 12px #34c759}@keyframes laser-sweep{0%{opacity:.3;top:35px}50%{opacity:1}to{opacity:.3;top:280px}}.camera-loading-overlay{color:#fff;background:#000000d9;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;font-size:13px;display:flex;position:absolute;top:0;left:0}.qr-scanner-guidance{margin-top:24px}.guidance-pill{-webkit-backdrop-filter:blur(12px);color:#1c1c1e;background:#fffffff2;border:1px solid #00000014;border-radius:99px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:700;display:flex;box-shadow:0 6px 20px #0000000f}.qr-cards-img{filter:drop-shadow(0 16px 36px #0000001a);width:100%;max-width:580px;height:auto;display:block}.pulse-dot{background:#34c759;border-radius:50%;width:8px;height:8px;animation:1.5s infinite pulse-ring;box-shadow:0 0 #34c759b3}@keyframes pulse-ring{0%{box-shadow:0 0 #34c759b3}70%{box-shadow:0 0 0 8px #34c75900}to{box-shadow:0 0 #34c75900}}.qr-success-card{max-width:380px!important;padding:36px 28px!important}.qr-success-icon-wrapper{width:72px;height:72px;margin-bottom:14px}.qr-success-badge{letter-spacing:1px;color:#34c759;background:#34c7591f;border-radius:99px;margin-bottom:10px;padding:4px 14px;font-size:11px;font-weight:800}.qr-success-title{color:#1c1c1e;margin:0 0 4px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:24px;font-weight:800}.qr-success-subtitle{color:#636366;margin:0 0 20px;font-size:14px}.qr-success-loader{color:#8e8e93;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.mini-spinner{border:2px solid #0000001a;border-top-color:var(--accent-color);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}.package-qr-return-reminder-card{text-align:center;box-sizing:border-box;background:#007aff0d;border:1.5px dashed #007aff4d;border-radius:16px;width:100%;margin:16px 0;padding:16px}.qr-reminder-badge{letter-spacing:1px;color:#007aff;background:#007aff1f;border-radius:99px;margin-bottom:6px;padding:3px 10px;font-size:10px;font-weight:800;display:inline-block}.qr-reminder-title{color:#1c1c1e;margin:0 0 6px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:14px;font-weight:800}.qr-reminder-body{color:#3a3a3c;margin:0 0 6px;font-size:11.5px;line-height:1.4}.qr-reminder-sub{color:#8e8e93;margin:0;font-size:10.5px}
