.admin-page{display:flex;flex-direction:column;min-height:100%;overflow:visible;background:linear-gradient(180deg,#fffaf2f5,#f6e3dae0),#fff8ee}.admin-login-page{display:grid;place-items:center;padding:28px}.admin-login-card{display:grid;width:100%;gap:14px;padding:24px;border:1px solid rgba(132,93,72,.12);border-radius:28px;background:#fffaf2f5;box-shadow:0 18px 42px #78533d29}.admin-kicker{margin:0;color:#8b604c;font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:700}.admin-login-card h1,.admin-header h1,.admin-card h2,.admin-form-card h3,.admin-subsection h3,.admin-product-info h3{margin:0;color:#6a4634}.admin-login-card h1{font-size:28px}.admin-login-card p,.admin-header p,.admin-card p{margin:0;color:#927064;font-size:13px;line-height:1.5}.admin-header{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;padding:22px 20px 10px}.admin-header h1{font-family:Georgia,Times New Roman,serif;font-size:23px}.admin-actions-top{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 20px 12px}.admin-save-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 20px 10px;border:1px solid rgba(148,103,82,.12);border-radius:15px;background:#fff2e6;color:#765342;font-size:12px;font-weight:900;padding:9px 12px}.admin-save-status small{color:#987365;font-size:11px;font-weight:800;text-align:right}.admin-save-status.is-saved{background:#edf2df;color:#63723e}.admin-save-status.is-failed{background:#f3d9d1;color:#8a463c}.admin-save-status.is-saving{background:#f7ead8}.admin-save-status.inline{margin:0 0 12px}.admin-scroll{min-height:0;overflow:visible;padding:0 16px 24px}.admin-card,.admin-form-card{border:1px solid rgba(160,118,94,.1);border-radius:22px;background:#fffaf2f0;box-shadow:0 12px 28px #78533d1a;padding:15px}.admin-card+.admin-card{margin-top:13px}.admin-section-heading{display:grid;gap:12px;margin-bottom:14px}.admin-section-heading h2{font-size:18px}.admin-inline-form,.admin-form-grid,.admin-actions-top,.data-actions,.form-actions{display:grid;gap:8px}.admin-inline-form,.form-actions{grid-template-columns:1fr auto}.admin-field{display:grid;gap:7px;color:#725140;font-size:12px;font-weight:800}.admin-field.compact{min-width:0}.admin-field input,.admin-field select,.admin-field textarea,.admin-inline-form input{width:100%;min-height:46px;border:1px solid rgba(148,103,82,.16);border-radius:15px;outline:none;background:#fffaf2;color:#634331;font-size:14px;font-weight:700;padding:0 12px}.admin-field textarea{min-height:82px;resize:vertical;padding:11px 12px;line-height:1.45}.admin-navigation-shell{min-width:0;margin:0 20px 12px}.admin-navigation{display:flex;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:0 8px 9px 0;scroll-behavior:smooth;scrollbar-color:#bd8270 #f4e6dc;scrollbar-width:auto}.admin-navigation::-webkit-scrollbar{height:10px}.admin-navigation::-webkit-scrollbar-track{border-radius:999px;background:#f4e6dc}.admin-navigation::-webkit-scrollbar-thumb{border:2px solid #f4e6dc;border-radius:999px;background:#bd8270}.admin-navigation-track{display:flex;width:max-content;min-width:100%;flex-wrap:nowrap;gap:7px;white-space:nowrap}.admin-navigation button{min-height:36px;flex:0 0 auto;border:1px solid rgba(148,103,82,.14);border-radius:999px;background:#fff8ef;color:#856253;cursor:pointer;font-size:12px;font-weight:900;padding:0 12px}.admin-navigation button.is-active{border-color:#bf7d6e;background:#e7b0a1;color:#fffaf7}.analytics-dashboard{display:grid;gap:13px}.analytics-header,.analytics-card{display:grid;gap:12px}.analytics-horizontal-scroll{max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:0 10px 9px 0;scrollbar-color:#bd8270 #f4e6dc;scrollbar-width:auto}.analytics-horizontal-scroll:focus-visible{outline:2px solid rgba(191,125,110,.68);outline-offset:3px}.analytics-horizontal-scroll::-webkit-scrollbar{height:10px}.analytics-horizontal-scroll::-webkit-scrollbar-track{border-radius:999px;background:#f4e6dc}.analytics-horizontal-scroll::-webkit-scrollbar-thumb{border:2px solid #f4e6dc;border-radius:999px;background:#bd8270}.analytics-horizontal-scroll-content{width:max-content;min-width:100%}.analytics-range-scroll{margin-right:-2px}.analytics-range-controls{display:flex;width:max-content;min-width:100%;gap:7px;padding-bottom:1px;white-space:nowrap}.analytics-range-controls button{flex:0 0 auto;min-height:34px;border:1px solid rgba(148,103,82,.16);border-radius:999px;background:#fff8ef;color:#765342;font-weight:800;padding:0 11px}.analytics-range-controls button.is-active{border-color:#bf7d6e;background:#e7b0a1;color:#fff}.analytics-custom-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}.analytics-custom-range label,.analytics-toggle{display:grid;gap:5px;color:#725140;font-size:12px;font-weight:800}.analytics-custom-range input{min-width:0;min-height:40px;border:1px solid rgba(148,103,82,.16);border-radius:12px;background:#fffaf2;color:#634331;padding:0 8px}.analytics-toggle{display:flex;align-items:center}.analytics-toggle input{accent-color:#c85647}.analytics-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.analytics-stat{display:grid;gap:5px;min-height:78px;border:1px solid rgba(160,118,94,.1);border-radius:16px;background:#fffaf2f0;box-shadow:0 8px 18px #78533d14;padding:12px}.analytics-stat span,.analytics-card h3,.analytics-list small,.analytics-chart-note{color:#927064;font-size:12px}.analytics-stat strong{color:#6a4634;font-family:Georgia,Times New Roman,serif;font-size:19px}.analytics-funnel{display:grid;width:max-content;min-width:460px;grid-template-columns:repeat(5,minmax(76px,1fr));gap:8px}.analytics-funnel div{display:grid;gap:4px;min-width:76px;border-left:3px solid #e7b0a1;padding-left:8px}.analytics-funnel strong{color:#6a4634;font-size:12px}.analytics-funnel span{color:#6a4634;font-size:17px;font-weight:900}.analytics-funnel small{color:#927064;font-size:11px}.analytics-chart{display:flex;width:max-content;min-width:620px;align-items:end;gap:5px;height:156px;padding:8px 2px 0}.analytics-bar{display:grid;grid-template-rows:1fr auto;align-items:end;flex:0 0 25px;height:100%;gap:5px}.analytics-bar i{display:block;width:100%;min-height:2px;border-radius:4px 4px 1px 1px;background:#d97d6b}.analytics-bar small{color:#927064;font-size:9px;writing-mode:vertical-rl;transform:rotate(180deg)}.analytics-list{display:grid;gap:7px}.analytics-wide-list{min-width:480px}.analytics-list p{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(160,118,94,.1);padding-bottom:7px}.analytics-list p:last-child{border-bottom:0;padding-bottom:0}.analytics-list span{min-width:0;color:#725140;font-size:13px;font-weight:800}.analytics-list strong{flex:0 0 auto;color:#6a4634;font-size:12px}@media(min-width:680px){.analytics-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.color-manager-list{display:grid;gap:10px;margin-top:12px}.color-manager-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:start;border:1px solid rgba(152,105,83,.12);border-radius:16px;background:#fff6eb;padding:10px}.color-manager-swatch{width:42px;height:42px;border:3px solid #fff;border-radius:50%;box-shadow:inset 0 0 0 1px #52332433,0 4px 10px #5233241f}.color-manager-fields{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:8px}.color-manager-fields .admin-field:last-child{grid-column:1 / -1}.color-manager-fields input[type=color]{min-height:42px}.color-manager-hat-preview{display:grid;grid-column:1 / -1;width:100%;min-height:118px;place-items:center;overflow:hidden;border:1px solid rgba(152,105,83,.1);border-radius:14px;background:#f7efe8}.color-manager-hat-preview .product-art{width:min(118px,44vw);height:108px}.color-hat-preview-empty{padding:12px;color:#8f6e60;font-size:12px;line-height:1.45;text-align:center}.color-manager-actions{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:7px}.color-manager-actions button{min-height:36px;font-size:11px}.color-manager-actions-bottom{margin-top:14px}.admin-validation-error{margin:0 0 10px;border-radius:12px;background:#f7dfd8;color:#973f35;font-size:12px;font-weight:800;padding:9px 11px}.product-palette-picker{display:grid;gap:8px;margin-top:2px;border-top:1px solid rgba(148,103,82,.1);color:#725140;font-size:12px;font-weight:800;padding-top:10px}.product-palette-picker>div{display:flex;flex-wrap:wrap;gap:7px}.product-palette-option{display:inline-flex;min-height:32px;align-items:center;gap:5px;border:1px solid rgba(148,103,82,.13);border-radius:999px;background:#fffaf2;color:#725140;font-size:11px;padding:4px 8px}.product-palette-option input{width:14px;height:14px;accent-color:#bf7d6e}.product-palette-option i{width:14px;height:14px;border:1px solid rgba(82,51,36,.18);border-radius:50%}.landing-settings-page{display:grid;gap:12px}.landing-settings-heading{margin:0 2px}.landing-settings-heading .admin-kicker{margin-bottom:3px;font-size:14px}.landing-preview-open{width:fit-content;min-height:38px;margin-top:9px;padding:0 12px;font-size:12px}.landing-settings-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:13px}.landing-settings-form{display:grid;gap:12px}.landing-image-section{gap:11px}.landing-toggle-row{display:flex;min-height:40px;align-items:center;gap:9px;border:1px solid #eadfd7;border-radius:8px;background:#fffdfa;color:#5f4030;font-size:13px;font-weight:800;padding:0 11px}.landing-toggle-row input{width:18px;height:18px;accent-color:#df1117}.landing-toggle-row:has(input:disabled){color:#9a8d85}.landing-background-section{border-color:#df111724}.landing-background-controls{gap:8px}.landing-background-controls select{width:100%;min-height:40px;border:1px solid #eadfd7;border-radius:8px;background:#fffdfa;color:#3f2c23;font:inherit;padding:0 9px}.landing-overlay-slider{display:grid;gap:6px;color:#795544;font-size:12px;font-weight:800}.landing-overlay-slider span{display:flex;align-items:center;justify-content:space-between}.landing-overlay-slider strong{color:#a66d5b}.landing-overlay-slider input{width:100%;min-height:32px;accent-color:#df1117}.landing-image-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.landing-image-actions button:first-child{grid-column:1 / -1}.landing-image-actions button{min-height:42px}.landing-image-guidance{margin:0;color:#76635a;font-size:12px;line-height:1.5}.landing-image-meta{display:grid;gap:6px;margin:0;padding:10px 12px;border:1px solid #eadfd7;border-radius:8px;background:#fffdfa}.landing-image-meta div{display:flex;justify-content:space-between;gap:12px;min-width:0}.landing-image-meta dt{flex:0 0 auto;color:#7f5d4b;font-size:12px;font-weight:800}.landing-image-meta dd{min-width:0;margin:0;color:#3f2c23;font-size:12px;text-align:right;overflow-wrap:anywhere}.landing-form-actions{grid-template-columns:1fr 1fr}.landing-form-actions button:first-child{grid-column:1 / -1}.landing-save-progress{margin:10px 0 0;border-radius:12px;background:#f8e8e7;color:#9d1c20;font-size:12px;font-weight:800;line-height:1.45;padding:9px 11px}.landing-line-height-field span{display:flex;align-items:center;justify-content:space-between}.landing-line-height-field strong{color:#a66d5b}.landing-line-height-field input[type=range]{width:100%;min-height:32px;accent-color:#bf7d6e}.landing-text-size-section{gap:11px}.landing-text-size-section summary{cursor:pointer;color:#6a4634;font-size:14px;font-weight:900}.landing-text-size-section>p{margin:-3px 0 0;color:#8f6e60;font-size:12px;font-weight:700;line-height:1.45}.landing-text-size-control,.landing-text-size-pair{display:grid;gap:7px}.landing-text-size-control{border-top:1px solid rgba(148,103,82,.1);padding-top:10px}.landing-text-size-heading,.landing-text-size-heading label,.landing-line-height-field span{display:flex;align-items:center;justify-content:space-between;gap:8px}.landing-text-size-heading{color:#795544;font-size:12px}.landing-text-size-heading label{color:#a66d5b;font-weight:900}.landing-text-size-heading input{width:56px;min-height:32px;border:1px solid rgba(148,103,82,.16);border-radius:10px;background:#fffaf2;color:#6a4634;font-size:13px;font-weight:900;padding:0 7px;text-align:center}.landing-text-size-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.landing-text-size-actions input[type=range],.landing-line-height-field input[type=range]{width:100%;min-height:32px;accent-color:#bf7d6e}.landing-text-size-actions button{min-height:34px;border-radius:10px;font-size:11px;padding:0 9px}.landing-line-height-field{display:grid;gap:5px;color:#795544;font-size:12px;font-weight:800}.landing-live-preview{display:grid;gap:8px}.landing-preview-label{display:flex;align-items:baseline;justify-content:space-between;color:#6a4634;font-size:14px;font-weight:900}.landing-preview-label small{color:#9b7565;font-size:11px}.landing-preview-device{position:relative;width:min(100%,390px);height:clamp(500px,72vh,640px);justify-self:center;overflow:hidden;border:1px solid rgba(138,99,73,.1);border-radius:30px;background:#f7f5f1;box-shadow:0 15px 32px #6848372e}.landing-preview-device .intro-screen{height:100%;min-height:0;padding:14px}.landing-preview-device .landing-card{min-height:100%;border-radius:24px;padding:27px 20px 20px}.landing-preview-device .brand-mark{font-size:min(var(--brand-title-font-size, 30px),10.8cqw,7.8cqh)}.landing-preview-device .landing-divider.is-soft{margin:clamp(10px,2.3cqh,20px) auto 0}.landing-preview-device .brand-logo{width:min(70cqw,36cqh,300px)}.landing-preview-device .intro-copy h1{font-size:min(var(--hero-title-font-size, 31px),11.3cqw,7.8cqh);line-height:var(--hero-title-line-height, 1.3)}.landing-preview-device .intro-copy p{max-width:350px;margin:0 auto;font-size:min(var(--hero-description-font-size, 16px),6.15cqw,4.5cqh);line-height:var(--hero-description-line-height, 1.58)}.landing-preview-device .primary-button.intro-button{min-height:clamp(50px,7.4cqh,62px);margin-top:0;border-radius:20px;font-size:min(var(--start-button-font-size, 20px),7.2cqw,4.2cqh)}.landing-preview-device .intro-note{margin:0;font-size:min(var(--mobile-guide-font-size, 14px),5.15cqw,3.2cqh)}.landing-preview-device .admin-entry-button{font-size:min(var(--admin-link-font-size, 13px),5.15cqw,3.2cqh)}.admin-field input[type=color]{padding:5px}.admin-field input[type=file]{padding:10px}.admin-list,.admin-product-list{display:grid;gap:10px;margin-top:12px}.admin-row-card,.admin-product-card{position:relative;border:1px solid rgba(152,105,83,.12);border-radius:18px;background:#fff6eb;box-shadow:0 8px 16px #7e594214}.admin-row-card{display:grid;gap:10px;padding:12px}.admin-row-actions,.admin-product-actions,.admin-chip-row,.admin-check-grid{display:flex;flex-wrap:wrap;gap:7px}.admin-row-actions button,.admin-product-actions button,.data-actions button{min-height:40px;padding:0 12px;border-radius:13px;font-size:12px}.danger-button{min-height:40px;border:0;border-radius:13px;background:#ead2c8;color:#8a463c;cursor:pointer;font-weight:900}.danger-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.45}.status-pill{display:inline-flex;width:fit-content;align-items:center;border-radius:999px;background:#eadbd1;color:#8d6a5c;font-size:11px;font-weight:900;padding:6px 9px}.status-pill.is-on{background:#e4b2a7;color:#fffaf7}.admin-form-card{margin:12px 0}.product-form{display:grid;gap:12px;margin-top:12px}.product-form-preview{position:sticky;z-index:8;top:8px;display:grid;grid-template-columns:188px minmax(0,1fr);width:100%;min-height:212px;align-items:center;gap:12px;border:1px solid rgba(148,103,82,.14);border-radius:20px;background:#fffaf2fa;box-shadow:0 12px 28px #78533d24;padding:10px}.product-form-preview-frame{position:relative;display:grid;width:188px;height:188px;place-items:center;overflow:hidden;border-radius:18px;background:#f7efe8;box-shadow:inset 0 0 0 1px #805a4414}.product-form-preview-frame:before{display:none}.product-form-preview-turntable{position:relative;z-index:1;transform-origin:center;transition:transform .12s ease}.product-form-preview-product{width:100%;height:100%;transform-origin:center}.product-form-preview-product .product-art{width:100%;height:100%;aspect-ratio:auto}.product-form-preview-visible-bounds{position:absolute;box-sizing:border-box;border:1.5px dashed rgba(141,96,76,.54);border-radius:11px;pointer-events:none}.product-form-preview-rotate-handle{position:absolute;top:-17px;left:50%;display:grid;width:28px;height:28px;place-items:center;border:2px solid rgba(255,250,242,.94);border-radius:50%;background:#c68b7d;box-shadow:0 6px 12px #6a463433;color:#fffaf7;font-size:14px;font-weight:900;line-height:1;transform:translate(-50%)}.product-form-preview-copy{display:grid;gap:5px;min-width:0}.product-form-preview-copy span{color:#6a4634;font-size:14px;font-weight:900}.product-form-preview-copy small{color:#9b7565;font-size:12px;font-weight:800;line-height:1.35}.admin-form-grid{grid-template-columns:1fr 1fr}.admin-check-grid{color:#765342;font-size:13px;font-weight:800}.admin-check-grid label{display:inline-flex;min-height:40px;align-items:center;gap:7px;border-radius:13px;background:#f3e3d7;padding:0 11px}.product-image-upload-help{display:block;margin-top:6px;color:#8f6e60;font-size:11px;font-weight:700;line-height:1.45}.image-clean-actions{display:grid;gap:7px;border-radius:16px;background:#fff2e6;padding:10px}.image-clean-actions button{min-height:42px}.image-clean-actions small{color:#8f6e60;font-size:11px;font-weight:800;line-height:1.45}.image-spacing-section .image-clean-actions{margin-top:2px}.crop-inset-grid{grid-template-columns:1fr 1fr}.admin-subsection{display:grid;gap:10px;border-radius:18px;background:#fff2e6;padding:12px}.admin-subsection h3{font-size:14px}.admin-subsection p{margin:0;color:#8f6e60;font-size:12px;font-weight:700;line-height:1.45}.admin-slider-grid{display:grid;gap:9px}.admin-slider-grid label,.image-adjust-section label{display:grid;gap:4px;color:#795544;font-size:12px;font-weight:800}.admin-slider-grid small,.size-value-copy{color:#987365;font-size:11px;font-weight:800}.size-value-copy,.admin-slider-grid strong,.image-adjust-section strong{color:#a66d5b}.image-adjust-section label span{display:flex;align-items:center;justify-content:space-between}.image-adjust-section input[type=range],.admin-slider-grid input[type=range]{width:100%;min-height:32px;accent-color:#bf7d6e}.image-adjust-section button{min-height:40px}.color-option-section{display:grid;gap:10px}.color-option-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.color-option-heading h3{margin:0 0 4px}.color-option-heading p,.color-option-empty{margin:0;color:#9b7565;font-size:12px;line-height:1.45}.color-option-list{display:grid;gap:10px}.color-option-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;border:1px solid rgba(148,103,82,.12);border-radius:16px;background:#fff8ef;padding:10px}.color-option-preview{display:grid;width:64px;height:64px;place-items:center;overflow:hidden;border-radius:14px;background:#f7efe8;box-shadow:inset 0 0 0 1px #805a4414}.color-option-preview img{width:100%;height:100%;object-fit:contain}.color-option-preview span{width:38px;height:38px;border:2px solid rgba(255,250,242,.95);border-radius:50%;box-shadow:inset 0 0 0 1px #65463624}.color-option-fields{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:8px}.color-option-fields label:last-child{grid-column:1 / -1}.color-option-actions{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.admin-product-card{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;padding:12px}.admin-product-preview{display:grid;width:62px;height:62px;place-items:center;border-radius:16px;background:#f2e1d3}.admin-product-info h3{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.admin-product-info p{margin:4px 0 8px}.admin-product-info .product-registration-date{margin:3px 0;color:var(--glam-text-soft, #76635a);font-size:11px;font-variant-numeric:tabular-nums}.admin-product-actions{grid-column:1 / -1}.product-order-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;margin:12px 0 14px;padding:12px;border:1px solid rgba(152,105,83,.14);border-radius:16px;background:#fff8ef}.product-order-toolbar>div:first-child{display:grid;gap:3px}.product-order-toolbar strong{color:#6a4634;font-size:14px}.product-order-toolbar small{color:#927064;font-size:11px;line-height:1.35}.product-order-toolbar-actions{display:flex;align-items:center;gap:7px}.product-order-toolbar-actions button{min-height:40px;padding:0 11px;font-size:12px;white-space:nowrap}.product-latest-sort-toggle{display:inline-flex;min-height:40px;align-items:center;gap:7px;color:#725140;font-size:12px;font-weight:800;white-space:nowrap}.product-latest-sort-toggle input{width:17px;height:17px;margin:0;accent-color:var(--glam-red, #df1117)}.product-category-checkboxes{display:grid;gap:8px;padding:10px;border:1px solid rgba(152,105,83,.12);border-radius:12px;background:#fffcf7b8}.product-category-checkboxes small{color:#927064;font-size:11px;line-height:1.4}.product-category-checkboxes .admin-check-grid{max-height:172px;overflow-y:auto;padding-right:3px}.emoticon-batch-import{display:grid;gap:12px;margin:16px 0;padding:16px;border:1px solid var(--glam-line, #eadfd7);border-radius:12px;background:var(--glam-surface-soft, #faf7f2)}.emoticon-batch-import h3,.emoticon-batch-import p{margin:0}.emoticon-batch-import h3{color:var(--glam-text, #2f211b);font-size:17px}.emoticon-batch-import p{color:var(--glam-text-soft, #76635a);font-size:13px;line-height:1.5}.emoticon-batch-actions{display:flex;flex-wrap:wrap;gap:8px}.emoticon-batch-status{color:var(--glam-red-dark, #bd0d12)!important}.emoticon-batch-note{font-size:12px!important}.emoticon-batch-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;max-height:360px;overflow:auto;padding-right:2px}.emoticon-batch-preview article{display:grid;grid-template-columns:56px minmax(0,1fr);gap:8px;align-items:center;padding:8px;border:1px solid var(--glam-line, #eadfd7);border-radius:8px;background:var(--glam-surface, #fffdfa)}.emoticon-batch-preview img{width:56px;height:56px;object-fit:contain}.emoticon-batch-preview label{display:grid;gap:3px;min-width:0;color:var(--glam-text-soft, #76635a);font-size:11px}.emoticon-batch-preview input,.emoticon-batch-preview select{width:100%;min-width:0;min-height:32px;border:1px solid var(--glam-line, #eadfd7);border-radius:6px;background:#fff;color:var(--glam-text, #2f211b)}.product-order-status{grid-column:1 / -1;color:#9a6049!important;font-size:11px!important}.product-order-status.is-success{color:#467355!important}.product-order-field{display:grid;grid-template-columns:auto 54px;grid-column:1 / -1;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(152,105,83,.12);border-radius:13px;background:#fffcf7c7;color:#725140;font-size:12px;font-weight:800}.product-order-field input{width:54px;min-height:38px;border:1px solid rgba(148,103,82,.2);border-radius:10px;background:#fffdfa;color:#6a4634;font-weight:800;text-align:center}@media(max-width:360px){.product-order-toolbar{grid-template-columns:1fr}.product-order-toolbar-actions{width:100%}.product-order-toolbar-actions button{flex:1}.product-latest-sort-toggle{grid-column:1 / -1}}.data-actions{grid-template-columns:1fr}.text-style-admin-list{display:grid;gap:12px}.text-style-admin-card{display:grid;gap:10px;border:1px solid rgba(152,105,83,.12);border-radius:18px;background:#fff6eb;padding:12px}.text-style-admin-preview{display:grid;min-height:110px;align-content:center;justify-items:center;gap:7px;border-radius:14px;background:#f7efe8;padding:10px}.text-style-admin-preview small{color:#9b7565;font-size:10px;font-weight:800}.admin-text-style-preview{position:relative;border-style:solid;font-size:16px;line-height:1.1}.admin-text-style-preview.is-ribbon:before,.admin-text-style-preview.is-ribbon:after{position:absolute;top:50%;z-index:0;width:12px;height:14px;border:inherit;background:inherit;content:"";transform:translateY(-50%) rotate(45deg)}.admin-text-style-preview.is-ribbon:before{left:-6px}.admin-text-style-preview.is-ribbon:after{right:-6px}.text-style-fields{grid-template-columns:1fr 1fr}.text-style-color-mode{display:inline-flex;width:fit-content;margin:8px 0 0;border:1px solid rgba(203,76,55,.2);border-radius:999px;background:#df111712;color:#bd0d12;font-size:11px;font-weight:800;padding:4px 8px}.text-style-color-mode.is-fixed{border-color:#6f4d3b2e;background:#6f4d3b12;color:#704d3b}.admin-check-grid label.is-disabled{opacity:.5}.seven-segment-fields{margin-top:8px;padding-top:10px;border-top:1px solid rgba(120,80,58,.1)}.admin-error,.admin-message{border-radius:14px;font-size:12px;font-weight:800;line-height:1.45;padding:10px 12px}.admin-error{background:#f3d9d1;color:#8a463c}.admin-message{margin-top:10px;background:#f4e5d9;color:#765342}.admin-storage-note{margin:10px 0 0;color:#8f6e60;font-size:12px;font-weight:800;line-height:1.45}@media(max-width:460px){.admin-inline-form,.admin-form-grid,.form-actions,.admin-actions-top{grid-template-columns:1fr}.product-form-preview{grid-template-columns:1fr;min-height:0}.product-form-preview-frame{width:100%;height:188px}.landing-preview-device{height:540px}}.admin-protection-banner{margin:0 0 12px;padding:11px 13px;border-left:3px solid var(--glam-red, #df1117);background:#fff4f3;color:#6d332f;font-size:13px;line-height:1.45}.backup-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px}.backup-metrics span{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:8px 10px;border:1px solid var(--glam-line, #eadfd7);border-radius:8px;background:var(--glam-surface-soft, #faf7f2);color:var(--glam-text-soft, #76635a);font-size:12px}.backup-metrics .is-healthy strong{color:#267044}.backup-metrics .is-warning strong{color:var(--glam-red-dark, #bd0d12)}.backup-actions{margin-bottom:12px}.backup-selected-summary{display:grid;gap:4px;margin-top:9px;color:var(--glam-text-soft, #76635a);font-size:12px}.backup-preview{margin-top:12px;padding:12px;border:1px solid var(--glam-line, #eadfd7);border-radius:8px;background:#fff}.backup-preview h3{margin:0 0 8px}.backup-preview pre{max-height:260px;margin:0;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--glam-text, #2f211b);font-size:11px;line-height:1.45}.recycle-bin-section{margin-top:18px;padding-top:14px;border-top:1px solid var(--glam-line, #eadfd7)}.admin-section-heading.compact{margin-bottom:9px}.admin-section-heading.compact h3{margin:0}.recycle-bin-list .admin-row-card{align-items:center}.recycle-bin-list p{margin:3px 0 0;color:var(--glam-text-soft, #76635a);font-size:12px}@media(min-width:640px){.backup-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}:root{--glam-red: #df1117;--glam-red-dark: #bd0d12;--glam-red-soft: #f8e8e7;--glam-bg: #f6f3ef;--glam-surface: #fffdfa;--glam-surface-soft: #faf7f2;--glam-text: #2f211b;--glam-text-soft: #76635a;--glam-line: #eadfd7;--glam-shadow: 0 14px 34px rgba(85, 52, 32, .08);--glam-radius-lg: 28px;--glam-radius-md: 20px;--glam-radius-sm: 14px;color:var(--glam-text);background:var(--glam-bg);font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 20% 18%,rgba(255,247,235,.94),transparent 28%),linear-gradient(155deg,#f7efe6,#f2dfd9 48%,#e7d1bd)}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{display:flex;min-height:100vh;align-items:center;justify-content:center;padding:18px}.mobile-frame{position:relative;width:min(100%,430px);height:min(900px,calc(100vh - 36px));min-height:720px;overflow:hidden;border:1px solid rgba(132,93,72,.14);border-radius:34px;background:#fff8ee;box-shadow:0 28px 70px #6b4d383d,inset 0 0 0 8px #ffffff57}.mobile-frame.admin-frame{height:auto;min-height:0;overflow:visible}.app-shell.studio-shell{align-items:flex-start;min-height:100dvh}.mobile-frame.studio-frame{height:auto;min-height:min(720px,calc(100dvh - 36px));max-height:none;overflow:visible}.app-shell.admin-shell{align-items:flex-start}.app-shell.intro-shell{background:#f7f5f1}.app-shell.recovery-shell{min-height:100dvh;background:#f7f5f1}.mobile-frame.recovery-frame{height:auto;min-height:0;overflow:visible;border:0;background:transparent;box-shadow:none}.not-found-screen{display:grid;gap:14px;width:min(100%,420px);margin:auto;padding:40px 28px;border:1px solid var(--glam-line, #eadfd7);border-radius:24px;background:var(--glam-surface, #fffdfa);box-shadow:var(--glam-shadow, 0 14px 34px rgba(85, 52, 32, .08));color:var(--glam-text, #2f211b);text-align:center}.not-found-screen p{margin:0;color:var(--glam-red, #df1117);font-family:Georgia,serif;font-size:13px;letter-spacing:0}.not-found-screen h1,.not-found-screen span{margin:0}.not-found-screen h1{font-family:Georgia,serif;font-size:26px}.not-found-screen span{color:var(--glam-text-soft, #76635a);line-height:1.6}.not-found-screen button{min-height:48px;border:0;border-radius:14px;background:var(--glam-red, #df1117);color:#fff;font:inherit;font-weight:700}.local-recovery-screen{display:grid;min-height:320px;place-items:center;padding:24px}.local-recovery-card{width:100%;border:1px solid var(--glam-line);border-radius:var(--glam-radius-md);background:var(--glam-surface);box-shadow:var(--glam-shadow);padding:28px;text-align:center}.local-recovery-kicker{margin:0 0 10px;color:var(--glam-red);font-family:Georgia,Times New Roman,serif;font-size:12px;letter-spacing:0}.local-recovery-card h1{margin:0;color:var(--glam-text);font-family:Georgia,Times New Roman,serif;font-size:28px}.local-recovery-card p{margin:14px 0 20px;color:var(--glam-text-soft);font-size:14px;line-height:1.6}.app-shell.season-shell{align-items:flex-start;min-height:100dvh;background:#f6f0e6}.mobile-frame.season-frame{height:auto;min-height:min(720px,calc(100dvh - 36px));max-height:none;overflow:visible;background:#fff9ef}.monthly-studio-cta{width:100%;margin-top:clamp(8px,1.6cqh,14px);text-align:center}.primary-button.intro-button.monthly-studio-button{position:relative;min-height:clamp(70px,9.6cqh,76px);margin-top:0;padding:7px 12px}.monthly-studio-button-copy{display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;justify-content:center;padding:0 clamp(26px,8cqw,38px);text-align:center}.monthly-studio-button-title{font:inherit;line-height:1.25}.monthly-studio-button-description{max-width:100%;margin-top:1px;overflow:hidden;color:#fffffff0;font-family:"Noto Serif KR",Apple SD Gothic Neo,serif;font-size:min(11px,2.55cqw);font-weight:500;line-height:1.22;text-overflow:ellipsis;white-space:nowrap}.monthly-studio-button .intro-button-arrow{position:absolute;top:50%;right:clamp(12px,3.6cqw,18px);margin-top:0;transform:translateY(-50%)}.season-preview-child{display:grid;gap:0;min-height:100%;background:#fff9ef}.season-preview-check{display:grid;min-height:100%;place-items:center;padding:28px;background:#fff9ef;color:#725f54;text-align:center}.season-preview-badge{display:grid;gap:2px;padding:11px 18px;border-bottom:1px solid #ebd8bf;background:#fff2df;color:#7a4a32;text-align:center}.season-preview-badge strong{font-size:13px}.season-preview-badge span{font-size:11px;line-height:1.35}.season-preview-screen{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;min-height:0;height:100%;gap:20px;overflow:hidden;padding:8px 18px 30px;background:#fff9ef;isolation:isolate}.season-preview-screen.has-season-background:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background-image:var(--season-preview-background);background-position:center;background-repeat:no-repeat;background-size:cover;content:""}.season-preview-screen.has-season-background:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,#fff9ef14,#fff9ef0a 42%,#fff9ef85 78%,#fff9efad);content:"";pointer-events:none}.season-preview-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.season-preview-header .back-button{width:auto;min-width:0;height:38px;padding:0 11px;font-size:13px;white-space:nowrap}.season-preview-admin-link{min-height:36px;border:0;background:transparent;color:#8a6a5a;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.season-preview-menu{display:grid;align-self:end;gap:10px;margin-top:auto}.season-preview-menu-card{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:66px;gap:10px;align-items:center;width:100%;padding:11px 13px 11px 15px;border:1px solid rgba(225,200,173,.92);border-radius:8px;background:#fffdf8f0;color:#352a25;box-shadow:0 7px 16px #56372324;text-align:left;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.season-preview-menu-card:not(.is-coming-soon){cursor:pointer}.season-preview-menu-card:not(.is-coming-soon):hover{border-color:#cc9e7d}.season-preview-menu-card.is-coming-soon{background:#fffdf8e0}.season-preview-menu-copy{display:grid;min-width:0;gap:3px}.season-preview-menu-copy strong{overflow:hidden;font-family:Georgia,"Noto Serif KR",serif;font-size:17px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.season-preview-menu-copy>span{overflow:hidden;color:#725f54;font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.season-preview-menu-controls{display:grid;justify-items:end;align-content:center;gap:4px;min-width:45px}.season-preview-menu-controls em{padding:2px 6px;border-radius:999px;background:#f5e4d5;color:#a45d45;font-size:10px;font-style:normal;font-weight:700}.season-preview-menu-controls b{color:#b42429;font-size:25px;line-height:.9;white-space:nowrap}.season-preview-game-test-link{padding:0;border:0;background:transparent;color:#b42429;font:inherit;font-size:10px;font-weight:800;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;cursor:pointer}.app-shell.season-shell.season-preview-shell{width:100%;max-width:100%;height:100dvh;min-height:100dvh;padding:0;overflow:hidden}.mobile-frame.season-frame.season-preview-frame{width:min(100vw,430px);min-width:0;max-width:430px;height:min(900px,100dvh);min-height:0;max-height:100dvh;overflow:hidden;border:0;border-radius:0;background:#fff9ef;box-shadow:none}.season-preview-child.is-landing-preview{grid-template-rows:auto minmax(0,1fr);min-height:0;height:100%;overflow:hidden}.season-preview-child.is-landing-preview .season-preview-screen{min-height:0;height:100%}.app-shell.season-shell.season-decorator-shell{align-items:flex-start;min-width:0;max-width:100vw;min-height:100dvh;overflow-x:clip;overflow-y:visible}.mobile-frame.season-frame.season-decorator-frame{width:min(100vw,430px);min-width:0;max-width:100vw;height:auto;min-height:min(720px,calc(100dvh - 36px));max-height:none;overflow:visible}.season-decorator{min-height:0;padding-bottom:104px}.season-sticker-picker.is-preview .season-category-scroll{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;overflow:visible;padding-bottom:0}.season-sticker-picker.is-preview .season-category-scroll button{min-width:0;min-height:38px;padding:0 3px;font-size:11px;white-space:nowrap}.season-sticker-picker.is-preview .season-sticker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;overflow:visible;padding:2px 2px 8px}.season-sticker-picker.is-preview .season-sticker-grid>button{min-height:94px}.season-sticker-picker.is-preview .season-sticker-grid.is-emoji-grid{max-height:304px;overflow-x:hidden;overflow-y:auto;padding-right:6px;scrollbar-color:#c92c2c #f1e3d0;scrollbar-width:thin;-webkit-overflow-scrolling:touch}@media(max-width:360px){.season-sticker-picker.is-preview .season-sticker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.season-sticker-picker.is-preview .season-sticker-grid.is-emoji-grid{max-height:300px}}.season-coming-soon{display:grid;min-height:100%;align-content:center;justify-items:center;gap:12px;padding:34px 24px;background:#fff9ef;color:#2d2622;text-align:center}.season-coming-soon p,.season-coming-soon h1,.season-coming-soon span{margin:0}.season-coming-soon p{color:#c92c2c;font-family:Georgia,serif;font-size:12px;font-weight:700}.season-coming-soon h1{font-family:Georgia,"Noto Serif KR",serif;font-size:30px}.season-coming-soon span{max-width:260px;color:#725f54;font-size:14px;line-height:1.55}.season-coming-soon button{min-height:48px;margin-top:8px;padding:0 17px;border-radius:8px}.season-screen{display:grid;gap:20px;min-height:100%;padding:22px 18px 28px;background:#fff9ef;color:#2d2622}.season-header{display:grid;justify-items:center;gap:8px;text-align:center}.season-header .back-button{justify-self:start;width:auto;min-width:104px;height:42px;padding:0 13px;white-space:nowrap;font-size:14px;line-height:1}.season-header p{margin:4px 0 0;color:var(--season-red, #c92c2c);font-family:Georgia,serif;font-size:12px;font-weight:700;letter-spacing:0}.season-header h1{margin:0;font-family:Georgia,"Noto Serif KR",serif;font-size:38px;line-height:1.08}.season-header>span{max-width:290px;color:#725f54;font-size:14px;line-height:1.65}.season-header.compact h1{font-size:30px}.season-photo-workspace{display:grid;gap:10px}.season-photo-stage{position:relative;display:grid;min-height:390px;overflow:hidden;place-items:center;border:1px solid #e2cfb6;border-radius:8px;background:#f4e8d7;touch-action:none}.season-photo-stage.has-photo{background:#281f1b}.season-photo-stage>img{width:100%;height:100%;max-height:560px;object-fit:contain}.season-photo-empty{display:grid;gap:7px;min-height:210px;place-items:center;border:0;background:transparent;color:#725f54}.season-photo-empty span{display:grid;width:52px;height:52px;place-items:center;border:1px solid #c92c2c;border-radius:50%;color:#c92c2c;font-size:32px}.season-photo-empty strong{color:#2d2622}.season-photo-empty small{font-size:12px}.season-photo-overlay{position:absolute;width:88px;min-height:66px;cursor:grab;touch-action:none}.season-photo-overlay:active{cursor:grabbing}.season-photo-overlay.is-selected:after{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:1px dashed #c92c2c;content:"";pointer-events:none}.season-photo-overlay img{display:block;width:100%;max-height:112px;object-fit:contain;pointer-events:none}.season-sticker-art{display:grid;width:88px;min-height:66px;place-items:center;color:var(--sticker-color);pointer-events:none}.season-sticker-art.is-button{width:62px;height:62px;min-height:0;margin:auto;border:3px solid rgba(45,38,34,.48);border-radius:50%;background:var(--sticker-color);box-shadow:inset 0 0 0 12px #ffffff29}.season-sticker-art.is-button:after{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.82) 0 2px,transparent 3px);background-size:11px 11px;content:""}.season-sticker-art.is-ribbon{min-height:44px;color:#fff;background:var(--sticker-color);clip-path:polygon(0 18%,100% 18%,84% 50%,100% 82%,0 82%,16% 50%);font-size:0}.season-sticker-art.is-thread{width:70px;height:70px;min-height:0;border:5px dashed var(--sticker-color);border-radius:50%}.season-sticker-art.is-star{font-size:64px;line-height:1}.season-sticker-art.is-star:after{content:"★"}.season-sticker-art.is-heart{font-size:62px;line-height:1}.season-sticker-art.is-heart:after{content:"♥"}.season-sticker-art.is-text{width:150px;min-height:40px;color:var(--sticker-color);font-family:Georgia,"Noto Serif KR",serif;font-size:18px;font-weight:700;text-align:center}.season-photo-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.season-photo-actions button{min-height:48px;padding:6px;border-radius:8px;font-size:12px}.season-transform-panel{display:grid;gap:12px;padding:14px;border:1px solid #e4d1b7;border-radius:8px;background:#fffdf8}.season-transform-panel>div:first-child{display:grid;gap:2px}.season-transform-panel strong{font-family:Georgia,"Noto Serif KR",serif}.season-transform-panel span{color:#725f54;font-size:12px}.season-transform-panel label{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;font-size:13px}.season-transform-panel input{width:100%;accent-color:#c92c2c}.season-object-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.season-object-actions button{min-height:38px;border:1px solid #e2cfb6;border-radius:7px;background:#fff9ef;color:#725f54;font-size:12px}.season-object-actions button:last-child{color:#b62025}.season-sticker-picker{display:grid;gap:12px}.season-section-heading{display:flex;align-items:end;justify-content:space-between;gap:12px}.season-section-heading p,.season-section-heading h2,.season-section-heading span{margin:0}.season-section-heading p{color:#c92c2c;font-family:Georgia,serif;font-size:11px;font-weight:700}.season-section-heading h2{margin-top:3px;font-family:Georgia,"Noto Serif KR",serif;font-size:24px}.season-section-heading span{max-width:128px;color:#725f54;font-size:11px;line-height:1.4;text-align:right}.season-category-scroll{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px;scrollbar-color:#c92c2c #f1e3d0}.season-category-scroll button{flex:0 0 auto;min-height:38px;padding:0 13px;border:1px solid #dec9aa;border-radius:999px;background:#fffdf8;color:#725f54;font-size:13px}.season-category-scroll button.is-active{border-color:#c92c2c;background:#c92c2c;color:#fff}.season-sticker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.season-sticker-grid>button{display:grid;min-height:116px;align-content:center;justify-items:center;gap:6px;overflow:hidden;border:1px solid #e3d2b8;border-radius:8px;background:#fffdf8;color:#4a3931}.season-sticker-grid>button img{width:70px;height:70px;object-fit:contain}.season-sticker-grid>button span{max-width:100%;padding:0 5px;overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.season-sticker-grid>p{grid-column:1 / -1;margin:0;padding:20px 0;color:#8d7769;font-size:13px;text-align:center}.threading-play-area{display:grid;gap:14px}.threading-instruction{display:grid;gap:3px;padding:13px 14px;border-left:3px solid #c92c2c;background:#f6ead9}.threading-instruction strong{font-family:Georgia,"Noto Serif KR",serif;font-size:16px}.threading-instruction span{color:#725f54;font-size:12px;line-height:1.45}.threading-hat{position:relative;min-height:360px;overflow:hidden;border:1px solid #e2cfb6;border-radius:8px;background:#fffdf8;touch-action:none}.threading-hat-cone{position:absolute;bottom:62px;left:50%;width:72%;height:76%;border:3px solid #4a3931;background:#d9bd91;clip-path:polygon(50% 0,100% 100%,0 100%);transform:translate(-50%)}.threading-pompom{position:absolute;top:44px;left:50%;z-index:2;width:36px;height:36px;border:3px solid #4a3931;border-radius:50%;background:#fff4df;transform:translate(-50%)}.threading-brim{position:absolute;right:12%;bottom:48px;left:12%;z-index:3;height:30px;border:3px solid #4a3931;border-radius:50%;background:#fff4df}.threading-stitch{position:absolute;top:95px;bottom:78px;left:50%;z-index:2;border-left:3px dashed #c92c2c;transform:translate(-50%)}.placed-thread-button{position:absolute;z-index:5;width:54px;height:54px;padding:0;border:0;background:transparent;transform:translate(-50%,-50%);touch-action:none}.thread-button{position:relative;display:block;width:48px;height:48px;border:3px solid rgba(45,38,34,.5);border-radius:50%;background:var(--button-color);box-shadow:inset 0 0 0 8px #ffffff1f}.thread-button.is-gloss:before{position:absolute;top:7px;left:9px;width:13px;height:8px;border-radius:50%;background:#ffffffad;content:""}.thread-button.is-sheer{opacity:.62}.thread-button.is-star{border-radius:0;clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 92%,50% 70%,20% 92%,32% 56%,2% 35%,39% 34%)}.thread-button.is-heart{border:0;border-radius:0;clip-path:path("M24 44C-6 25 6 2 22 14C28 2 51 7 46 23C43 33 31 40 24 44Z")}.thread-button b{position:absolute;width:6px;height:6px;border-radius:50%;background:#ffffffc2}.thread-button b:nth-child(1){top:14px;left:14px}.thread-button b:nth-child(2){top:14px;right:14px}.thread-button b:nth-child(3){bottom:14px;left:14px}.thread-button b:nth-child(4){right:14px;bottom:14px}.threading-button-tray{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.threading-button-tray>button{display:grid;min-height:84px;place-items:center;gap:3px;padding:7px 2px;border:1px solid #e2cfb6;border-radius:8px;background:#fffdf8;color:#725f54;font-size:10px}.threading-button-tray>button.is-selected{border:2px solid #c92c2c;background:#fff4e5}.threading-button-tray .thread-button{transform:scale(.74)}.threading-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.threading-actions button{min-height:50px;padding:7px;border-radius:8px;font-size:12px}.threading-complete{display:grid;justify-items:center;gap:7px;padding:22px 16px;border:1px solid #d9bfa4;border-radius:8px;background:#fffdf8;text-align:center}.threading-complete p,.threading-complete h2,.threading-complete span{margin:0}.threading-complete p{color:#c92c2c;font-family:Georgia,serif;font-size:11px;font-weight:700}.threading-complete h2{font-family:Georgia,"Noto Serif KR",serif;font-size:25px}.threading-complete span{color:#725f54;font-size:13px}.threading-complete div{display:flex;gap:8px;margin-top:8px}.threading-complete button{min-height:44px;padding:0 13px;border-radius:8px;font-size:12px}.rhythm-game{gap:14px;padding-bottom:28px}.rhythm-game-header{gap:5px}.rhythm-select,.rhythm-result{display:grid;gap:16px;padding:18px;border:1px solid #e3d1b8;border-radius:8px;background:#fffdf8;text-align:center}.rhythm-select-copy{display:grid;gap:4px}.rhythm-select-copy p,.rhythm-select-copy h2,.rhythm-select-copy span,.rhythm-result p,.rhythm-result h2{margin:0}.rhythm-select-copy p,.rhythm-result p{color:#c92c2c;font-family:Georgia,serif;font-size:11px;font-weight:700}.rhythm-select-copy h2,.rhythm-result h2{font-family:Georgia,"Noto Serif KR",serif;font-size:27px}.rhythm-select-copy span{color:#725f54;font-size:12px}.rhythm-button-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.rhythm-button-picker button{display:grid;min-height:82px;place-items:center;gap:4px;padding:6px 2px;border:1px solid #e3d1b8;border-radius:8px;background:#fff9ef;color:#725f54;font-size:10px}.rhythm-button-picker button.is-selected{border:2px solid #c92c2c;background:#fff2e4;color:#9e2427}.rhythm-button-face{position:relative;display:block;width:50px;aspect-ratio:1;border:3px solid rgba(45,38,34,.48);border-radius:50%;background:var(--button-color);box-shadow:inset 0 0 0 8px #ffffff21,0 3px 6px #3b26191f}.rhythm-button-face.is-gloss:before{position:absolute;top:10%;left:16%;width:32%;height:17%;border-radius:50%;background:#ffffff85;content:""}.rhythm-button-face.is-sheer{opacity:.66}.rhythm-button-face.is-star{border-radius:0;clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 92%,50% 70%,20% 92%,32% 56%,2% 35%,39% 34%)}.rhythm-button-face.is-heart{border:0;border-radius:0;clip-path:path("M50 92C-12 50 13 1 45 28C53 5 100 15 98 49C96 67 72 83 50 92Z")}.rhythm-button-face.is-large{width:100%;height:100%;border-width:6px}.rhythm-button-hole{position:absolute;z-index:2;width:12%;aspect-ratio:1;border:2px solid rgba(45,38,34,.58);border-radius:50%;background:#2f2824;box-shadow:inset 0 0 0 2px #ffffff40;transform:translate(-50%,-50%)}.rhythm-play{display:grid;gap:12px;touch-action:none;-webkit-user-select:none;user-select:none}.rhythm-game.is-playing{overscroll-behavior:contain}.rhythm-scorebar{display:flex;justify-content:space-between;padding:0 6px;color:#725f54;font-family:Georgia,serif;font-size:13px}.rhythm-scorebar b{color:#c92c2c;font-size:16px}.rhythm-ready{display:grid;min-height:420px;place-items:center;align-content:center;gap:7px;border:1px solid #e3d1b8;border-radius:8px;background:#fff9ef;text-align:center}.rhythm-ready strong{color:#c92c2c;font-family:Georgia,"Noto Serif KR",serif;font-size:38px}.rhythm-ready span,.rhythm-tap-help{color:#725f54;font-size:12px}.rhythm-round{margin:0;color:#aa7560;font-family:Georgia,serif;font-size:12px;text-align:center}.rhythm-board{position:relative;display:grid;min-height:410px;place-items:center;overflow:hidden;border:1px solid #e3d1b8;border-radius:8px;background:radial-gradient(circle at 50% 44%,#fffdf8 0,#fffdf8 26%,#f6e7d5 66%,#ead3b8)}.rhythm-button-stage{position:relative;width:min(72vw,300px);aspect-ratio:1}.rhythm-target-ring{position:absolute;z-index:4;width:12%;aspect-ratio:1;border:2px solid transparent;border-radius:50%;transform:translate(-50%,-50%)}.rhythm-target-ring.is-target{border-color:#c92c2ce6;box-shadow:0 0 0 6px #c92c2c1f;animation:rhythmTargetPulse 1s ease-in-out infinite}.rhythm-target-ring.is-stitched{border-color:#ffffffbf;background:linear-gradient(135deg,transparent 44%,rgba(255,255,255,.78) 45% 54%,transparent 55%)}.rhythm-needle{position:absolute;z-index:7;display:block;width:7px;height:78px;border-radius:999px;background:linear-gradient(90deg,#8b7d70,#fff,#786c61);box-shadow:0 2px 5px #2d262247;transform:translate(-50%,-100%)}.rhythm-needle:after{position:absolute;bottom:-7px;left:50%;width:0;height:0;border-top:10px solid #8a7a6c;border-right:4px solid transparent;border-left:4px solid transparent;content:"";transform:translate(-50%)}.rhythm-needle.is-up{transform:translate(-50%) rotate(180deg)}.rhythm-needle b{position:absolute;top:11px;left:2px;width:3px;height:14px;border-radius:999px;background:#2d262240}.rhythm-thread-line{position:absolute;z-index:6;width:2px;height:34px;background:#c92c2c;opacity:.7;transform:translate(-50%,-100%)}.rhythm-thread-line.is-up{transform:translate(-50%)}.rhythm-feedback{position:absolute;z-index:10;top:10%;left:50%;padding:6px 10px;border-radius:999px;background:#fffdf8e0;color:#c92c2c;font-family:Georgia,serif;font-size:22px;letter-spacing:0;transform:translate(-50%);animation:rhythmFeedback .45s ease-out both}.rhythm-feedback.is-good{color:#a77737}.rhythm-feedback.is-miss{color:#8c766b}.rhythm-tap-help{text-align:center}.rhythm-result-button{display:grid;place-items:center;min-height:250px;border-radius:8px;background:#f7ead9}.rhythm-result-button .rhythm-button-face{width:min(64vw,250px)}.rhythm-result>strong{color:#c92c2c;font-family:Georgia,"Noto Serif KR",serif;font-size:34px}.rhythm-result ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;margin:0;padding:0;list-style:none}.rhythm-result li{display:flex;justify-content:space-between;padding:9px;border-radius:7px;background:#f8eee0;color:#725f54;font-size:11px}.rhythm-result li b{color:#2d2622}.rhythm-start-button{min-height:54px;border-radius:8px}.rhythm-result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rhythm-result-actions button{min-height:44px;padding:7px;border-radius:8px;font-size:12px}@keyframes rhythmTargetPulse{50%{box-shadow:0 0 0 10px #c92c2c0a;transform:translate(-50%,-50%) scale(1.08)}}@keyframes rhythmFeedback{0%{opacity:0;transform:translate(-50%,12px) scale(.88)}to{opacity:1;transform:translate(-50%,-4px) scale(1)}}.rhythm-select{width:min(100%,354px);margin-inline:auto}@media(max-width:520px){.rhythm-button-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:720px){.app-shell.season-shell{padding:30px}.mobile-frame.season-frame{width:min(100%,980px)}.season-screen{padding:34px}.season-photo-stage{min-height:600px}.season-sticker-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.threading-play-area{grid-template-columns:minmax(0,1fr) 260px;align-items:start}.threading-instruction,.threading-actions,.threading-complete{grid-column:1 / -1}.threading-button-tray{grid-template-columns:repeat(2,minmax(0,1fr))}.threading-hat{min-height:560px}}.local-recovery-card button{width:100%;min-height:50px;border:0;border-radius:var(--glam-radius-sm);background:var(--glam-red);color:#fff;cursor:pointer;font-weight:800}.local-recovery-card small{display:block;margin-top:14px;color:var(--glam-text-soft);font-size:12px;line-height:1.5}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%)}.intro-screen,.studio-screen{height:100%;background:linear-gradient(180deg,#fffaf2f2,#f6e3dacc),#fff8ee}.intro-loading-screen{width:100%;min-height:100%;height:100%;background:#faf7f2}.intro-load-error{padding:24px;text-align:center}.intro-load-error>div{display:grid;justify-items:center;gap:14px}.intro-screen.is-landing-revealed{animation:landing-reveal .18s ease-out both}@keyframes landing-reveal{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.intro-screen.is-landing-revealed{animation:none}}.intro-screen{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:42px 28px 30px;text-align:center}.brand-mark{margin:0;color:#8b604c;font-family:Georgia,Times New Roman,serif;font-size:19px;font-weight:700;letter-spacing:0}.intro-visual{display:grid;width:100%;flex:1;place-items:center;min-height:280px}.landing-hero-image{display:block;width:min(78%,300px);max-width:100%;max-height:min(42vh,360px);object-fit:contain;object-position:center;transform:translateY(var(--hero-image-offset-y, 0)) scale(var(--hero-image-scale, 1));transform-origin:center}.portrait-placeholder{position:relative;width:min(70vw,260px);max-width:260px;aspect-ratio:.78;border:12px solid #fffaf0;border-radius:50% 50% 42% 42%;background:linear-gradient(180deg,rgba(255,255,255,.38),transparent 55%),linear-gradient(140deg,#f2d5cc,#fbecd9 52%,#d8b89c);box-shadow:0 22px 42px #78533d33,inset 0 -18px 36px #7e55401f}.portrait-placeholder:before{position:absolute;top:24%;right:18%;bottom:14%;left:18%;border-radius:50% 50% 44% 44%;background:radial-gradient(circle at 35% 45%,#8a5c4a 0 3px,transparent 4px),radial-gradient(circle at 65% 45%,#8a5c4a 0 3px,transparent 4px),radial-gradient(ellipse at 50% 66%,#c48878 0 10px,transparent 11px),#f7d6c5;content:""}.mini-hat{position:absolute;z-index:2;top:-18px;left:50%;width:96px;height:110px;border:3px solid #d59a88;border-radius:58% 58% 44% 44%;background:linear-gradient(160deg,#fff8e7,#f4d6c5);transform:translate(-50%) rotate(-6deg);clip-path:polygon(50% 0%,86% 100%,14% 100%)}.mini-hat:after{position:absolute;left:50%;bottom:18px;width:42px;height:18px;border-radius:999px;background:#dca494;content:"";transform:translate(-50%)}.portrait-glow{position:absolute;inset:auto 28px -22px;height:28px;border-radius:999px;background:#8d604629;filter:blur(10px)}.intro-copy h1{margin:0;color:#674431;font-size:clamp(23px,calc(31px * var(--hero-title-scale, 1)),42px);line-height:1.18;letter-spacing:0;white-space:pre-line}.intro-copy p{margin:16px auto 0;max-width:330px;color:#8a6b5d;font-size:15px;line-height:1.65}.primary-button,.secondary-button,.ghost-button,.back-button{min-height:48px;border:0;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.primary-button:active,.secondary-button:active,.ghost-button:active,.back-button:active,.product-card:active,.category-tabs button:active{transform:translateY(1px)}.primary-button{width:100%;border-radius:18px;background:#c68b7d;color:#fffaf7;font-weight:800;box-shadow:0 14px 26px #ab6f5e47}.primary-button:disabled{cursor:not-allowed;background:#d8c7bd;box-shadow:none}.intro-button{margin-top:28px}.intro-note{margin:16px 0 8px;color:#a28070;font-size:12px}.admin-entry-button,.studio-admin-button{border:0;cursor:pointer;color:#8a6759;font-weight:800;transition:transform .15s ease,background .15s ease}.admin-entry-button{min-height:36px;border-radius:999px;background:#f6eadfd1;font-size:12px;padding:0 15px}.studio-admin-button{position:absolute;right:16px;top:12px;min-height:34px;border-radius:999px;background:#f6eadf;font-size:11px;padding:0 11px;box-shadow:0 8px 18px #7d58421a}.admin-entry-button:active,.studio-admin-button:active{transform:translateY(1px)}.intro-screen button:disabled{cursor:default}.mobile-frame.intro-frame{border:0;border-radius:0;background:transparent;box-shadow:none}.intro-screen{display:block;overflow-y:auto;padding:24px 18px;background:var(--glam-bg)}.landing-card{display:flex;width:100%;min-height:100%;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--glam-line);border-radius:34px;background:var(--glam-surface);box-shadow:var(--glam-shadow);padding:clamp(34px,7vh,58px) clamp(20px,6vw,30px) 30px;text-align:center}.intro-screen.has-page-background{background-color:var(--glam-bg)}.landing-card.has-card-background{background-color:#fffdfad1}.intro-top{width:100%}.brand-mark{color:var(--glam-red-dark);font-family:Georgia,Times New Roman,"Noto Serif KR",serif;font-size:clamp(25px,7vw,34px);font-weight:400;line-height:1.1}.landing-divider{display:flex;width:min(100%,260px);align-items:center;justify-content:center;gap:12px;margin:23px auto 18px;color:var(--glam-red)}.landing-divider:before,.landing-divider:after{width:78px;height:1px;background:currentColor;content:"";opacity:.32}.landing-divider span{font-size:16px;line-height:1}.landing-divider.is-soft{color:var(--glam-text-soft)}.landing-divider.is-red{width:108px;margin:22px auto 18px}.landing-divider.is-red:before,.landing-divider.is-red:after{width:33px;opacity:.65}.intro-visual{display:grid;width:100%;min-height:0;flex:0 0 auto;place-items:center;margin:0}.brand-logo{position:relative;display:grid;width:min(76vw,310px);max-width:100%;place-items:center;transform:translateY(var(--hero-image-offset-y, 0)) scale(var(--hero-image-scale, 1));transform-origin:center}.brand-logo:not(.has-custom-image){aspect-ratio:1}.brand-logo-slot{display:block;width:calc(min(70cqw,36cqh,300px) * var(--hero-image-scale, 1));max-width:100%;aspect-ratio:var(--logo-slot-aspect-ratio, 1);margin-top:var(--logo-slot-offset-down, 0px);margin-bottom:var(--logo-slot-offset-up, 0px);pointer-events:none}.landing-hero-image{display:block;width:100%;height:auto;max-width:100%;max-height:min(40cqh,340px);object-fit:contain;object-position:center;image-rendering:auto;transform:none}.brand-emblem-mark{position:relative;display:grid;width:100%;height:100%;justify-items:center;align-content:center;color:var(--glam-red);font-family:Georgia,Times New Roman,serif}.brand-hat{position:absolute;top:21%;left:50%;width:34%;height:30%;border-radius:50% 50% 12% 12%;background:var(--glam-red);clip-path:polygon(50% 0%,100% 100%,0 100%);transform:translate(-50%)}.brand-hat:before{position:absolute;top:-22%;left:50%;width:30%;aspect-ratio:1;border-radius:50%;background:var(--glam-red);box-shadow:-12px 4px 0 -3px var(--glam-red),12px 4px 0 -3px var(--glam-red),-8px -7px 0 -3px var(--glam-red),8px -7px 0 -3px var(--glam-red);content:"";transform:translate(-50%)}.brand-emblem-mark strong{position:relative;z-index:2;margin-top:4%;color:var(--glam-red);font-size:clamp(62px,20vw,90px);font-weight:700;line-height:.86;letter-spacing:-2px}.brand-ribbon{position:absolute;top:57%;width:58%;height:12%;border-radius:50%;border-bottom:10px solid var(--glam-red);transform:rotate(1deg)}.brand-emblem-name{position:absolute;bottom:21%;color:var(--glam-red);font-size:clamp(28px,8vw,39px);font-weight:700;line-height:1}.brand-emblem-mark small{position:absolute;bottom:13%;color:var(--glam-red);font-size:clamp(15px,4.5vw,20px);font-weight:700}.intro-copy{width:100%;margin-top:34px}.intro-copy h1{color:var(--glam-text);font-family:Georgia,"Noto Serif KR",Batang,serif;font-size:clamp(28px,calc(35px * var(--hero-title-scale, 1)),43px);font-weight:600;line-height:1.3;overflow-wrap:anywhere}.intro-copy p{max-width:350px;margin:0 auto;color:var(--glam-text-soft);font-family:"Noto Serif KR",Apple SD Gothic Neo,serif;font-size:clamp(15px,4.3vw,19px);line-height:1.58;white-space:pre-line}.primary-button.intro-button{display:flex;width:100%;min-height:62px;align-items:center;justify-content:center;gap:14px;margin-top:34px;border-radius:20px;background:var(--glam-red);box-shadow:0 14px 24px #a91a1533;color:#fff;font-family:"Noto Serif KR",Apple SD Gothic Neo,serif;font-size:clamp(20px,5.7vw,25px);font-weight:700}.primary-button.intro-button:hover{background:var(--glam-red-dark)}.intro-button-arrow{margin-top:-3px;font-family:Arial,sans-serif;font-size:38px;font-weight:300;line-height:.6}.intro-note{display:inline-flex;align-items:center;justify-content:center;gap:11px;margin:26px 0 0;color:var(--glam-text-soft);font-size:clamp(14px,4vw,17px);line-height:1.45}.intro-note-icon{position:relative;width:15px;height:23px;flex:0 0 auto;border:2px solid var(--glam-red);border-radius:3px}.intro-note-icon:after{position:absolute;bottom:2px;left:50%;width:3px;height:3px;border-radius:50%;background:#d61816;content:"";transform:translate(-50%)}.color-pick-cta{width:100%;margin-top:clamp(8px,1.6cqh,14px);text-align:center}.primary-button.intro-button.color-pick-button{position:relative;min-height:clamp(70px,9.6cqh,76px);padding:7px 12px}.color-pick-button-copy{display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;justify-content:center;text-align:center}.color-pick-button-title{font:inherit;line-height:1.25}.color-pick-button-description{max-width:none;margin-top:1px;color:#fffffff0;font-family:"Noto Serif KR",Apple SD Gothic Neo,serif;font-size:clamp(9px,2.65cqw,12px);font-weight:500;line-height:1.22;white-space:nowrap}.color-pick-button .intro-button-arrow{position:absolute;top:50%;right:clamp(12px,3.6cqw,18px);margin-top:0;transform:translateY(-50%)}.mobile-frame.color-pick-frame{height:auto;min-height:min(900px,calc(100dvh - 36px));max-height:none;overflow:visible;background:var(--glam-surface)}.color-pick-shell{min-height:100dvh}.color-pick-screen{min-height:100%;padding:22px 18px 28px;background:var(--glam-surface);color:var(--glam-text)}.color-pick-header{position:relative;padding:30px 8px 22px;text-align:center}.color-pick-header .back-button{position:absolute;top:0;left:0;min-height:34px;padding:0;border:0;background:transparent;color:var(--glam-text-soft);box-shadow:none;font-size:13px}.color-pick-header p{margin:0 0 8px;color:var(--glam-red);font-family:Georgia,serif;font-size:12px;font-weight:700;letter-spacing:.08em}.color-pick-header h1{margin:0;font-family:Georgia,"Noto Serif KR",Batang,serif;font-size:32px;line-height:1.15}.color-pick-header>span{display:block;margin-top:13px;color:var(--glam-text-soft);font-size:14px;line-height:1.55}.color-pick-form,.color-pick-results{display:grid;gap:14px}.color-pick-section{padding:18px;border:1px solid var(--glam-line);border-radius:8px;background:var(--glam-surface-soft);box-shadow:0 7px 18px #5534200b}.color-pick-section-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.color-pick-section-heading h2,.color-pick-result-heading h2{margin:0;font-family:Georgia,"Noto Serif KR",Batang,serif;font-size:19px}.color-pick-section-heading p,.color-pick-result-heading p{margin:5px 0 0;color:var(--glam-text-soft);font-size:12px;line-height:1.45}.color-pick-section-heading>strong{color:var(--glam-red);font-size:14px;white-space:nowrap}.participant-inputs{display:grid;gap:8px;margin-top:15px}.participant-inputs label{display:grid;grid-template-columns:48px 1fr 30px;gap:8px;align-items:center}.participant-inputs span{color:var(--glam-text-soft);font-size:12px}.participant-inputs input{min-width:0;height:38px;border:1px solid var(--glam-line);border-radius:7px;background:#fff;padding:0 11px;color:var(--glam-text);font:inherit}.participant-inputs button{width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:var(--glam-text-soft);font-size:22px;line-height:1}.color-pick-add-name{width:100%;margin-top:12px;min-height:38px;border-style:dashed;color:var(--glam-red-dark)}.color-pick-selection-actions{display:flex;justify-content:flex-end;gap:12px;margin:11px 0 9px}.text-button{border:0;padding:2px;background:transparent;color:var(--glam-text-soft);font-size:12px;text-decoration:underline;text-underline-offset:3px}.color-pick-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.color-pick-chips button{display:grid;min-width:0;justify-items:center;gap:5px;min-height:70px;padding:8px 4px;border:1px solid var(--glam-line);border-radius:7px;background:#fffdfa;color:var(--glam-text);font-size:11px}.color-pick-chips button.is-selected{border:2px solid var(--glam-red);padding:7px 3px;box-shadow:inset 0 0 0 1px #df111714}.color-pick-chips i{width:28px;height:28px;border:1px solid rgba(47,33,27,.18);border-radius:50%;box-shadow:inset 0 1px #ffffff59}.color-pick-warning{margin:12px 0 0;color:var(--glam-red-dark);font-size:12px;line-height:1.45}.color-pick-draw-button{display:flex;min-height:58px;align-items:center;justify-content:center;gap:14px;font-family:Georgia,"Noto Serif KR",Batang,serif;font-size:19px}.color-pick-draw-button span{font-family:Arial,sans-serif;font-size:27px;line-height:.7}.color-pick-draw-start-actions{display:grid;gap:8px}.color-pick-auto-button{min-height:46px;font-size:14px}.color-pick-draw-stage{display:grid;justify-items:center;gap:14px;padding:6px 0 2px;text-align:center}.color-pick-draw-status{display:flex;width:100%;align-items:center;justify-content:space-between;padding:10px 13px;border:1px solid var(--glam-line);border-radius:7px;background:var(--glam-surface-soft);color:var(--glam-text-soft);font-size:12px}.color-pick-draw-status strong{color:var(--glam-red-dark);font-size:13px}.color-pick-draw-eyebrow{margin:7px 0 -8px;color:var(--glam-red);font-family:Georgia,"Noto Serif KR",serif;font-size:13px;font-weight:700}.color-pick-draw-stage h2{margin:0;color:var(--glam-text);font-family:Georgia,"Noto Serif KR",Batang,serif;font-size:clamp(32px,10vw,44px);line-height:1.1}.color-pick-slot{position:relative;display:grid;width:min(100%,360px);min-height:300px;align-items:center;justify-items:center;gap:10px;padding:16px 22px;overflow:hidden;border:1px solid var(--glam-line);border-radius:10px;background:#fffdfa;box-shadow:0 12px 28px #55342014}.color-pick-slot:after{position:absolute;top:16px;right:20px;color:#df11173d;content:"✦";font-size:20px}.color-pick-slot-reel{display:grid;width:100%;grid-template-rows:20px 34px 20px;align-items:center;color:#b4a69d;font-size:13px;line-height:1}.color-pick-slot-reel strong{color:var(--glam-text);font-family:Georgia,"Noto Serif KR",serif;font-size:27px;line-height:1}.color-pick-slot-visual{display:grid;width:120px;height:120px;place-items:center}.color-pick-slot-hat{display:block;width:100%;height:100%;object-fit:contain}i.color-pick-slot-hat{border:2px solid rgba(47,33,27,.14);border-radius:50%;box-shadow:inset 0 1px #ffffff80,0 9px 17px #55342024}.color-pick-slot-placeholder{display:grid;width:88px;height:88px;place-items:center;border:2px dashed #d8cbc2;border-radius:50%;color:#b7a79d;font-family:Georgia,serif;font-size:42px;font-style:normal}.color-pick-slot>p{margin:0;color:var(--glam-text-soft);font-size:13px;line-height:1.4}.color-pick-slot.is-spinning .color-pick-slot-visual{animation:color-pick-slot-pulse .16s ease-in-out infinite alternate}.color-pick-slot.is-spinning .color-pick-slot-reel{animation:color-pick-slot-scroll .18s linear infinite}.color-pick-slot.is-revealed{border-color:#df11176b;box-shadow:0 14px 30px #df111724}.color-pick-slot.is-revealed .color-pick-slot-visual{animation:color-pick-result-pop .46s ease-out both}.color-pick-next-button{width:min(100%,360px);min-height:56px;font-size:18px}.color-pick-next-button span{margin-left:5px;font-size:13px;font-weight:500}.color-pick-draw-auto-note{margin:-3px 0 0;color:var(--glam-text-soft);font-size:12px}@keyframes color-pick-slot-pulse{0%{transform:translateY(2px) scale(.96)}to{transform:translateY(-2px) scale(1.04)}}@keyframes color-pick-slot-scroll{0%{transform:translateY(4px)}to{transform:translateY(-4px)}}@keyframes color-pick-result-pop{0%{transform:scale(.82)}70%{transform:scale(1.08)}to{transform:scale(1)}}.color-pick-result-heading{padding:2px 4px 7px;text-align:center}.color-pick-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.color-pick-result-card{display:grid;min-height:158px;place-items:center;align-content:center;gap:5px;padding:14px 8px;border:1px solid var(--glam-line);border-radius:8px;background:var(--glam-surface-soft)}.color-pick-result-visual{display:block;width:52px;height:52px;object-fit:contain}i.color-pick-result-visual{border:1px solid rgba(47,33,27,.18);border-radius:50%}.color-pick-result-card strong{font-size:15px}.color-pick-result-card>span{color:var(--glam-text-soft);font-size:12px}.color-pick-result-card button{margin-top:4px;border:0;background:transparent;color:var(--glam-red-dark);font-size:11px;text-decoration:underline;text-underline-offset:3px}.color-pick-result-card button:disabled{color:#b9aba1;text-decoration:none}.color-pick-result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.color-pick-result-actions button{min-height:47px;padding:8px;font-size:14px}.color-pick-result-actions .primary-button{grid-column:span 2}.color-pick-message{margin:16px 4px 0;text-align:center;color:var(--glam-text-soft);font-size:13px;line-height:1.45}.lottery-screen{max-width:420px}.lottery-start-actions{display:grid;gap:8px}.lottery-start-button{display:grid;min-height:62px;place-items:center;gap:2px;font-family:Georgia,"Noto Serif KR",Batang,serif;font-size:18px}.lottery-start-button small{color:#ffffffe0;font-family:Noto Sans KR,sans-serif;font-size:11px;font-weight:600}.lottery-start-button-secondary{border:1px solid var(--glam-line);background:#fff8ed;color:var(--glam-text);box-shadow:none}.lottery-start-button-secondary small{color:var(--glam-text-soft)}.lottery-start-button span{font-family:Arial,sans-serif;color:#fff7c9;font-size:20px;line-height:1}.lottery-start-note{margin:-5px 6px 0;color:var(--glam-text-soft);font-size:11px;line-height:1.45;text-align:center}.lottery-stage{display:grid;justify-items:center;gap:10px;padding:2px 0 4px}.lottery-stage.is-recording-source{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}.lottery-stage.is-recording-source .lottery-canvas{width:1px;height:1px;opacity:0}.lottery-canvas{display:block;width:min(100%,396px);height:auto;border:1px solid var(--glam-line);border-radius:9px;background:#fff8ee;box-shadow:0 14px 28px #5534201a;touch-action:manipulation}.lottery-canvas[data-phase=touch-ball]{border-color:#df111799;box-shadow:0 0 0 3px #df11171a,0 14px 28px #5534201a;cursor:pointer}.lottery-canvas[data-phase=ready-draw]{border-color:#df1117a3;box-shadow:0 0 0 3px #df11171a,0 14px 28px #5534201a;cursor:pointer;animation:lottery-machine-ready 1.8s ease-in-out infinite}.lottery-canvas[data-phase=turning],.lottery-canvas[data-phase=mixing],.lottery-canvas[data-phase=dropping]{border-color:#df1117b8;cursor:progress}@keyframes lottery-machine-ready{0%,to{transform:scale(1)}50%{transform:scale(1.012)}}.lottery-live-status{display:flex;width:min(100%,396px);align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border:1px solid var(--glam-line);border-radius:7px;background:var(--glam-surface-soft);color:var(--glam-text-soft);font-size:11px}.lottery-live-status strong{color:var(--glam-red-dark);font-size:12px}.lottery-live-status span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lottery-machine-prompt{width:min(100%,396px);margin:0;color:var(--glam-red-dark);font-size:13px;font-weight:800;line-height:1.45;text-align:center}.lottery-touch-button,.lottery-next-button{width:min(100%,396px);min-height:52px;font-size:16px}.lottery-reveal-announcement{display:grid;width:min(100%,396px);justify-items:center;gap:3px;margin:0;padding:10px;border:1px solid rgba(223,17,23,.22);border-radius:7px;background:#fffdfa;color:var(--glam-text-soft);font-size:12px;animation:color-pick-result-pop .35s ease-out both}.lottery-reveal-announcement strong{color:var(--glam-text);font-size:18px}.lottery-complete{display:grid;gap:10px;margin-top:16px;padding:17px;border:1px solid var(--glam-line);border-radius:9px;background:var(--glam-surface);box-shadow:var(--glam-shadow)}.lottery-complete h2{margin:0;color:var(--glam-text);font-family:Georgia,"Noto Serif KR",serif;font-size:22px;text-align:center}.lottery-complete>p{margin:-4px 0 3px;color:var(--glam-text-soft);font-size:11px;text-align:center}.lottery-cumulative-results{width:min(100%,396px);padding:16px;border:1px solid var(--glam-line);border-radius:8px;background:var(--glam-surface-soft)}.lottery-cumulative-results h2{margin:0 0 12px;color:var(--glam-text);font-family:Georgia,"Noto Serif KR",serif;font-size:28px;line-height:1.2;text-align:center}.lottery-cumulative-results ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.lottery-cumulative-results li{display:grid;min-width:0;grid-template-columns:38px minmax(0,1fr);align-items:center;column-gap:9px;row-gap:4px;min-height:82px;padding:10px;border:1px solid rgba(85,52,32,.08);border-radius:8px;background:#fffdfa}.lottery-cumulative-results li.is-new{animation:lottery-result-arrive .34s ease-out both}.lottery-result-chip-visual{grid-row:span 2;display:block;width:36px;height:36px;border:1px solid rgba(47,33,27,.18);border-radius:50%;object-fit:contain}.lottery-cumulative-results span,.lottery-cumulative-results strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lottery-cumulative-results span{color:var(--glam-text-soft);font-size:17px}.lottery-cumulative-results strong{color:var(--glam-text);font-size:20px}@keyframes lottery-result-arrive{0%{opacity:0;transform:translateY(9px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}.lottery-complete-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lottery-complete-actions .primary-button{grid-column:span 2}.lottery-complete-actions button{min-height:46px;padding:8px;font-size:13px}.lottery-complete-actions>p{grid-column:span 2;margin:0;color:var(--glam-text-soft);font-size:12px;text-align:center}.color-pick-subtle{margin:9px 0 0;color:var(--glam-text-soft);font-size:11px}.color-pick-record-option{display:flex;align-items:center;gap:10px;min-height:58px;padding:11px 13px;border:1px solid var(--glam-line);border-radius:8px;background:#fffdfa}.color-pick-record-option input{width:18px;height:18px;accent-color:var(--glam-red)}.color-pick-record-option span{display:grid;gap:2px}.color-pick-record-option strong{font-size:13px}.color-pick-record-option small{color:var(--glam-text-soft);font-size:11px}.color-pick-record-button{min-height:43px}.gacha-machine-wrap{display:grid;width:min(100%,374px);justify-items:center;gap:9px}.gacha-machine{position:relative;display:grid;width:100%;height:338px;justify-items:center;overflow:hidden;border:7px solid #a80e15;border-radius:25px 25px 18px 18px;background:#df1117;box-shadow:inset 0 2px #ffffff45,0 15px 27px #8419182b}.gacha-machine:before{position:absolute;top:22px;left:20px;width:19px;height:118px;border-radius:99px;background:#ffffff2e;content:""}.gacha-machine-brand{z-index:1;margin-top:14px;color:#fff5df;font-family:Georgia,"Noto Serif KR",serif;font-size:13px;font-weight:700;letter-spacing:.12em;line-height:1.1;text-align:center}.gacha-machine-brand span{font-family:Arial,sans-serif;font-size:8px;letter-spacing:.17em}.gacha-globe{position:absolute;top:51px;display:grid;width:218px;height:218px;place-items:center;overflow:hidden;border:6px solid #891117;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff 0,#fff 3%,#fff9e7 4%,#fff9e7 37%,#efe8dd 72%);box-shadow:inset 0 0 0 4px #ffffff9e,inset 0 -21px 36px #5534201a}.gacha-globe:after{position:absolute;top:20px;left:38px;width:37px;height:16px;border-radius:50%;background:#ffffffad;content:"";transform:rotate(-30deg)}.gacha-mini-capsule{position:absolute;width:47px;height:47px;border:2px solid #c98e18;border-radius:50%;background:linear-gradient(135deg,#fff8b7 0,#fff8b7 13%,#f5cb43 14%,#f5cb43 49%,#e2aa24 50%,#e2aa24 56%,#f7d14d 57%);box-shadow:inset 8px 6px 8px #ffffff70,2px 3px 4px #55342024}.gacha-mini-capsule:after{position:absolute;top:21px;right:0;left:0;height:2px;background:#8d5e0d70;content:""}.capsule-0{transform:translate(-43px,-39px) rotate(-22deg)}.capsule-1{transform:translate(43px,-39px) rotate(17deg)}.capsule-2{transform:translate(-67px,9px) rotate(18deg)}.capsule-3{transform:translate(4px,1px) rotate(-12deg)}.capsule-4{transform:translate(67px,11px) rotate(20deg)}.capsule-5{transform:translate(-36px,56px) rotate(-8deg)}.capsule-6{transform:translate(43px,55px) rotate(23deg)}.gacha-handle{position:absolute;bottom:54px;width:45px;height:45px;border:5px solid #891117;border-radius:50%;background:#fff0bc;box-shadow:inset 0 3px #fff9}.gacha-handle i{position:absolute;top:11px;left:11px;width:13px;height:13px;border-radius:50%;background:#df1117}.gacha-chute{position:absolute;right:25px;bottom:21px;width:93px;height:44px;border:5px solid #891117;border-radius:15px 15px 7px 7px;background:#7a1c1d;box-shadow:inset 0 5px #ffffff1a}.gacha-machine-note{margin:0;color:var(--glam-text-soft);font-size:12px}.gacha-machine.is-mixing .gacha-mini-capsule{animation:gacha-capsule-mix .26s ease-in-out infinite alternate}.gacha-machine.is-mixing .gacha-handle{animation:gacha-handle-spin .35s linear infinite}.gacha-manual-outlet{display:grid;width:min(100%,360px);justify-items:center;gap:12px}.gacha-capsule-button{position:relative;width:116px;height:116px;border:3px solid #c78e18;border-radius:50%;background:linear-gradient(135deg,#fff8b7 0,#fff8b7 15%,#f3c63e 16%,#f3c63e 49%,#da9c18 50%,#da9c18 56%,#f9d654 57%);box-shadow:inset 14px 9px 14px #ffffff73,0 11px 18px #744c0c2e;transition:transform .22s ease,opacity .22s ease}.gacha-capsule-button:before{position:absolute;top:54px;right:0;left:0;height:3px;background:#7e51086b;content:""}.gacha-capsule-button:hover{transform:translateY(-3px) scale(1.03)}.gacha-capsule-button span{position:absolute;top:22px;left:28px;width:27px;height:12px;border-radius:50%;background:#ffffffad;transform:rotate(-31deg)}.gacha-capsule-button.is-opened{transform:scale(.78);opacity:.42}.gacha-empty-outlet{min-height:112px;padding-top:41px;color:var(--glam-text-soft);font-size:12px}.gacha-reveal-card{display:grid;width:min(100%,350px);grid-template-columns:1fr auto auto auto;align-items:center;gap:8px;padding:13px;border:1px solid rgba(223,17,23,.28);border-radius:9px;background:#fffdfa;box-shadow:0 9px 18px #67231a17;animation:color-pick-result-pop .42s ease-out both}.gacha-reveal-card>span{grid-column:1 / -1;color:var(--glam-red);font-size:11px;text-align:left}.gacha-reveal-card strong{overflow:hidden;font-size:18px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.gacha-reveal-card em{color:var(--glam-text-soft);font-style:normal}.gacha-reveal-card b{color:var(--glam-text);font-size:13px;white-space:nowrap}.gacha-reveal-visual,.gacha-grid-color,.gacha-log-chip{display:block;width:32px;height:32px;border:1px solid rgba(47,33,27,.16);border-radius:50%;object-fit:contain}.gacha-log-chip{width:19px;height:19px}.gacha-capsule-grid{display:grid;width:min(100%,374px);grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gacha-grid-capsule{display:grid;min-height:80px;place-items:center;border:2px solid #c78e18;border-radius:50%;background:linear-gradient(135deg,#fff8b7 0,#fff8b7 15%,#f3c63e 16%,#f3c63e 49%,#da9c18 50%,#da9c18 56%,#f9d654 57%);box-shadow:inset 7px 5px 9px #ffffff73,0 5px 9px #744c0c26;aspect-ratio:1;transition:transform .2s ease}.gacha-grid-capsule:hover{transform:translateY(-2px)}.gacha-grid-capsule.is-opened{border-color:var(--glam-line);background:#fffdfa;box-shadow:none}.gacha-grid-capsule>span{display:grid;max-width:100%;justify-items:center;gap:3px}.gacha-grid-capsule b{max-width:100%;overflow:hidden;color:var(--glam-text);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.gacha-session-line{display:flex;width:min(100%,374px);justify-content:space-between;gap:10px;color:var(--glam-text-soft);font-size:10px}.gacha-session-line span:last-child{text-align:right}.gacha-draw-log{display:grid;width:min(100%,374px);gap:5px;margin:0;padding:0;list-style:none}.gacha-draw-log li{display:grid;grid-template-columns:24px 1fr 16px 20px auto;align-items:center;gap:6px;min-height:36px;padding:7px 9px;border-radius:7px;background:var(--glam-surface-soft);text-align:left}.gacha-draw-log li>span{display:grid;width:21px;height:21px;place-items:center;border-radius:50%;background:#fff;color:var(--glam-red);font-size:10px;font-weight:700}.gacha-draw-log b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.gacha-draw-log em{color:var(--glam-text-soft);font-style:normal}.gacha-draw-log strong{font-size:11px;white-space:nowrap}.gacha-draw-log.is-final{width:100%}.color-pick-live-actions{display:grid;width:min(100%,374px)}.color-pick-live-actions button{min-height:44px}.color-pick-fairness-note{margin:22px 7px 0;color:var(--glam-text-soft);font-size:11px;line-height:1.5;text-align:center}.color-pick-result-card>span:first-child{color:var(--glam-red);font-size:10px}.color-pick-result-card>b{color:var(--glam-text-soft);font-size:12px}@keyframes gacha-capsule-mix{0%{transform:translate(-15px,6px) rotate(-9deg)}to{transform:translate(18px,-9px) rotate(12deg)}}@keyframes gacha-handle-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.color-pick-slot.is-spinning .color-pick-slot-visual,.color-pick-slot.is-spinning .color-pick-slot-reel,.color-pick-slot.is-revealed .color-pick-slot-visual,.gacha-machine.is-mixing .gacha-mini-capsule,.gacha-machine.is-mixing .gacha-handle{animation:none}}@media(max-width:340px){.color-pick-screen{padding-right:12px;padding-left:12px}.color-pick-section{padding:14px}.color-pick-chips{gap:6px}.color-pick-chips button{min-height:64px;font-size:10px}}.admin-entry-button{margin-top:14px;border:1px solid rgba(197,22,22,.16);background:snow;color:#b61414}@media(max-height:760px){.intro-screen{padding-top:16px;padding-bottom:16px}.landing-card{padding-top:28px}.landing-divider.is-soft{margin-top:16px;margin-bottom:13px}.brand-logo{width:min(63vw,245px)}.intro-copy{margin-top:24px}.primary-button.intro-button{min-height:56px;margin-top:24px}.intro-note{margin-top:18px}}.app-shell.intro-shell{width:100%;max-width:100%;height:100dvh;min-height:100dvh;overflow:hidden;padding:0}.mobile-frame.intro-frame{width:min(100vw,430px);min-width:0;max-width:430px;height:min(900px,100dvh);min-height:0;max-height:100dvh;overflow:hidden}.intro-screen{container-type:size;display:block;width:100%;max-width:100%;height:100%;min-height:0;overflow:hidden;padding:24px}.landing-card{min-width:0;max-width:100%;min-height:0;height:100%;overflow:hidden;justify-content:center;gap:clamp(8px,2.25cqh,20px);padding:clamp(18px,4.5cqh,42px) clamp(18px,6cqw,30px) clamp(16px,3.5cqh,30px)}.brand-mark{font-size:min(var(--brand-title-font-size, 30px),10.8cqw,7.8cqh)}.landing-divider.is-soft{margin:clamp(10px,2.3cqh,20px) auto 0}.intro-visual{flex:0 0 auto}.brand-logo{width:min(70cqw,36cqh,300px)}.intro-copy{min-width:0;margin:0}.intro-copy h1{width:100%;max-width:100%;font-size:min(var(--hero-title-font-size, 31px),11.3cqw,7.8cqh);line-height:var(--hero-title-line-height, 1.3);overflow-wrap:anywhere;word-break:break-all}.landing-divider.is-red{margin:clamp(10px,2cqh,18px) auto}.intro-copy p{font-size:min(var(--hero-description-font-size, 16px),6.15cqw,4.5cqh);line-height:var(--hero-description-line-height, 1.58)}.primary-button.intro-button{max-width:100%;min-width:0;min-height:clamp(50px,7.4cqh,62px);margin-top:0;font-size:min(var(--start-button-font-size, 20px),7.2cqw,4.2cqh)}.intro-note{margin:0;font-size:min(var(--mobile-guide-font-size, 14px),5.15cqw,3.2cqh)}.admin-entry-button{font-size:min(var(--admin-link-font-size, 13px),5.15cqw,3.2cqh)}.landing-preview-device{overflow:hidden}.landing-preview-device .intro-screen{container-type:size;height:100%;min-height:0;overflow:hidden;padding:12px}.landing-preview-device .landing-card{min-height:0;height:100%;gap:clamp(7px,2.25cqh,18px);padding:clamp(16px,4.5cqh,38px) clamp(16px,6cqw,28px) clamp(14px,3.5cqh,26px)}.studio-screen{display:flex;flex-direction:column;overflow:hidden}.studio-frame .studio-screen{height:auto;min-height:min(720px,calc(100dvh - 36px));overflow:visible}.studio-header{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 56px;gap:8px;align-items:center;padding:12px 16px 7px}.back-button{display:grid;width:42px;height:42px;min-height:42px;place-items:center;border-radius:14px;background:#fffaf0;color:#7c5240;font-size:28px;line-height:1;box-shadow:0 8px 20px #7d58421f}.studio-header h1{margin:0;color:#6a4634;font-family:Georgia,Times New Roman,serif;font-size:21px;letter-spacing:0}.studio-header p{margin:2px 0 0;color:#927064;font-size:12px;line-height:1.25}.canvas-card{margin:0 12px;padding:8px;border:1px solid rgba(162,121,98,.12);border-radius:20px;background:#fffbf4e6;box-shadow:0 16px 34px #764f3a24}.photo-stage{position:relative;display:grid;width:100%;height:clamp(212px,32.9svh,294px);aspect-ratio:auto;max-height:none;overflow:hidden;place-items:center;border-radius:15px;background:linear-gradient(135deg,rgba(255,255,255,.6),transparent 50%),#f1dfd2}.photo-stage.has-photo{background:#efe3d8}.baby-photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none}.empty-state{display:grid;width:78%;justify-items:center;gap:18px;color:#8f6e60;text-align:center}.empty-state p{margin:0;font-size:15px;font-weight:700;line-height:1.55}.empty-photo-icon{position:relative;width:120px;aspect-ratio:1;border:2px dashed rgba(146,103,80,.28);border-radius:34px;background:#fffaf094}.empty-photo-icon:before{position:absolute;top:26px;right:30px;bottom:32px;left:30px;border-radius:48% 48% 42% 42%;background:#f3cdbf;content:""}.empty-photo-icon span{position:absolute;top:16px;left:50%;width:54px;height:62px;border:2px solid #d39b89;background:#fff3dd;clip-path:polygon(50% 0%,88% 100%,12% 100%);transform:translate(-50%) rotate(-8deg)}.product-overlay{position:absolute;z-index:4;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.overlay-selection-bounds{position:absolute;box-sizing:border-box;border:1px dashed rgba(141,96,76,.34);border-radius:10px;pointer-events:none}.text-overlay{z-index:5;width:max-content;height:max-content}.text-overlay-art{position:relative;display:inline-block;white-space:nowrap}.seven-segment-text{display:block;flex:none;overflow:visible;fill:var(--segment-color);filter:drop-shadow(0 0 var(--segment-glow) var(--segment-color)) drop-shadow(0 var(--segment-shadow-y) var(--segment-shadow-blur) rgba(55,20,11,.5));pointer-events:none}.seven-segment-overlay{position:relative}.seven-segment-preview{max-width:100%}.text-overlay-art.is-ribbon:before,.text-overlay-art.is-ribbon:after{position:absolute;top:50%;z-index:-1;width:14px;height:18px;border:inherit;background:inherit;content:"";transform:translateY(-50%) rotate(45deg)}.text-overlay-art.is-ribbon:before{left:-7px}.text-overlay-art.is-ribbon:after{right:-7px}.text-selection-bounds{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border:1px dashed rgba(141,96,76,.42);border-radius:8px;pointer-events:none}.product-overlay:active{cursor:grabbing}.product-overlay-art{width:100%;height:100%}.product-overlay-art .product-art{width:100%;height:100%;aspect-ratio:auto}.overlay-adjust-panel{min-height:70px;margin-top:6px;border:1px solid rgba(160,118,94,.12);border-radius:14px;background:#fff8ef;box-shadow:0 7px 16px #78533d14;padding:5px 8px}.overlay-adjust-panel.is-empty{display:grid;min-height:38px;place-items:center start}.overlay-adjust-panel.is-empty p{margin:0;color:#977365;font-size:12px;font-weight:800}.overlay-adjust-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:1px}.overlay-adjust-heading span{color:#6d4938;font-size:12px;font-weight:900}.overlay-adjust-heading small{display:none}.overlay-adjust-row{display:grid;min-height:27px;grid-template-columns:60px minmax(0,1fr);align-items:center;gap:5px}.overlay-adjust-label{display:flex;align-items:baseline;justify-content:space-between;gap:4px;color:#825d4c;font-size:11px;font-weight:800}.overlay-adjust-label strong{color:#6d4938;font-size:11px}.overlay-adjust-row .soft-range{min-width:0;margin:0}.overlay-list-section{padding-bottom:8px}.overlay-list-heading{margin-bottom:8px}.overlay-list-scroll{display:flex;width:100%;gap:8px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 8px;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-color:rgba(166,112,92,.32) transparent;scrollbar-width:thin;touch-action:pan-x;-webkit-overflow-scrolling:touch}.overlay-list-scroll::-webkit-scrollbar{display:block;height:4px}.overlay-list-scroll::-webkit-scrollbar-track{background:transparent}.overlay-list-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#a6705c47}.overlay-list-card{position:relative;flex:0 0 calc((100% - 16px) / 3);min-width:0;border:1px solid rgba(152,105,83,.14);border-radius:14px;background:#fff6eb;box-shadow:0 6px 14px #7e594212;scroll-snap-align:start}.overlay-list-card.is-selected{border-color:#b7705de0;background:#fffaf2;box-shadow:0 0 0 2px #cb8c7829}.overlay-list-select{display:grid;width:100%;min-height:96px;grid-template-columns:42px minmax(0,1fr);gap:7px;align-items:center;border:0;border-radius:14px;background:transparent;color:#704d3b;cursor:pointer;padding:7px 25px 7px 7px;text-align:left}.overlay-list-thumb{display:grid;width:42px;height:48px;place-items:center;overflow:hidden}.text-list-thumb{border-radius:10px;background:#f4ded2;color:#8a5143;font-family:Georgia,serif;font-size:24px;font-weight:800}.overlay-list-thumb .product-art{width:100%;height:100%;aspect-ratio:auto}.overlay-list-copy{display:grid;min-width:0;gap:3px}.overlay-list-copy strong,.overlay-list-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overlay-list-copy strong{font-size:11px;font-weight:900}.overlay-list-copy small{color:#a17b6b;font-size:10px;font-weight:800}.overlay-list-delete{position:absolute;top:6px;right:6px;display:grid;width:22px;height:22px;place-items:center;border:0;border-radius:50%;background:#ead2c8;color:#8a463c;cursor:pointer;font-size:10px;font-weight:900;line-height:1}.overlay-scroll-note{margin:4px 2px 0;color:#a17b6b;font-size:10px;font-weight:800;line-height:1.3}.canvas-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding-top:6px}.canvas-actions .secondary-button,.canvas-actions .ghost-button,.canvas-actions .canvas-save-button{min-height:48px;border-radius:13px;font-size:10px;line-height:1.15;padding:4px 2px;white-space:normal;word-break:keep-all}.canvas-action-break{display:none}.canvas-actions .canvas-save-button{width:100%;border:1px solid var(--glam-red);background:var(--glam-red);box-shadow:none}.photo-privacy-note,.shopping-return-link{display:block;margin:6px 0 0;color:var(--glam-text-soft);font-size:11px;line-height:1.45;text-align:center}.shopping-return-link{color:var(--glam-red-dark);text-decoration:underline;text-underline-offset:3px}.secondary-button,.ghost-button{border-radius:15px;font-size:13px;font-weight:800}.secondary-button{background:#8e6553;color:#fffaf5}.ghost-button{background:#f6eadf;color:#8a6759}.ghost-button:disabled,.secondary-button:disabled,.primary-button:disabled,.soft-range:disabled{cursor:not-allowed;opacity:.48}.delete-selection-note,.selection-note,.multi-overlay-note{margin:6px 2px 0;color:#9b7465;font-size:11px;font-weight:800;line-height:1.45}.multi-overlay-note{margin:3px 2px;font-size:10px;line-height:1.3}.bottom-panel{flex:none;min-height:0;margin-top:6px;overflow:visible;padding:0 10px max(12px,env(safe-area-inset-bottom))}.panel-section{border:1px solid rgba(160,118,94,.1);border-radius:18px;background:#fffaf2eb;box-shadow:0 12px 28px #78533d1a;padding:8px}.panel-section+.panel-section{margin-top:6px}.product-picker-section{display:flex;min-height:0;flex-direction:column;isolation:isolate;overflow:visible}.product-picker-section.has-product-list{margin-bottom:0}.product-picker-fixed-header{position:relative;z-index:1;margin:-1px -1px 0;background:var(--glam-surface, #fffdfa);padding:1px 1px 7px}.section-heading{margin-bottom:7px}.section-heading span{color:#6d4938;font-size:14px;font-weight:900}.section-heading small{display:block;margin-top:2px;color:#9b786a;font-size:10px;line-height:1.25;text-align:left}.category-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.product-picker-tabs{flex:0 0 auto;min-height:82px}.category-tabs button{min-height:38px;border:1px solid transparent;border-radius:12px;background:#f3e3d7;color:#8b6555;cursor:pointer;font-size:11px;font-weight:800}.category-tab-label{display:block;white-space:pre-line;line-height:1.12}.category-tabs button.is-active{border-color:#bc7e6d57;background:#d9a093;color:#fffdf9;box-shadow:0 8px 18px #b9776438}.text-tool-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:6px}.text-tool-tabs button{min-height:38px;border:1px solid rgba(152,105,83,.14);border-radius:12px;background:#fff7ec;color:#8b6555;cursor:pointer;font-size:11px;font-weight:900}.text-tool-tabs button.is-active{border-color:#ad655285;background:#d9a093;color:#fffdf9;box-shadow:0 7px 16px #b977642e}.text-overlay-panel{margin-top:8px;border-top:1px solid rgba(160,118,94,.1);padding-top:8px}.text-overlay-description{margin:0 0 7px;color:#9b786a;font-size:10px;font-weight:800;line-height:1.35}.text-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.text-overlay-input{min-width:0;min-height:44px;border:1px solid rgba(150,103,80,.18);border-radius:12px;background:#fffdf8;color:#694936;font:inherit;font-size:14px;font-weight:800;outline:0;padding:0 11px}.text-overlay-input:focus{border-color:#c68b7d;box-shadow:0 0 0 3px #c68b7d29}.text-add-button{min-height:44px;border-radius:12px;font-size:11px;padding:0 11px;white-space:nowrap}.text-style-heading{display:flex;justify-content:space-between;gap:8px;margin:9px 2px 4px}.text-style-heading span{color:#704d3b;font-size:11px;font-weight:900}.text-style-heading small{overflow:hidden;color:#a17b6b;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.text-style-scroll{width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-color:rgba(166,112,92,.28) transparent;scrollbar-width:thin;padding:2px 2px 5px;touch-action:pan-x;-webkit-overflow-scrolling:touch}.text-style-scroll::-webkit-scrollbar{height:4px}.text-style-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#a6705c3d}.text-style-list{display:flex;width:max-content;min-width:100%;flex-wrap:nowrap;gap:8px}.text-style-card{display:grid;flex:0 0 112px;min-width:112px;min-height:72px;align-content:center;gap:7px;border:1px solid rgba(152,105,83,.14);border-radius:12px;background:#fffaf2;color:#704d3b;cursor:pointer;padding:6px}.text-style-card.is-selected{border-color:#b16452e6;box-shadow:0 0 0 2px #cb8c7829}.text-style-preview{position:relative;justify-self:center;max-width:100%;overflow:hidden;border-style:solid;font-size:11px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.text-style-preview.is-ribbon:before,.text-style-preview.is-ribbon:after{position:absolute;top:50%;z-index:-1;width:9px;height:11px;border:inherit;background:inherit;content:"";transform:translateY(-50%) rotate(45deg)}.text-style-preview.is-ribbon:before{left:-5px}.text-style-preview.is-ribbon:after{right:-5px}.text-style-card strong{overflow:hidden;font-size:10px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.text-style-scroll-note{margin:3px 2px 0;color:#a17b6b;font-size:10px;font-weight:800;line-height:1.3}.date-color-palette{margin-top:8px;padding-top:8px;border-top:1px solid rgba(160,118,94,.11)}.date-color-heading{margin-bottom:1px}.date-color-palette .color-palette-copy{margin-bottom:5px}.date-color-palette .color-palette-scroll{padding-bottom:3px}.product-list{position:relative;width:100%;max-height:clamp(280px,42dvh,420px);min-height:0;overflow-x:hidden;overflow-y:auto;padding:3px 7px max(22px,env(safe-area-inset-bottom)) 1px;overscroll-behavior-y:contain;scrollbar-color:rgba(166,112,92,.32) transparent;scrollbar-width:thin;scrollbar-gutter:stable;touch-action:pan-y;-webkit-overflow-scrolling:touch}.product-picker-scroll-area{flex:0 0 auto;margin-top:1px}.product-picker-scroll-area.is-text-tools{padding-bottom:max(16px,env(safe-area-inset-bottom))}.product-list::-webkit-scrollbar{width:5px}.product-list::-webkit-scrollbar-track{background:transparent}.product-list::-webkit-scrollbar-thumb{border-radius:999px;background:#a6705c3d}.product-grid{display:grid;width:100%;min-width:0;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:96px;gap:9px 5px}.product-card{display:flex;min-width:0;height:96px;min-height:96px;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;border:1px solid rgba(152,105,83,.12);border-radius:14px;background:#fff6eb;color:#765342;cursor:pointer;padding:4px 2px;text-align:center;box-shadow:0 8px 16px #7e594214;touch-action:manipulation}.product-card.is-selected{border-color:#bf7967b8;background:#fffaf2;box-shadow:0 10px 22px #b575612e}.product-thumb{display:grid;width:100%;height:52px;flex:0 0 auto;place-items:center;overflow:visible}.product-thumbnail{display:grid;width:100%;height:100%;place-items:center;overflow:hidden}.product-thumbnail svg{display:block;width:100%;height:100%}.product-thumbnail-fallback .product-art.is-compact{width:100%;height:100%}.product-meta{width:100%;min-width:0}.product-meta strong,.product-meta small{display:block}.product-meta strong{display:-webkit-box;min-height:20px;overflow:hidden;color:#684533;font-size:9px;font-weight:900;line-height:1.1;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.product-meta small{overflow:hidden;margin-top:1px;color:#a17b6b;font-size:9px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}@media(min-width:360px){.product-grid{grid-auto-rows:106px;gap:10px 6px}.product-card{height:106px;min-height:106px;padding:4px 3px}.product-thumb{height:58px}.product-meta strong,.product-meta small{font-size:10px}}.color-palette-section{margin-top:8px;border:1px solid rgba(160,118,94,.1);border-radius:16px;background:#fffaf2bd;padding:10px}.color-palette-copy{display:grid;gap:2px;margin:2px 0 7px}.color-palette-copy strong{color:var(--glam-text);font-size:12px;line-height:1.3}.color-palette-copy small{color:var(--glam-text-soft);font-size:10px;line-height:1.3;white-space:nowrap}.color-palette-scroll{width:100%;overflow-x:auto;overflow-y:hidden;padding:2px 2px 5px;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-color:rgba(223,17,23,.28) transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch;touch-action:pan-x}.color-palette-scroll::-webkit-scrollbar{height:4px}.color-palette-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#df111747}.color-palette-list{display:flex;width:max-content;min-width:100%;flex-wrap:nowrap;gap:9px}.color-chip-button{display:grid;width:48px;min-width:48px;min-height:58px;flex:0 0 48px;place-items:center;gap:4px;border:1px solid rgba(145,101,82,.14);border-radius:999px;background:#fff8ef;color:#7a5645;cursor:pointer;font-size:10px;font-weight:900;padding:6px 5px;scroll-snap-align:start}.color-palette-scroll-note{margin:4px 2px 0;color:var(--glam-text-soft);font-size:10px;font-weight:700;line-height:1.25}.color-chip-button.is-selected{border-color:#aa5b4adb;background:#fff3e9;box-shadow:0 0 0 3px #c68b7d2e}.color-chip-dot{display:block;width:34px;height:34px;border:2px solid rgba(255,250,242,.95);border-radius:50%;box-shadow:inset 0 0 0 1px #65463629,0 5px 10px #764f3a1f}.purchase-toolbar-section{padding:7px 9px}.control-row{display:flex;justify-content:space-between;margin:4px 2px 8px;color:#795544;font-size:13px;font-weight:800}.control-row+.soft-range{margin-bottom:14px}.soft-range{width:100%;accent-color:#c68b7d}.product-art{--product-accent: #d8a48f;position:relative;width:100%;aspect-ratio:1;transform-origin:center}.product-art.is-compact{width:44px}.product-art.image-backed{display:grid;place-items:center}.product-art.image-backed img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.product-main,.product-trim,.product-shadow,.product-detail{position:absolute;display:block}.product-shadow{inset:auto 12% 10%;height:10%;border-radius:999px;background:#59392824;filter:blur(4px)}.partyHat .product-main,.flowerHat .product-main{top:2%;right:20%;bottom:10%;left:20%;border:3px solid var(--product-accent);border-radius:55% 55% 44% 44%;background:linear-gradient(160deg,#fff9e9 5%,#efd6bf);clip-path:polygon(50% 0%,89% 100%,11% 100%)}.flowerHat .product-main{background:linear-gradient(160deg,#fff7d4,#f2c869)}.partyHat .product-trim,.flowerHat .product-trim{left:33%;right:33%;bottom:28%;height:15%;border-radius:999px;background:var(--product-accent);box-shadow:0 0 0 4px #fffaf28f inset}.partyHat .detail-one,.flowerHat .detail-one{top:42%;left:43%;width:8%;height:8%;border-radius:50%;background:#fff7ec}.partyHat .detail-two,.flowerHat .detail-two{top:58%;left:55%;width:7%;height:7%;border-radius:50%;background:#fff7ec}.partyHat .detail-three,.flowerHat .detail-three{top:64%;left:35%;width:6%;height:6%;border-radius:50%;background:#fff7ec}.crown .product-main,.tulipCrown .product-main,.knitCrown .product-main{top:24%;right:4%;bottom:20%;left:4%;border:3px solid var(--product-accent);border-radius:0 0 26px 26px;background:#fff5df;clip-path:polygon(2% 100%,10% 28%,30% 44%,50% 2%,70% 44%,90% 28%,98% 100%)}.tulipCrown .product-main{background:linear-gradient(180deg,#fff7e5,#f3ddd0)}.knitCrown .product-main{background:repeating-linear-gradient(90deg,#d9c2aa 0,#d9c2aa 9px,#c8aa8d 9px,#c8aa8d 15px)}.crown .product-trim,.tulipCrown .product-trim,.knitCrown .product-trim{left:9%;right:9%;bottom:21%;height:14%;border-radius:999px;background:var(--product-accent)}.crown .product-detail,.tulipCrown .product-detail,.knitCrown .product-detail{width:9%;height:9%;border-radius:50%;background:var(--product-accent)}.crown .detail-one,.tulipCrown .detail-one,.knitCrown .detail-one{top:35%;left:18%}.crown .detail-two,.tulipCrown .detail-two,.knitCrown .detail-two{top:23%;left:45.5%}.crown .detail-three,.tulipCrown .detail-three,.knitCrown .detail-three{top:35%;right:18%}.empty-product-copy,.empty-admin-data{color:#967365;font-size:13px;line-height:1.5}.empty-product-copy{margin:12px 0 4px}.empty-admin-data{display:grid;gap:12px;margin:24px 16px;padding:18px;border-radius:22px;background:#fffaf2eb;text-align:center}.purchase-button{width:100%;min-height:48px;margin-bottom:6px}@media(max-width:520px){body{min-width:0}.app-shell{padding:0}.mobile-frame{width:100%;height:100vh;min-height:100vh;border:0;border-radius:0}.mobile-frame.season-frame.season-preview-frame{width:100%;max-width:100%}.mobile-frame.studio-frame{height:auto;min-height:100dvh;overflow:visible}.studio-frame .studio-screen{min-height:100dvh}.studio-header{padding-top:max(8px,env(safe-area-inset-top))}.canvas-card{margin-inline:10px}.photo-stage{height:clamp(192px,31.5svh,272px)}}@media(max-width:370px){.studio-header{grid-template-columns:40px minmax(0,1fr) 52px;padding-inline:12px}.studio-header h1{font-size:19px}.studio-header p{font-size:11px}.studio-admin-button{right:12px;font-size:10px;padding-inline:9px}.photo-stage{height:clamp(148px,27.3svh,215px)}.canvas-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.canvas-actions .secondary-button,.canvas-actions .ghost-button,.canvas-actions .canvas-save-button{font-size:9px}.canvas-action-break{display:block}.section-heading small{margin-top:3px}}.app-shell:not(.admin-shell):not(.intro-shell){background:var(--glam-bg)}.mobile-frame:not(.admin-frame):not(.intro-frame){border-color:var(--glam-line);background:var(--glam-surface);box-shadow:var(--glam-shadow)}.studio-screen{color:var(--glam-text);background:linear-gradient(180deg,#fffdfa,#f8f5f1)}.studio-header{gap:9px;padding:14px 16px 8px}.studio-header h1,.section-heading span,.overlay-adjust-heading span{color:var(--glam-text);font-family:Georgia,Times New Roman,serif;font-weight:700}.studio-header h1{font-size:22px}.studio-header p,.section-heading small,.multi-overlay-note,.delete-selection-note,.selection-note,.overlay-scroll-note,.product-scroll-note,.text-overlay-description,.text-style-heading small,.text-style-scroll-note{color:var(--glam-text-soft)}.back-button,.studio-admin-button{border:1px solid var(--glam-line);background:var(--glam-surface);color:var(--glam-text);box-shadow:0 6px 16px #5534200f}.back-button{border-radius:var(--glam-radius-sm);font-size:25px}.studio-admin-button{border-radius:999px;color:var(--glam-red-dark);font-weight:800}.canvas-card{border-color:var(--glam-line);border-radius:var(--glam-radius-md);background:var(--glam-surface);box-shadow:var(--glam-shadow)}.photo-stage,.photo-stage.has-photo{background:var(--glam-surface-soft)}.empty-state{color:var(--glam-text-soft)}.empty-photo-icon{border-color:#df111747;border-radius:var(--glam-radius-md);background:#fffaf8}.empty-photo-icon:before{background:#f5ddd7}.empty-photo-icon span{border-color:var(--glam-red);background:var(--glam-red-soft)}.overlay-selection-bounds,.text-selection-bounds{border-color:#df111780}.overlay-adjust-panel,.panel-section,.color-palette-section{border-color:var(--glam-line);background:var(--glam-surface);box-shadow:0 8px 20px #5534200e}.overlay-adjust-panel{border-radius:var(--glam-radius-sm)}.overlay-adjust-panel.is-empty p,.overlay-adjust-label,.overlay-adjust-label strong,.control-row,.text-style-heading span{color:var(--glam-text)}.soft-range{accent-color:var(--glam-red)}.soft-range::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:#e9dfd8}.soft-range::-webkit-slider-thumb{width:17px;height:17px;margin-top:-6px;border:2px solid #fff;border-radius:50%;background:var(--glam-red);box-shadow:0 2px 6px #8c0d1033;-webkit-appearance:none}.canvas-actions .secondary-button,.canvas-actions .ghost-button,.text-add-button,.purchase-button{border:1px solid var(--glam-line);border-radius:var(--glam-radius-sm);box-shadow:none}.canvas-actions .secondary-button,.text-add-button,.purchase-button{border-color:var(--glam-red);background:var(--glam-red);color:#fff}.canvas-actions .ghost-button{background:var(--glam-surface-soft);color:var(--glam-text)}.canvas-actions .ghost-button:not(:disabled):hover,.back-button:hover,.studio-admin-button:hover{border-color:#df111761;background:#fff8f7}.canvas-actions .secondary-button:hover,.text-add-button:hover,.purchase-button:hover{background:var(--glam-red-dark)}.category-tabs button,.text-tool-tabs button{border-color:var(--glam-line);border-radius:var(--glam-radius-sm);background:var(--glam-surface-soft);color:var(--glam-text)}.category-tabs button.is-active,.text-tool-tabs button.is-active{border-color:var(--glam-red);background:var(--glam-red);color:#fff;box-shadow:0 6px 14px #df111729}.text-overlay-panel{border-top-color:var(--glam-line)}.text-overlay-input{border-color:var(--glam-line);border-radius:var(--glam-radius-sm);background:var(--glam-surface);color:var(--glam-text)}.text-overlay-input:focus{border-color:var(--glam-red);box-shadow:0 0 0 3px #df11171a}.product-list,.text-style-scroll,.overlay-list-scroll{scrollbar-color:rgba(223,17,23,.34) transparent}.product-list::-webkit-scrollbar-thumb,.text-style-scroll::-webkit-scrollbar-thumb,.overlay-list-scroll::-webkit-scrollbar-thumb{background:#df111752}.product-card,.text-style-card,.overlay-list-card,.color-chip-button{border-color:var(--glam-line);background:var(--glam-surface);color:var(--glam-text);box-shadow:0 5px 14px #5534200b}.product-card,.text-style-card,.overlay-list-card{border-radius:var(--glam-radius-sm)}.product-card.is-selected,.text-style-card.is-selected,.overlay-list-card.is-selected,.color-chip-button.is-selected{border-color:var(--glam-red);background:#fff9f8;box-shadow:0 0 0 2px #df11171a}.product-meta strong,.overlay-list-copy strong{color:var(--glam-text)}.product-meta small,.overlay-list-copy small{color:var(--glam-text-soft)}.color-chip-button{color:var(--glam-text)}.color-chip-dot{border-color:#fff;box-shadow:inset 0 0 0 1px #2f211b2e,0 3px 8px #5534201a}.overlay-list-delete{border:1px solid var(--glam-line);background:var(--glam-surface);color:var(--glam-red-dark)}.text-list-thumb{background:var(--glam-red-soft);color:var(--glam-red-dark)}.canvas-actions .canvas-save-button:disabled,.canvas-actions button:disabled,.text-add-button:disabled{border-color:var(--glam-line);background:#eee8e3;color:#9a8d85;box-shadow:none;opacity:1}.landing-hidden-logo-layout{display:grid;gap:8px;margin:0;padding:12px;border:1px solid var(--glam-line);border-radius:var(--glam-radius-sm);background:var(--glam-surface-soft)}.landing-hidden-logo-layout legend{padding:0 4px;color:var(--glam-text);font-size:13px;font-weight:800}.landing-hidden-logo-layout label{display:flex;align-items:center;gap:8px;color:var(--glam-text);font-size:13px}.landing-hidden-logo-layout input{width:17px;height:17px;margin:0;accent-color:var(--glam-red)}.landing-hidden-logo-layout p{margin:0;color:var(--glam-text-soft);font-size:12px;line-height:1.45}.landing-hidden-logo-layout:disabled{opacity:.58}@media(max-width:370px){.studio-header h1{font-size:20px}}.app-shell.season-shell.season-game-shell{width:100%;max-width:none;min-height:100dvh;align-items:flex-start;background:#f4eee4}.mobile-frame.season-frame.season-game-frame{width:min(100vw,430px);min-width:0;max-width:430px;min-height:100dvh;height:auto;max-height:none;overflow:visible;border:0;border-radius:0;background:#fff9ef;box-shadow:none}.precision-game{width:100%;max-width:430px;min-height:calc(100dvh - 56px);padding:18px 18px 28px;color:#30271f}.precision-game.is-playing{display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}body.precision-game-playing{overflow:hidden}.precision-game-header{text-align:center}.precision-game-header h1,.precision-result h2{margin:5px 0 7px;font-family:inherit;font-size:25px;line-height:1.22;letter-spacing:0}.precision-game-header p:not(.season-eyebrow){margin:0;color:#766457;font-size:14px;line-height:1.55}.precision-select{display:grid;gap:14px;margin-top:24px}.precision-instruction-card{display:grid;gap:5px;padding:15px 16px;border:1px solid #ead9c8;border-radius:8px;background:#fffdf8;box-shadow:0 6px 16px #4f2c1a0f}.precision-instruction-card strong{color:#b72d2d;font-size:16px}.precision-instruction-card span,.precision-helper,.precision-space-note{color:#806f62;font-size:13px;line-height:1.5}.precision-button-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.precision-button-option{display:flex;min-height:48px;align-items:center;justify-content:flex-start;gap:8px;padding:9px 10px;border:1px solid #e4d6c9;border-radius:8px;background:#fffdf9;color:#4a3b31;font:inherit;font-size:13px;font-weight:800;text-align:left}.precision-button-option.is-selected{border-color:#be3733;background:#fff1ed;box-shadow:inset 0 0 0 1px #be3733}.precision-option-swatch{width:23px;height:23px;flex:0 0 auto;border:1px solid rgb(58 43 32 / 20%);border-radius:50%;box-shadow:inset 3px 3px 5px #ffffff75}.precision-start-button,.precision-stab-button{width:100%;min-height:62px;border-radius:8px;font-size:19px;font-weight:900}.precision-helper{margin:-4px 0 0;text-align:center}.precision-ready{display:grid;justify-items:center;gap:12px;margin-top:48px;text-align:center}.precision-ready-button{position:relative;width:min(66vw,252px);aspect-ratio:1}.precision-result-button .precision-button-face{width:100%}.precision-ready strong{color:#b72d2d;font-size:21px}.precision-ready span{color:#7a695c;font-size:14px}.precision-play{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:9px;min-height:0;margin-top:17px;touch-action:manipulation}.precision-status,.precision-combo-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.precision-status{padding:9px 11px;border:1px solid #ead8ca;border-radius:8px;background:#fffdf9;color:#756155;font-size:12px}.precision-status strong{color:#b72d2d;font-size:15px}.precision-combo-row{min-height:22px;color:#7d6b5f;font-size:13px}.precision-combo-row strong{color:#b72d2d;font-size:14px}.precision-board{display:grid;min-height:clamp(326px,45dvh,415px);place-items:center;overflow:hidden;border:1px solid #eadbce;border-radius:8px;background:linear-gradient(180deg,#fffdf8,#f8eee2)}.precision-button-stage{position:relative;width:min(74vw,302px);aspect-ratio:1}.precision-button-face{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border:2px solid rgb(61 42 31 / 25%);border-radius:50%;background:var(--button-color);box-shadow:inset -14px -17px 23px #3721143d,inset 11px 10px 19px #ffffff6b,0 12px 20px #472f1f26}.precision-button-face.is-star{border-radius:0;clip-path:polygon(50% 0%,61% 34%,98% 36%,69% 57%,80% 94%,50% 73%,20% 94%,31% 57%,2% 36%,39% 34%)}.precision-button-face.is-heart{border-radius:0;clip-path:path("M 150 275 C 105 227 18 160 18 87 C 18 37 54 15 91 15 C 119 15 140 31 150 53 C 160 31 181 15 209 15 C 246 15 282 37 282 87 C 282 160 195 227 150 275 Z")}.precision-button-highlight{position:absolute;top:10%;left:15%;width:35%;height:21%;border-radius:50%;background:#ffffff42;filter:blur(2px);transform:rotate(-24deg)}.precision-button-hole,.precision-target-ring{position:absolute;z-index:3;width:12%;height:12%;border-radius:50%;transform:translate(-50%,-50%)}.precision-button-hole{border:2px solid rgb(255 255 255 / 16%);background:#191611;box-shadow:inset 2px 3px 4px #00000085,0 1px 1px #ffffff4d}.precision-target-ring{z-index:4;width:21%;height:21%;border:2px solid transparent;pointer-events:none}.precision-target-ring.is-active{border-color:#f6d68a;background:radial-gradient(circle,transparent 44%,rgb(255 248 221 / 14%) 45% 64%,transparent 65%);box-shadow:0 0 0 4px #fff8dd73,0 0 16px 6px #d37c3e6b;animation:precisionTargetPulse 1.05s ease-in-out infinite alternate}.precision-target-ring.is-active:before,.precision-target-ring.is-active:after{position:absolute;top:-25%;right:-25%;bottom:-25%;left:-25%;border:1px solid rgb(255 239 183 / 72%);border-radius:inherit;content:"";animation:precisionTargetHalo 1.7s ease-out infinite}.precision-target-ring.is-active:after{top:-9%;right:-9%;bottom:-9%;left:-9%;border-color:#fffff4d1;animation-delay:.42s}.precision-target-ring.is-active.is-scored{border-color:#fff6c7;box-shadow:0 0 0 6px #fff9da9e,0 0 25px 10px #cf4a3b94;animation:precisionTargetHit .42s ease-out both}.precision-needle{position:absolute;z-index:7;width:9px;height:clamp(138px,38vw,164px);border-radius:999px 999px 3px 3px;background:linear-gradient(90deg,#91867d,#fcfcfb 43%,#8c8178);box-shadow:0 2px 5px #37261b59;pointer-events:none}.precision-needle.is-down{transform:translate(-50%,-100%)}.precision-needle.is-up{transform:translate(-50%) rotate(180deg);transform-origin:center top}.precision-needle i{position:absolute;bottom:-17px;left:50%;width:0;height:0;border-top:19px solid #6f655d;border-right:5px solid transparent;border-left:5px solid transparent;transform:translate(-50%)}.precision-feedback{position:absolute;z-index:10;top:6px;right:1px;display:grid;justify-items:end;color:#b72d2d;text-align:right;animation:precisionFeedback .52s ease-out both;pointer-events:none}.precision-feedback strong{font-size:56px;line-height:.8;text-shadow:0 2px 0 #fffaf2}.precision-feedback span{font-size:17px;font-weight:950}.precision-feedback small{color:#725f51;font-size:12px;font-weight:800}.precision-feedback.is-miss{color:#776a60}.precision-stab-button{box-shadow:0 6px #8e2524,0 11px 18px #652d2033}.precision-stab-button:active{transform:translateY(4px);box-shadow:0 2px #8e2524,0 6px 10px #652d202b}.precision-space-note{margin:0;text-align:center}.precision-result{display:grid;justify-items:center;gap:9px;margin-top:22px;text-align:center}.precision-result-button{position:relative;width:min(58vw,220px);aspect-ratio:1}.precision-result .season-eyebrow{margin:4px 0 -6px}.precision-total-score{color:#b72d2d;font-size:60px;line-height:.92}.precision-total-score small{margin-left:3px;font-size:19px}.precision-grade{margin:-3px 0 6px;color:#725f51;font-size:15px;font-weight:800}.precision-summary-grid{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.precision-summary-grid span{display:grid;gap:2px;padding:10px 4px;border:1px solid #eadbce;border-radius:8px;background:#fffdf9;color:#837164;font-size:10px}.precision-summary-grid b{color:#3d2f27;font-size:18px}.precision-shot-log{display:grid;width:100%;max-height:220px;gap:5px;margin:5px 0;padding:0;overflow-y:auto;list-style:none}.precision-shot-log li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:9px 11px;border-radius:7px;background:#f7eee4;color:#6f5c50;font-size:13px;text-align:left}.precision-shot-log b{color:#b72d2d;font-size:18px}.precision-shot-log strong{min-width:58px;color:#4b3a30;font-size:11px;text-align:right}.precision-result-actions{display:grid;width:100%;gap:8px;margin-top:8px}.precision-result-actions .primary-button,.precision-result-actions .secondary-button{min-height:52px;border-radius:8px}@keyframes precisionTargetPulse{0%{opacity:.82;transform:translate(-50%,-50%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1.08)}}@keyframes precisionTargetHalo{0%{opacity:.78;transform:scale(.72)}to{opacity:0;transform:scale(1.46)}}@keyframes precisionTargetHit{0%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}to{opacity:1;transform:translate(-50%,-50%) scale(1.25)}}@keyframes precisionFeedback{0%{opacity:0;transform:translateY(14px) scale(.86)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-height:760px){.precision-board{min-height:276px}.precision-game.is-playing{padding-top:10px;padding-bottom:14px}.precision-game.is-playing .precision-game-header h1{font-size:21px}}.precision-stage-transition{display:grid;justify-items:center;gap:12px;margin-top:46px;text-align:center}.precision-stage-transition strong{color:#b72d2d;font-size:30px;line-height:1}.precision-stage-transition span{color:#746154;font-size:15px;font-weight:800}.precision-needle.is-top-to-bottom,.precision-needle.is-bottom-to-top,.precision-needle.is-left-to-right,.precision-needle.is-right-to-left{width:0;height:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;transform-origin:0 0}.precision-needle.is-top-to-bottom{transform:rotate(0)}.precision-needle.is-bottom-to-top{transform:rotate(180deg)}.precision-needle.is-left-to-right{transform:rotate(-90deg)}.precision-needle.is-right-to-left{transform:rotate(90deg)}.precision-needle.is-top-to-bottom:before,.precision-needle.is-bottom-to-top:before,.precision-needle.is-left-to-right:before,.precision-needle.is-right-to-left:before{position:absolute;bottom:15px;left:-4.5px;width:9px;height:clamp(138px,38vw,164px);border-radius:999px 999px 3px 3px;background:linear-gradient(90deg,#8f847b,#fdfdfc 43%,#867a71);box-shadow:0 2px 5px #37261b59;content:""}.precision-needle.is-top-to-bottom:after,.precision-needle.is-bottom-to-top:after,.precision-needle.is-left-to-right:after,.precision-needle.is-right-to-left:after{position:absolute;bottom:0;left:-5px;width:0;height:0;border-top:16px solid #71665d;border-right:5px solid transparent;border-left:5px solid transparent;content:""}.precision-needle.is-top-to-bottom i,.precision-needle.is-bottom-to-top i,.precision-needle.is-left-to-right i,.precision-needle.is-right-to-left i{display:none}.precision-stab-button{touch-action:manipulation}.precision-stab-button:disabled{cursor:wait;opacity:.68;transform:none;box-shadow:0 3px #aa8374}.precision-feedback.is-final strong{color:#b72d2d}@media(max-height:760px){.precision-stage-transition{margin-top:26px}}
