/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-4{inset-inline:calc(var(--spacing) * 4)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.top-1\/2{top:50%}.bottom-4{bottom:calc(var(--spacing) * 4)}.grid{display:grid}.hidden{display:none}.table{display:table}.h-9{height:calc(var(--spacing) * 9)}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[420px\]{min-height:420px}.w-9{width:calc(var(--spacing) * 9)}.w-full{width:100%}.w-px{width:1px}.flex-1{flex:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-ew-resize{cursor:ew-resize}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[\#e7bcb5\]{border-color:#e7bcb5}.border-white\/80{border-color:#fffc}@supports (color:color-mix(in lab, red, red)){.border-white\/80{border-color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.bg-\[\#171312\]\/85{background-color:oklab(19.1209% .0056945 .00388569/.85)}.bg-\[\#f7f2ee\]{background-color:#f7f2ee}.bg-\[\#fff8f6\]\/95{background-color:oklab(98.3973% .00640979 .00475234/.95)}.bg-white{background-color:var(--color-white)}.object-contain{object-fit:contain}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.text-\[\#9a4d47\]{color:#9a4d47}.text-white{color:var(--color-white)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--background:#f2f0ee;--foreground:#211c1a}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--background);color:var(--foreground);font-family:var(--font-geist-sans), "PingFang SC", "Hiragino Sans GB", sans-serif;margin:0}button,textarea,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #9e5b5b}.workspace-root{background:#f1efed;grid-template-columns:304px minmax(0,1fr) 304px;min-height:100vh;display:grid}.workspace-panel{background:#fbfaf8;border-color:#e7e0db;flex-direction:column;min-width:0;display:flex}.left-panel{background:#f8f5f2;border-right:1px solid #e3dbd6;gap:16px;padding:16px 14px 20px;overflow-y:auto}.right-panel{border-left:1px solid #e7e0db;justify-content:space-between;padding:26px 20px 20px}.panel-section{flex-direction:column;gap:14px;display:flex}.section-title{color:#332a27;letter-spacing:.01em;align-items:center;gap:8px;font-size:13px;font-weight:650;display:flex}.section-title svg{color:#a96565}.style-library-link{color:#a96565;align-items:center;gap:3px;margin-left:auto;font-size:10px;text-decoration:none;display:inline-flex}.style-library-link:hover{color:#744742}.workspace-module-nav{align-items:center;gap:4px;margin-left:auto;margin-right:16px;display:flex}.workspace-module-link{color:#887873;border:1px solid #0000;border-radius:5px;align-items:center;gap:5px;padding:7px 9px;font-size:11px;text-decoration:none;display:inline-flex}.workspace-module-link:hover,.workspace-module-link.active{color:#744742;background:#f6ece8;border-color:#e6d2ca}.upload-button{color:#fffaf7;background:#261f1d;border:1px solid #261f1d;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-size:12px;font-weight:620;transition:background .16s,transform .16s;display:flex}.upload-button:hover{background:#4a3430;transform:translateY(-1px)}.file-chip{color:#766964;text-overflow:ellipsis;white-space:nowrap;background:#f4eeea;border:1px solid #e8ded8;border-radius:5px;align-items:center;gap:7px;padding:8px 9px;font-size:11px;display:flex;overflow:hidden}.file-chip span{text-overflow:ellipsis;overflow:hidden}.field-error{color:#a34848;margin:0;font-size:11px;line-height:1.5}.category-tabs{flex-wrap:wrap;gap:5px;display:flex}.category-tabs button,.mode-tabs button{color:#958680;background:0 0;border:1px solid #0000;border-radius:4px;padding:6px 7px;font-size:11px}.category-tabs button:hover,.mode-tabs button:hover{color:#382b28}.category-tabs button.active,.mode-tabs button.active{color:#6f3e3b;background:#f0e0da;border-color:#e5cdc5}.style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:1px;display:grid;overflow:auto}.style-card{text-align:left;background:#fffdfb;border:1px solid #eee7e2;border-radius:6px;align-items:center;gap:7px;min-width:0;padding:7px 6px;transition:border .16s,box-shadow .16s,transform .16s;display:flex;position:relative}.style-card-select{color:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:7px;min-width:0;padding:0;display:flex;position:relative}.style-card-select:focus-visible{border-radius:4px}.style-card:hover{border-color:#d8b8b0;transform:translateY(-1px)}.style-card.selected{border-color:#aa6c6a;box-shadow:0 0 0 2px #f2ddd8}.style-swatch{background-position:50%;background-size:cover;border:1px solid #4c26221f;border-radius:5px;flex:0 0 34px;height:42px}.style-meta{flex-direction:column;min-width:0;display:flex}.style-name{color:#362c29;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.style-tag{color:#a0938d;margin-top:3px;font-size:9px}.style-check{color:#a96565;position:absolute;top:4px;right:4px}.style-delete{color:#a56561;cursor:pointer;z-index:1;background:#fffdfbeb;border:0;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:grid;position:absolute;top:3px;right:3px}.style-library-actions{display:flex}.style-add-button,.style-clear-button,.style-upload-button,.reference-upload{color:#744742;background:#f6ece8;border:1px solid #e6d2ca;border-radius:5px;justify-content:center;align-items:center;gap:6px;min-height:31px;padding:0 9px;font-size:10px;display:inline-flex}.style-clear-button{background:#fff;border-color:#d9c5bd;margin-right:6px}.style-clear-button:hover:not(:disabled){background:#f7efec}.style-clear-button:disabled{cursor:not-allowed;opacity:.5}.style-add-button:hover,.style-upload-button:hover,.reference-upload:hover{background:#efdfd9}.custom-style-form{background:#fdf9f6;border:1px solid #eee1da;border-radius:6px;gap:8px;padding:9px;display:grid}.custom-style-form label{color:#7f716b;gap:4px;font-size:10px;display:grid}.custom-style-form input,.custom-style-form textarea{color:#40332f;background:#fff;border:1px solid #e5d9d3;border-radius:4px;min-width:0;padding:6px 7px;font-size:11px}.custom-style-form textarea{resize:vertical;min-height:54px}.reference-field{gap:7px;display:grid}.optional-label{color:#b09d95;margin-left:4px}.reference-preview{background:#fffdfb;border:1px solid #e5d9d3;border-radius:5px;align-items:center;gap:7px;min-width:0;padding:5px;display:flex}.reference-preview img{object-fit:cover;border-radius:3px;width:34px;height:34px}.reference-preview span{color:#766963;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;overflow:hidden}.reference-preview button{color:#a56561;background:0 0;border:0;align-items:center;padding:3px;display:grid}.reference-hint{color:#a0938d;margin:0;font-size:10px;line-height:1.45}.module-page{background:#f2f0ee;min-height:100vh;padding:34px clamp(20px,6vw,96px) 64px}.module-header{justify-content:space-between;align-items:flex-end;max-width:1180px;margin:0 auto 28px;display:flex}.back-link{color:#85635c;align-items:center;gap:5px;font-size:12px;text-decoration:none;display:inline-flex}.back-link:hover{color:#4f3631}.module-title{align-items:flex-start;gap:12px;margin-top:20px;display:flex}.module-title>svg{color:#a96565;margin-top:4px}.module-title h1,.module-section-heading h2,.style-manager-card h3{color:#302522;margin:0}.module-title h1{letter-spacing:0;font-size:26px}.module-title p,.module-section-heading p{color:#887873;margin:7px 0 0;font-size:12px;line-height:1.5}.module-count{color:#85635c;font-size:12px}.module-header-actions{place-items:flex-end end;gap:10px;display:grid}.module-nav{margin:0}.module-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:22px;max-width:1180px;margin:0 auto;display:grid}.module-form,.module-list{background:#fbfaf8;border:1px solid #e7e0db;border-radius:8px;padding:22px}.module-form{align-self:start;gap:14px;display:grid}.module-section-heading{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.module-section-heading h2{font-size:16px}.module-section-heading>svg{color:#a96565}.module-form label{color:#766963;gap:6px;font-size:11px;display:grid}.module-form input,.module-form textarea{color:#40332f;background:#fff;border:1px solid #e5d9d3;border-radius:5px;padding:9px 10px;font-size:12px}.module-form textarea{resize:vertical;min-height:92px}.style-manager-picker{color:#744742;background:#fdf9f6;border:1px dashed #d9b9ae;border-radius:6px;place-items:center;gap:4px;min-height:126px;padding:14px;display:grid}.style-manager-picker small{color:#a0938d;font-size:10px}.style-manager-preview{background:#fdf9f6;border:1px solid #eadbd4;border-radius:6px;align-items:center;gap:10px;padding:8px;display:flex}.style-manager-preview img{object-fit:cover;border-radius:4px;width:68px;height:68px}.style-manager-preview div{gap:6px;min-width:0;display:grid}.style-manager-preview strong{color:#4c3b36;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.style-manager-preview button{color:#a34848;text-align:left;background:0 0;border:0;padding:0;font-size:10px}.module-submit{min-height:42px;margin-top:2px}.field-success{color:#47755b;margin:0;font-size:11px;line-height:1.5}.module-empty{color:#a0938d;text-align:center;margin:24px 0;font-size:12px}.style-manager-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:18px;display:grid}.style-manager-card{background:#fffdfb;border:1px solid #eee3de;border-radius:7px;overflow:hidden}.style-manager-card>img{aspect-ratio:1.55;object-fit:cover;background:#f4eeea;width:100%;display:block}.style-manager-card-body{min-height:112px;padding:11px;position:relative}.style-manager-card-body h3{font-size:13px}.style-manager-card-body span{color:#a0938d;margin-top:4px;font-size:10px;display:block}.style-manager-card-body p{color:#766963;margin:9px 24px 0 0;font-size:11px;line-height:1.45}.icon-danger{color:#a34848;background:#fff7f4;border:1px solid #f0d8d1;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:grid;position:absolute;top:10px;right:10px}.icon-danger:hover{background:#fce9e4}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.preview-shell{flex-direction:column;min-width:0;padding:24px clamp(20px,4vw,58px) 26px;display:flex}.preview-topbar{grid-template-columns:minmax(190px,1fr) auto auto;align-items:center;gap:18px;margin-bottom:18px;display:grid}.preview-topbar>.mode-tabs{margin-left:0}.account-panel{background:#fffefd;border:1px solid #e6d9d2;border-radius:10px;flex-direction:column;align-items:stretch;gap:11px;width:100%;min-width:0;max-width:none;padding:14px;display:flex;box-shadow:0 6px 18px #40271e0f}.account-heading{color:#382824;justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:650;display:flex}.account-heading>span,.account-login,.account-icon-link,.account-buy-link,.account-panel button{align-items:center;gap:5px;display:inline-flex}.auth-shell{background:#f2f0ee;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:#fffdfb;border:1px solid #e7e0db;border-radius:8px;width:100%;max-width:420px;padding:32px}.auth-card h1{margin:8px 0}.auth-copy{color:#84756e;margin:0 0 22px;font-size:13px;line-height:1.6}.auth-form{gap:14px;display:grid}.auth-form label,.admin-actions label{color:#665852;gap:6px;font-size:12px;display:grid}.auth-form input,.admin-actions input{border:1px solid #dfd3cd;border-radius:4px;padding:10px}.auth-submit{color:#fff;background:#2b211f;border:0;border-radius:4px;justify-content:center;align-items:center;gap:7px;padding:11px;display:flex}.auth-switch{color:#9b5f5d;background:0 0;border:0;margin-top:16px;padding:0;font-size:12px}.admin-panel{border-top:1px solid #eee5df;margin-top:12px;padding-top:12px}.admin-panel summary{color:#744541;cursor:pointer;align-items:center;gap:6px;font-size:11px;list-style:none;display:flex}.admin-actions{gap:8px;margin-top:12px;display:grid}.admin-actions button{justify-content:center;align-items:center;gap:6px;display:flex}.admin-caption{color:#8e817a;font-size:10px}.admin-section{border-top:1px solid #f0e8e3;margin-top:10px;padding-top:8px}.admin-section strong{color:#5a403b;font-size:11px}.admin-row{color:#766963;justify-content:space-between;gap:8px;padding-top:6px;font-size:10px;display:flex}.account-balance{flex-direction:column;align-items:flex-start;gap:5px;padding:4px 0 2px;display:flex}.account-balance strong{color:#6d3f40;font-size:28px;font-weight:700;line-height:1}.account-balance span,.account-muted{color:#988b85;font-size:10px}.account-source{color:#75615a;font-size:10px;font-weight:650}.account-login,.account-icon-link,.account-buy-link{color:#8a5653;font-size:11px;text-decoration:none}.account-login:hover,.account-icon-link:hover,.account-buy-link:hover{color:#5e3734}.recharge-row{gap:6px;display:flex}.recharge-row input,.recharge-row select{color:#55433e;background:#fff;border:1px solid #e6dcd6;border-radius:4px;min-width:0;min-height:29px;padding:0 7px;font-size:10px}.recharge-row input{flex:1}.recharge-row button{color:#fffaf7;background:#6d3f40;border:1px solid #6d3f40;border-radius:5px;justify-content:center;padding:0 8px;font-size:10px}.recharge-row button:disabled{opacity:.55}.account-success{color:#3d8055;margin:0;font-size:10px}.usage-details{color:#776963;border-top:1px solid #eee5df;padding-top:9px;font-size:10px}.usage-details summary{cursor:pointer}.usage-list{flex-direction:column;gap:4px;margin-top:7px;display:flex}.usage-item{justify-content:space-between;display:flex}.admin-root{background:#f4f1ee;grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{color:#f8efeb;background:#2b211f;flex-direction:column;gap:22px;padding:22px 14px;display:flex}.admin-brand{align-items:center;gap:9px;padding:0 8px;font-size:14px;font-weight:700;display:flex}.admin-brand-mark{background:#c4877e;border-radius:4px;justify-content:center;align-items:center;width:27px;height:27px;font-size:10px;display:inline-flex}.admin-sidebar nav{gap:4px;display:grid}.admin-nav-link,.admin-back-link{color:#cdbdb7;border-radius:4px;align-items:center;gap:9px;padding:9px 10px;font-size:12px;text-decoration:none;display:flex}.admin-nav-link:hover,.admin-nav-link.active{color:#fffaf7;background:#4a3531}.admin-back-link{border-top:1px solid #493733;border-radius:0;margin-top:auto;padding-top:15px}.admin-main{min-width:0}.admin-topbar{background:#fffdfb;border-bottom:1px solid #e8dfda;justify-content:space-between;align-items:center;min-height:82px;padding:18px clamp(18px,4vw,42px);display:flex}.admin-topbar h1{font-size:22px}.admin-user{color:#725f59;align-items:center;gap:10px;font-size:12px;display:flex}.admin-user button,.icon-button{color:#72504a;background:0 0;border:1px solid #ded2cc;border-radius:4px;justify-content:center;align-items:center;min-width:32px;min-height:32px;display:inline-flex}.admin-content{gap:18px;padding:26px clamp(18px,4vw,42px);display:grid}.admin-toolbar{justify-content:space-between;align-items:center;gap:14px;display:flex}.admin-toolbar h2{color:#332724;margin:0 0 5px;font-size:18px}.admin-toolbar p{color:#93827b;margin:0;font-size:12px}.admin-toolbar button,.admin-form-grid button,.admin-state button,.admin-pagination button{color:#fffaf7;background:#4b302d;border:1px solid #4b302d;border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 11px;font-size:12px;display:inline-flex}.admin-action-link{color:#704944;border:1px solid #d9c9c2;border-radius:4px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:12px;text-decoration:none;display:inline-flex}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.metric-card{background:#fffdfb;border:1px solid #e9dfd9;border-radius:5px;gap:10px;min-height:86px;padding:14px;display:grid}.metric-card span{color:#917f77;font-size:11px}.metric-card strong{color:#4b302d;font-size:21px}.admin-table-wrap{background:#fffdfb;border:1px solid #e8dfda;border-radius:5px;overflow-x:auto}.admin-table-wrap table{border-collapse:collapse;width:100%;min-width:760px}.admin-table-wrap caption{color:#493631;text-align:left;padding:15px;font-size:13px;font-weight:650}.admin-table-wrap th,.admin-table-wrap td{text-align:left;white-space:nowrap;border-bottom:1px solid #f0e9e5;padding:11px 13px;font-size:11px}.admin-table-wrap td small{color:#9b8d87;margin-top:3px;font-size:10px;display:block}.admin-row-actions,.admin-toolbar-actions{white-space:nowrap;align-items:center;gap:7px;display:flex}.admin-detail-panel{background:#fffdfb;border:1px solid #e5d9d3;border-radius:7px;margin-top:18px;padding:18px}.admin-detail-panel .admin-toolbar{margin-bottom:14px}.admin-detail-panel h3{color:#4f3a35;align-items:center;gap:6px;margin:0 0 10px;font-size:13px;display:flex}.admin-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 18px;margin-bottom:16px;display:grid}.admin-detail-grid div{border-bottom:1px solid #f0e8e3;gap:3px;padding:7px 0;display:grid}.admin-detail-grid span{color:#9b8d87;font-size:10px}.admin-detail-grid strong{color:#4d3b35;overflow-wrap:anywhere;font-size:11px}.admin-inline-field{color:#766963;align-items:center;gap:8px;margin-bottom:10px;font-size:11px;display:flex}.admin-inline-field select,.admin-filter select,.admin-package-form input:not([type=checkbox]),.admin-package-form select,.admin-balance-form input{background:#fff;border:1px solid #dfd3cd;border-radius:4px;min-height:34px;padding:0 8px}.admin-balance-form{background:#fdf9f6;border:1px solid #eee1da;border-radius:6px;gap:8px;margin:14px 0;padding:12px;display:grid}.admin-balance-form h3{margin-bottom:2px}.admin-package-form{background:#fdf9f6;border:1px solid #eee1da;border-radius:6px;grid-template-columns:1.2fr .7fr .7fr 1.5fr .5fr auto auto auto;align-items:end;gap:8px;margin-bottom:14px;padding:12px;display:grid}.admin-package-form h3{color:#4f3a35;grid-column:1/-1;margin:0;font-size:13px}.admin-package-form label{color:#766963;white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:flex}.admin-package-form button,.admin-balance-form button{justify-content:center;align-items:center;gap:5px;display:inline-flex}.admin-table-wrap th{color:#77625b;background:#fbf7f4;font-weight:650}.admin-table-wrap td{color:#5f4c46}.admin-filter{align-items:center;gap:9px;display:flex}.admin-filter label{color:#8b7770;background:#fffdfb;border:1px solid #e0d4ce;border-radius:4px;flex:1;align-items:center;gap:7px;max-width:420px;padding-left:9px;font-size:11px;display:flex}.admin-filter input,.admin-form-grid input,.admin-form-grid select,.admin-settings input{color:#4b3a35;background:#fff;border:0;outline:0;width:100%;min-width:0;min-height:34px;padding:0 8px}.admin-form-grid{background:#fffdfb;border:1px solid #e8dfda;border-radius:5px;grid-template-columns:repeat(3,minmax(120px,1fr)) auto;align-items:end;gap:10px;padding:14px;display:grid}.admin-form-grid label,.admin-settings label{color:#77635c;gap:5px;font-size:11px;display:grid}.admin-form-grid input,.admin-form-grid select{border:1px solid #e0d4ce;border-radius:4px}.admin-settings{background:#fffdfb;border:1px solid #e8dfda;border-radius:5px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;padding:16px;display:grid}.admin-settings input:not([type=checkbox]),.admin-settings select{border:1px solid #e0d4ce;border-radius:4px}.admin-settings input[type=checkbox]{accent-color:#287a69;justify-self:start;width:18px;height:18px;min-height:18px;padding:0}.admin-settings select{color:#4b3a35;background:#fff;width:100%;min-width:0;min-height:34px;padding:0 8px}.admin-loading,.admin-notice,.admin-error,.admin-state{color:#816f68;background:#fffdfb;border:1px solid #e8dfda;border-radius:5px;padding:14px;font-size:12px}.admin-status{color:#394150;white-space:nowrap;background:#f6f8fa;border:1px solid #d8dee7;border-radius:4px;align-items:center;min-height:22px;padding:2px 7px;font-size:12px;display:inline-flex}.admin-status-active,.admin-status-paid,.admin-status-completed,.admin-status-redeemed,.admin-status-success{color:#176b38;background:#edf8f0;border-color:#b7dfc5}.admin-status-disabled,.admin-status-deleted,.admin-status-failed,.admin-status-refunded,.admin-status-revoked,.admin-status-failure{color:#a32822;background:#fff1f0;border-color:#edc3c0}.admin-dashboard-skeleton{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;min-height:150px;display:grid}.admin-dashboard-skeleton span{background:linear-gradient(90deg,#f2f4f6 25%,#fafbfc 50%,#f2f4f6 75%) 0 0/200% 100%;border:1px solid #e2e6eb;border-radius:6px;min-height:88px;animation:1.4s ease-in-out infinite admin-skeleton}@keyframes admin-skeleton{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.admin-dashboard-skeleton span{animation:none}}.admin-error,.admin-state-error{color:#a34848}.admin-pagination{color:#806e67;justify-content:flex-end;align-items:center;gap:12px;font-size:11px;display:flex}.admin-pagination button{color:#6d4a44;background:#fffdfb;border-color:#d9c9c2}.danger-button{color:#a34848;background:0 0;border:1px solid #d79d99;border-radius:4px;padding:5px 8px;font-size:11px}.admin-login-shell{background:#f4f1ee;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.admin-login-card{background:#fffdfb;border:1px solid #e8dfda;border-radius:7px;gap:14px;width:100%;max-width:410px;padding:30px;display:grid}.admin-login-card label{color:#6d5a53;gap:6px;font-size:12px;display:grid}.admin-login-card input{border:1px solid #ded2cc;border-radius:4px;min-height:40px;padding:0 10px}@media (width<=760px){.module-page{padding:24px 14px 40px}.module-header{flex-direction:column;align-items:flex-start;gap:12px}.module-header-actions{place-items:flex-start start;width:100%}.module-title h1{font-size:22px}.module-layout{grid-template-columns:1fr}.module-form,.module-list{padding:16px}.admin-root{display:block}.admin-sidebar{gap:12px;padding:12px}.admin-sidebar nav{display:flex;overflow-x:auto}.admin-nav-link{flex:none}.admin-back-link{display:none}.admin-topbar{align-items:flex-start;gap:10px}.admin-user{font-size:10px}.admin-form-grid{grid-template-columns:1fr 1fr}.admin-form-grid button{grid-column:span 2}.admin-package-form{grid-template-columns:1fr 1fr}.admin-package-form h3,.admin-package-form input[placeholder=描述]{grid-column:1/-1}.admin-package-form label,.admin-package-form button{grid-column:span 1}.admin-detail-grid{grid-template-columns:1fr 1fr}.admin-toolbar-actions{flex-wrap:wrap}}.eyebrow{color:#ac8b82;letter-spacing:.12em;text-transform:uppercase;margin:0 0 5px;font-size:10px}h1{color:#2b211f;letter-spacing:0;margin:0;font-size:24px}.mode-tabs{background:#e9e3df;border-radius:5px;gap:2px;padding:3px;display:flex}.mode-tabs button:disabled{color:#c5bbb5}.preview-stage{background:#fffaf7;border:1px solid #e6ddd8;border-radius:10px;flex:1;min-height:0;position:relative;overflow:hidden;box-shadow:0 10px 28px #422a210d}.empty-upload{color:#4c3b37;text-align:center;background:#f8f4f1;border:1px dashed #d9c6bd;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;min-height:520px;padding:30px;display:flex}.empty-upload:hover{background:#f5ece8;border-color:#ba8c82}.empty-icon{color:#9e5b5b;background:#ead8d2;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:18px;display:grid}.empty-title{font-size:16px;font-weight:650}.empty-copy{color:#9a8981;margin-top:9px;font-size:12px}.preview-status{color:#9c8e88;justify-content:space-between;padding:11px 2px 0;font-size:11px;display:flex}.generation-history{border-top:1px solid #e7ded8;margin-top:16px;padding-top:14px}.generation-history-heading{justify-content:space-between;align-items:baseline;margin-bottom:9px;display:flex}.generation-history-heading h2{color:#4d3a35;margin:0;font-size:13px}.generation-history-heading span{color:#9c8e88;font-size:10px}.generation-history-heading a{color:#8f5d57;font-size:11px;font-weight:650;text-decoration:none}.generation-history-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:7px;max-height:154px;display:grid;overflow-y:auto}.generation-history-item{color:#5f4b45;cursor:pointer;text-align:left;background:#fffdfb;border:1px solid #eadfd9;border-radius:5px;align-items:center;gap:8px;min-width:0;padding:6px;display:flex}.generation-history-item:hover:not(:disabled){background:#fff8f5;border-color:#bf8e84}.generation-history-item:disabled{cursor:not-allowed;opacity:.55}.generation-history-thumb{color:#9c8e88;background:#f2ebe7;border-radius:3px;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;display:flex;overflow:hidden}.generation-history-thumb img{object-fit:cover;width:100%;height:100%}.generation-history-meta{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.generation-history-meta strong{color:#5a403b;font-size:11px;font-weight:650}.generation-history-meta span,.generation-history-action{color:#9c8e88;font-size:10px}.generation-history-action{flex:none}.history-page{background:radial-gradient(circle at 12% 0,#e2bfb52e,#0000 34%),#f2f0ee;min-height:100vh}.history-refresh,.history-download{justify-content:center;align-items:center;gap:7px;min-height:34px;display:inline-flex}.history-layout{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px;max-width:1180px;margin:0 auto;display:grid}.history-viewer,.history-list{background:#fffdfbeb;border:1px solid #e5d9d3;border-radius:10px;box-shadow:0 10px 28px #422a210d}.history-viewer{flex-direction:column;min-width:0;min-height:650px;display:flex;overflow:hidden}.history-viewer-toolbar{border-bottom:1px solid #eadfd9;grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.history-viewer-toolbar>div:first-child{flex-direction:column;gap:3px;min-width:0;display:flex}.history-viewer-toolbar strong{color:#4d3a35;font-size:13px}.history-viewer-toolbar span{color:#9c8e88;font-size:11px}.history-compare-wrap{flex:1;min-height:0;padding:12px}.history-list{align-self:start;max-height:650px;overflow:hidden}.history-list-heading{border-bottom:1px solid #eadfd9;justify-content:space-between;align-items:baseline;padding:16px;display:flex}.history-list-heading h2{color:#4d3a35;margin:0;font-size:14px}.history-list-heading span{color:#9c8e88;font-size:11px}.history-row{color:#5f4b45;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #f0e7e2;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:11px 14px;display:grid}.history-list>.history-row:last-child{border-bottom:0}.history-row:hover:not(:disabled),.history-row.active{background:#fff5f1}.history-row:disabled{cursor:not-allowed;opacity:.58}.history-row-thumb{aspect-ratio:1;color:#a58f87;background:#f2ebe7;border-radius:5px;place-items:center;width:58px;display:grid;overflow:hidden}.history-row-thumb img{object-fit:cover;width:100%;height:100%}.history-row-body{flex-direction:column;gap:4px;min-width:0;display:flex}.history-row-body strong{color:#4d3a35;font-size:12px}.history-row-body span,.history-row-body small,.history-row-state{color:#9c8e88;font-size:10px}.history-row-state{white-space:nowrap}.history-empty{color:#8d7e77;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;min-height:320px;padding:30px;display:flex}.history-empty strong{color:#4d3a35;font-size:15px}.history-empty span{color:#9c8e88;font-size:12px}.loading-mask{color:#6c4745;background:#fffaf7c7;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:12px;display:flex;position:absolute;inset:0}.control-group,.range-field,.prompt-field{flex-direction:column;gap:8px;display:flex}.control-label,.prompt-field>span,.range-field>span{color:#7f716b;font-size:11px}.segmented{background:#f0ebe7;border-radius:5px;grid-auto-flow:column;gap:2px;padding:3px;display:grid}.segmented button{color:#958680;background:0 0;border:0;border-radius:4px;min-height:29px;font-size:11px}.segmented button.active{color:#5e3835;background:#fffdfb;font-weight:620;box-shadow:0 1px 4px #3f261c1a}.range-field>span{justify-content:space-between;display:flex}.range-field strong{color:#65423d;font-size:11px;font-weight:650}input[type=range]{accent-color:#a76262;width:100%;height:4px}.toggle-row{color:#7f716b;justify-content:space-between;align-items:center;padding-top:3px;font-size:11px;display:flex}.toggle-row input{accent-color:#a76262;width:16px;height:16px}.prompt-field textarea{color:#40332f;resize:vertical;background:#fffdfb;border:1px solid #e5dcd7;border-radius:5px;outline:none;min-height:80px;padding:9px 10px;font-size:12px;line-height:1.55}.prompt-field textarea:focus{border-color:#bc8882;box-shadow:0 0 0 3px #f4e4df}.action-stack{flex-direction:column;gap:8px;display:flex}.primary-action,.secondary-action,.ghost-action{border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:40px;font-size:12px;display:flex}.primary-action{color:#fffaf7;background:#2c211f;border:1px solid #2c211f}.primary-action:hover:not(:disabled){background:#573d38}.secondary-action{color:#744742;background:#f3e6e1;border:1px solid #e2cfc7}.secondary-action:hover:not(:disabled){background:#edd9d2}.ghost-action{color:#a1938d;background:0 0;border:1px solid #0000}.ghost-action:hover{color:#654b46;background:#f4efec}.primary-action:disabled,.secondary-action:disabled{cursor:not-allowed;opacity:.42}@media (width<=1050px){.workspace-module-nav{margin-left:0;margin-right:0}.workspace-root{grid-template-columns:250px minmax(0,1fr) 266px}.left-panel,.right-panel{padding-left:14px;padding-right:14px}.preview-shell{padding-left:20px;padding-right:20px}.preview-topbar{grid-template-columns:minmax(150px,1fr) auto;gap:12px}.preview-topbar>.mode-tabs{grid-column:1/-1;justify-self:start}.history-layout{grid-template-columns:1fr}.history-list{max-height:none}}@media (width<=820px){.workspace-root{flex-direction:column;display:flex}.preview-shell{order:-1;min-height:600px;padding:22px 16px 18px}.preview-topbar{flex-wrap:wrap;display:flex}.preview-topbar>.mode-tabs{margin-left:auto}.left-panel,.right-panel{border:0;border-top:1px solid #e7e0db;padding:18px 16px}.style-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.empty-upload{min-height:430px}}@media (width<=520px){.preview-topbar{flex-direction:column;align-items:flex-start;gap:14px}.preview-topbar>.mode-tabs{width:100%;margin-left:0}.account-panel{width:100%;max-width:none}h1{font-size:21px}.mode-tabs{align-self:stretch}.mode-tabs button{flex:1}.history-viewer{min-height:560px}.history-viewer-toolbar{grid-template-columns:1fr;align-items:stretch}.history-download{width:100%}.history-row{grid-template-columns:56px minmax(0,1fr)}.history-row-thumb{width:56px}.history-row-state{display:none}.style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
