#app{max-width:430px;margin:0 auto;min-height:100dvh;position:relative;overflow-x:hidden}.toast-list-enter-active{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.toast-list-leave-active{transition:all .2s ease-in}.toast-list-enter-from{opacity:0;transform:translateY(20px) scale(.95)}.toast-list-leave-to{opacity:0;transform:translateY(-10px) scale(.95)}.toast-list-move{transition:transform .3s ease}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,SF Mono,Fira Code,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-20{bottom:5rem}.left-0{left:0}.left-1\/2{left:50%}.right-0{right:0}.right-2{right:7px}.top-2{top:7px}.z-50{z-index:50}.z-\[var\(--z-toast\)\]{z-index:var(--z-toast)}.-mx-5{margin-left:-28px;margin-right:-28px}.mx-4{margin-left:21px;margin-right:21px}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:4px}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:7px}.mb-3{margin-bottom:14px}.mb-4{margin-bottom:21px}.mb-6{margin-bottom:42px}.mb-8{margin-bottom:84px}.ml-1{margin-left:4px}.ml-2{margin-left:7px}.ml-auto{margin-left:auto}.mr-1{margin-right:4px}.mt-1{margin-top:4px}.mt-2{margin-top:7px}.mt-3{margin-top:14px}.mt-6{margin-top:42px}.mt-8{margin-top:84px}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-1\.5{height:.375rem}.h-16{height:4rem}.h-2{height:7px}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:14px}.h-full{height:100%}.h-px{height:1px}.min-h-\[120px\]{min-height:120px}.min-h-\[180px\]{min-height:180px}.min-h-dvh{min-height:100dvh}.w-1\.5{width:.375rem}.w-16{width:4rem}.w-2{width:7px}.w-20{width:5rem}.w-8{width:84px}.w-full{width:100%}.max-w-\[260px\]{max-width:260px}.max-w-\[300px\]{max-width:300px}.max-w-\[320px\]{max-width:320px}.max-w-\[340px\]{max-width:340px}.max-w-\[85\%\]{max-width:85%}.max-w-\[90vw\]{max-width:90vw}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-led-pulse{animation:led-pulse 2s ease-in-out infinite}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-0\.5{gap:.125rem}.gap-1{gap:4px}.gap-1\.5{gap:.375rem}.gap-2{gap:7px}.gap-3{gap:14px}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(7px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(7px * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(14px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(14px * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(21px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(21px * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:12px}.rounded-sm{border-radius:2px}.rounded-xl{border-radius:20px}.rounded-b-sm{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-caramel{--tw-border-opacity: 1;border-color:rgb(198 123 60 / var(--tw-border-opacity, 1))}.border-green-700\/30{border-color:#15803d4d}.border-paper-line\/50{border-color:#e8dcc880}.border-red-700\/30{border-color:#b91c1c4d}.border-warm-gray-500\/10{border-color:#3d35321a}.border-warm-gray-500\/20{border-color:#3d353233}.border-warm-gray-500\/30{border-color:#3d35324d}.border-warm-gray-500\/50{border-color:#3d353280}.border-wax{--tw-border-opacity: 1;border-color:rgb(166 61 64 / var(--tw-border-opacity, 1))}.bg-black\/60{background-color:#0009}.bg-caramel{--tw-bg-opacity: 1;background-color:rgb(198 123 60 / var(--tw-bg-opacity, 1))}.bg-caramel\/20{background-color:#c67b3c33}.bg-caramel\/60{background-color:#c67b3c99}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-900\/90{background-color:#14532de6}.bg-red-900\/90{background-color:#7f1d1de6}.bg-warm-gray-400{--tw-bg-opacity: 1;background-color:rgb(74 66 64 / var(--tw-bg-opacity, 1))}.bg-warm-gray-500\/20{background-color:#3d353233}.bg-warm-gray-600{--tw-bg-opacity: 1;background-color:rgb(44 40 37 / var(--tw-bg-opacity, 1))}.bg-warm-gray-600\/90{background-color:#2c2825e6}.bg-warm-gray-700{--tw-bg-opacity: 1;background-color:rgb(26 24 22 / var(--tw-bg-opacity, 1))}.bg-warm-gray-700\/30{background-color:#1a18164d}.bg-warm-gray-700\/50{background-color:#1a181680}.bg-warm-gray-700\/80{background-color:#1a1816cc}.bg-wax{--tw-bg-opacity: 1;background-color:rgb(166 61 64 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.p-4{padding:21px}.p-6{padding:42px}.px-2{padding-left:7px;padding-right:7px}.px-3{padding-left:14px;padding-right:14px}.px-4{padding-left:21px;padding-right:21px}.px-5{padding-left:28px;padding-right:28px}.px-6{padding-left:42px;padding-right:42px}.px-8{padding-left:84px;padding-right:84px}.py-1{padding-top:4px;padding-bottom:4px}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:7px;padding-bottom:7px}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:14px;padding-bottom:14px}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:21px;padding-bottom:21px}.py-8{padding-top:84px;padding-bottom:84px}.pb-2{padding-bottom:7px}.pb-4{padding-bottom:21px}.pb-6{padding-bottom:42px}.pt-2{padding-top:7px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,SF Mono,Fira Code,Consolas,monospace}.font-note{font-family:ZCOOL XiaoWei,Ma Shan Zheng,Kaiti,STKaiti,serif}.font-ui{font-family:Noto Sans SC,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[15px\]{font-size:15px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-caramel{--tw-text-opacity: 1;color:rgb(198 123 60 / var(--tw-text-opacity, 1))}.text-paper{--tw-text-opacity: 1;color:rgb(255 245 225 / var(--tw-text-opacity, 1))}.text-paper-ink{--tw-text-opacity: 1;color:rgb(61 44 46 / var(--tw-text-opacity, 1))}.text-warm-gray-200{--tw-text-opacity: 1;color:rgb(184 176 164 / var(--tw-text-opacity, 1))}.text-warm-gray-300{--tw-text-opacity: 1;color:rgb(122 114 104 / var(--tw-text-opacity, 1))}.text-warm-gray-400{--tw-text-opacity: 1;color:rgb(74 66 64 / var(--tw-text-opacity, 1))}.text-warm-gray-500{--tw-text-opacity: 1;color:rgb(61 53 50 / var(--tw-text-opacity, 1))}.text-wax{--tw-text-opacity: 1;color:rgb(166 61 64 / var(--tw-text-opacity, 1))}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.shadow-lg{--tw-shadow: 0 8px 30px rgba(0,0,0,.5), 0 4px 8px rgba(0,0,0,.4);--tw-shadow-colored: 0 8px 30px var(--tw-shadow-color), 0 4px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-wax\/20{--tw-shadow-color: rgb(166 61 64 / .2);--tw-shadow: var(--tw-shadow-colored)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--color-bg-primary: #2C2825;--color-bg-secondary: #3D3532;--color-bg-tertiary: #4A4240;--color-paper: #FFF5E1;--color-paper-aged: #F5E6C8;--color-paper-ink: #3D2C2E;--color-paper-line: #E8DCC8;--color-accent: #C67B3C;--color-accent-hover: #B06A2E;--color-danger: #A63D40;--color-danger-hover: #8B3235;--color-text-primary: #F0EBE3;--color-text-secondary: #B8B0A4;--color-text-muted: #7A7268;--color-success: #5B8C5A;--color-warning: #D4A843;--color-error: #C44040;--color-metal-dark: #1A1816;--color-metal-mid: #2E2A27;--color-metal-light: #4A4540;--color-metal-highlight: #6B6560;--font-ui: "Noto Sans SC", -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--font-note: "ZCOOL XiaoWei", "Ma Shan Zheng", "Kaiti", "STKaiti", serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", Consolas, monospace;--font-serif: "Noto Serif SC", "Songti SC", "SimSun", serif;--sp-1: 4px;--sp-2: 7px;--sp-3: 14px;--sp-4: 21px;--sp-5: 28px;--sp-6: 42px;--sp-7: 56px;--sp-8: 84px;--radius-sm: 2px;--radius-md: 6px;--radius-lg: 12px;--radius-xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);--shadow-md: 0 4px 12px rgba(0,0,0,.4), 0 2px 4px rgba(0,0,0,.3);--shadow-lg: 0 8px 30px rgba(0,0,0,.5), 0 4px 8px rgba(0,0,0,.4);--shadow-glow: 0 0 20px rgba(198,123,60,.15);--shadow-paper: 2px 3px 8px rgba(0,0,0,.2), 0 1px 2px rgba(0,0,0,.15);--shadow-inset-deep: inset 0 2px 8px rgba(0,0,0,.6);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-in-quart: cubic-bezier(.5, 0, .75, 0);--ease-print: cubic-bezier(.25, .1, .25, 1.4);--transition-fast: .15s var(--ease-out-quint);--transition-normal: .25s var(--ease-out-quint);--transition-slow: .4s var(--ease-out-quint);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-toast: 400;--z-print: 500}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-ui);background-color:var(--color-bg-primary);color:var(--color-text-primary);min-height:100dvh;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-metal-light);border-radius:2px}::-moz-selection{background-color:#c67b3c4d;color:var(--color-text-primary)}::selection{background-color:#c67b3c4d;color:var(--color-text-primary)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.safe-top{padding-top:env(safe-area-inset-top,0px)}.paper-texture{background-color:var(--color-paper);background-image:repeating-linear-gradient(transparent,transparent 31px,var(--color-paper-line) 31px,var(--color-paper-line) 32px)}.metal-gradient{background:linear-gradient(180deg,var(--color-metal-light) 0%,var(--color-metal-mid) 30%,var(--color-metal-dark) 100%)}.metal-gradient-subtle{background:linear-gradient(180deg,var(--color-metal-mid) 0%,var(--color-metal-dark) 100%)}.print-slot-depth{background:linear-gradient(180deg,#0d0c0b,#1a1816);box-shadow:inset 0 2px 8px #0009,inset 0 -1px 2px #ffffff08}.shimmer{background:linear-gradient(90deg,var(--color-bg-secondary) 0%,var(--color-bg-tertiary) 50%,var(--color-bg-secondary) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.page-enter-active,.page-leave-active{transition:all .25s cubic-bezier(.22,1,.36,1)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-8px)}.toast-enter{animation:toast-in .3s cubic-bezier(.34,1.56,.64,1) forwards}.toast-leave{animation:toast-out .2s ease-in forwards}@keyframes toast-in{0%{transform:translateY(20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes toast-out{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-10px) scale(.95);opacity:0}}.printer-body{perspective:800px;perspective-origin:center bottom}.printer-shell{background:linear-gradient(180deg,#4a4540,#2e2a27 40%,#1a1816);border-radius:20px 20px 12px 12px;box-shadow:0 2px 4px #0000004d,0 8px 30px #0006,inset 0 1px #ffffff0d;border:1px solid rgba(255,255,255,.05);position:relative;overflow:hidden}.printer-vent{display:flex;gap:3px;padding:10px 16px;opacity:.3}.printer-vent span{flex:1;height:2px;background:#000;border-radius:1px}.printer-led{width:8px;height:8px;border-radius:50%;background:#3d3532;transition:all .3s ease}.printer-led.active{background:#c67b3c;box-shadow:0 0 8px #c67b3c80;animation:led-pulse 1s ease-in-out infinite}.printer-led.success{background:#5b8c5a;box-shadow:0 0 8px #5b8c5a80}.print-slot{margin:0 16px;background:#0d0c0b;border-radius:4px;min-height:80px;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #0009,inset 0 -1px 2px #ffffff08}.paper-note{background-color:var(--color-paper);color:var(--color-paper-ink);font-family:var(--font-note);padding:18px 16px 14px;position:relative;box-shadow:var(--shadow-paper);transform-origin:top center;line-height:1.9;font-size:15px;min-height:60px}.paper-note:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(transparent,transparent 31px,var(--color-paper-line) 31px,var(--color-paper-line) 32px);pointer-events:none;opacity:.5}.paper-note:after{content:"";position:absolute;top:0;left:50%;width:1px;height:100%;background:linear-gradient(180deg,#00000008,#0000000f,#00000008,#0000000f,#00000008,#0000000f);pointer-events:none}.print-cursor{display:inline-block;width:2px;height:1em;background:var(--color-paper-ink);margin-left:1px;vertical-align:text-bottom;animation:cursor-blink .8s step-end infinite}.wax-seal{position:absolute;bottom:14px;right:12px;width:32px;height:32px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#c44a4d,#8b3235);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #8b323566,inset 0 1px 2px #ffffff1a;opacity:.85;font-size:14px}.control-panel{display:flex;align-items:center;justify-content:center;gap:20px;padding:12px 16px}.control-btn{width:28px;height:28px;border-radius:50%;background:linear-gradient(180deg,#4a4540,#2e2a27);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#7a7268;font-size:10px;font-family:var(--font-mono);transition:all .15s ease}.control-btn:active{background:linear-gradient(180deg,#3d3532,#1a1816);color:#b8b0a4}@keyframes paper-feed{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.typing-char{opacity:0;animation:char-appear .05s ease-out forwards}@keyframes char-appear{to{opacity:1}}@keyframes paper-emerge{0%{transform:translateY(-100%) rotateX(15deg) scale(.95);opacity:0}30%{transform:translateY(-30%) rotateX(5deg) scale(.98);opacity:.7}60%{transform:translateY(5%) rotateX(-1deg) scale(1.01);opacity:1}80%{transform:translateY(-2%) rotateX(.5deg) scale(1)}to{transform:translateY(0) rotateX(0) scale(1)}}@keyframes paper-settle{0%{transform:translateY(0) rotate(0)}25%{transform:translateY(1px) rotate(.3deg)}50%{transform:translateY(-.5px) rotate(-.2deg)}75%{transform:translateY(.3px) rotate(.1deg)}to{transform:translateY(0) rotate(0)}}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes led-pulse{0%,to{opacity:.6;box-shadow:0 0 4px #c67b3c4d}50%{opacity:1;box-shadow:0 0 12px #c67b3c99}}@keyframes paper-fall{to{transform:translateY(200px) rotate(25deg);opacity:0}}@keyframes paper-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes dot-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.placeholder\:text-warm-gray-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(74 66 64 / var(--tw-text-opacity, 1))}.placeholder\:text-warm-gray-400::placeholder{--tw-text-opacity: 1;color:rgb(74 66 64 / var(--tw-text-opacity, 1))}.placeholder\:text-warm-gray-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(61 53 50 / var(--tw-text-opacity, 1))}.placeholder\:text-warm-gray-500::placeholder{--tw-text-opacity: 1;color:rgb(61 53 50 / var(--tw-text-opacity, 1))}.hover\:bg-caramel-dark:hover{--tw-bg-opacity: 1;background-color:rgb(176 106 46 / var(--tw-bg-opacity, 1))}.hover\:bg-wax-dark:hover{--tw-bg-opacity: 1;background-color:rgb(139 50 53 / var(--tw-bg-opacity, 1))}.hover\:text-caramel:hover{--tw-text-opacity: 1;color:rgb(198 123 60 / var(--tw-text-opacity, 1))}.hover\:text-paper:hover{--tw-text-opacity: 1;color:rgb(255 245 225 / var(--tw-text-opacity, 1))}.hover\:text-wax:hover{--tw-text-opacity: 1;color:rgb(166 61 64 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-caramel:focus{--tw-border-opacity: 1;border-color:rgb(198 123 60 / var(--tw-border-opacity, 1))}.focus\:border-caramel\/50:focus{border-color:#c67b3c80}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}
