@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-cyrillic-ext-wght-normal-BCp_3N7R.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-cyrillic-wght-normal-fOt7epNf.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-greek-ext-wght-normal-Bgw4czJT.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-greek-wght-normal-DlT9XTxE.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-math-wght-normal-4a3xuzGk.woff2) format("woff2-variations");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-symbols-wght-normal-B7iHSfaG.woff2) format("woff2-variations");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-vietnamese-wght-normal-_f1XEJpo.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-latin-ext-wght-normal-DYIxWhlt.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-latin-wght-normal-ccAYIvAh.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#ececee;--panel:#ffffff;--border:#e4e5e9;--text:#25262b;--muted:#8b8e98;--accent:#00b378;--bleed:#67b346;--cut:#3a4db9;--crease:#e34848}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:Roboto Variable,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);overflow:hidden}.app{height:100%;display:flex;background:var(--bg)}.app.dark{background:#0b0c0e}.app-main{flex:1;min-width:0;height:100%;display:flex;flex-direction:column}.toolrail{width:54px;flex-shrink:0;margin:12px 0 12px 12px;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 6px 20px #00000012;display:flex;flex-direction:column;padding:9px 6px;gap:2px;transition:width .18s ease;overflow:hidden}.toolrail.open{width:238px;padding:12px 10px}.app.dark .toolrail{background:#15161a;border-color:#26272c;box-shadow:0 4px 14px #00000047}.tr-top{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:8px}.toolrail.open .tr-top{flex-direction:row;align-items:center;gap:8px;margin-bottom:10px;height:40px}.tr-mark{width:26px;height:26px;display:block;flex-shrink:0}.toolrail.open .tr-mark{display:none}.tr-logo{height:33px;width:auto;display:none;flex:1;min-width:0;object-fit:contain;object-position:left center}.toolrail.open .tr-logo{display:block}.tr-ham{width:30px;height:30px;border:none;background:none;border-radius:8px;cursor:pointer;color:var(--muted);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tr-ham svg{width:17px;height:17px}.tr-ham:hover{background:#f0f1f4;color:var(--text)}.app.dark .tr-ham:hover{background:#26272c;color:#eceef2}.tr-items{display:flex;flex-direction:column;gap:2px;align-items:center}.toolrail.open .tr-items{align-items:stretch}.tr-spacer{flex:1}.tr-bottom{display:flex;flex-direction:column;gap:2px;align-items:center;border-top:1px solid var(--border);padding-top:8px;margin-top:8px}.toolrail.open .tr-bottom{align-items:stretch}.app.dark .tr-bottom{border-color:#26272c}.tr-item{display:flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:none;background:none;border-radius:9px;cursor:pointer;color:var(--text);font-family:inherit;font-size:13.5px;font-weight:600;text-align:left;text-decoration:none}.toolrail.open .tr-item{justify-content:flex-start;gap:12px;width:100%;height:42px;padding:0 11px}.tr-item svg{width:18px;height:18px;flex-shrink:0;color:var(--muted);stroke-width:1.8}.tr-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:none}.toolrail.open .tr-item span{display:inline}.tr-item:hover{background:#f0f1f4}.tr-item:hover svg{color:var(--accent)}.app.dark .tr-item{color:#eceef2}.app.dark .tr-item:hover{background:#26272c}.app.dark .tr-item:hover svg{color:var(--accent)}header{background:#fff;border-bottom:1px solid var(--border);padding:0 20px;height:52px;display:flex;align-items:center;gap:14px;flex-shrink:0}.header-inner{display:flex;align-items:center;gap:14px;width:100%;height:100%}header.flow-header .header-inner{max-width:none;margin:0}.logo{width:197px;height:auto;flex-shrink:0}header .sub{font-size:12px;color:var(--muted)}header .grow{flex:1}.btn{border:1px solid var(--border);border-radius:999px;padding:8px 18px;font-size:13px;font-weight:600;cursor:pointer;background:#fff;color:var(--text)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(1.08)}.icon-btn{width:32px;height:32px;border-radius:50%;border:1px solid transparent;background:none;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn:hover{color:var(--accent);background:#f0f1f4}.matrix-error{background:#fdecea;color:#c02626;font-size:12.5px;font-weight:600;padding:8px 20px;border-bottom:1px solid #f5c2c2}.dl-dropdown{position:relative;display:inline-block}.dl-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20}.dl-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #00000026;padding:4px;display:flex;flex-direction:column;min-width:172px;z-index:21}.dl-menu button{border:none;background:none;text-align:left;padding:9px 12px;font-size:13px;font-weight:500;border-radius:7px;cursor:pointer;color:var(--text);font-family:inherit;white-space:nowrap}.dl-menu button:hover{background:#f0f1f4}.app.dark .dl-menu{background:#17181c;border-color:#26272c}.app.dark .dl-menu button{color:#eceef2}.app.dark .dl-menu button:hover{background:#26272c}.tabs{display:flex;gap:2px;margin-left:14px}.tabs button{border:none;background:none;padding:7px 16px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer}.tabs button:hover:not(.active){color:var(--text)}.tabs button.active{background:var(--accent);color:#fff}.wrap{flex:1;display:flex;min-height:0}.flow{flex:1;min-height:0;overflow-y:auto;padding:24px 28px 80px;display:flex;flex-direction:column;align-items:stretch;gap:18px}.app.dark .flow{background:#0b0c0e}.flow-actions{width:100%;display:flex;gap:12px;flex-wrap:wrap}.flow-btn{display:inline-flex;align-items:center;gap:9px;height:38px;padding:0 18px;border-radius:999px;font-size:13.5px;font-weight:600;font-family:inherit;cursor:pointer;border:1px solid transparent;transition:box-shadow .15s,filter .15s,border-color .15s,color .15s}.flow-btn svg{flex-shrink:0;width:17px;height:17px}.flow-btn.solid{background:var(--accent);color:#fff;border-color:var(--accent)}.flow-btn.solid:hover:not(:disabled){filter:brightness(1.07)}.flow-btn.glow{background:var(--accent);color:#fff;box-shadow:0 8px 22px #00b37873}.flow-btn.glow:hover{filter:brightness(1.06);box-shadow:0 10px 28px #00b37899}.flow-btn.ghost{background:#ffffff0a;border-color:var(--border);color:var(--text)}.flow-btn.ghost:hover:not(:disabled){border-color:#00b3788c;color:var(--accent);background:#00b37812}.flow-btn.ghost.active{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px #00b37824}.flow-btn:disabled{cursor:default;opacity:.5;box-shadow:none;filter:none}.app.dark .flow-btn.ghost{background:#ffffff0d;border-color:#2a2b31;color:#eceef2}.app.dark .flow-btn.ghost:hover:not(:disabled){border-color:#00b37899;color:var(--accent);background:#00b3781f}.app.dark .flow-btn.ghost.active{border-color:var(--accent);color:var(--accent)}.flow-card{width:100%;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:0 2px 14px #0000000d;scroll-margin-top:18px;animation:flow-card-in .3s ease-out both}@keyframes flow-card-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.flow-card{animation:none}}.flow-search{margin-bottom:14px}.flow-search input{width:100%;border:1px solid var(--border);border-radius:10px;padding:11px 14px;font-size:14px;font-family:inherit;background:#fff;color:var(--text);outline:none}.flow-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #00b3781f}.flow-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.flow-card-head h2{font-size:16px;font-weight:650}.flow-dl{display:flex;gap:6px}.embed-dl{position:absolute;top:10px;right:10px;z-index:5;flex-wrap:wrap;justify-content:flex-end}.embed-dl button{box-shadow:0 1px 3px #00000014}.flow-dl button{border:1px solid var(--border);background:#fff;border-radius:8px;padding:7px 12px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text)}.flow-dl button.active{border-color:var(--accent);color:var(--accent);background:#00b37814}.flow-dl button:hover{border-color:var(--accent);color:var(--accent)}.flow-dl button.flow-montaje-btn{background:var(--accent);border-color:var(--accent);color:#fff}.flow-dl button.flow-montaje-btn:hover{filter:brightness(1.08);color:#fff}.flow-dl button.flow-imponer-btn{border-color:var(--accent);color:var(--accent);background:transparent}.flow-dl button.flow-imponer-btn:hover{background:#00b3781a;color:var(--accent)}.flow-dl button.flow-imponer-btn:disabled{opacity:.6;cursor:default}.imp-result{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0 0;padding:10px 12px;border:1px solid var(--accent);border-radius:10px;background:#00b37814;font-size:12.5px;color:var(--text)}.imp-result.err{border-color:#e0a800;background:#e0a8001a}.imp-result .imp-actions{display:flex;gap:8px;align-items:center}.imp-result .imp-actions button{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer}.imp-result .imp-actions button:hover{filter:brightness(1.08)}.imp-result .imp-actions button.imp-x{background:transparent;color:var(--muted);border-color:var(--border);padding:6px 9px}.app.dark .imp-result{color:#eceef2}.art-review{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;padding:14px}.art-preview{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff;min-height:420px}.art-preview iframe{width:100%;height:100%;min-height:420px;border:0;display:block}.art-info{font-size:13px;color:var(--text)}.art-info h3{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.art-info h3:not(:first-child){margin-top:16px}.art-info p{margin:0 0 8px;color:var(--text)}.art-info p b{color:var(--text);font-weight:700;font-size:14px}.art-info .lbl{font-size:11px;color:var(--muted)}.art-info input,.art-info select{background:#fff;border:1px solid var(--border);border-radius:8px;padding:6px 8px;color:var(--text);font-size:13px}.app.dark .art-info input,.app.dark .art-info select{background:#0e0f12;border-color:#26272c;color:#eceef2}.art-info .mrow{display:flex;gap:10px}.art-info .mrow label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted);flex:1}.art-info .mrow input{width:100%}.art-die{border:1px solid var(--border);border-radius:10px;padding:8px;background:var(--panel)}.art-die svg{width:100%;height:180px;display:block}.art-die-legend{display:flex;gap:12px;align-items:center;font-size:11px;color:var(--muted);margin-top:4px}.art-die-legend i{display:inline-block;width:14px;height:3px;margin-right:4px;vertical-align:middle}.art-plates{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 14px 14px}.art-plates h4{margin:0 0 6px;font-size:12px;color:var(--muted)}.art-plates iframe{width:100%;height:360px;border:1px solid var(--border);border-radius:10px;background:#fff}.art-plate-loading{display:flex;align-items:center;justify-content:center;height:70vh;border:1px dashed var(--border);border-radius:10px;color:var(--muted);font-size:13px}.art-plate-big{padding:0 14px 16px}.art-plate-big h4{margin:0 0 8px;font-size:13px;color:var(--text)}.art-plate-big h4 .lbl{font-weight:400;font-size:11px;color:var(--muted)}.art-plate-frame{width:100%;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff}.art-plate-frame iframe{width:100%;height:100%;border:0;display:block;pointer-events:none}@media (max-width:820px){.art-review,.art-plates{grid-template-columns:1fr}}.bleed-ctl{display:flex;align-items:center;gap:10px}.bleed-ctl input[type=range]{flex:1;accent-color:var(--accent)}.bleed-ctl .bleed-val{font-size:13px;font-weight:600;color:var(--text);min-width:44px;text-align:right}.flow-body{display:flex;gap:18px;align-items:stretch}.flow-body aside{width:270px;border:none;padding:0;background:none;flex-shrink:0;overflow:visible}.flow-body aside h3:first-child{margin-top:0}.flow-preview{flex:1;min-width:0;min-height:560px;position:relative;border:1px solid var(--border);border-radius:12px;overflow:hidden;display:flex;background:#ececee}.flow-preview .legend{top:14px;left:14px}.flow-preview .readout{top:56px;left:14px}.app.dark .flow-card{background:#161719;border-color:#26272c;box-shadow:none}.app.dark .flow-card-head h2{color:#eceef2}.app.dark .flow-search input,.app.dark .flow-dl button{background:#0e0f12;border-color:#26272c;color:#eceef2}.app.dark .flow-dl button:hover{border-color:var(--accent);color:var(--accent)}.app.dark .flow-dl button.flow-montaje-btn{background:var(--accent);border-color:var(--accent);color:#fff}.app.dark .flow-dl button.flow-montaje-btn:hover{border-color:var(--accent);color:#fff}.flow-dl button.flow-montaje-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #00b37859}.app.dark .flow-preview{border-color:#26272c}.flow-card .gallery{padding:0;overflow:visible;flex:none}.flow-card .gallery-title,.flow-card .gallery-sub{display:none}.flow-card .gallery-grid{max-width:none}.app.dark .flow-body aside{background:none;border:none}.gallery{flex:1;min-height:0;overflow-y:auto;padding:28px 32px}.gallery-title{font-size:20px;font-weight:650;margin-bottom:4px}.gallery-sub{font-size:13px;color:var(--muted);margin-bottom:22px}.gallery-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.gallery-cats button{border:1px solid var(--border);background:#fff;color:var(--muted);border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:border-color .12s,color .12s,background .12s}.gallery-cats button:hover{border-color:var(--accent);color:var(--text)}.gallery-cats button.active{background:var(--accent);border-color:var(--accent);color:#fff}.app.dark .gallery-cats button{background:#16181d;border-color:#2a2c31;color:#9aa0aa}.app.dark .gallery-cats button:hover{color:#eceef2}.app.dark .gallery-cats button.active{background:var(--accent);border-color:var(--accent);color:#0b0c0e}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px;max-width:960px}.flow-card .gallery-grid{max-height:560px;overflow-y:auto;padding:4px 10px 6px 4px;scrollbar-width:thin;scrollbar-color:rgba(120,124,134,.35) transparent}.flow-card .gallery-grid::-webkit-scrollbar{width:8px}.flow-card .gallery-grid::-webkit-scrollbar-track{background:transparent}.flow-card .gallery-grid::-webkit-scrollbar-thumb{background:#787c8647;border-radius:8px;border:2px solid transparent;background-clip:padding-box}.flow-card .gallery-grid:hover::-webkit-scrollbar-thumb{background:#787c8673;background-clip:padding-box}.app.dark .flow-card .gallery-grid{scrollbar-color:rgba(150,155,165,.35) transparent}.app.dark .flow-card .gallery-grid::-webkit-scrollbar-thumb{background:#969ba547;background-clip:padding-box}.app.dark .flow-card .gallery-grid:hover::-webkit-scrollbar-thumb{background:#969ba580;background-clip:padding-box}.gallery-card{border:1px solid var(--border);border-radius:12px;background:#fff;padding:10px;display:flex;flex-direction:column;gap:8px;cursor:pointer;font-family:inherit;color:inherit;text-align:center;transition:border-color .12s,box-shadow .12s}.gallery-card:hover{border-color:var(--accent);box-shadow:0 4px 14px #0000000f}.gallery-card.active{border-color:var(--accent);box-shadow:0 0 0 2px #00b37840}.gallery-thumb{aspect-ratio:1/1;border-radius:8px;background:#f4f5f7;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:14px}.gallery-thumb-svg{width:100%;height:100%}.gallery-thumb img{max-width:100%;max-height:100%;object-fit:contain}.gallery-name{font-size:13.5px;font-weight:600;color:var(--text);text-align:center}aside{width:300px;background:#fff;border-right:1px solid var(--border);padding:18px 16px;overflow-y:auto;flex-shrink:0}aside h2{font-size:14.5px;font-weight:650;margin:4px 0 14px}aside h3{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:18px 0 8px}.section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;padding:0;margin:18px 0 8px;cursor:pointer;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-family:inherit;font-weight:600}.section-toggle:hover{color:var(--text)}.field{margin-bottom:10px}.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.inp{display:flex;align-items:center;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#fff}.inp:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #00b3781f}.inp input{flex:1;border:none;outline:none;padding:8px;font-size:13.5px;min-width:0}.inp span{font-size:11.5px;color:var(--muted);padding:0 8px;border-left:1px solid var(--border);background:#fafafb;align-self:stretch;display:flex;align-items:center}.stepper{display:flex;flex-direction:column;border-left:1px solid var(--border);align-self:stretch;flex-shrink:0}.stepper button{border:none;background:none;width:20px;flex:1;display:flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer;padding:0}.stepper button:first-child{border-bottom:1px solid var(--border)}.stepper button:hover{color:var(--accent);background:#f6f7f9}.stepper button:disabled{opacity:.4;cursor:default;color:var(--muted);background:none}select{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px;background:#fff;color:var(--text)}.method-toggle{display:flex;gap:4px;background:#f0f1f4;border-radius:9px;padding:3px;margin-right:auto;margin-left:14px}.method-toggle.embed-method{position:absolute;top:9px;left:50%;transform:translate(-50%);z-index:5;margin:0}.method-toggle button{border:none;background:none;padding:6px 14px;border-radius:7px;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer}.method-toggle button.active{background:#fff;color:var(--text);box-shadow:0 1px 3px #0000001a}.app.dark .method-toggle{background:#17181c}.app.dark .method-toggle button{color:#8b8e98}.app.dark .method-toggle button.active{background:#26272c;color:#eceef2;box-shadow:none}.fx-lbl{display:block;font-size:12px;color:var(--muted);margin:2px 0 4px}.unit-toggle{display:flex;gap:4px;background:#f0f1f4;border-radius:9px;padding:3px;margin-bottom:4px}.unit-toggle button{flex:1;border:none;background:none;padding:6px 0;border-radius:7px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;text-transform:uppercase}.unit-toggle button.active{background:#fff;color:var(--text);box-shadow:0 1px 3px #0000001a}.hint{font-size:11px;color:var(--muted);line-height:1.5;margin-top:12px}.mrow{display:flex;gap:8px}.mrow .field{flex:1;min-width:0}input:disabled{opacity:.45;background:#f6f6f7}.warn{color:#c02626;font-weight:600}.main{flex:1;position:relative;min-width:0;display:flex}.die-edit-hint{position:absolute;top:10px;left:10px;right:10px;z-index:5;font-size:12.5px;color:var(--muted);background:#ffffffe6;border:1px solid var(--border);border-radius:8px;padding:7px 11px}.app.dark .die-edit-hint{background:#141519eb;border-color:#2a2c31;color:#c3c8d4}.die-edit-hint b{color:var(--accent)}.die-edit-reset{margin-left:8px;border:none;background:none;color:var(--accent);font-weight:600;cursor:pointer;font-family:inherit;font-size:12.5px;text-decoration:underline}.canvas{flex:1;position:relative;min-width:0;overflow:hidden}.canvas-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;display:flex;align-items:safe center;justify-content:safe center;cursor:grab}.canvas-scroll.grabbing{cursor:grabbing;-webkit-user-select:none;user-select:none}.canvas-scroll.grabbing svg{pointer-events:none}.canvas-inner{flex:none;margin:auto}.canvas svg{display:block;width:100%;height:100%}.legend{position:absolute;top:14px;left:18px;display:flex;gap:18px;font-size:12px;color:#555;background:#ececeed9;padding:4px 8px;border-radius:6px;z-index:2}.legend i{display:inline-block;width:20px;height:0;margin-right:6px;vertical-align:middle}.legend i.sg{border-top:2.5px solid var(--bleed)}.legend i.ct{border-top:2.5px solid var(--cut)}.legend i.pl{border-top:2.5px dashed var(--crease)}.readout{position:absolute;top:46px;left:18px;font-size:12px;line-height:1.35;color:var(--muted);z-index:2;background:#ececeee6;padding:10px 12px;border-radius:8px;max-width:220px}.readout.hidden{display:none}.legend-detail{border:none;background:none;color:var(--accent);font-weight:600;font-size:12px;cursor:pointer;font-family:inherit;padding:0 0 0 6px;border-left:1px solid var(--border);margin-left:2px}.app.dark .legend-detail{border-color:#3a3c42}.readout-x{position:absolute;top:6px;right:6px;width:20px;height:20px;border:none;background:none;color:var(--muted);font-size:12px;line-height:1;cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:center}.readout-x:hover{background:#00000014;color:var(--text)}.app.dark .readout-x:hover{background:#ffffff1f;color:#eceef2}.readout b{display:block;color:var(--text);font-weight:600;font-size:12.5px;margin-bottom:8px;padding-right:16px}.fit-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:0 40px;text-align:center;z-index:2}.fit-error .warn{font-size:15px}.fit-error p{max-width:420px;font-size:12.5px;line-height:1.5;color:var(--muted)}.readout .lbl{margin-top:8px;display:inline-block}.zoombar{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001f;display:flex;align-items:center;padding:6px;z-index:2}.zoombar button{border:none;background:none;width:36px;height:32px;font-size:17px;cursor:pointer;color:#444;border-radius:8px}.zoombar button:hover{background:#f0f1f4}.zoombar .sep{width:1px;height:20px;background:var(--border);margin:0 4px}.zoombar .pct{font-size:12px;color:var(--muted);width:46px;text-align:center}.downloads{position:absolute;top:14px;right:18px;display:flex;gap:8px;z-index:2}.downloads button{border:1px solid var(--border);background:#fff;border-radius:10px;padding:7px 12px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text)}.downloads button:hover{border-color:var(--accent);color:var(--accent)}.app.dark header{background:#0e0f12;border-bottom-color:#221f2b}.app.dark header h1{color:#eceef2}.app.dark header .sub{color:#8b8e98}.app.dark .tabs button{color:#8b8e98}.app.dark .tabs button:hover:not(.active){color:#eceef2}.app.dark .tabs button.active{background:var(--accent);color:#fff}.app.dark .icon-btn{color:#9a9ca6}.app.dark .icon-btn:hover{color:#fff;background:#1a1b20}.app.dark aside{background:#0e0f12;border-right-color:#221f2b}.app.dark aside h2{color:#eceef2}.app.dark aside h3{color:#7b7d85}.app.dark .section-toggle{color:#7b7d85}.app.dark .section-toggle:hover{color:#eceef2}.app.dark .field label{color:#8b8e98}.app.dark .inp{background:#17181c;border-color:#26272c}.app.dark .inp input{background:transparent;color:#eceef2}.app.dark .inp span{background:#0e0f12;color:#8b8e98;border-left-color:#26272c}.app.dark .stepper{border-left-color:#26272c}.app.dark .stepper button{color:#8b8e98}.app.dark .stepper button:first-child{border-bottom-color:#26272c}.app.dark .stepper button:hover{color:#fff;background:#1a1b20}.app.dark select{background:#17181c;border-color:#26272c;color:#eceef2}.app.dark .unit-toggle{background:#17181c}.app.dark .unit-toggle button{color:#8b8e98}.app.dark .unit-toggle button.active{background:#26272c;color:#eceef2;box-shadow:none}.app.dark .hint{color:#63656c}.app.dark input:disabled{background:#0e0f12}.app.dark .downloads button{background:#17181c;border-color:#26272c;color:#eceef2}.app.dark .downloads button:hover{border-color:var(--accent);color:var(--accent)}.app.dark .zoombar{background:#17181c;box-shadow:0 4px 16px #00000080}.app.dark .zoombar button{color:#eceef2}.app.dark .zoombar button:hover,.app.dark .zoombar .sep{background:#26272c}.app.dark .zoombar .pct{color:#8b8e98}.app.dark .legend{background:#0e0f12d9;color:#c7c9d1}.app.dark .readout{color:#9a9ca6;background:#0e0f12e6}.app.dark .readout b{color:#eceef2}.app.dark .fit-error p{color:#9a9ca6}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14141673;display:flex;align-items:center;justify-content:center;z-index:10}.modal{background:#fff;border-radius:14px;padding:22px 24px;width:380px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 12px 40px #00000040}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.modal-header h2{font-size:16px;font-weight:650}.modal-close{border:none;background:none;font-size:20px;line-height:1;color:var(--muted);cursor:pointer;padding:2px 6px;border-radius:6px}.modal-close:hover{background:#f0f1f4;color:var(--text)}.suggest-text{font-size:13.5px;color:var(--muted);line-height:1.45;margin:8px 0 14px}.suggest-mail{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#f7f8fa}.suggest-addr{flex:1;font-size:14px;font-weight:600;color:var(--text);word-break:break-all}.suggest-copy{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:8px;padding:7px 14px;font-size:12.5px;font-weight:600;cursor:pointer;flex-shrink:0;font-family:inherit}.suggest-copy:hover{filter:brightness(1.07)}.suggest-open{display:inline-block;margin-top:14px;font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}.suggest-open:hover{text-decoration:underline}.app.dark .modal{background:#16171b;color:#eceef2}.app.dark .suggest-mail{background:#0e0f12;border-color:#2a2c31}.app.dark .suggest-addr{color:#eceef2}.modal h3{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:16px 0 4px}.modal-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin:14px 0 10px}.modal-tabs button{border:none;background:none;padding:8px 12px;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.modal-tabs button:hover{color:var(--text)}.modal-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.modal-sublabel{display:block;font-size:12px;font-weight:600;color:var(--text);margin:10px 0 6px}.preset-list{list-style:none;margin:4px 0 12px;padding:0;display:flex;flex-direction:column;gap:4px}.preset-list li{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;font-size:12.5px}.preset-list li span:first-child{flex:1;font-weight:600}.preset-size{color:var(--muted);font-size:11.5px}.preset-remove{border:none;background:none;color:var(--muted);font-size:16px;line-height:1;cursor:pointer;padding:0 2px}.preset-remove:hover{color:#c02626}.check-list{list-style:none;margin:8px 0 4px;padding:0;display:flex;flex-direction:column;gap:2px}.check-list li{border-radius:8px}.check-row{display:flex;align-items:center;gap:9px;padding:8px;font-size:13px;cursor:pointer;border-radius:8px}.check-row:hover{background:#f4f5f7}.check-row input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.cat-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.app.dark .check-row:hover{background:#1a1b20}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14141673;display:flex;justify-content:flex-end;z-index:10}.drawer{background:#fff;width:320px;max-width:90vw;height:100%;padding:22px 20px;overflow-y:auto;box-shadow:-8px 0 24px #0003;animation:drawer-slide-in .15s ease-out}.settings-drawer{width:380px}@keyframes drawer-slide-in{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}.project-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.project-list li{display:flex;align-items:center;gap:2px;border:1px solid var(--border);border-radius:8px;padding:2px 4px}.project-list li.active{border-color:var(--accent)}.project-open{flex:1;min-width:0;text-align:left;border:none;background:none;cursor:pointer;padding:6px 8px;border-radius:6px;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.project-open:hover{background:#f0f1f4}.project-name{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.project-date{font-size:11px;color:var(--muted)}.project-rename-input{flex:1;min-width:0;border:1px solid var(--accent);border-radius:6px;padding:7px 8px;font-size:13px;font-family:inherit}.icon-mini{border:none;background:none;color:var(--muted);font-size:14px;cursor:pointer;padding:5px 7px;border-radius:6px;flex-shrink:0}.icon-mini:hover{background:#f0f1f4;color:var(--text)}.app.dark .modal{background:#0e0f12;color:#eceef2}.app.dark .modal-header h2{color:#eceef2}.app.dark .modal-close:hover{background:#26272c;color:#eceef2}.app.dark .modal-sublabel{color:#eceef2}.app.dark .modal-tabs{border-bottom-color:#26272c}.app.dark .modal-tabs button:hover{color:#eceef2}.app.dark .drawer{background:#0e0f12;color:#eceef2}.app.dark .project-list li{border-color:#26272c}.app.dark .project-open:hover{background:#26272c}.app.dark .project-name{color:#eceef2}.app.dark .icon-mini:hover{background:#26272c;color:#eceef2}.app.dark .preset-list li{border-color:#26272c}.ast-launcher{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;border:none;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 24px #00b37873;z-index:60;transition:filter .15s,transform .12s}.ast-launcher:hover{filter:brightness(1.07);transform:translateY(-1px)}.ast-launcher.nudge{animation:ast-shake 1.3s ease-in-out}.ast-launcher.nudge:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--accent);z-index:-1;animation:ast-halo 1.3s ease-out}@keyframes ast-shake{0%,to{transform:translateY(0)}10%,50%,90%{transform:translateY(-7px)}30%,70%{transform:translateY(0)}}@keyframes ast-halo{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}@media (prefers-reduced-motion:reduce){.ast-launcher.nudge{animation:none}.ast-launcher.nudge:after{animation:none}}.ast-panel{position:fixed;right:22px;bottom:22px;width:380px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 44px);display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 50px #00000038;z-index:61;overflow:hidden;animation:ast-in .22s ease-out}@keyframes ast-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.ast-panel{animation:none}}.ast-head{display:flex;align-items:center;gap:10px;padding:12px 12px 12px 14px;border-bottom:1px solid var(--border)}.ast-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ast-titles{display:flex;flex-direction:column;min-width:0;flex:1}.ast-titles b{font-size:14px;line-height:1.2}.ast-titles span{font-size:11.5px;color:var(--muted);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ast-icon{width:30px;height:30px;border-radius:8px;border:none;background:none;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.ast-icon:hover:not(:disabled){background:var(--border);color:var(--text)}.ast-icon:disabled{opacity:.4;cursor:default}.ast-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}.ast-msg{display:flex}.ast-msg.me{justify-content:flex-end}.ast-bubble{max-width:82%;padding:9px 12px;border-radius:14px;font-size:13.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.ast-msg.bot .ast-bubble{background:var(--panel);border:1px solid var(--border);border-bottom-left-radius:5px;color:var(--text)}.ast-msg.me .ast-bubble{background:var(--accent);color:#fff;border-bottom-right-radius:5px}.ast-bubble strong{font-weight:700}.ast-msg.bot .ast-bubble strong{color:var(--accent)}.ast-suggestions{display:flex;flex-direction:column;gap:8px;margin-top:2px}.ast-chip{text-align:left;padding:10px 13px;border:1px solid rgba(0,179,120,.32);border-radius:12px;background:#00b37812;color:var(--text);font-size:13px;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.ast-chip:hover:not(:disabled){background:#00b37826;border-color:var(--accent);color:var(--accent)}.ast-chip:disabled{opacity:.5;cursor:default}.ast-typing{display:inline-flex;gap:4px;align-items:center;padding:2px 0}.ast-typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);display:inline-block;animation:ast-blink 1.2s infinite ease-in-out}.ast-typing i:nth-child(2){animation-delay:.2s}.ast-typing i:nth-child(3){animation-delay:.4s}@keyframes ast-blink{0%,60%,to{opacity:.25}30%{opacity:1}}.ast-input{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--border)}.ast-input textarea{flex:1;resize:none;max-height:120px;border:1px solid var(--border);border-radius:12px;padding:9px 12px;font:inherit;font-size:13.5px;color:var(--text);background:var(--bg);outline:none}.ast-input textarea:focus{border-color:var(--accent)}.ast-send{width:40px;height:40px;flex-shrink:0;border:none;border-radius:12px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.ast-send:disabled{opacity:.4;cursor:default}.app.dark .ast-panel{background:#161719;border-color:#26272c;box-shadow:0 18px 50px #00000080}.app.dark .ast-head{border-color:#26272c}.app.dark .ast-titles b{color:#eceef2}.app.dark .ast-body{background:#0e0f12}.app.dark .ast-msg.bot .ast-bubble{background:#1f2024;border-color:#2a2b31;color:#eceef2}.app.dark .ast-chip{color:#eceef2}.app.dark .ast-icon:hover:not(:disabled){background:#26272c;color:#eceef2}.app.dark .ast-input{border-color:#26272c}.app.dark .ast-input textarea{background:#0e0f12;border-color:#2a2b31;color:#eceef2}.ast-card-wrap{padding:0;overflow:hidden}.ast-card{display:flex;flex-direction:column;height:520px;max-height:72vh;background:transparent;border-radius:16px;overflow:hidden}.ast-stagger{animation:ast-line-in .38s ease-out both}@keyframes ast-line-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.ast-stagger{animation:none}}
