@font-face{font-family:TASA Orbiter;src:url(/fonts/tasa-orbiter-latin.woff2) format("woff2");font-weight:400 800;font-display:swap}@font-face{font-family:TASA Orbiter;src:url(/fonts/tasa-orbiter-latin-ext.woff2) format("woff2");font-weight:400 800;font-display:swap;unicode-range:u+0100-024f,u+0259,u+1e??,u+2020,u+20a0-20ab}:root{--ink:#08090B;--panel:#0E1013;--panel-2:#14171B;--line:rgba(255,255,255,.09);--line-2:rgba(255,255,255,.16);--fg:#EDEFF2;--muted:rgba(237,239,242,.52);--faint:rgba(237,239,242,.32);--accent:#02FFF2;--accent-dim:rgba(2,255,242,.12);--warn:#FFB020;--bad:#FF5C5C;--r:10px}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--ink);color:var(--fg);font-family:TASA Orbiter,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}.top{display:flex;align-items:center;gap:18px;height:56px;padding:0 20px;border-bottom:1px solid var(--line);background:var(--panel);position:-webkit-sticky;position:sticky;top:0;z-index:40}.top .brand{font-weight:700;letter-spacing:-.02em}.top .brand span{color:var(--accent)}.top nav{display:flex;gap:4px;margin-left:8px}.top nav a{padding:6px 12px;border-radius:8px;color:var(--muted);font-size:14px}.top nav a:hover{background:var(--panel-2);color:var(--fg)}.top nav a.on{background:var(--accent-dim);color:var(--accent)}.top .sp{flex:1 1}.top .who{font-size:13px;color:var(--faint)}.wrap{max-width:1180px;margin:0 auto;padding:28px 20px 80px}h1{font-size:28px;font-weight:700;letter-spacing:-.03em}h2{font-size:19px;font-weight:650;letter-spacing:-.02em}h3{font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.row{gap:10px}.between,.row{display:flex;align-items:center}.between{justify-content:space-between;gap:16px}.muted{color:var(--muted)}.faint{color:var(--faint);font-size:13px}.stack{display:flex;flex-direction:column;gap:14px}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--r);border:1px solid var(--line-2);background:var(--panel-2);cursor:pointer;font-size:14px;font-weight:500;transition:background .12s,border-color .12s,opacity .12s;white-space:nowrap}.btn:hover{background:#1B1F24;border-color:rgba(255,255,255,.28)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:#04211F;font-weight:650}.btn.primary:hover{background:#3BFFF5}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn.ghost:hover{background:var(--panel-2);color:var(--fg)}.btn.danger:hover{border-color:var(--bad);color:var(--bad)}.btn.sm{padding:5px 10px;font-size:13px;border-radius:8px}label.f,label.f>.lb{display:block}label.f>.lb{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:6px}input[type=number],input[type=password],input[type=text],select,textarea{width:100%;padding:9px 12px;background:var(--panel-2);border:1px solid var(--line);border-radius:9px;outline:none;resize:vertical}input:focus,select:focus,textarea:focus{border-color:rgba(2,255,242,.45)}textarea{line-height:1.5;font-size:14px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:none;cursor:pointer}option{background:var(--panel-2)}.hint{font-size:12px;color:var(--faint);margin-top:5px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px}.deckgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:14px;gap:14px}.deckcard{display:block;transition:border-color .12s,transform .12s}.deckcard:hover{border-color:rgba(2,255,242,.4);transform:translateY(-1px)}.deckcard .n{font-size:13px;color:var(--accent)}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--muted)}.badge.dark{background:#000;color:rgba(2,255,242,.8);border-color:rgba(2,255,242,.3)}.badge.light{background:#E9ECEF;color:#0A0C0E;border-color:transparent}.empty{padding:60px 20px;text-align:center;color:var(--faint)}.ed{display:grid;grid-template-columns:268px minmax(0,1fr) 360px;height:calc(100vh - 56px)}.ed-form,.ed-list{overflow:auto}.ed-list{border-right:1px solid var(--line)}.ed-form,.ed-list{background:var(--panel)}.ed-form{border-left:1px solid var(--line);padding:18px}.ed-stage{display:flex;flex-direction:column;min-width:0}.ed-list-head{position:-webkit-sticky;position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--panel);border-bottom:1px solid var(--line)}.ed-list ol{list-style:none;padding:6px}.ed-item{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:8px;cursor:pointer;font-size:13.5px;line-height:1.3}.ed-item:hover{background:var(--panel-2)}.ed-item.on{background:var(--accent-dim)}.ed-item .num{color:var(--faint);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;width:20px;flex:none}.ed-item.on .num{color:var(--accent)}.ed-item .txt{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ed-item .dot{width:8px;height:8px;border-radius:50%;flex:none}.ed-item .dot.dark{background:#000;box-shadow:0 0 0 1px var(--line-2)}.ed-item .dot.light{background:#E9ECEF}.addwrap{position:relative}.addmenu{position:absolute;right:0;top:32px;z-index:20;width:250px;background:var(--panel-2);border:1px solid var(--line-2);border-radius:12px;padding:6px;box-shadow:0 16px 40px rgba(0,0,0,.55)}.addmenu button{display:block;width:100%;text-align:left;padding:8px 10px;background:none;border:0;border-radius:8px;cursor:pointer}.addmenu button:hover{background:#22272D}.addmenu b{display:block;font-size:13.5px}.addmenu span{font-size:12px;color:var(--faint)}.ed-frame{flex:1 1;display:grid;place-items:center;padding:18px;min-height:0;background:repeating-conic-gradient(#0B0D10 0 25%,#0E1013 0 50%) 0 0 /22px 22px;position:relative;overflow:hidden}.ed-canvas{position:absolute;transform:scale(var(--s,.4));box-shadow:0 18px 60px rgba(0,0,0,.5)}.ed-canvas,.ed-canvas iframe{width:var(--fw,1080px);height:var(--fh,1080px)}.ed-canvas iframe{border:0;display:block;border-radius:4px}.bx-layer{inset:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.bx,.bx-layer{position:absolute}.bx{cursor:move;border:2px solid rgba(2,255,242,.55);background:rgba(2,255,242,.05)}.bx.vis{border-color:rgba(255,176,32,.6);background:rgba(255,176,32,.05)}.bx.on{border-width:3px}.bx-size,.bx-tag{position:absolute;top:-30px;padding:2px 8px;border-radius:6px;font:500 15px/1.4 system-ui,sans-serif;letter-spacing:0;background:rgba(2,255,242,.9);color:#04211F;white-space:nowrap}.bx.vis .bx-size,.bx.vis .bx-tag{background:rgba(255,176,32,.92);color:#241700}.bx-tag{left:-2px}.bx-size{right:-2px}.bx-size,.bx.vis .bx-size{background:rgba(10,12,14,.8);color:#fff}.bx-h{position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid rgba(2,255,242,.9)}.bx.vis .bx-h{border-color:rgba(255,176,32,.9)}.bx-nw{left:-10px;top:-10px;cursor:nwse-resize}.bx-n{left:calc(50% - 10px);top:-10px;cursor:ns-resize}.bx-ne{right:-10px;top:-10px;cursor:nesw-resize}.bx-e{right:-10px;top:calc(50% - 10px);cursor:ew-resize}.bx-se{right:-10px;bottom:-10px;cursor:nwse-resize}.bx-s{left:calc(50% - 10px);bottom:-10px;cursor:ns-resize}.bx-sw{left:-10px;bottom:-10px;cursor:nesw-resize}.bx-w{left:-10px;top:calc(50% - 10px);cursor:ew-resize}.bx-guide{position:absolute;background:#FF3DDB;pointer-events:none}.bx-guide.x{top:0;bottom:0;width:2px}.bx-guide.y{left:0;right:0;height:2px}.btn.on{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.btn.off{opacity:.45;pointer-events:none}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}input[type=range]{width:100%;accent-color:var(--accent);padding:0;background:none;border:0}.ed-tools{display:flex;align-items:center;gap:8px;padding:10px 16px;border-top:1px solid var(--line);background:var(--panel)}.sp{flex:1 1}.ed-nav{display:flex;align-items:center;gap:6px}.ed-nav .btn{min-width:30px;justify-content:center;font-size:17px;line-height:1}.ed-nav .pos{font-size:13px;color:var(--muted);min-width:62px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ed-nav .pos i{color:var(--faint);font-style:normal}.ed-sep{width:1px;height:20px;background:var(--line-2);margin:0 2px}.bar{padding:10px 16px;border-bottom:1px solid var(--line);background:var(--panel)}.bar .row{gap:8px;min-width:0}.bar .between{flex-wrap:wrap;row-gap:8px}.bar b{white-space:nowrap;text-overflow:ellipsis;max-width:34ch}.bar b,.jobbar{overflow:hidden}.jobbar{display:flex;align-items:center;gap:10px;margin-top:9px;padding:8px 12px;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;font-size:13px;position:relative}.jobbar.ok{border-color:rgba(2,255,242,.3)}.jobbar.bad{border-color:rgba(255,92,92,.45)}.jobbar pre{font:inherit;white-space:pre-wrap;color:var(--muted);max-height:120px;overflow:auto;flex:1 1}.jobbar .prog{position:absolute;left:0;bottom:0;height:2px;width:100%}.jobbar .prog i{display:block;height:100%;background:var(--accent);transition:width .3s}.spin{width:12px;height:12px;flex:none;border-radius:50%;border:2px solid var(--line-2);border-top-color:var(--accent);animation:sp .7s linear infinite}@keyframes sp{to{transform:rotate(1turn)}}.sep{border:0;border-top:1px solid var(--line);margin:4px 0}.seg{display:flex;gap:6px}.seg button{flex:1 1;padding:7px;border-radius:9px;cursor:pointer;background:var(--panel-2);border:1px solid var(--line);font-size:13px}.seg button.on{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.check{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.check.sm{font-size:12px;color:var(--muted)}.check input{width:15px;height:15px;accent-color:var(--accent)}.listed{flex-direction:column;margin-bottom:8px}.listed,.lrow{display:flex;gap:6px}.lrow{align-items:center}.lrow.col{flex-direction:column;align-items:stretch;gap:4px;padding:8px;border:1px solid var(--line);border-radius:9px}.lrow .n{font-size:11px;color:var(--faint);width:18px;flex:none}.assetprev{width:100%;margin-top:8px;border-radius:9px;background:#000;aspect-ratio:1;object-fit:contain}.genbox{margin-top:8px;padding:10px;border-radius:10px;background:var(--panel-2);border:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.th{display:grid;grid-template-columns:340px minmax(0,1fr);height:calc(100vh - 56px)}.th-side{overflow:auto;padding:16px;border-right:1px solid var(--line);background:var(--panel)}.th-side h3{margin-bottom:8px}.th-main{display:flex;flex-direction:column;align-items:center;padding:18px;min-width:0}.fit{flex:1 1;width:100%;position:relative;overflow:hidden;display:grid;place-items:center;min-height:0}.fit-canvas{position:absolute;width:1080px;height:1080px;transform:scale(var(--s,.4));box-shadow:0 18px 60px rgba(0,0,0,.5)}.fit-canvas iframe{width:1080px;height:1080px;border:0;display:block;border-radius:4px}.swatch{width:22px;height:22px;border-radius:6px;border:1px solid var(--line-2)}.colorrow{display:flex;align-items:center;gap:8px;font-size:13px}.colorrow span{flex:1 1;color:var(--muted)}.colorrow input[type=color]{width:34px;height:28px;padding:0;border:1px solid var(--line);border-radius:7px;background:none;cursor:pointer}.hexin{width:88px!important;padding:5px 7px!important;font-size:12px}.fontlist{margin-top:8px;font-size:13px;color:var(--muted)}.fontlist .row{padding:3px 0}.modal-bg{position:fixed;inset:0;z-index:60;background:rgba(3,4,6,.72);display:flex;align-items:flex-start;justify-content:center;padding:8vh 20px 40px;overflow:auto}.modal{width:100%;max-width:560px;display:flex;flex-direction:column;gap:14px;box-shadow:0 24px 60px rgba(0,0,0,.6)}.agrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:14px;gap:14px}.acard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.acard img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:9px}.acard.dark img{background:#000}.acard.light img{background:#fff}.ameta{display:flex;align-items:center;gap:8px;font-size:13px}.aprompt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl td{padding:8px 6px;border-bottom:1px solid var(--line)}.login{max-width:340px;margin:14vh auto}.login .card{display:flex;flex-direction:column;gap:14px}.err{color:var(--bad);font-size:13px}.fmtrow{display:flex;gap:8px;flex-wrap:wrap}.fmt{flex:1 1 96px;min-width:96px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 8px 10px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;text-align:center;transition:border-color .12s,background .12s}.fmt:hover:not(:disabled){border-color:var(--line-2)}.fmt.on{border-color:var(--accent);background:var(--accent-dim)}.fmt:disabled{opacity:.5;cursor:default}.fmt-box{display:block;border:1.5px solid var(--muted);border-radius:2px;margin-bottom:3px}.fmt.on .fmt-box{border-color:var(--accent);background:rgba(2,255,242,.1)}.fmt b{font-size:12.5px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fmt span:last-child{font-size:11px;color:var(--faint);line-height:1.3}.refgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));grid-gap:10px;gap:10px}.refcard{display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2)}.refcard img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#000}.refname{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.refcard .row{gap:4px;justify-content:space-between}.ok-note{font-size:12.5px;color:var(--accent);background:var(--accent-dim);border-radius:9px;padding:8px 10px;margin-top:8px}.glowbox{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2)}.pv{position:fixed;inset:0;z-index:50;background:#000;overflow:hidden}.pv-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--muted)}.pv-frame{position:absolute;inset:0;display:grid;place-items:center}.pv-canvas{transform:scale(var(--s,.5))}.pv-canvas,.pv-canvas iframe{position:absolute;width:var(--fw,1080px);height:var(--fh,1080px)}.pv-canvas iframe{inset:0;border:0;display:block;visibility:hidden}.pv-canvas iframe.on{visibility:visible}.pv-half{position:absolute;top:0;bottom:84px;width:34%;background:none;border:0;padding:0;cursor:pointer}.pv-half.left{left:0;cursor:w-resize}.pv-half.right{right:0;cursor:e-resize}.pv-half:disabled{cursor:default}.pv-bar{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);z-index:3;display:flex;align-items:center;gap:8px;max-width:calc(100vw - 32px);padding:8px 12px;border-radius:14px;background:rgba(14,16,19,.82);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 40px rgba(0,0,0,.55);transition:opacity .18s,transform .18s}.pv-title{font-size:13px;color:var(--muted);max-width:24ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-sp{width:10px}.pv-count{font-size:14px;min-width:74px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pv-count i{color:var(--faint);font-style:normal;padding:0 2px}.pv-btn{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);cursor:pointer;font-size:15px;transition:background .12s,border-color .12s,opacity .12s}.pv-btn:hover{background:#1B1F24;border-color:var(--line-2)}.pv-btn:disabled{opacity:.35;cursor:default}.pv-btn.big{font-size:22px;line-height:1;padding-bottom:3px}.pv-btn:focus-visible,.pv-half:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pv-prog{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.08);z-index:3;transition:opacity .18s}.pv-prog i{display:block;height:100%;background:var(--accent);transition:width .18s}.pv.is-idle .pv-bar{opacity:0;transform:translateX(-50%) translateY(8px);pointer-events:none}.pv.is-idle .pv-prog{opacity:0}.pv.is-idle{cursor:none}.pv:focus-within .pv-bar{opacity:1;transform:translateX(-50%);pointer-events:auto}@media (prefers-reduced-motion:reduce){.pv-bar,.pv-prog,.pv-prog i{transition:none}}.planways{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.planways .card{display:flex;flex-direction:column;gap:12px}.planways p{font-size:14px}@media (max-width:760px){.planways{grid-template-columns:1fr}}.planhead{display:flex;align-items:baseline;gap:12px;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--line)}.planlist{list-style:none;display:flex;flex-direction:column;gap:10px}.planrow{display:flex;gap:12px;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.planrow-side{display:flex;flex-direction:column;align-items:center;gap:2px;flex:none;width:36px}.planrow-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}.planrow-body textarea{font-size:15px}.wrapline{flex-wrap:wrap;row-gap:8px}.planimg{display:flex;align-items:center;gap:8px}.planimg span{flex:none;opacity:.5}.planimg input{font-size:13px;color:var(--muted)}.waypick{display:flex;flex-direction:column;gap:6px}.way{text-align:left;padding:9px 12px;border-radius:10px;cursor:pointer;background:var(--panel-2);border:1px solid var(--line)}.way.on{border-color:var(--accent);background:var(--accent-dim)}.way b{display:block;font-size:14px;font-weight:600}.way.on b{color:var(--accent)}.way span{font-size:12px;color:var(--faint)}.search{padding:7px 12px;border-radius:9px}.deckthumb{position:relative;aspect-ratio:16/10;max-height:150px;border-radius:9px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.deckthumb img{width:100%;height:100%;object-fit:cover;object-position:center}.deckthumb-empty{position:absolute;font-size:12px;color:var(--faint);z-index:-1}.deckthumb.none img{display:none}.deckthumb.none .deckthumb-empty{z-index:1}.deckcard.is-trash{opacity:.75}.deckcard.is-trash:hover{opacity:1}.planrow.is-long{border-color:rgba(255,176,32,.45)}.warn-chip{font-size:12px;color:var(--warn);border:1px solid rgba(255,176,32,.4);border-radius:999px;padding:2px 10px}.warn-line{font-size:12.5px;color:var(--warn);line-height:1.4;background:rgba(255,176,32,.07);border-radius:8px;padding:7px 10px}.plansrc{font:inherit;font-size:13px;white-space:pre-wrap;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:9px;padding:9px 11px;max-height:160px;overflow:auto}.planimg.on input{color:var(--fg)}.planrow-side .num{font-size:12px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:none;border:0;cursor:pointer;padding:2px 4px;border-radius:6px}.planrow-side .num:hover:not(:disabled){background:var(--panel-2);color:var(--fg)}.planrow-side .num:disabled{cursor:default}.impsample{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto}.impcard{background:var(--panel-2);border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:13.5px;line-height:1.45}.impcard b{display:block;font-size:11px;color:var(--accent);margin-bottom:4px}.ed-item[draggable=true]{cursor:-webkit-grab;cursor:grab}.ed-item.drop{box-shadow:inset 0 2px 0 var(--accent)}.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;z-index:70;background:var(--panel-2);border:1px solid var(--line-2);border-radius:12px;padding:10px 12px 10px 16px;font-size:14px;box-shadow:0 12px 34px rgba(0,0,0,.5)}@media (max-width:720px){.wrap{padding:18px 14px 60px}.planrow{flex-direction:column;gap:8px}.planrow-side{flex-direction:row;width:auto}.deckgrid{grid-template-columns:1fr}.top nav a{padding:6px 8px;font-size:13px}.bar .between{flex-direction:column;align-items:stretch}.ed{grid-template-columns:1fr;grid-template-rows:auto auto}.ed-list{display:none}.ed-form{border-left:0;border-top:1px solid var(--line)}}