:root{--bg: #f5f5f7;--card: #ffffff;--ink: #1d1d1f;--ink-2: #6e6e73;--ink-3: #aeaeb2;--line: rgba(0, 0, 0, .08);--accent: #5fa832;--accent-soft: rgba(122, 193, 67, .14);--warn: #ff3b30;--field: #f2f2f7;--radius: 14px;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--glass: rgba(255, 255, 255, .72);--seg-active: #ffffff}[data-theme=dark]{--bg: #1c1c1e;--card: #2c2c2e;--ink: #f2f2f7;--ink-2: #aeaeb2;--ink-3: #7c7c80;--line: rgba(255, 255, 255, .1);--accent: #7ac143;--accent-soft: rgba(122, 193, 67, .16);--field: #3a3a3c;--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 8px 24px rgba(0, 0, 0, .45);--glass: rgba(28, 28, 30, .75);--seg-active: #525256}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:-apple-system,SF Pro Text,Segoe UI Variable,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}#app{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 24px 12px;background:var(--glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--line);z-index:10;flex-shrink:0}.brand{display:flex;align-items:center;gap:12px}.logo-img{height:34px;object-fit:contain;display:block}.brand strong{font-size:18px;font-weight:700;letter-spacing:-.02em}.brand strong:first-letter{color:var(--accent)}.brand-sub{font-size:12px;color:var(--ink-3);font-weight:500;border-left:1px solid var(--line);padding-left:12px}.topbar-row{display:flex;align-items:center;width:100%;gap:16px}.topbar-row:before{content:"";flex:1}.controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center}.actions{flex:1;justify-content:flex-end}.controls .segmented{width:250px;flex-shrink:0}.ctl{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;color:var(--ink-2);white-space:nowrap}.ctl input[type=number]{width:60px;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:var(--field);font-size:13px;font-family:inherit;color:var(--ink);text-align:right;transition:border-color .15s,background .15s}.ctl input[type=number]:focus{outline:none;border-color:var(--accent);background:var(--card)}.ctl input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:38px;height:23px;border-radius:12px;background:#d1d1d6;position:relative;cursor:pointer;transition:background .2s}.ctl input[type=checkbox]:after{content:"";position:absolute;width:19px;height:19px;border-radius:50%;background:#fff;top:2px;left:2px;transition:left .2s;box-shadow:0 1px 3px #00000040}.ctl input[type=checkbox]:checked{background:var(--accent)}.ctl input[type=checkbox]:checked:after{left:17px}.actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.stats-bar{display:flex;justify-content:center;align-items:stretch;gap:10px;padding:14px 24px 4px;flex-wrap:wrap;flex-shrink:0}.stats-empty{font-size:13px;color:var(--ink-3);padding:10px 22px;background:var(--card);border-radius:100px;box-shadow:var(--shadow)}.stat-card{background:var(--card);border-radius:var(--radius);padding:10px 18px;box-shadow:var(--shadow);text-align:center;min-width:110px;display:flex;flex-direction:column;justify-content:center;gap:2px}.stat-value{font-size:17px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-label{font-size:10.5px;color:var(--ink-2);font-weight:500}.stat-card.price .stat-value{color:var(--accent)}.stat-card.warn .stat-value{color:#ff9500}.stat-card.long-warn{max-width:230px}.stat-card.long-warn .stat-label{color:var(--ink-2)}.stat-card.error{background:#fff2f1}.stat-card.error .stat-label{color:#c0392b;max-width:260px}.stat-card.manual-badge{background:var(--ink)}.stat-card.manual-badge .stat-value{color:#fff;font-size:13px}.stat-card.copies-badge{background:var(--accent)}.stat-card.copies-badge .stat-value{color:#fff;font-size:14px}.stat-card.copies-badge .stat-label{color:#ffffffd9}.stat-card.suggest{background:var(--accent-soft);border:1px dashed var(--accent);box-shadow:none;max-width:250px}.stat-card.suggest .stat-value{color:var(--accent);font-size:14px}.stat-mini-btn.dark{background:var(--accent);color:#fff}.stat-mini-btn.dark:hover{filter:brightness(1.08)}.stat-mini-btn{border:none;background:#ffffff2e;color:#fff;border-radius:100px;font-size:10.5px;font-weight:600;font-family:inherit;padding:3px 10px;cursor:pointer;transition:background .15s}.stat-mini-btn:hover{background:#ffffff52}.stat-expander{align-self:center;border:none;background:transparent;color:var(--ink-2);font-size:12px;font-weight:600;font-family:inherit;padding:8px 14px;border-radius:100px;cursor:pointer;transition:background .15s}.stat-expander:hover{background:#0000000d}.stat-expander span{display:inline-block;transition:transform .2s}.stat-expander.open span{transform:rotate(180deg)}.stats-details{margin:0 auto;padding:12px 20px;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);max-width:520px;width:calc(100% - 48px);display:grid;gap:6px;flex-shrink:0}.det-row{display:flex;justify-content:space-between;gap:16px;font-size:12.5px;padding:4px 0;border-bottom:1px solid var(--line)}.det-row:last-child{border-bottom:none}.det-row span:first-child{color:var(--ink-2);font-weight:500}.det-row span:last-child{font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.workspace{display:flex;flex:1;min-height:0}.sidebar{width:340px;flex-shrink:0;overflow-y:auto;padding:20px 16px 28px 20px;display:grid;gap:10px;align-content:start}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}.sidebar h2{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:14px 4px 2px}.sidebar h2:first-child{margin-top:0}.sidebar label{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:500;background:var(--card);border-radius:var(--radius);padding:10px 14px;box-shadow:var(--shadow)}.sidebar input[type=number],.sidebar select{width:120px;padding:7px 10px;border:1px solid transparent;border-radius:9px;background:var(--field);font-size:13px;font-family:inherit;color:var(--ink);text-align:right;transition:border-color .15s,background .15s}.sidebar input[type=number]:focus,.sidebar select:focus{outline:none;border-color:var(--accent);background:var(--card)}.sidebar input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:42px;height:25px;border-radius:13px;background:#d1d1d6;position:relative;cursor:pointer;transition:background .2s;flex-shrink:0}.sidebar input[type=checkbox]:after{content:"";position:absolute;width:21px;height:21px;border-radius:50%;background:#fff;top:2px;left:2px;transition:left .2s;box-shadow:0 1px 3px #00000040}.sidebar input[type=checkbox]:checked{background:var(--accent)}.sidebar input[type=checkbox]:checked:after{left:19px}.segmented{display:grid;grid-template-columns:1fr 1fr;background:var(--field);border-radius:11px;padding:3px;gap:3px}.segmented button{border:none;background:transparent;border-radius:8px;padding:8px 6px;font-size:12.5px;font-weight:600;font-family:inherit;color:var(--ink-2);cursor:pointer;transition:all .18s}.segmented button.active{background:var(--seg-active);color:var(--ink);box-shadow:0 1px 4px #0000001f}.seg-card{background:var(--card);border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow);display:grid;gap:8px}.seg-card .seg-label{font-size:13px;font-weight:500}.upload{position:relative;display:block!important;border:1.5px dashed #d1d1d6!important;border-radius:var(--radius)!important;padding:22px 14px!important;text-align:center;cursor:pointer;background:var(--card)!important;box-shadow:none!important;transition:border-color .15s,background .15s}.upload:hover{border-color:var(--accent)!important;background:var(--accent-soft)!important}.upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%}.upload span{font-size:13px;font-weight:600}.upload small{font-weight:400;color:var(--ink-3);font-size:11px}.gfx-list{display:grid;gap:8px}.gfx-item{display:flex;align-items:center;gap:10px;background:var(--card);border-radius:var(--radius);padding:10px 12px;font-size:11px;box-shadow:var(--shadow)}.gfx-thumb{border-radius:8px;background:repeating-conic-gradient(#ececf0,#ececf0 25%,#fff 0%,#fff 50%) 0 0/8px 8px;flex-shrink:0}.gfx-body{flex:1;min-width:0;display:grid;gap:6px}.gfx-name{font-weight:600;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.gfx-q{display:flex;gap:4px;flex-wrap:wrap}.q-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:100px}.q-badge.ok{background:var(--accent-soft);color:var(--accent)}.q-badge.bad{background:#ffe5e3;color:#c0392b}.q-badge.ai{background:#eef;color:#5856d6}.q-ai{border:none;border-radius:100px;background:#5856d6;color:#fff;font-size:10px;font-weight:700;font-family:inherit;padding:2px 10px;cursor:pointer;transition:filter .15s}.q-ai:hover{filter:brightness(1.12)}.gfx-fields{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.gfx-fields label{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:var(--ink-2);background:none;box-shadow:none;padding:0;border-radius:0}.sidebar .gfx-fields input[type=number]{width:48px;padding:4px 6px;border-radius:7px;font-size:12px;text-align:right}.gfx-fill{border:none;border-radius:100px;background:var(--field);color:var(--ink-2);font-size:11px;font-weight:600;font-family:inherit;padding:5px 12px;cursor:pointer;transition:all .18s}.gfx-fill:hover{background:#e7e7ec}.gfx-fill.active{background:var(--accent);color:#fff}.gfx-white{border:none;border-radius:100px;background:var(--field);color:var(--ink-2);font-size:11px;font-weight:600;font-family:inherit;padding:5px 12px;cursor:pointer;transition:all .18s}.gfx-white:hover{background:#e7e7ec}.gfx-white.active{background:var(--ink);color:#fff}.gfx-bg{border:none;border-radius:100px;background:var(--field);color:var(--ink-2);font-size:11px;font-weight:600;font-family:inherit;padding:5px 12px;cursor:pointer;transition:all .18s}.gfx-bg:hover{background:#e7e7ec}.gfx-bg.active{background:#b8860b;color:#fff}.gfx-del{flex-shrink:0;width:24px;height:24px;border:none;background:var(--field);border-radius:50%;cursor:pointer;font-size:11px;color:var(--ink-2);transition:all .15s}.gfx-del:hover{background:var(--warn);color:#fff}.hidden{display:none}.btn-secondary{padding:10px;border:none;border-radius:100px;background:var(--ink);color:#fff;font-weight:600;font-size:12.5px;font-family:inherit;cursor:pointer;transition:opacity .15s}.btn-secondary:hover{opacity:.8}.hint{font-size:11px;color:var(--ink-3);line-height:1.5;padding:0 6px}#result{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:11.5px;line-height:1.8;white-space:pre-wrap;background:var(--card);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);color:var(--ink)}.export-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btn-export{padding:12px 8px;border:none;border-radius:100px;font-weight:600;font-size:13px;font-family:inherit;cursor:pointer;background:var(--accent);color:#fff;transition:all .15s;box-shadow:0 2px 8px #5fa8324d}.btn-export:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px)}.btn-export:disabled{background:var(--field);color:var(--ink-3);cursor:not-allowed;box-shadow:none}.export-status{font-size:11px;color:var(--ink-2);min-height:14px;padding:0 6px}.preview{flex:1;overflow:auto;padding:28px 32px;background:var(--bg)}.preview::-webkit-scrollbar{width:10px;height:10px}.preview::-webkit-scrollbar-thumb{background:#0000001f;border-radius:5px}.roll-label{font-size:13px;font-weight:600;letter-spacing:-.01em;color:var(--ink-2);margin:18px 2px 10px}.roll-label:first-child{margin-top:0}.roll-canvas{display:block;border-radius:10px;box-shadow:0 2px 6px #0000000f,0 16px 40px #0000001a;border:1px solid var(--line)}.workspace.empty .sidebar{display:none}.workspace.empty .preview{display:flex;align-items:center;justify-content:center}.hero-upload{position:relative;display:grid;justify-items:center;gap:6px;width:min(460px,80%);padding:64px 40px;background:var(--card);border:1.5px dashed #d1d1d6;border-radius:24px;box-shadow:var(--shadow);cursor:pointer;text-align:center;transition:border-color .2s,transform .2s,box-shadow .2s;margin-bottom:6vh}.hero-upload:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #0000000f,0 20px 48px #0000001a}.hero-upload.hidden{display:none}.hero-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.hero-icon{width:64px;height:64px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:10px}.hero-icon svg{width:28px;height:28px}.hero-title{font-size:19px;font-weight:700;letter-spacing:-.02em}.hero-sub{font-size:13px;color:var(--ink-2)}.footer{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 24px;font-size:11px;color:var(--ink-3);background:var(--glass);border-top:1px solid var(--line);flex-shrink:0}.footer-dot{color:#d1d1d6}.gfx-item.bad{box-shadow:var(--shadow),inset 0 0 0 1.5px #ff3b3080}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#00000059;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center}.modal-backdrop.hidden{display:none}.modal-card{background:var(--card);border-radius:20px;box-shadow:0 24px 80px #0000004d;width:min(440px,92vw);max-height:80vh;overflow-y:auto;padding:28px;text-align:center;display:grid;gap:12px;justify-items:center}.modal-icon{width:56px;height:56px;border-radius:50%;background:#ffe5e3;color:var(--warn);font-size:26px;display:flex;align-items:center;justify-content:center}.modal-title{font-size:18px;font-weight:700;letter-spacing:-.02em}.modal-body{display:grid;gap:10px;width:100%;text-align:left}.modal-file{background:var(--field);border-radius:12px;padding:10px 14px;font-size:12.5px}.modal-file strong{display:block;margin-bottom:4px;word-break:break-all}.modal-file ul{margin:0;padding-left:18px;display:grid;gap:3px;color:var(--ink-2)}.modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px}.modal-btn{border:none;border-radius:100px;padding:10px 22px;font-size:13.5px;font-weight:600;font-family:inherit;cursor:pointer;background:var(--field);color:var(--ink);transition:filter .15s}.modal-btn:hover{filter:brightness(.95)}.modal-btn.primary{background:var(--accent);color:#fff}.modal-btn.danger{background:var(--warn);color:#fff}.gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--bg);display:flex;align-items:center;justify-content:center}.gate-card{background:var(--card);border-radius:24px;box-shadow:var(--shadow);padding:40px 44px;text-align:center;display:grid;gap:10px;justify-items:center;width:min(380px,90vw)}.gate-logo{height:40px;object-fit:contain;margin-bottom:6px}.gate-card h2{font-size:17px;letter-spacing:-.02em}.gate-card p{font-size:12.5px;color:var(--ink-2)}.gate-card input{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:var(--field);font-size:16px;text-align:center;letter-spacing:.2em}.gate-card input:focus{outline:none;border-color:var(--accent);background:#fff}.gate-card button{width:100%;padding:11px;border:none;border-radius:100px;background:var(--accent);color:#fff;font-weight:600;font-size:14px;font-family:inherit;cursor:pointer}.gate-err{font-size:12px;color:var(--warn);min-height:14px}.gate-card button.gate-link{background:none;color:var(--ink-2);font-weight:500;font-size:12.5px;padding:4px;text-decoration:underline}.tabs-bar{position:relative;display:flex;justify-content:center;padding:10px 24px 8px;background:var(--glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);flex-shrink:0}.theme-toggle{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:none;border-radius:50%;background:var(--field);font-size:16px;cursor:pointer;transition:transform .15s,background .15s}.theme-toggle:hover{transform:translateY(-50%) scale(1.12)}.tabs.segmented{width:300px}.tabs.segmented button{padding:9px 6px;font-size:13px;text-transform:uppercase;letter-spacing:.06em}.tabs.segmented button.active{color:var(--accent)}.tab-pane{flex:1;min-height:0;display:flex;flex-direction:column}.tab-pane.hidden{display:none}.kre-tools{display:grid;gap:8px}.kre-tools button{border:none;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);padding:12px 14px;font-size:13px;font-weight:600;font-family:inherit;color:var(--ink);text-align:left;cursor:pointer;transition:all .15s}.kre-tools button:hover:not(:disabled){background:var(--accent-soft)}.kre-tools button:disabled{color:var(--ink-3);cursor:not-allowed}.kre-presets{display:inline-flex;gap:5px}.preset-btn{border:none;border-radius:100px;background:var(--field);color:var(--ink-2);font-size:11px;font-weight:600;font-family:inherit;padding:6px 11px;cursor:pointer;transition:all .18s}.preset-btn:hover{background:var(--accent);color:#fff}.zoom-ctl{display:flex;align-items:center;gap:2px;background:var(--field);border-radius:100px;padding:3px}.zoom-ctl button{border:none;background:transparent;border-radius:50%;width:26px;height:26px;font-size:14px;font-weight:600;font-family:inherit;color:var(--ink-2);cursor:pointer;transition:background .15s}.zoom-ctl button:hover:not(:disabled){background:#fff}.zoom-ctl button:disabled{color:var(--ink-3);cursor:not-allowed}.undo-ctl button{font-size:17px}.zoom-ctl span{font-size:11px;font-weight:600;color:var(--ink-2);min-width:58px;text-align:center;font-variant-numeric:tabular-nums}.kre-canvas-wrap{width:fit-content;margin:0 auto}.btn-send{white-space:nowrap}.kre-tool-file{position:relative;display:block;border-radius:var(--radius);background:var(--card)!important;box-shadow:var(--shadow)!important;padding:12px 14px!important;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s}.kre-tool-file:hover{background:var(--accent-soft)!important}.kre-tool-file input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%}.kre-bg-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bg-chip{width:30px;height:30px;border-radius:50%;border:2px solid var(--line);cursor:pointer;padding:0;flex-shrink:0;transition:transform .15s,border-color .15s;position:relative;overflow:hidden;display:inline-block;box-shadow:none}.bg-chip:hover{transform:scale(1.12)}.bg-chip.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.bg-chip.checker{background:repeating-conic-gradient(#ececf0,#ececf0 25%,#fff 0%,#fff 50%) 0 0/10px 10px}.bg-chip.custom input{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:none;padding:0;cursor:pointer;width:40px;height:40px}.kre-bg-hint{font-size:10px;color:var(--ink-3);flex:1;min-width:90px}.kre-props{gap:10px}.kre-grid4{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.kre-props label{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:var(--ink-2);background:none;box-shadow:none;padding:0}.sidebar .kre-props input[type=number]{width:52px;padding:5px 6px;border-radius:7px;font-size:12px;text-align:right}.kre-unit{font-size:10px;color:var(--ink-3)}.kre-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.kre-check{cursor:pointer}.kre-check input{width:auto!important}.preset-btn.danger:hover{background:var(--warn)}.kre-adv{background:var(--field);border-radius:10px;padding:8px 12px}.kre-adv summary{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none}.kre-adv[open] summary{margin-bottom:8px}.kre-adv-row{display:flex!important;align-items:center;gap:8px;font-size:11px;margin-top:6px}.kre-adv-row input[type=range]{flex:1;accent-color:var(--accent);min-width:70px}.kre-adv-row .kre-unit{min-width:34px;text-align:right;font-variant-numeric:tabular-nums}.kre-adv .hint{padding:2px 0 0;font-size:10px}.kre-color-block{display:grid;gap:6px}.kre-col-label{font-size:10.5px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em}.cmyk-editor{display:flex;gap:10px;align-items:stretch}.cmyk-swatch{width:40px;border-radius:9px;border:1px solid var(--line);flex-shrink:0;background-image:repeating-conic-gradient(#ececf0,#ececf0 25%,#fff 0%,#fff 50%);background-size:10px 10px}.cmyk-rows{display:grid;gap:3px;flex:1}.cmyk-row{display:flex!important;align-items:center;gap:5px;font-size:10px!important;font-weight:700!important;color:var(--ink-2)}.cmyk-row input[type=range]{flex:1;height:14px;accent-color:var(--ink-2);min-width:60px}.cmyk-row input[type=range].cmyk-c{accent-color:#00a3e0}.cmyk-row input[type=range].cmyk-m{accent-color:#e6007e}.cmyk-row input[type=range].cmyk-y{accent-color:#d8b400}.cmyk-row input[type=range].cmyk-k{accent-color:#1d1d1f}.sidebar .cmyk-row input[type=number]{width:44px;padding:3px 4px;font-size:11px}.cmyk-palette{display:flex;gap:5px;flex-wrap:wrap}.cmyk-palette button{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--line);cursor:pointer;padding:0;transition:transform .12s}.cmyk-palette button:hover{transform:scale(1.18);border-color:var(--accent)}.no-peek{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#00000073;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;cursor:pointer;animation:noPeekIn .18s ease-out}@keyframes noPeekIn{0%{opacity:0}to{opacity:1}}.no-peek-card{background:var(--card);border-radius:24px;box-shadow:0 24px 80px #00000059;padding:36px 48px;text-align:center;display:grid;gap:8px;justify-items:center}.no-peek-finger{font-size:72px;line-height:1;transform-origin:50% 90%;animation:noPeekWag .5s ease-in-out infinite alternate}@keyframes noPeekWag{0%{transform:rotate(-18deg)}to{transform:rotate(18deg)}}.no-peek-title{font-size:24px;font-weight:700;letter-spacing:-.02em}.no-peek-sub{font-size:12px;color:var(--ink-3)}.cmyk-pick{display:flex!important;align-items:center;gap:8px;background:none!important;box-shadow:none!important;padding:0!important}.cmyk-pick input[type=color]{width:36px;height:26px;padding:0;border:1px solid var(--line);border-radius:7px;background:none;cursor:pointer;flex-shrink:0}.cmyk-pick-text{font-size:11px;font-weight:600;color:var(--ink-2)}.cmyk-note{font-size:10px;color:var(--ink-3);line-height:1.4}.help-btn{border:none;background:var(--field);color:var(--ink-2);width:20px;height:20px;border-radius:50%;font-size:12px;font-weight:700;font-family:inherit;line-height:1;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s}.help-btn:hover,.help-btn.help-open{background:var(--accent);color:#fff}.help-btn-label{width:auto;height:auto;border-radius:100px;padding:7px 12px;font-size:11px;font-weight:600;text-align:left;box-shadow:var(--shadow)}.help-inline{padding:0 2px}.help-pop{position:fixed;z-index:3000;width:min(340px,calc(100vw - 24px));background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 30px #0000002e,0 2px 6px #00000014;padding:14px 16px;font-size:12.5px;line-height:1.5;color:var(--ink);animation:helpIn .12s ease-out}@keyframes helpIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.help-pop-title{font-weight:700;font-size:13px;margin-bottom:8px;letter-spacing:-.01em}.help-pop-body{color:var(--ink-2);display:grid;gap:7px}.help-pop-body p{margin:0}.help-pop-body b{color:var(--ink)}.help-pop-body .help-li{display:grid;gap:1px;padding-left:10px;border-left:2px solid var(--accent-soft)}.help-pop-body .help-li b,.help-pop-body .help-li span{font-size:12px}[data-theme=dark] .ctl input[type=checkbox],[data-theme=dark] .sidebar input[type=checkbox]{background:#48484a}[data-theme=dark] .ctl input[type=checkbox]:checked,[data-theme=dark] .sidebar input[type=checkbox]:checked{background:var(--accent)}[data-theme=dark] .stat-card.error{background:#46211e}[data-theme=dark] .stat-card.error .stat-label{color:#ff8a80}[data-theme=dark] .stat-card.manual-badge{background:#f2f2f7}[data-theme=dark] .stat-card.manual-badge .stat-value{color:#1c1c1e}[data-theme=dark] .q-badge.bad{background:#4a2522;color:#ff8a80}[data-theme=dark] .q-badge.ai{background:#2c2c54;color:#a3a2ff}[data-theme=dark] .gfx-item.bad{box-shadow:var(--shadow),inset 0 0 0 1.5px #ff635899}[data-theme=dark] .gfx-fill:hover,[data-theme=dark] .gfx-white:hover,[data-theme=dark] .gfx-bg:hover,[data-theme=dark] .preset-btn:hover{background:#48484a;color:var(--ink)}[data-theme=dark] .gfx-fill.active{background:var(--accent);color:#1c1c1e}[data-theme=dark] .gfx-white.active{background:#f2f2f7;color:#1c1c1e}[data-theme=dark] .upload{border-color:#5a5a5e!important}[data-theme=dark] .hero-upload{border-color:#5a5a5e}[data-theme=dark] .modal-icon{background:#4a2522}[data-theme=dark] .modal-backdrop{background:#0009}[data-theme=dark] .gate-card input{color:var(--ink);border-color:var(--line)}[data-theme=dark] .gate-card input:focus{background:var(--field)}[data-theme=dark] .zoom-ctl button:hover{background:#525256}[data-theme=dark] .btn-secondary{background:#f2f2f7;color:#1c1c1e}[data-theme=dark] .sidebar::-webkit-scrollbar-thumb,[data-theme=dark] .preview::-webkit-scrollbar-thumb{background:#ffffff2e}[data-theme=dark] .stat-expander:hover{background:#ffffff14}[data-theme=dark] .roll-canvas{border-color:#ffffff24}.preview-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 10px;padding:7px 12px;background:var(--panel, rgba(0, 0, 0, .03));border:1px solid var(--line);border-radius:10px}.preview-tools .ctl{cursor:pointer}.preview-tools-note{font-size:11.5px;color:var(--ink-3)}.preview-tools.hidden{display:none}.preview-zoom{margin-left:auto}.preview-zoom #zoomFit{width:auto;padding:0 12px;border-radius:100px;font-size:11px;font-weight:600}.preview-zoom #zoomLabel{min-width:46px}#rollsContainer{text-align:center}.roll-canvas{margin-left:auto;margin-right:auto}.preview-tools{text-align:left}.modal-ack{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--ink-2);text-align:left;background:#fff2f1;border:1px solid rgba(255,59,48,.25);border-radius:8px;padding:8px 10px;margin-bottom:8px;cursor:pointer}.modal-ack{flex-basis:100%}.modal-ack input{margin-top:2px;flex-shrink:0}.modal-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.ctx-menu{position:fixed;z-index:9999;min-width:184px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 34px #0000002e;padding:5px;display:flex;flex-direction:column}.ctx-item{border:none;background:transparent;text-align:left;padding:8px 12px;font-family:inherit;font-size:13px;color:var(--ink);border-radius:7px;cursor:pointer}.ctx-item:hover:not(:disabled){background:var(--field)}.ctx-item.danger{color:#c0392b}.ctx-item:disabled{color:var(--ink-3);cursor:default}
