:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.scp-pixelcanvas-wrapper{flex:1;display:flex;overflow:auto;padding:16px;background:#888;min-height:0;align-items:flex-start;justify-content:flex-start;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.scp-pixelcanvas-wrapper canvas{display:block;margin:auto;background:#f0f0f0;box-shadow:0 4px 20px #00000026;transition:transform .1s ease;user-select:none;-webkit-user-select:none;touch-action:none;max-height:100%;object-fit:contain}.scp-pixelcanvas-wrapper.mobile{padding:8px;align-items:flex-start;justify-content:flex-start}.scp-pixelcanvas-wrapper.mobile canvas{margin:0;box-shadow:0 2px 12px #0003}@media (max-width: 767px){.scp-pixelcanvas-wrapper{padding:8px;max-height:100%;min-height:0;overflow:auto}.scp-pixelcanvas-wrapper canvas{transition:transform .15s ease-out;max-height:none}}@media (max-width: 374px){.scp-pixelcanvas-wrapper{padding:4px}}.sce-editortoolbar-wrapper{flex:0 0 220px;display:flex;flex-direction:column;padding:12px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow-y:auto;gap:8px}.sce-editortoolbar-wrapper h3{margin:0 0 6px;font-size:12px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:4px}.sce-editortoolbar-wrapper .toolbar-section{padding:8px;background:var(--bg-tertiary);border-radius:var(--radius-md)}.sce-editortoolbar-wrapper .ant-btn{display:flex;align-items:center;justify-content:center;gap:8px;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);transition:all .2s ease}.sce-editortoolbar-wrapper .ant-btn:hover:not(:disabled){background:var(--primary-light);color:var(--primary-color);transform:translateY(-1px)}.sce-editortoolbar-wrapper .ant-btn.ant-btn-primary{background:var(--primary-color);color:#fff;box-shadow:0 2px 8px #ff9aa24d}.sce-editortoolbar-wrapper .ant-btn.ant-btn-primary:hover{background:var(--primary-hover);box-shadow:0 4px 12px #ff9aa266}.sce-editortoolbar-wrapper .ant-btn:disabled{opacity:.4;background:transparent}.sce-editortoolbar-wrapper .ant-btn .anticon{font-size:15px}.sce-editortoolbar-wrapper .zoom-controls{display:flex;align-items:center;gap:6px;padding:6px;background:var(--bg-tertiary);border-radius:var(--radius-md)}.sce-editortoolbar-wrapper .zoom-controls .ant-btn{flex:0 0 28px;height:28px;border-radius:var(--radius-sm)}.sce-editortoolbar-wrapper .zoom-controls .zoom-value{flex:1;text-align:center;font-weight:600;color:var(--text-primary);font-size:12px}.sce-editortoolbar-wrapper .ant-divider{margin:4px 0;border-color:var(--border-color)}.sce-editortoolbar-wrapper .ant-select .ant-select-selector{height:36px!important;padding:0 12px!important;border-radius:var(--radius-md)!important;border-color:var(--border-color)!important;background:var(--bg-secondary)!important}.sce-editortoolbar-wrapper .ant-select .ant-select-selector:hover{border-color:var(--primary-color)!important}.sce-editortoolbar-wrapper .ant-select .ant-select-selector .ant-select-selection-item{line-height:34px!important}.sce-editortoolbar-wrapper .ant-select.ant-select-focused .ant-select-selector{border-color:var(--primary-color)!important;box-shadow:0 0 0 3px var(--primary-light)!important}.sce-editortoolbar-wrapper .ant-input-number{border-radius:var(--radius-md);border-color:var(--border-color)}.sce-editortoolbar-wrapper .ant-input-number:hover,.sce-editortoolbar-wrapper .ant-input-number:focus{border-color:var(--primary-color)}.sce-editortoolbar-wrapper .ant-input-number.ant-input-number-focused{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-light)}.scc-colorstats-wrapper h3{margin:0 0 16px;font-size:15px;font-weight:600;color:var(--primary-color);display:flex;align-items:center;gap:8px;padding:8px 12px;background:linear-gradient(135deg,var(--primary-light) 0%,#fff 100%);border-radius:var(--radius-md);border:1px solid var(--primary-light)}.scc-colorstats-wrapper .ant-empty{padding:40px 0}.scc-colorstats-wrapper .ant-empty .ant-empty-image{font-size:48px;margin-bottom:12px;opacity:.8}.scc-colorstats-wrapper .ant-empty .ant-empty-description{color:var(--text-tertiary);font-size:14px;font-weight:500}.scc-colorstats-wrapper .ant-row{margin:0!important}.scc-colorstats-wrapper .ant-col{padding:3px!important}.scc-colorstats-wrapper .ant-card{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);transition:all .2s ease}.scc-colorstats-wrapper .ant-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-light)}.scc-colorstats-wrapper .ant-card.active-card{border-color:var(--primary-color);background:var(--primary-light);box-shadow:var(--shadow-soft)}.scc-colorstats-wrapper .color-stat-item{display:flex;align-items:center;justify-content:center;gap:4px}.scc-colorstats-wrapper .color-stat-item .color-dot{width:14px;height:14px;border-radius:3px;border:1px solid var(--border-color)}.scc-colorstats-wrapper .color-stat-item .color-code{font-size:10px;font-weight:600;color:var(--text-primary)}.scc-colorstats-wrapper .color-count{font-size:10px;color:var(--text-secondary);font-weight:500}.scc-colorstats-wrapper .color-percentage{font-size:10px;color:var(--primary-color);font-weight:600}.first-upload-modal .ant-modal-header,.upload-confirm-modal .ant-modal-header,.save-modal .ant-modal-header{border-bottom:1px solid #ffe5e8;padding-bottom:16px}.first-upload-modal .ant-modal-body,.upload-confirm-modal .ant-modal-body,.save-modal .ant-modal-body{padding:24px 24px 16px}.first-upload-modal .ant-modal-footer,.upload-confirm-modal .ant-modal-footer,.save-modal .ant-modal-footer{border-top:1px solid #ffe5e8;padding:16px 24px}.mobile-drawer .ant-drawer-body{padding:16px;max-height:calc(100vh - 110px);overflow-y:auto}.mobile-drawer .ant-drawer-body .ant-btn{overflow:visible}.mobile-drawer .ant-drawer-body .ant-btn span{display:inline-flex;align-items:center}.mobile-drawer .ant-drawer-body .ant-select .ant-select-selector{height:32px!important;padding:0 8px!important}.mobile-drawer .ant-drawer-body .ant-select .ant-select-selection-item{line-height:30px!important}.mobile-drawer .ant-drawer-body .drawer-btn-primary{background:var(--primary-color)!important;height:44px!important;line-height:1.2!important;padding:0 16px!important;overflow:visible!important}.mobile-drawer .ant-drawer-body .drawer-btn-primary span{display:inline-flex!important;align-items:center;gap:6px}.mobile-drawer .ant-drawer-body .drawer-btn-secondary{height:40px!important;overflow:visible!important}.mobile-drawer .ant-drawer-body .drawer-section{margin-bottom:16px}.mobile-drawer .ant-drawer-body .drawer-title{margin:0 0 12px;font-size:14px;font-weight:600}.mobile-drawer .ant-drawer-body .drawer-hint{margin-top:8px;font-size:12px;color:#999}.mobile-drawer .ant-drawer-body .drawer-color-filter,.mobile-drawer .ant-drawer-body .drawer-color-replace,.mobile-drawer .ant-drawer-body .drawer-missing-color{margin-bottom:16px}.mobile-drawer .ant-drawer-body .drawer-section-title{margin:0 0 12px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px}.mobile-drawer .ant-drawer-body .drawer-color-picker-row{display:flex;align-items:center;gap:6px;margin-bottom:12px;width:100%;flex-wrap:nowrap;white-space:nowrap}.mobile-drawer .ant-drawer-body .drawer-color-picker-row .ant-select{flex:1 1 0;min-width:80px!important;max-width:calc(50% - 15px)}.mobile-drawer .ant-drawer-body .drawer-color-picker-row .replace-arrow{color:#94a3b8;font-size:14px;flex:0 0 auto}.mobile-drawer .ant-drawer-body .drawer-replace-action-btn{height:36px}.mobile-drawer .ant-drawer-body .drawer-filter-row{display:flex;align-items:center;gap:8px}.mobile-drawer .ant-drawer-body .drawer-filter-row .drawer-filter-input{width:80px;flex-shrink:0}.mobile-drawer .ant-drawer-body .drawer-filter-row .drawer-filter-btn{margin-left:auto;height:32px}.mobile-drawer .ant-drawer-body .drawer-missing-select{width:100%;margin-bottom:12px}.mobile-drawer .ant-drawer-body .drawer-missing-select .ant-select-selector{min-height:32px}.spe-editor-wrapper{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;background:var(--bg-primary)}.spe-editor-wrapper .hidden{display:none}.spe-editor-wrapper .header{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 24px;height:56px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.spe-editor-wrapper .header h1{margin:0;font-size:20px;font-weight:700;color:var(--primary-color);letter-spacing:-.5px}.spe-editor-wrapper .header .nav-links{display:flex;gap:20px}.spe-editor-wrapper .header .nav-links a{color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;padding:6px 12px;border-radius:var(--radius-md);transition:all .2s ease}.spe-editor-wrapper .header .nav-links a:hover{color:var(--primary-color);background:var(--primary-light)}.spe-editor-wrapper .editor-container{flex:1;display:flex;overflow:hidden;padding:10px;gap:10px;min-height:0}.spe-editor-wrapper .toolbar-section{flex:0 0 auto;display:flex;flex-direction:column;gap:12px}.spe-editor-wrapper .canvas-area{flex:1;display:flex;flex-direction:column;min-height:0;max-height:100%;overflow:auto;background:var(--bg-canvas);border-radius:var(--radius-lg);box-shadow:inset 0 2px 8px #0000000a;-webkit-overflow-scrolling:touch}.spe-editor-wrapper .upload-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;text-align:center}.spe-editor-wrapper .upload-area .upload-card{padding:48px 64px;background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:var(--radius-xl);transition:all .3s ease}.spe-editor-wrapper .upload-area .upload-card:hover{border-color:var(--primary-color);background:var(--primary-light);transform:translateY(-2px);box-shadow:var(--shadow-soft)}.spe-editor-wrapper .upload-area .upload-card.dragging{border-color:var(--primary-color);background:var(--primary-light);border-style:solid;transform:scale(1.02);box-shadow:var(--shadow-soft)}.spe-editor-wrapper .upload-area .pixel-icon{font-size:48px;margin-bottom:16px}.spe-editor-wrapper .upload-area h2{margin:0 0 8px;font-size:22px;font-weight:600;color:var(--text-primary)}.spe-editor-wrapper .upload-area p{margin:0 0 24px;color:var(--text-secondary);font-size:14px}.spe-editor-wrapper .upload-area .upload-btn{padding:12px 32px;font-size:15px;font-weight:600;border-radius:var(--radius-md);background:var(--primary-color);border:none;color:#fff;cursor:pointer;transition:all .2s ease}.spe-editor-wrapper .upload-area .upload-btn:hover{background:var(--primary-hover);transform:scale(1.02);box-shadow:0 4px 12px #ff9aa266}.spe-editor-wrapper .upload-area .size-settings{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px;padding:16px 24px;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);transition:all .2s ease}.spe-editor-wrapper .upload-area .size-settings:hover{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-light)}.spe-editor-wrapper .upload-area .size-settings label{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px}.spe-editor-wrapper .upload-area .size-settings .width-input{width:80px;margin:0 8px}.spe-editor-wrapper .upload-area .upload-hint{margin-top:16px;font-size:12px;color:var(--text-tertiary)}.spe-editor-wrapper .processing-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.spe-editor-wrapper .processing-container .processing-text{color:var(--text-secondary);font-size:15px;font-weight:500}.spe-editor-wrapper .side-panel{flex:0 0 280px;display:flex;flex-direction:column;padding:12px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow-y:auto;gap:8px}.spe-editor-wrapper .side-panel h3{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.spe-editor-wrapper .side-panel .panel-section{padding:10px;background:var(--bg-tertiary);border-radius:var(--radius-md)}.spe-editor-wrapper .side-panel .panel-section:hover{background:var(--bg-primary)}.spe-editor-wrapper .color-filter,.spe-editor-wrapper .color-replace,.spe-editor-wrapper .missing-color{padding:10px;background:var(--bg-tertiary);border-radius:var(--radius-md)}.spe-editor-wrapper .filter-space,.spe-editor-wrapper .replace-space{width:100%}.spe-editor-wrapper .filter-input{width:70px}.spe-editor-wrapper .filter-btn,.spe-editor-wrapper .replace-btn,.spe-editor-wrapper .find-alternative-btn,.spe-editor-wrapper .batch-replace-btn{height:30px}.spe-editor-wrapper .replace-btn{margin-top:8px}.spe-editor-wrapper .replace-arrow{color:#94a3b8}.spe-editor-wrapper .alternatives-list{margin-top:8px}.spe-editor-wrapper .alternatives-list .alternatives-label{font-size:12px;color:#666;margin-bottom:4px;margin-top:8px}.spe-editor-wrapper .alternatives-list .alternatives-btns{display:flex;flex-wrap:wrap;gap:4px}.spe-editor-wrapper .similar-color-map{margin-top:12px}.spe-editor-wrapper .missing-color-select{width:100%;margin-bottom:8px}.spe-editor-wrapper .replacement-list-desktop{max-height:200px;overflow-y:auto;border:1px solid #f0f0f0;border-top:none;border-radius:0 0 4px 4px}.spe-editor-wrapper .replacement-item-desktop{display:flex;align-items:center;padding:8px 12px;border-bottom:1px solid #f0f0f0}.spe-editor-wrapper .replacement-item-desktop:last-child{border-bottom:none}.spe-editor-wrapper .replacement-color-box-lg{width:20px;height:20px;border:1px solid #ddd;border-radius:2px}.spe-editor-wrapper .replacement-code-lg{font-weight:500}.spe-editor-wrapper .replacement-arrow-lg{font-size:18px;color:#bfbfbf;margin:0 12px}.spe-editor-wrapper .status-bar{flex:0 0 auto;display:flex;gap:24px;padding:0 24px;height:36px;align-items:center;background:var(--bg-secondary);border-top:1px solid var(--border-color);font-size:12px;color:var(--text-secondary);font-weight:500}.spe-editor-wrapper .copyright-badge{position:fixed;z-index:9999;min-height:30px;min-width:200px;padding:8px 14px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:12px;color:var(--text-secondary);text-align:right;pointer-events:auto;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:opacity .2s;border:1px solid var(--border-light);opacity:.7!important}.spe-editor-wrapper .copyright-badge .author{color:var(--primary-color);font-weight:700;margin:0 4px}.spe-editor-wrapper .copyright-badge .xhs-id{transform:scale(.9);transform-origin:right center;opacity:.7}.spe-editor-wrapper .modal-title{font-size:18px;font-weight:600;color:var(--primary-color)}.spe-editor-wrapper .modal-content{font-size:14px;line-height:1.8;color:#4a5568}.spe-editor-wrapper .modal-content p{margin:0 0 16px}.spe-editor-wrapper .modal-content .modal-file-label{font-weight:500;color:#2d3748}.spe-editor-wrapper .modal-content .modal-tip-box{background:#f7fafc;border-radius:12px;padding:16px;margin-bottom:16px}.spe-editor-wrapper .modal-content .modal-tip-box .modal-tip-title{font-weight:600;color:#2d3748;margin-bottom:12px}.spe-editor-wrapper .modal-content .modal-tip-box ul{margin:0;padding-left:20px;color:#4a5568}.spe-editor-wrapper .modal-content .modal-tip-box ul li{margin-bottom:8px}.spe-editor-wrapper .modal-content .modal-tip-box ul li:last-child{margin-bottom:0}.spe-editor-wrapper .modal-content .modal-footer-text{margin:0;font-size:13px;color:#718096}.spe-editor-wrapper .modal-content .modal-link{color:var(--primary-color);text-decoration:none}.spe-editor-wrapper .modal-content .modal-file-name{color:var(--primary-color)}.spe-editor-wrapper .save-error-alert{background:#ffe5e8;color:#ff6b7a;padding:12px 16px;border-radius:12px;margin-bottom:16px;font-size:14px;border:1px solid #ffb7b2}.spe-editor-wrapper .save-form-group{margin-bottom:20px}.spe-editor-wrapper .save-form-group label{display:block;margin-bottom:10px;font-size:14px;font-weight:600;color:#64748b}.spe-editor-wrapper .save-form-input{border-radius:12px;border:2px solid #f1f5f9;padding:12px 16px;font-size:15px}.spe-editor-wrapper .save-info-box{font-size:13px;color:#94a3b8;background:#fafafa;padding:16px;border-radius:12px;border:1px dashed #e2e8f0}.spe-editor-wrapper .save-info-box .save-info-item{margin-bottom:6px;display:flex;align-items:center;gap:6px}.spe-editor-wrapper .save-info-box .save-info-item:last-child{margin-bottom:0}.spe-editor-wrapper .save-info-box .save-info-highlight{color:#52c41a}.spe-editor-wrapper .replacement-header{background:#fafafa;padding:8px 12px;font-weight:500;border-bottom:1px solid #f0f0f0;font-size:13px;border-radius:4px 4px 0 0;border:1px solid #f0f0f0}.spe-editor-wrapper .replacement-list{max-height:120px;overflow-y:auto;border:1px solid #f0f0f0;border-top:none;border-radius:0 0 4px 4px}.spe-editor-wrapper .replacement-item{display:flex;align-items:center;padding:6px 10px;border-bottom:1px solid #f0f0f0}.spe-editor-wrapper .replacement-item:last-child{border-bottom:none}.spe-editor-wrapper .replacement-color{flex:1;display:flex;align-items:center;gap:6px}.spe-editor-wrapper .replacement-color-box{width:16px;height:16px;border:1px solid #ddd;border-radius:2px}.spe-editor-wrapper .replacement-code{font-size:12px}.spe-editor-wrapper .replacement-arrow{font-size:14px;color:#bfbfbf;margin:0 8px}.spe-editor-wrapper .replacement-success{color:#52c41a}.spe-editor-wrapper .replacement-empty{color:#999}.spe-editor-wrapper .color-select-box{width:14px;height:14px;border-radius:2px;border:1px solid #cbd5e1;display:inline-block;vertical-align:middle}.spe-editor-wrapper .color-select-label{vertical-align:middle}.spe-editor-wrapper .alternative-btn{border:1px solid #e2e8f0}.spe-editor-wrapper .mobile-toolbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:1000;background:var(--bg-card);border-top:1px solid var(--border-color);padding:3px 4px;padding-bottom:max(3px,env(safe-area-inset-bottom));box-shadow:0 -2px 10px #0000001a}.spe-editor-wrapper .mobile-toolbar .mobile-toolbar-content{display:flex;justify-content:space-around;align-items:center;gap:0}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn{display:flex;flex-direction:column;align-items:center;gap:0;padding:3px 1px;border:none;background:transparent;color:var(--text-secondary);font-size:8px;border-radius:var(--radius-md);transition:all .2s ease;min-width:28px;flex:1;max-width:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn:active{transform:scale(.92)}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn.active{color:var(--primary-color);background:var(--primary-light)}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn:disabled{opacity:.3}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn .anticon{font-size:16px}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn span{font-size:8px;white-space:nowrap;margin-top:1px}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn .current-color-dot{width:16px;height:16px;border-radius:50%;display:inline-block}.spe-editor-wrapper .mobile-toolbar .mobile-zoom-display{display:flex;align-items:center;justify-content:center;min-width:28px;padding:2px;font-size:9px;font-weight:600;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--radius-sm);white-space:nowrap}.spe-editor-wrapper .mobile-drawer-trigger{display:none;position:fixed;right:16px;bottom:90px;z-index:999;width:48px;height:48px;border-radius:50%;background:var(--primary-color);color:#fff;border:none;box-shadow:0 4px 12px #ff9aa266;align-items:center;justify-content:center;font-size:20px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .2s ease}.spe-editor-wrapper .mobile-drawer-trigger:active{transform:scale(.9)}@media (max-width: 1024px){.spe-editor-wrapper .editor-container{padding:8px;gap:8px;min-height:0}.spe-editor-wrapper .canvas-area{min-height:0;max-height:100%}.spe-editor-wrapper .side-panel{flex:0 0 240px;padding:10px}.spe-editor-wrapper .sce-editortoolbar-wrapper{flex:0 0 200px;padding:10px}}@media (max-width: 767px){.spe-editor-wrapper{height:100vh;height:100dvh;width:100vw;max-width:100vw;overflow:hidden;display:flex;flex-direction:column}.spe-editor-wrapper .header{height:48px;padding:0 12px;flex-shrink:0}.spe-editor-wrapper .header h1{font-size:16px}.spe-editor-wrapper .header .nav-links{gap:8px}.spe-editor-wrapper .header .nav-links a{font-size:12px;padding:4px 8px}.spe-editor-wrapper .editor-container{flex-direction:column;padding:8px 8px 76px;gap:8px;flex:1;min-height:0;max-height:calc(100dvh - 48px);overflow:hidden}.spe-editor-wrapper .sce-editortoolbar-wrapper,.spe-editor-wrapper .side-panel{display:none}.spe-editor-wrapper .mobile-toolbar{display:block}.spe-editor-wrapper .mobile-drawer-trigger{display:flex}.spe-editor-wrapper .status-bar{display:none}.spe-editor-wrapper .canvas-area{border-radius:var(--radius-md);flex:1;min-height:0;max-height:100%;overflow:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.spe-editor-wrapper .upload-area{padding:16px;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;overflow:auto}.spe-editor-wrapper .upload-area .upload-card{padding:32px 20px;width:100%;max-width:100%}.spe-editor-wrapper .upload-area .upload-card .pixel-icon svg{width:56px;height:56px}.spe-editor-wrapper .upload-area .upload-card h2{font-size:18px}.spe-editor-wrapper .upload-area .upload-card p{font-size:13px;margin-bottom:20px}.spe-editor-wrapper .upload-area .upload-card .upload-btn{padding:12px 24px;font-size:14px}.spe-editor-wrapper .upload-area .upload-card .size-settings{flex-direction:column;gap:12px;padding:16px;margin-top:20px}.spe-editor-wrapper .upload-area .upload-card .size-settings label{font-size:13px}.spe-editor-wrapper .upload-area .upload-card .upload-hint{font-size:11px;margin-top:16px}.spe-editor-wrapper .processing-container{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center}.spe-editor-wrapper .processing-container .processing-text{font-size:14px}.spe-editor-wrapper .copyright-badge{min-width:auto;padding:6px 10px;font-size:10px;max-width:70vw}.spe-editor-wrapper .copyright-badge .xhs-id{display:none}}@media (max-width: 374px){.spe-editor-wrapper .header h1{font-size:14px}.spe-editor-wrapper .mobile-toolbar{padding:2px 1px;padding-bottom:max(2px,env(safe-area-inset-bottom))}.spe-editor-wrapper .mobile-toolbar .mobile-toolbar-content{gap:0}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn{padding:2px 0;min-width:22px;max-width:none;font-size:6px}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn .anticon{font-size:13px}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn span{font-size:6px;margin-top:0}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn .current-color-dot{width:13px;height:13px}.spe-editor-wrapper .mobile-toolbar .mobile-zoom-display{min-width:22px;font-size:7px;padding:1px}.spe-editor-wrapper .mobile-drawer-trigger{right:12px;bottom:80px;width:40px;height:40px;font-size:16px}.spe-editor-wrapper .upload-area .upload-card{padding:20px 12px}.spe-editor-wrapper .upload-area .upload-card h2{font-size:16px}.spe-editor-wrapper .upload-area .upload-card .pixel-icon svg{width:48px;height:48px}.spe-editor-wrapper .editor-container{padding:6px 6px 68px;gap:6px}.spe-editor-wrapper .copyright-badge{font-size:9px;padding:4px 8px}}@media (max-width: 319px){.spe-editor-wrapper .mobile-toolbar{padding:1px 0}.spe-editor-wrapper .mobile-toolbar .mobile-toolbar-content{gap:0}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn{min-width:20px;max-width:none;padding:1px 0;font-size:5px}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn .anticon{font-size:12px}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn span{font-size:5px;margin-top:0;transform:scale(.9)}.spe-editor-wrapper .mobile-toolbar .mobile-tool-btn .current-color-dot{width:11px;height:11px}.spe-editor-wrapper .mobile-toolbar .mobile-zoom-display{min-width:20px;font-size:6px;padding:0}.spe-editor-wrapper .upload-area .upload-card{padding:16px 10px}.spe-editor-wrapper .upload-area .upload-card h2{font-size:14px}}.spl-login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#FFDAC1 0%,#FFB7B2 50%,#FF9AA2 100%);padding:20px;position:relative;overflow:hidden}.spl-login-wrapper:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.3) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(199,206,234,.3) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(181,234,215,.2) 0%,transparent 60%);animation:float 20s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(5deg)}66%{transform:translate(-20px,20px) rotate(-5deg)}}.spl-login-wrapper .auth-container{position:relative;z-index:1;width:100%;max-width:420px;padding:48px 40px;background:rgba(255,255,255,.95);border-radius:24px;box-shadow:0 8px 32px #ff9aa233,0 2px 8px #0000000d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.spl-login-wrapper .auth-container h1{margin:0 0 8px;text-align:center;font-size:32px;font-weight:700;color:#ff9aa2;display:flex;align-items:center;justify-content:center;gap:12px}.spl-login-wrapper .auth-container h1:before{content:"🎨";font-size:36px}.spl-login-wrapper .auth-container .subtitle{text-align:center;color:#94a3b8;font-size:14px;margin-bottom:32px}.spl-login-wrapper .error-message{padding:12px 16px;margin-bottom:20px;background:#FFE5E8;border:1px solid #FFB7B2;border-radius:12px;color:#ff6b7a;font-size:14px;display:flex;align-items:center;gap:8px}.spl-login-wrapper .error-message:before{content:"⚠️"}.spl-login-wrapper form .form-group{margin-bottom:20px}.spl-login-wrapper form .form-group label{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;font-weight:600;color:#64748b}.spl-login-wrapper form .form-group label .required{color:#ff9aa2}.spl-login-wrapper form .form-group input{width:100%;padding:14px 18px;border:2px solid #F1F5F9;border-radius:14px;font-size:15px;transition:all .3s ease;box-sizing:border-box;background:#FAFAFA}.spl-login-wrapper form .form-group input:hover{border-color:#ffd4d8;background:#fff}.spl-login-wrapper form .form-group input:focus{outline:none;border-color:#ff9aa2;background:#fff;box-shadow:0 0 0 4px #ff9aa226}.spl-login-wrapper form .form-group input::placeholder{color:#cbd5e1}.spl-login-wrapper .submit-button{width:100%;padding:16px;margin-top:12px;background:linear-gradient(135deg,#FF9AA2 0%,#FFB7B2 100%);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff9aa24d}.spl-login-wrapper .submit-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ff9aa266;background:linear-gradient(135deg,#FF8A94 0%,#FFA7A2 100%)}.spl-login-wrapper .submit-button:active{transform:translateY(0)}.spl-login-wrapper .auth-footer{margin-top:28px;text-align:center;font-size:14px;color:#94a3b8}.spl-login-wrapper .auth-footer a{color:#ff9aa2;text-decoration:none;font-weight:600;transition:all .2s}.spl-login-wrapper .auth-footer a:hover{color:#ff6b7a;text-decoration:underline}.spl-login-wrapper .decoration{position:absolute;font-size:24px;opacity:.6;animation:bounce 3s ease-in-out infinite}.spl-login-wrapper .decoration.d1{top:10%;left:10%;animation-delay:0s}.spl-login-wrapper .decoration.d2{top:20%;right:15%;animation-delay:.5s}.spl-login-wrapper .decoration.d3{bottom:20%;left:15%;animation-delay:1s}.spl-login-wrapper .decoration.d4{bottom:15%;right:10%;animation-delay:1.5s}@keyframes bounce{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(5deg)}}@media (max-width: 480px){.spl-login-wrapper{padding:16px}.spl-login-wrapper .auth-container{padding:32px 24px;border-radius:20px}.spl-login-wrapper .auth-container h1{font-size:26px}.spl-login-wrapper .auth-container h1:before{font-size:28px}}.spr-register-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#C7CEEA 0%,#B5EAD7 50%,#FFDAC1 100%);padding:20px;position:relative;overflow:hidden}.spr-register-wrapper:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background-image:radial-gradient(circle at 30% 20%,rgba(255,154,162,.2) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(255,183,178,.2) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(255,218,193,.3) 0%,transparent 60%);animation:float 20s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(-30px,30px) rotate(-5deg)}66%{transform:translate(20px,-20px) rotate(5deg)}}.spr-register-wrapper .auth-container{position:relative;z-index:1;width:100%;max-width:420px;padding:48px 40px;background:rgba(255,255,255,.95);border-radius:24px;box-shadow:0 8px 32px #c7ceea4d,0 2px 8px #0000000d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.spr-register-wrapper .auth-container h1{margin:0 0 8px;text-align:center;font-size:32px;font-weight:700;color:#c7ceea;display:flex;align-items:center;justify-content:center;gap:12px}.spr-register-wrapper .auth-container h1:before{content:"✨";font-size:36px}.spr-register-wrapper .auth-container .subtitle{text-align:center;color:#94a3b8;font-size:14px;margin-bottom:32px}.spr-register-wrapper .error-message{padding:12px 16px;margin-bottom:20px;background:#FFE5E8;border:1px solid #FFB7B2;border-radius:12px;color:#ff6b7a;font-size:14px;display:flex;align-items:center;gap:8px}.spr-register-wrapper .error-message:before{content:"⚠️"}.spr-register-wrapper .success-message{padding:12px 16px;margin-bottom:20px;background:#E8F5E9;border:1px solid #B5EAD7;border-radius:12px;color:#4caf50;font-size:14px;display:flex;align-items:center;gap:8px}.spr-register-wrapper .success-message:before{content:"✅"}.spr-register-wrapper form .form-group{margin-bottom:20px}.spr-register-wrapper form .form-group label{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;font-weight:600;color:#64748b}.spr-register-wrapper form .form-group label .required{color:#ff9aa2}.spr-register-wrapper form .form-group input{width:100%;padding:14px 18px;border:2px solid #F1F5F9;border-radius:14px;font-size:15px;transition:all .3s ease;box-sizing:border-box;background:#FAFAFA}.spr-register-wrapper form .form-group input:hover{border-color:#d1f2eb;background:#fff}.spr-register-wrapper form .form-group input:focus{outline:none;border-color:#b5ead7;background:#fff;box-shadow:0 0 0 4px #b5ead733}.spr-register-wrapper form .form-group input::placeholder{color:#cbd5e1}.spr-register-wrapper form .form-group.terms-agreement{margin-bottom:16px}.spr-register-wrapper form .form-group.terms-agreement .checkbox-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.spr-register-wrapper form .form-group.terms-agreement .checkbox-label input[type=checkbox]{width:18px;height:18px;margin-top:2px;flex-shrink:0;cursor:pointer;accent-color:#B5EAD7}.spr-register-wrapper form .form-group.terms-agreement .checkbox-label .checkbox-text{font-size:13px;font-weight:400;color:#64748b;line-height:1.5}.spr-register-wrapper form .form-group.terms-agreement .checkbox-label .checkbox-text a{color:#c7ceea;text-decoration:none;font-weight:500}.spr-register-wrapper form .form-group.terms-agreement .checkbox-label .checkbox-text a:hover{text-decoration:underline}.spr-register-wrapper .submit-button{width:100%;padding:16px;margin-top:12px;background:linear-gradient(135deg,#B5EAD7 0%,#C7CEEA 100%);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #b5ead766}.spr-register-wrapper .submit-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #b5ead780;background:linear-gradient(135deg,#A5DAC7 0%,#B7BEDA 100%)}.spr-register-wrapper .submit-button:active{transform:translateY(0)}.spr-register-wrapper .auth-footer{margin-top:28px;text-align:center;font-size:14px;color:#94a3b8}.spr-register-wrapper .auth-footer a{color:#c7ceea;text-decoration:none;font-weight:600;transition:all .2s}.spr-register-wrapper .auth-footer a:hover{color:#a5b3d9;text-decoration:underline}.spr-register-wrapper .decoration{position:absolute;font-size:24px;opacity:.6;animation:bounce 3s ease-in-out infinite}.spr-register-wrapper .decoration.d1{top:10%;right:10%;animation-delay:0s}.spr-register-wrapper .decoration.d2{top:20%;left:15%;animation-delay:.5s}.spr-register-wrapper .decoration.d3{bottom:20%;right:15%;animation-delay:1s}.spr-register-wrapper .decoration.d4{bottom:15%;left:10%;animation-delay:1.5s}@keyframes bounce{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(-5deg)}}@media (max-width: 480px){.spr-register-wrapper{padding:16px}.spr-register-wrapper .auth-container{padding:32px 24px;border-radius:20px}.spr-register-wrapper .auth-container h1{font-size:26px}.spr-register-wrapper .auth-container h1:before{font-size:28px}}.spg-gallery-wrapper{min-height:100vh;height:100vh;background:linear-gradient(135deg,#FFF5E6 0%,#FFE4E1 25%,#FFF0F5 50%,#F0FFF0 75%,#F5FFFA 100%);padding-top:16px;display:flex;flex-direction:column;overflow:hidden}.spg-gallery-wrapper .gallery-header{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;max-width:1200px;margin:0 auto;width:100%}.spg-gallery-wrapper .gallery-header h2{margin:0;font-size:20px;font-weight:600;color:#8b7e8c}.spg-gallery-wrapper .gallery-header .ant-btn{background:linear-gradient(135deg,#C8E6D8 0%,#D4C4E0 100%);border:none;color:#6b5b6c;font-weight:500;border-radius:20px;padding:6px 20px;box-shadow:0 3px 10px #c8e6d84d;transition:all .3s ease}.spg-gallery-wrapper .gallery-header .ant-btn:hover{background:linear-gradient(135deg,#D4C4E0 0%,#C8E6D8 100%);transform:translateY(-2px);box-shadow:0 5px 15px #c8e6d866}.spg-gallery-wrapper .gallery-container{flex:1;padding:24px;max-width:1200px;margin:0 auto;width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch}.spg-gallery-wrapper .loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;color:#64748b}.spg-gallery-wrapper .loading-container>div{margin-top:16px;font-size:16px}.spg-gallery-wrapper .empty-state{text-align:center;padding:80px 40px;background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 8px 32px #c8b4c826;border:1px solid rgba(255,255,255,.6)}.spg-gallery-wrapper .empty-state .empty-icon{font-size:64px;margin-bottom:16px}.spg-gallery-wrapper .empty-state h3{margin:0 0 12px;font-size:20px;color:#a890a0;font-weight:600}.spg-gallery-wrapper .empty-state p{margin:0 0 24px;color:#999;font-size:16px}.spg-gallery-wrapper .empty-state .ant-btn{background:linear-gradient(135deg,#E8C4C4 0%,#D4C4E0 100%);border:none;color:#fff;font-weight:500;border-radius:20px;padding:8px 24px;box-shadow:0 3px 12px #c8b4c84d;transition:all .3s ease}.spg-gallery-wrapper .empty-state .ant-btn:hover{background:linear-gradient(135deg,#D4C4E0 0%,#E8C4C4 100%);transform:translateY(-2px);box-shadow:0 5px 18px #c8b4c866}.spg-gallery-wrapper .pattern-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.spg-gallery-wrapper .pattern-card{background:rgba(255,255,255,.9);border-radius:16px;overflow:hidden;box-shadow:0 2px 8px #b4a0b41a;transition:box-shadow .3s,transform .3s;border:1px solid rgba(255,255,255,.6)}.spg-gallery-wrapper .pattern-card:hover{box-shadow:0 8px 24px #b4a0b433;transform:translateY(-4px)}.spg-gallery-wrapper .pattern-card .pattern-thumbnail{height:120px;background:linear-gradient(135deg,#FAF0F0 0%,#F5F0FA 50%,#F0FAF5 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.spg-gallery-wrapper .pattern-card .pattern-thumbnail:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(255,200,200,.3) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(200,230,210,.3) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(220,200,230,.2) 0%,transparent 60%);pointer-events:none}.spg-gallery-wrapper .pattern-card .pattern-thumbnail .thumbnail-canvas{position:relative;z-index:1;box-shadow:0 4px 12px #0000001a;border-radius:4px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.spg-gallery-wrapper .pattern-card .pattern-thumbnail .thumbnail-placeholder{width:60px;height:60px;background:rgba(255,255,255,.6);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600;color:#a890a0;box-shadow:0 4px 12px #0000000d}.spg-gallery-wrapper .pattern-card .pattern-info{padding:10px 12px}.spg-gallery-wrapper .pattern-card .pattern-info h3{margin:0 0 6px;font-size:14px;color:#6b5b6c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.spg-gallery-wrapper .pattern-card .pattern-info p{margin:2px 0;font-size:12px;color:#9a8a9b}.spg-gallery-wrapper .pattern-card .pattern-actions{display:flex;padding:10px 12px;border-top:1px solid rgba(200,180,200,.2);gap:8px}.spg-gallery-wrapper .pattern-card .pattern-actions .ant-btn{flex:1;font-size:13px;border-radius:12px;transition:all .3s ease}.spg-gallery-wrapper .pattern-card .pattern-actions .ant-btn.ant-btn-primary{background:linear-gradient(135deg,#C8E6D8 0%,#D4C4E0 100%);border:none;color:#5a5a5a;font-weight:500}.spg-gallery-wrapper .pattern-card .pattern-actions .ant-btn.ant-btn-primary:hover{background:linear-gradient(135deg,#D4C4E0 0%,#C8E6D8 100%);transform:translateY(-2px);box-shadow:0 4px 12px #c8e6d866}.spg-gallery-wrapper .pattern-card .pattern-actions .ant-btn.ant-btn-dangerous{background:#fff;border:1px solid #E8C4C4;color:#c490a0}.spg-gallery-wrapper .pattern-card .pattern-actions .ant-btn.ant-btn-dangerous:hover{background:linear-gradient(135deg,#E8C4C4 0%,#D4C4E0 100%);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 4px 12px #c8b4c84d}@media (max-width: 767px){.spg-gallery-wrapper .gallery-header{padding:12px 16px}.spg-gallery-wrapper .gallery-header h2{font-size:16px}.spg-gallery-wrapper .gallery-header .ant-btn{padding:4px 12px;font-size:12px}.spg-gallery-wrapper .gallery-container{padding:16px}.spg-gallery-wrapper .pattern-grid{grid-template-columns:1fr;gap:16px}.spg-gallery-wrapper .empty-state{padding:60px 24px}.spg-gallery-wrapper .empty-state .empty-icon{font-size:48px}.spg-gallery-wrapper .empty-state h3{font-size:18px}.spg-gallery-wrapper .empty-state p{font-size:14px}}.terms-wrapper{min-height:100vh;background:var(--bg-primary);padding:40px 20px;overflow-y:auto;max-height:100vh;box-sizing:border-box}.terms-wrapper .terms-container{max-width:800px;margin:0 auto;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.terms-wrapper .terms-header{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:40px;text-align:center}.terms-wrapper .terms-header .back-link{display:inline-block;color:#ffffffe6;text-decoration:none;margin-bottom:20px;font-size:14px;transition:all .2s}.terms-wrapper .terms-header .back-link:hover{color:#fff;transform:translate(-4px)}.terms-wrapper .terms-header h1{margin:0 0 12px;font-size:28px;font-weight:700}.terms-wrapper .terms-header .effective-date{margin:0;opacity:.9;font-size:14px}.terms-wrapper .terms-content{padding:40px}.terms-wrapper .terms-content section{margin-bottom:32px}.terms-wrapper .terms-content section:last-child{margin-bottom:0}.terms-wrapper .terms-content h2{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--primary-light);display:inline-block}.terms-wrapper .terms-content p{font-size:15px;line-height:1.8;color:var(--text-secondary);margin:0 0 12px}.terms-wrapper .terms-content p:last-child{margin-bottom:0}.terms-wrapper .terms-content ul{margin:0 0 16px;padding-left:24px}.terms-wrapper .terms-content ul li{font-size:15px;line-height:1.8;color:var(--text-secondary);margin-bottom:8px}.terms-wrapper .terms-content ul li:last-child{margin-bottom:0}.terms-wrapper .terms-content ul li strong{color:var(--text-primary)}.terms-wrapper .terms-footer{display:flex;justify-content:center;gap:20px;padding:24px 40px;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.terms-wrapper .terms-footer .action-link{padding:12px 32px;background:var(--primary-color);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-weight:500;transition:all .2s}.terms-wrapper .terms-footer .action-link:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #ff9aa266}.terms-wrapper .terms-footer .action-link.secondary{background:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.terms-wrapper .terms-footer .action-link.secondary:hover{background:var(--primary-light)}@media (max-width: 768px){.terms-wrapper{padding:0;overflow-y:auto;max-height:100vh}.terms-wrapper .terms-container{border-radius:0;box-shadow:none}.terms-wrapper .terms-header{padding:32px 24px}.terms-wrapper .terms-header h1{font-size:24px}.terms-wrapper .terms-content{padding:24px}.terms-wrapper .terms-content h2{font-size:16px}.terms-wrapper .terms-content p,.terms-wrapper .terms-content li{font-size:14px}.terms-wrapper .terms-footer{flex-direction:column;padding:20px 24px}.terms-wrapper .terms-footer .action-link{text-align:center}}.privacy-wrapper{min-height:100vh;background:var(--bg-primary);padding:40px 20px;overflow-y:auto;max-height:100vh;box-sizing:border-box}.privacy-wrapper .privacy-container{max-width:800px;margin:0 auto;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.privacy-wrapper .privacy-header{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:40px;text-align:center}.privacy-wrapper .privacy-header .back-link{display:inline-block;color:#ffffffe6;text-decoration:none;margin-bottom:20px;font-size:14px;transition:all .2s}.privacy-wrapper .privacy-header .back-link:hover{color:#fff;transform:translate(-4px)}.privacy-wrapper .privacy-header h1{margin:0 0 12px;font-size:28px;font-weight:700}.privacy-wrapper .privacy-header .effective-date{margin:0;opacity:.9;font-size:14px}.privacy-wrapper .privacy-content{padding:40px}.privacy-wrapper .privacy-content section{margin-bottom:32px}.privacy-wrapper .privacy-content section:last-child{margin-bottom:0}.privacy-wrapper .privacy-content h2{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--primary-light);display:inline-block}.privacy-wrapper .privacy-content p{font-size:15px;line-height:1.8;color:var(--text-secondary);margin:0 0 12px}.privacy-wrapper .privacy-content p:last-child{margin-bottom:0}.privacy-wrapper .privacy-content ul{margin:0 0 16px;padding-left:24px}.privacy-wrapper .privacy-content ul li{font-size:15px;line-height:1.8;color:var(--text-secondary);margin-bottom:8px}.privacy-wrapper .privacy-content ul li:last-child{margin-bottom:0}.privacy-wrapper .privacy-content ul li strong{color:var(--text-primary)}.privacy-wrapper .privacy-footer{display:flex;justify-content:center;gap:20px;padding:24px 40px;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.privacy-wrapper .privacy-footer .action-link{padding:12px 32px;background:var(--primary-color);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-weight:500;transition:all .2s}.privacy-wrapper .privacy-footer .action-link:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #ff9aa266}.privacy-wrapper .privacy-footer .action-link.secondary{background:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.privacy-wrapper .privacy-footer .action-link.secondary:hover{background:var(--primary-light)}@media (max-width: 768px){.privacy-wrapper{padding:0;overflow-y:auto;max-height:100vh}.privacy-wrapper .privacy-container{border-radius:0;box-shadow:none}.privacy-wrapper .privacy-header{padding:32px 24px}.privacy-wrapper .privacy-header h1{font-size:24px}.privacy-wrapper .privacy-content{padding:24px}.privacy-wrapper .privacy-content h2{font-size:16px}.privacy-wrapper .privacy-content p,.privacy-wrapper .privacy-content li{font-size:14px}.privacy-wrapper .privacy-footer{flex-direction:column;padding:20px 24px}.privacy-wrapper .privacy-footer .action-link{text-align:center}}.admin-page-wrapper{min-height:100vh;background:linear-gradient(135deg,#FFF5E6 0%,#FFE4E1 25%,#FFF0F5 50%,#F0FFF0 75%,#F5FFFA 100%);padding-top:16px}.admin-page-wrapper .admin-container{max-width:1200px;margin:0 auto;padding:24px}.admin-page-wrapper .admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-page-wrapper .admin-header h3{margin:0;font-size:20px;font-weight:600;color:#8b7e8c}.admin-page-wrapper .admin-header .ant-btn{background:linear-gradient(135deg,#C8E6D8 0%,#D4C4E0 100%);border:none;color:#6b5b6c;font-weight:500;border-radius:20px;padding:6px 20px;box-shadow:0 3px 10px #c8e6d84d;transition:all .3s ease}.admin-page-wrapper .admin-header .ant-btn:hover{background:linear-gradient(135deg,#D4C4E0 0%,#C8E6D8 100%);transform:translateY(-2px);box-shadow:0 5px 15px #c8e6d866}.admin-page-wrapper .stats-row{margin-bottom:24px}.admin-page-wrapper .stats-row .ant-col{margin-bottom:16px}.admin-page-wrapper .stats-row .ant-card{background:rgba(255,255,255,.9);border-radius:16px;box-shadow:0 2px 8px #b4a0b41a;border:1px solid rgba(255,255,255,.6);transition:transform .3s,box-shadow .3s}.admin-page-wrapper .stats-row .ant-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #b4a0b433}.admin-page-wrapper .stats-row .ant-card .ant-card-body{padding:20px}.admin-page-wrapper .stats-row .ant-statistic-title{color:#9a8a9b;font-size:14px;margin-bottom:8px}.admin-page-wrapper .stats-row .ant-statistic-content{font-size:32px;font-weight:600;color:#6b5b6c}.admin-page-wrapper .generate-card{background:rgba(255,255,255,.9);border-radius:16px;margin-bottom:24px;box-shadow:0 2px 8px #b4a0b41a;border:1px solid rgba(255,255,255,.6)}.admin-page-wrapper .generate-card .ant-card-head{border-bottom:1px solid rgba(200,180,200,.2);font-weight:500;color:#6b5b6c;background:transparent}.admin-page-wrapper .generate-card .ant-card-body{padding:24px}.admin-page-wrapper .generate-card .ant-input-number{border-radius:12px;border:1px solid rgba(200,180,200,.3)}.admin-page-wrapper .generate-card .ant-input-number:hover,.admin-page-wrapper .generate-card .ant-input-number:focus{border-color:#c8e6d8}.admin-page-wrapper .generate-card .ant-select .ant-select-selector{border-radius:12px;border:1px solid rgba(200,180,200,.3)}.admin-page-wrapper .generate-card .ant-btn-primary{background:linear-gradient(135deg,#E8C4C4 0%,#D4C4E0 100%);border:none;color:#fff;font-weight:500;border-radius:20px;box-shadow:0 3px 12px #c8b4c84d;transition:all .3s ease}.admin-page-wrapper .generate-card .ant-btn-primary:hover{background:linear-gradient(135deg,#D4C4E0 0%,#E8C4C4 100%);transform:translateY(-2px);box-shadow:0 5px 18px #c8b4c866}.admin-page-wrapper .generate-card .format-tip{margin-top:16px;padding-top:16px;border-top:1px dashed rgba(200,180,200,.3)}.admin-page-wrapper .generate-card .format-tip .ant-typography{color:#9a8a9b}.admin-page-wrapper .codes-card{background:rgba(255,255,255,.9);border-radius:16px;box-shadow:0 2px 8px #b4a0b41a;border:1px solid rgba(255,255,255,.6)}.admin-page-wrapper .codes-card .ant-card-head{border-bottom:1px solid rgba(200,180,200,.2);font-weight:500;color:#6b5b6c;background:transparent}.admin-page-wrapper .codes-card .ant-card-head .ant-tag{background:linear-gradient(135deg,#C8E6D8 0%,#D4C4E0 100%);color:#6b5b6c;border:none}.admin-page-wrapper .codes-card .ant-card-body{padding:20px}.admin-page-wrapper .codes-card .ant-table{background:transparent}.admin-page-wrapper .codes-card .ant-table .ant-table-thead>tr>th{background:rgba(248,245,248,.8);font-weight:500;color:#8b7e8c;border-bottom:1px solid rgba(200,180,200,.2)}.admin-page-wrapper .codes-card .ant-table .ant-table-tbody>tr>td{border-bottom:1px solid rgba(200,180,200,.1)}.admin-page-wrapper .codes-card .ant-table .ant-table-tbody>tr:hover>td{background:rgba(200,230,216,.15)}.admin-page-wrapper .codes-card code{font-family:SFMono-Regular,Consolas,monospace;font-size:14px;padding:4px 10px;background:rgba(243,244,246,.8);border-radius:8px;border:1px solid rgba(229,231,235,.6);color:#6b5b6c}.admin-page-wrapper .codes-card .ant-btn-text{color:#9a8a9b;border-radius:8px}.admin-page-wrapper .codes-card .ant-btn-text:hover{color:#6b5b6c;background:rgba(200,230,216,.3)}.admin-page-wrapper .codes-card .ant-pagination .ant-pagination-item{border-radius:8px;border:1px solid rgba(200,180,200,.3)}.admin-page-wrapper .codes-card .ant-pagination .ant-pagination-item:hover,.admin-page-wrapper .codes-card .ant-pagination .ant-pagination-item.ant-pagination-item-active{border-color:#c8e6d8;background:rgba(200,230,216,.2)}.admin-page-wrapper .codes-card .ant-pagination .ant-pagination-prev .ant-pagination-item-link,.admin-page-wrapper .codes-card .ant-pagination .ant-pagination-next .ant-pagination-item-link{border-radius:8px;border:1px solid rgba(200,180,200,.3)}.admin-page-wrapper .codes-card .ant-pagination .ant-pagination-prev .ant-pagination-item-link:hover,.admin-page-wrapper .codes-card .ant-pagination .ant-pagination-next .ant-pagination-item-link:hover{border-color:#c8e6d8;color:#6b5b6c}@media (max-width: 768px){.admin-page-wrapper .admin-container{padding:16px}.admin-page-wrapper .admin-header{flex-direction:column;gap:16px;align-items:flex-start}.admin-page-wrapper .admin-header h3{font-size:18px}.admin-page-wrapper .stats-row .ant-col{margin-bottom:12px}.admin-page-wrapper .stats-row .ant-statistic-content{font-size:24px}.admin-page-wrapper .generate-card .ant-card-body,.admin-page-wrapper .codes-card .ant-card-body{padding:16px}}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;width:100%;overflow:hidden;overscroll-behavior:none}@media (min-width: 1280px) and (min-height: 720px){html,body,#root{overflow:hidden;min-width:auto;min-height:auto}}@media (max-width: 1279px),(max-height: 719px){html,body,#root{overflow:hidden;min-width:auto;min-height:auto}}:root{--primary-color: #FF9AA2;--primary-hover: #FF7A85;--primary-light: #FFE5E8;--secondary-color: #B5EAD7;--secondary-hover: #9BDAC3;--accent-color: #FFDAC1;--accent-hover: #FFCBA8;--success-color: #C7CEEA;--warning-color: #FFDAC1;--error-color: #FFB7B2;--info-color: #B5EAD7;--bg-primary: #FAF9F6;--bg-secondary: #FFFFFF;--bg-tertiary: #F5F3F0;--bg-card: #FFFFFF;--bg-canvas: #F8F6F3;--text-primary: #4A4A4A;--text-secondary: #7A7A7A;--text-tertiary: #A0A0A0;--text-light: #FFFFFF;--border-color: #EBE8E4;--border-light: #F0EDE9;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--shadow-soft: 0 4px 20px rgba(255, 154, 162, .15);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@media (max-width: 767px){html{font-size:14px;touch-action:manipulation;-webkit-text-size-adjust:100%}body{-webkit-text-size-adjust:100%;position:static;width:100%;height:100%;overflow:hidden}canvas{touch-action:none}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media (max-width: 767px){::-webkit-scrollbar{width:4px;height:4px}}.hidden{display:none}@media (min-width: 1280px) and (min-height: 720px){html,body,#root{height:100%;min-height:auto;min-width:auto;overflow:hidden}}@media (max-width: 1279px),(max-height: 719px){html,body,#root{height:100%;min-width:auto;min-height:auto;overflow:hidden}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}button,.ant-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,textarea,select{font-size:16px;touch-action:manipulation}@media (min-width: 768px){input,textarea,select{font-size:14px}}.header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.header h1{font-size:20px;font-weight:600;color:var(--text-primary)}.nav-links{display:flex;align-items:center;gap:16px}.nav-links a{color:var(--text-secondary);text-decoration:none;font-size:14px;transition:color .2s;padding:8px 12px;border-radius:var(--radius-sm)}.nav-links a:hover{color:var(--text-primary);background:var(--bg-tertiary)}.user-badge{display:inline-flex;align-items:center;padding:6px 12px;background:var(--primary-light);color:var(--primary-color);border-radius:var(--radius-md);font-size:14px;font-weight:500}.logout-button{padding:8px 18px;background:linear-gradient(135deg,#FFB7B2 0%,#FF9AA2 100%);color:#fff;border:none;border-radius:20px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;box-shadow:0 2px 8px #ff9aa24d}.logout-button:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ff9aa280;background:linear-gradient(135deg,#FFA7A2 0%,#FF8A94 100%)}.logout-button:active{transform:translateY(0)}@media (max-width: 767px){.header{padding:12px 16px}.header h1{font-size:16px}.nav-links{gap:8px}.nav-links a,.user-badge,.logout-button{font-size:12px;padding:4px 8px}}
