:root{--bg0:#f4f6f9;--bg1:#fff;--bg2:#f1f3f7;--bg3:#e8ecf2;--text:#1c2733;--text-strong:#0f1722;--muted:#67748a;--faint:#93a0b4;--border:#e3e8ef;--border-strong:#cdd6e1;--accent:#e8830c;--accent-deep:#c9690a;--accent-ink:#8a4a05;--accent-soft:#fdf0dd;--accent-softer:#fef7ec;--ring:rgba(232,131,12,.22);--ok:#189a55;--ok-soft:#e5f6ec;--danger:#d63d3d;--danger-soft:#fdeaea;--info-soft:#eef2ff;--r-sm:9px;--r-md:13px;--r-lg:17px;--r-xl:22px;--r-full:999px;--sh-1:0 1px 2px rgba(18,27,40,.05);--sh-2:0 1px 3px rgba(18,27,40,.06),0 10px 28px -14px rgba(18,27,40,.14);--sh-3:0 4px 10px rgba(18,27,40,.07),0 18px 44px -16px rgba(18,27,40,.22);--sh-pop:0 -8px 40px -12px rgba(18,27,40,.25);--t:150ms cubic-bezier(0.3,0.7,0.4,1);--sb-w:250px;--sb-w-min:72px;--topbar-h:60px;--tabbar-h:62px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg0);color:var(--text);font-family:Noto Sans Bengali,Noto Sans Devanagari,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;min-height:100vh;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}body{font-size:15px;line-height:1.6}a{color:var(--accent-deep);text-decoration:none}a:hover{text-decoration:underline}.h1,h1{font-size:24px;letter-spacing:-.01em}.h1,.h2,h1,h2{font-weight:700;color:var(--text-strong);margin:0}.h2,h2{font-size:18px}.h3{font-size:15.5px;font-weight:600;color:var(--text-strong)}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:13px}*{scrollbar-width:thin;scrollbar-color:#c6cfda transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#c6cfda;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#a9b6c6}::-webkit-scrollbar-track{background:transparent}canvas,img,video{max-width:100%}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sb-w);z-index:40;background:var(--bg1);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:14px 12px;transition:width var(--t)}.sb-brand{display:flex;align-items:center;gap:10px;padding:6px 10px 16px;font-size:19px;font-weight:700;color:var(--text-strong);white-space:nowrap}.sb-brand .logo{width:34px;height:34px;border-radius:10px;flex:0 0 34px;background:linear-gradient(135deg,#f6a83a,var(--accent) 55%,#cf5f0d);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:17px;box-shadow:var(--sh-1)}.sb-nav{display:flex;flex-direction:column;gap:3px;flex:1 1}.sb-nav a{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:var(--r-md);color:var(--muted);font-size:14.5px;font-weight:500;white-space:nowrap;transition:background var(--t),color var(--t)}.sb-nav a:hover{background:var(--bg2);color:var(--text-strong);text-decoration:none}.sb-nav a.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.sb-nav a .ic{font-size:17px;width:24px;text-align:center;flex:0 0 24px}.sb-more-toggle{display:flex;align-items:center;gap:11px;padding:10px 11px;width:100%;border:none;background:none;cursor:pointer;border-radius:var(--r-md);color:var(--muted);font-size:14.5px;font-weight:500;font-family:inherit;margin-top:6px;border-top:1px solid var(--border);border-radius:0 0 var(--r-md) var(--r-md)}.sb-more-toggle:hover{background:var(--bg2);color:var(--text-strong)}.sb-more-toggle .ic{font-size:17px;width:24px;text-align:center;flex:0 0 24px}.sb-more-toggle .chev{margin-left:auto;font-size:11px;opacity:.7}.sb-nav a.sb-sub{padding-left:22px;font-size:14px}.rail .sb-more-toggle .chev{display:none}.rail .sb-nav a.sb-sub{padding-left:11px}.sb-foot{border-top:1px solid var(--border);padding-top:10px;margin-top:10px;display:flex;flex-direction:column;gap:8px}.sb-email{font-size:12.5px;color:var(--faint);padding:0 11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-logout{display:flex;align-items:center;gap:11px;padding:10px 11px;width:100%;border:none;background:none;border-radius:var(--r-md);color:var(--muted);font-size:14.5px;font-weight:500;cursor:pointer;font-family:inherit;transition:background var(--t),color var(--t);text-align:left;white-space:nowrap}.sb-logout:hover{background:var(--danger-soft);color:var(--danger)}.sb-collapse{position:absolute;top:18px;right:-13px;width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:var(--bg1);color:var(--muted);cursor:pointer;font-size:12px;line-height:1;box-shadow:var(--sh-1);transition:color var(--t),transform var(--t);display:flex;align-items:center;justify-content:center;padding:0}.sb-collapse:hover{color:var(--accent-deep)}.shell.rail .sidebar{width:var(--sb-w-min)}.shell.rail .sb-brand .word,.shell.rail .sb-email,.shell.rail .sb-logout .lbl,.shell.rail .sb-nav a .lbl{display:none}.shell.rail .sb-logout,.shell.rail .sb-nav a{justify-content:center;padding:10px 0}.shell.rail .sb-nav a .ic{flex:0 0 auto}.shell.rail .sb-brand{justify-content:center;padding-left:0;padding-right:0}.main{margin-left:var(--sb-w);transition:margin-left var(--t);min-height:100vh}.shell.rail .main{margin-left:var(--sb-w-min)}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 26px;background:rgba(244,246,249,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.tb-title{font-size:17px;font-weight:700;color:var(--text-strong)}.tb-brand{display:none}.content{padding:24px 26px calc(40px + env(safe-area-inset-bottom));max-width:1120px}.content.narrow{max-width:780px}.tabbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:50;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:hsla(0,0%,100%,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);grid-template-columns:repeat(5,1fr)}.tabbar a,.tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:none;background:none;color:var(--muted);font-family:inherit;font-size:10.5px;font-weight:600;cursor:pointer;border-radius:var(--r-md);padding:3px 0;transition:color var(--t),transform .12s ease}.tabbar a .ic,.tabbar button .ic{font-size:20px;line-height:1.25;padding:2px 14px;border-radius:var(--r-full);transition:background var(--t)}.tabbar a:active,.tabbar button:active{transform:scale(.94)}.tabbar a.on{color:var(--accent-ink)}.tabbar a.on .ic{background:var(--accent-soft)}.tabbar a:hover{text-decoration:none}.backdrop{z-index:60;background:rgba(15,23,34,.42)}.backdrop,.modal-backdrop{position:fixed;inset:0;animation:fadein .16s ease}.modal-backdrop{z-index:90;background:rgba(15,23,34,.5)}.modal-center{position:fixed;z-index:91;top:50%;left:50%;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 32px));background:var(--bg1);color:inherit;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:0 18px 60px rgba(0,0,0,.35);animation:fadein .16s ease}.lib-search{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}.lib-search input{flex:1 1 200px;min-width:0}.lib-add{white-space:nowrap;font-weight:700}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;background:var(--bg1);border-radius:var(--r-xl) var(--r-xl) 0 0;padding:10px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:var(--sh-pop);animation:sheetup .22s cubic-bezier(.2,.8,.3,1)}.sheet .grab{width:42px;height:5px;border-radius:5px;background:var(--border-strong);margin:4px auto 12px}.sheet a,.sheet button.item{display:flex;align-items:center;gap:13px;width:100%;padding:13px 12px;border:none;background:none;border-radius:var(--r-md);color:var(--text);font-size:15.5px;font-weight:500;cursor:pointer;font-family:inherit;text-align:left}.sheet a:hover,.sheet button.item:hover{background:var(--bg2);text-decoration:none}.sheet a.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.sheet .danger{color:var(--danger)}.sheet .who{font-size:12.5px;color:var(--faint);padding:2px 12px 8px;border-bottom:1px solid var(--border);margin-bottom:6px}@keyframes sheetup{0%{transform:translateY(60%);opacity:.4}to{transform:none;opacity:1}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.card{background:var(--bg1);border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;box-shadow:var(--sh-1)}.card+.card{margin-top:16px}.card.hover{transition:box-shadow var(--t),transform var(--t)}.card.hover:hover{box-shadow:var(--sh-2)}.section-title{font-size:12px;text-transform:uppercase;letter-spacing:1.4px;color:var(--faint);font-weight:700;margin:26px 0 10px}.card>.section-title:first-child{margin-top:0}.sec-head{display:flex;align-items:center;gap:11px;margin:0 0 14px}.sec-head .n{width:30px;height:30px;border-radius:var(--r-full);flex:0 0 30px;background:var(--accent-soft);color:var(--accent-ink);font-weight:700;font-size:14.5px;display:inline-flex;align-items:center;justify-content:center}.sec-head .t{font-size:16.5px;font-weight:700;color:var(--text-strong)}.sec-head .d{font-size:12.5px;color:var(--muted);margin-top:1px}label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin:15px 0 7px}input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;background:var(--bg2);color:var(--text-strong);border:1.5px solid transparent;border-radius:var(--r-md);padding:12px 14px;font-size:15px;font-family:inherit;outline:none;min-height:46px;transition:border-color var(--t),background var(--t),box-shadow var(--t)}textarea{min-height:92px;resize:vertical;line-height:1.6}input:hover,select:hover,textarea:hover{background:var(--bg3)}input:focus,select:focus,textarea:focus{background:var(--bg1);border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}input::placeholder,textarea::placeholder{color:var(--faint)}input:disabled,select:disabled,textarea:disabled{opacity:.45;cursor:not-allowed}.script-hl-wrap{position:relative;margin-top:12px}.script-hl-backdrop,.script-hl-textarea{box-sizing:border-box;width:100%;min-height:420px;margin:0;padding:12px 14px;border:1.5px solid transparent;border-radius:var(--r-md);font-family:inherit;font-size:15.5px;line-height:1.8;white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word}.script-hl-backdrop{position:absolute;inset:0;z-index:1;color:transparent;pointer-events:none;overflow:hidden;background:var(--bg2)}.script-hl-textarea{position:relative;z-index:2;background:transparent;color:var(--text-strong);resize:vertical;display:block;overflow-y:auto}.script-hl-backdrop mark{color:transparent;background:var(--danger-soft);border-radius:4px;box-shadow:0 0 0 1.5px var(--danger) inset}.studio-scene{padding:16px 18px}.ss-head{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ss-head b{font-size:16px}.ss-caret{color:var(--faint);font-size:15px}.ss-line-row{display:flex;gap:6px;align-items:center;margin-bottom:6px}.ss-line{background:var(--bg1);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:10px 10px 12px;margin-bottom:10px}.ss-line-top{display:flex;align-items:center;gap:8px}.ss-line-top .ss-lineno{width:auto;min-width:24px;height:24px;padding:0 7px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-full);background:var(--bg2);color:var(--muted);font-size:12px;font-weight:700;flex:none}.ss-line-top select{flex:1 1;min-width:0;min-height:44px}.ss-linedel,.ss-lineplay{flex:none;width:44px;height:44px;border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--bg2);cursor:pointer;font-size:16px;display:inline-flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.ss-lineplay{color:var(--accent-deep)}.ss-lineplay.on{background:var(--accent);color:#fff;border-color:var(--accent)}.ss-linedel:active,.ss-lineplay:active{transform:scale(.94)}.ss-linedel:hover{border-color:var(--danger);color:var(--danger)}.ss-line-text{width:100%;margin-top:9px;min-height:52px;font-size:15.5px;line-height:1.55;padding:11px 13px;border-radius:var(--r-md);resize:vertical;field-sizing:content}@media (max-width:560px){.ss-line-text{font-size:16px;min-height:60px}.ss-line-top select{min-height:46px}.ss-linedel,.ss-lineplay{width:46px;height:46px}}.ss-lineno{width:22px;text-align:right;color:var(--faint);font-size:11px;flex:none}.ss-airow{margin-top:14px}.ss-airow,.ss-soundrow{display:flex;gap:8px;align-items:center}.ss-soundrow{margin-top:8px;flex-wrap:wrap}.ss-atrow{margin-left:18px;padding-left:10px;border-left:2px solid var(--border)}.ss-slabel{width:78px;flex:none;font-size:12.5px;color:var(--text)}.ss-pause{display:inline-flex;align-items:center;gap:4px;flex:none;margin:0;color:var(--muted);font-size:11.5px;white-space:nowrap}.ss-pause input[type=number]{width:58px;min-height:38px;padding:6px 5px;text-align:center;font-size:12.5px}.ss-vols{display:flex;gap:20px;flex-wrap:wrap;margin-top:16px}.ss-vol{display:flex;align-items:center;gap:8px;margin:0}.ss-vol input[type=range]{width:130px;min-height:0;accent-color:var(--accent)}.spellfix-list{margin-top:10px;font-size:14px}.spellfix-list>summary{cursor:pointer;color:var(--accent-deep);font-weight:600}.spellfix-list ul{margin:8px 0 0;padding-left:4px;list-style:none;max-height:220px;overflow:auto}.spellfix-list li{padding:3px 0;border-bottom:1px solid var(--border)}.spellfix-list .sf-old{color:var(--faint);text-decoration:line-through}.spellfix-list .sf-new{color:var(--danger);font-weight:600}.spellfix-list .sf-arrow{color:var(--faint)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2367748a' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:34px}input[type=file]{width:100%;background:var(--bg2);border:1.5px dashed var(--border-strong);border-radius:var(--r-md);padding:12px;font-size:13.5px;color:var(--muted);font-family:inherit}input[type=file]::-webkit-file-upload-button{border:none;border-radius:var(--r-sm);background:var(--bg1);color:var(--text);padding:8px 12px;margin-right:10px;font-family:inherit;font-size:13px;cursor:pointer;box-shadow:var(--sh-1)}input[type=file]::file-selector-button{border:none;border-radius:var(--r-sm);background:var(--bg1);color:var(--text);padding:8px 12px;margin-right:10px;font-family:inherit;font-size:13px;cursor:pointer;box-shadow:var(--sh-1)}.row{display:flex;gap:14px;flex-wrap:wrap}.row>div{flex:1 1;min-width:160px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;min-height:42px;border:1.5px solid var(--border);border-radius:var(--r-full);background:var(--bg1);color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all var(--t)}.chip:hover{border-color:var(--border-strong);color:var(--text)}.chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink);box-shadow:0 0 0 3px var(--ring)}.chip:active{transform:scale(.97)}.switch{position:relative;display:inline-block;width:46px;height:27px;flex:0 0 46px}.switch input{opacity:0;width:0;height:0;position:absolute}.switch .knob{position:absolute;inset:0;border-radius:var(--r-full);background:#d4dbe4;transition:background var(--t);cursor:pointer}.switch .knob:before{content:"";position:absolute;width:21px;height:21px;border-radius:50%;left:3px;top:3px;background:#fff;box-shadow:0 1px 3px rgba(18,27,40,.3);transition:transform var(--t)}.switch input:checked+.knob{background:var(--accent)}.switch input:checked+.knob:before{transform:translateX(19px)}.switch input:focus-visible+.knob{box-shadow:0 0 0 4px var(--ring)}.switch input:disabled+.knob{opacity:.5;cursor:not-allowed}.stepper{display:inline-flex;align-items:center;border-radius:var(--r-full);background:var(--bg2);overflow:hidden;height:40px}.stepper button{border:none;background:none;width:38px;height:40px;font-size:18px;color:var(--accent-deep);cursor:pointer;font-family:inherit;font-weight:700;transition:background var(--t);padding:0;line-height:1}.stepper button:hover{background:var(--bg3)}.stepper button:active{background:var(--accent-soft)}.stepper button:disabled{color:var(--faint);cursor:not-allowed;background:none}.stepper .val{min-width:34px;text-align:center;font-weight:700;font-size:15px;color:var(--text-strong)}button{font-family:inherit}.btn,button:where(:not(.primary):not(.icon-btn):not(.chip):not(.item):not(.mp-ctl):not(.pc-btn):not(.cplay):not(.sb-collapse):not(.sb-logout):not(.stepper button):not(.tabbar button):not(.sidebar button):not(.sheet button):not(.cover button):not(.miniplayer button):not(.switch button):not(.a-ic):not(.pv-ic):not(.pv-play):not(.pv-skip):not(.asearch-x):not(.pg)){display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--bg1);color:var(--text);padding:10px 18px;min-height:42px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--t);box-shadow:var(--sh-1)}.btn:hover,button:where(:not(.primary):not(.icon-btn):not(.chip):not(.item):not(.mp-ctl):not(.pc-btn):not(.cplay):not(.sb-collapse):not(.sb-logout):not(.stepper button):not(.tabbar button):not(.sidebar button):not(.sheet button):not(.cover button):not(.miniplayer button):not(.switch button):not(.a-ic):not(.pv-ic):not(.pv-play):not(.pv-skip):not(.asearch-x):not(.pg)):hover{border-color:var(--border-strong);background:var(--bg2)}.btn:active{transform:scale(.97)}button.primary{width:100%;padding:14px 22px;min-height:52px;font-size:16px;font-weight:700;background:linear-gradient(180deg,#f29a29,var(--accent) 60%,#dd7708);color:#fff;border:none;border-radius:var(--r-lg);letter-spacing:.2px;box-shadow:0 6px 18px -6px rgba(232,131,12,.55),var(--sh-1)}button.primary:hover{filter:brightness(1.05)}button.primary:active{transform:scale(.985)}button.primary:disabled{filter:none}button.primary:disabled,button:disabled{opacity:.55;cursor:not-allowed}.icon-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:16px;min-width:40px;min-height:40px;border-radius:var(--r-full);padding:6px;display:inline-flex;align-items:center;justify-content:center;transition:background var(--t),color var(--t)}.icon-btn:hover{background:var(--bg2);color:var(--danger)}.btn.danger-ghost{color:var(--danger);border-color:#f3caca}.btn.danger-ghost:hover{background:var(--danger-soft);border-color:var(--danger)}.sticky-cta{position:-webkit-sticky;position:sticky;bottom:calc(var(--tabbar-h) + 10px + env(safe-area-inset-bottom));z-index:20}.banner{border-radius:var(--r-md);background:var(--accent-softer);border:1px solid #f3ddb9;color:var(--accent-ink)}.banner,.ok-banner{margin-top:16px;padding:12px 15px;font-size:14px}.ok-banner{border-radius:var(--r-md);background:var(--ok-soft);border:1px solid #bfe6cf;color:#116e3c}.error-banner{margin-top:16px;padding:12px 15px;border-radius:var(--r-md);background:var(--danger-soft);border:1px solid #f3caca;color:#a82626;font-size:14px}.pill{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;border-radius:var(--r-full);font-size:12px;font-weight:600;background:var(--bg2);border:1px solid var(--border);color:var(--muted)}.pill.ok{background:var(--ok-soft);border-color:#bfe6cf;color:#116e3c}.pill.warn{background:var(--accent-soft);border-color:#f3ddb9;color:var(--accent-ink)}.pill.bad{background:var(--danger-soft);border-color:#f3caca;color:#a82626}.badge-on{display:inline-flex;align-items:center;padding:3px 11px;border-radius:var(--r-full);font-size:12px;font-weight:700;background:var(--ok-soft);border:1px solid #bfe6cf;color:#116e3c}.consent-note{margin-top:12px;padding:11px 13px;border-radius:var(--r-md);font-size:13.5px;background:var(--accent-softer);border:1px solid #f3ddb9;color:var(--accent-ink)}.empty{color:var(--muted);text-align:center;padding:44px 10px}.skel{border-radius:var(--r-md);background:linear-gradient(90deg,var(--bg2) 25%,var(--bg3) 45%,var(--bg2) 65%);background-size:220% 100%;animation:shimmer 1.3s linear infinite;min-height:16px}@keyframes shimmer{0%{background-position:130% 0}to{background-position:-90% 0}}.cast-rows{display:flex;flex-direction:column;gap:9px;margin-top:6px}.cast-row{display:grid;grid-template-columns:minmax(170px,1.2fr) auto 108px minmax(150px,1.3fr);grid-gap:10px;gap:10px;align-items:center;padding:11px 13px;border:1.5px solid var(--border);border-radius:var(--r-lg);background:var(--bg1);transition:border-color var(--t),background var(--t),box-shadow var(--t)}.cast-row.on{border-color:#f0c286;background:var(--accent-softer);box-shadow:var(--sh-1)}.cast-row.locked{background:var(--bg2);border-style:dashed}.cast-tick{display:flex;align-items:center;gap:11px;margin:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cast-tick .nm{font-size:14.5px;font-weight:600;color:var(--muted)}.cast-row.on .cast-tick .nm{color:var(--accent-ink)}.cast-row select{min-height:40px;padding:8px 30px 8px 12px;font-size:14px}.cast-row input[type=text]{min-height:40px;padding:8px 12px;font-size:14px}.cast-hint{color:var(--muted);font-size:12.5px;margin:10px 0 0;line-height:1.6}.castmap-row{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(210px,1.6fr) 118px;grid-gap:10px;gap:10px;align-items:center;padding:10px 13px;border:1.5px solid var(--border);border-radius:var(--r-lg);background:var(--bg1)}.castmap-row select{min-height:40px;padding:8px 30px 8px 12px;font-size:14px;width:100%}.castmap-row .char-name{font-size:14.5px;font-weight:600;color:var(--text-strong);overflow-wrap:anywhere}.castmap-row.locked{background:var(--bg2);border-style:dashed}.castmap-row.locked .char-name{color:var(--muted)}.castmap-row.dup{background:var(--danger-soft)}.castmap-row.dup,.castmap-row.dup select{border-color:var(--danger)}.cast-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.lib-picker{position:fixed;z-index:61;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,94vw);max-height:86vh;display:flex;flex-direction:column;background:var(--bg1);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-pop);padding:16px 16px 14px;animation:sheetup .2s cubic-bezier(.2,.8,.3,1)}.lp-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.lp-title{font-size:15px;font-weight:700;color:var(--text-strong);overflow-wrap:anywhere}.lp-list{overflow-y:auto;margin-top:4px;flex:1 1;min-height:120px}.progress-wrap{margin:20px 0 10px}.bar{height:12px;background:var(--bg3);overflow:hidden}.bar,.bar>div{border-radius:var(--r-full)}.bar>div{height:100%;background:linear-gradient(90deg,#f2b256,var(--accent));transition:width .5s ease}.pct{font-size:32px;font-weight:800;color:var(--text-strong);margin-top:12px;letter-spacing:-.02em}.stage-line{color:var(--muted);margin:4px 0 18px;font-size:14px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:14px;position:relative;padding:0 0 4px}.steps .rail-line{flex-direction:column}.steps .dot,.steps .rail-line{display:flex;align-items:center}.steps .dot{width:30px;height:30px;border-radius:50%;flex:0 0 30px;z-index:1;justify-content:center;font-size:13px;background:var(--bg2);border:2px solid var(--border-strong);color:var(--faint);transition:all var(--t)}.steps .ln{width:2px;flex:1 1;background:var(--border);min-height:18px}.steps li:last-child .ln{display:none}.steps .body{padding:4px 0 16px;min-width:0}.steps .ttl{font-size:15px;font-weight:600;color:var(--muted)}.steps .sub{font-size:13px;color:var(--faint);margin-top:1px;overflow-wrap:anywhere}.steps li.done .dot{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.steps li.done .ttl{color:var(--text)}.steps li.done .ln{background:var(--ok)}.steps li.active .dot{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-deep);box-shadow:0 0 0 5px var(--ring);animation:pulse 1.6s ease-in-out infinite}.steps li.active .ttl{color:var(--accent-ink);font-weight:700}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--ring)}50%{box-shadow:0 0 0 8px rgba(232,131,12,.1)}}.lib-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}.lib-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(auto-fill,minmax(168px,1fr))}.story-card{background:var(--bg1);border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-1);display:flex;flex-direction:column;transition:box-shadow var(--t),transform var(--t);position:relative}.story-card:hover{box-shadow:var(--sh-2);transform:translateY(-2px)}.story-card.playing{border-color:#f0c286;box-shadow:0 0 0 3px var(--ring),var(--sh-2)}.cover{aspect-ratio:1/1.02;display:flex;align-items:flex-end;padding:12px;cursor:pointer}.cover,.cover .ctitle{position:relative;overflow:hidden}.cover .ctitle{z-index:2;color:#fff;font-weight:800;font-size:17px;line-height:1.35;letter-spacing:.01em;text-shadow:0 2px 10px rgba(0,0,0,.35);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical}.cover .sheen{position:absolute;inset:0;z-index:1;background:radial-gradient(120% 90% at 85% -10%,hsla(0,0%,100%,.34),transparent 55%),linear-gradient(180deg,transparent 40%,rgba(0,0,0,.38))}.cover .cplay{position:absolute;z-index:3;right:10px;top:10px;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;font-size:16px;background:hsla(0,0%,100%,.92);color:var(--accent-deep);display:flex;align-items:center;justify-content:center;box-shadow:var(--sh-2);transition:transform .12s ease,background var(--t)}.cover .cplay:hover{transform:scale(1.07);background:#fff}.cover .cplay:active{transform:scale(.95)}.sc-body{padding:11px 13px 12px;display:flex;flex-direction:column;gap:8px;flex:1 1}.sc-title{font-size:14px;font-weight:700;color:var(--text-strong);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sc-title a{color:inherit}.sc-meta{display:flex;gap:6px;flex-wrap:wrap}.sc-controls{display:flex;align-items:center;gap:4px;margin-top:auto}.pc-btn{border:none;background:var(--bg2);color:var(--text);cursor:pointer;min-width:38px;height:38px;border-radius:var(--r-full);font-size:13.5px;display:inline-flex;align-items:center;justify-content:center;gap:3px;font-family:inherit;font-weight:700;padding:0 10px;transition:background var(--t),color var(--t),transform .12s ease}.pc-btn:hover{background:var(--bg3)}.pc-btn:active{transform:scale(.93)}.pc-btn.main{background:var(--accent-soft);color:var(--accent-deep);font-size:15px}.pc-btn.main:hover{background:#fbe3c2}.sc-progress{height:4px;border-radius:4px;background:var(--bg3);overflow:hidden}.sc-progress>div{height:100%;background:var(--accent);border-radius:4px;transition:width .4s linear}.miniplayer{position:fixed;z-index:55;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom));width:min(680px,calc(100vw - 24px));background:var(--bg1);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--sh-3);padding:10px 14px;display:flex;align-items:center;gap:12px;animation:mpup .26s cubic-bezier(.2,.8,.3,1)}@keyframes mpup{0%{transform:translate(-50%,80%);opacity:0}to{transform:translate(-50%);opacity:1}}.mp-thumb{width:46px;height:46px;border-radius:var(--r-md);flex:0 0 46px;position:relative;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;overflow:hidden}.mp-info{min-width:0;flex:1 1}.mp-title{font-size:13.5px;font-weight:700;color:var(--text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-time{font-size:11.5px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mp-ctl{border:none;background:none;cursor:pointer;color:var(--text);width:40px;height:40px;border-radius:50%;font-size:15px;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;transition:background var(--t),transform .12s ease;padding:0}.mp-ctl:hover{background:var(--bg2)}.mp-ctl:active{transform:scale(.9)}.mp-ctl.play{color:#fff;width:46px;height:46px;flex:0 0 46px;font-size:17px;box-shadow:0 4px 12px -4px rgba(232,131,12,.6)}.mp-ctl.play,.mp-ctl.play:hover{background:linear-gradient(180deg,#f29a29,var(--accent) 60%,#dd7708)}.mp-ctl.play:hover{filter:brightness(1.05)}.mp-skip{font-size:10px;font-weight:700;line-height:1;display:flex;flex-direction:column;align-items:center;gap:1px}.mp-skip .ic{font-size:15px}.mp-row2{display:flex;align-items:center;gap:8px}input[type=range].scrub{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:18px;background:none;margin:2px 0 0;cursor:pointer;min-height:0;border:none;padding:0}input[type=range].scrub::-webkit-slider-runnable-track{height:5px;border-radius:5px;background:linear-gradient(90deg,var(--accent) var(--fill,0),var(--bg3) var(--fill,0))}input[type=range].scrub::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;border:2.5px solid var(--accent);margin-top:-4.5px;box-shadow:var(--sh-1)}input[type=range].scrub::-moz-range-track{height:5px;border-radius:5px;background:var(--bg3)}input[type=range].scrub::-moz-range-progress{height:5px;border-radius:5px;background:var(--accent)}input[type=range].scrub::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:2.5px solid var(--accent)}input[type=range].scrub:focus{box-shadow:none;background:none;border:none}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.stat-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg1);padding:16px;box-shadow:var(--sh-1);transition:box-shadow var(--t)}.stat-card:hover{box-shadow:var(--sh-2)}.stat-card .num{font-size:27px;font-weight:800;color:var(--text-strong);overflow-wrap:anywhere;letter-spacing:-.02em}.stat-card .lbl{font-size:12.5px;color:var(--muted);margin-top:3px;font-weight:500}.stat-card .em{color:var(--accent-deep)}.recent-list{list-style:none;margin:4px 0 0;padding:0}.recent-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 4px;border-bottom:1px solid var(--border);font-size:14px;flex-wrap:wrap}.recent-list li:last-child{border-bottom:none}.recent-list li .grow{flex:1 1;min-width:140px;overflow-wrap:anywhere}.recent-list li a{color:var(--text-strong);font-weight:600}.recent-list li a:hover{color:var(--accent-deep)}.voice-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg1);padding:12px 14px;margin-top:9px;box-shadow:var(--sh-1);transition:box-shadow var(--t)}.voice-row:hover{box-shadow:var(--sh-2)}.voice-row .vname{color:var(--text-strong);font-weight:600;font-size:14.5px;overflow-wrap:anywhere}.voice-row .vtags{display:flex;gap:6px;flex-wrap:wrap}.voice-row .vplay{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.voice-row audio{max-width:250px;height:38px}.voice-row.dead{opacity:.75;background:var(--bg2);border-style:dashed}.voice-row.dead .vname{color:var(--muted);text-decoration:line-through}.acct-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg1);padding:12px 14px;margin-top:9px;box-shadow:var(--sh-1)}.acct-row .aname{color:var(--text-strong);font-weight:600;font-size:14.5px}.acct-row .actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.log-view{margin-top:12px;padding:13px;border:1px solid var(--border);border-radius:var(--r-md);background:#0f1722;color:#9fe8b8;font-family:ui-monospace,monospace;font-size:12.5px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow-y:auto}.prov-card{border:1.5px solid var(--border);border-radius:var(--r-lg);background:var(--bg1);padding:16px;margin-top:12px;box-shadow:var(--sh-1);transition:border-color var(--t),box-shadow var(--t)}.prov-card.on{border-color:#f0c286;background:var(--accent-softer)}.prov-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border);font-size:14px;vertical-align:middle}th{color:var(--faint);font-weight:700;font-size:11.5px;text-transform:uppercase;letter-spacing:1px}.script{white-space:pre-wrap;line-height:1.85;font-size:15.5px;margin-top:16px;color:var(--text)}audio{max-width:100%}.login-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(900px 480px at 15% -10%,#fdeeda 0,transparent 60%),radial-gradient(800px 500px at 110% 15%,#fef3e2 0,transparent 55%),var(--bg0)}.login-card{width:100%;max-width:400px;background:var(--bg1);border:1px solid var(--border);border-radius:var(--r-xl);padding:30px 26px;box-shadow:var(--sh-3)}.login-logo{width:62px;height:62px;border-radius:19px;margin:2px auto 14px;background:linear-gradient(135deg,#f6a83a,var(--accent) 55%,#cf5f0d);display:flex;align-items:center;justify-content:center;font-size:29px;color:#fff;box-shadow:0 10px 24px -8px rgba(232,131,12,.55)}.login-title{text-align:center;font-size:25px;font-weight:800;color:var(--text-strong);letter-spacing:-.01em}.login-sub{text-align:center;color:var(--muted);font-size:13.5px;margin:5px 0 8px}.login-or{display:flex;align-items:center;gap:12px;margin:20px 2px 14px;color:var(--muted);font-size:12.5px}.login-or:after,.login-or:before{content:"";flex:1 1;height:1px;background:var(--border)}.google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 14px;border:1px solid var(--border);border-radius:var(--r-lg,12px);background:var(--bg1);color:var(--text-strong);font-size:14.5px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s,box-shadow .15s}.google-btn:hover{background:var(--bg2,#faf7f2);box-shadow:var(--sh-1,0 1px 3px rgba(0,0,0,.06))}.google-btn:active{transform:scale(.99)}.google-btn svg{flex:none}@media (max-width:1100px) and (min-width:901px){.sidebar{width:var(--sb-w-min)}.sidebar .sb-brand .word,.sidebar .sb-email,.sidebar .sb-logout .lbl,.sidebar .sb-nav a .lbl{display:none}.sidebar .sb-logout,.sidebar .sb-nav a{justify-content:center;padding:10px 0}.sidebar .sb-brand{justify-content:center;padding-left:0;padding-right:0}.sb-collapse{display:none}.main{margin-left:var(--sb-w-min)}}@media (min-width:720px){.stat-grid{grid-template-columns:repeat(4,1fr)}.lib-grid{grid-template-columns:repeat(auto-fill,minmax(198px,1fr))}}@media (max-width:900px){.sidebar{display:none}.main{margin-left:0}.tabbar{display:grid}.content{padding:16px 14px calc(30px + var(--tabbar-h) + env(safe-area-inset-bottom))}.topbar{padding:0 16px;height:56px}.tb-brand{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;font-size:15px;color:#fff;background:linear-gradient(135deg,#f6a83a,var(--accent) 55%,#cf5f0d)}.miniplayer{bottom:calc(var(--tabbar-h) + 10px + env(safe-area-inset-bottom))}.card{padding:17px 15px;border-radius:var(--r-lg)}}@media (max-width:640px){.castmap-row{grid-template-columns:1fr 118px}.castmap-row .char-name{grid-column:1/-1}.cast-row{grid-template-columns:1fr auto;row-gap:9px}.cast-row .cast-tick{min-height:30px}.cast-row select{width:108px}.cast-row input[type=text]{grid-column:1/-1}}@media (max-width:480px){.h1,h1{font-size:21px}.pct{font-size:27px}input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{font-size:16px}.castmap-row{grid-template-columns:1fr}.castmap-row .char-name{grid-column:auto}.lib-grid{grid-template-columns:repeat(2,1fr);gap:12px}.cover .ctitle{font-size:14.5px;-webkit-line-clamp:3}.mp-time{display:none}.miniplayer{padding:9px 10px;gap:9px}}@media (max-width:359px){.lib-grid{grid-template-columns:1fr}}.aud-search{position:relative;max-width:440px;margin:0 0 18px}.aud-search input{padding-left:42px;padding-right:44px;border-radius:var(--r-full)}.asearch-ic{left:15px;color:var(--faint);pointer-events:none}.asearch-ic,.asearch-x{position:absolute;top:50%;transform:translateY(-50%);display:inline-flex}.asearch-x{right:7px;width:32px;height:32px;border:none;border-radius:50%;cursor:pointer;background:var(--bg3);color:var(--muted);font-size:12px;padding:0;align-items:center;justify-content:center;font-family:inherit}.asearch-x:hover{background:var(--border-strong);color:var(--text-strong)}.aud-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(auto-fill,minmax(168px,1fr))}.aud-card{border-radius:var(--r-xl);overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--border);background:var(--bg1);box-shadow:var(--sh-1);transition:box-shadow var(--t),transform var(--t)}.aud-card:hover{box-shadow:var(--sh-2);transform:translateY(-2px)}.aud-card.playing{border-color:#f0c286;box-shadow:0 0 0 3px var(--ring),var(--sh-2)}.acover{aspect-ratio:1/1.08;position:relative;display:flex;align-items:flex-end;padding:12px;overflow:hidden}.acover .sheen{position:absolute;inset:0;z-index:1;background:radial-gradient(120% 90% at 85% -10%,hsla(0,0%,100%,.34),transparent 55%),linear-gradient(180deg,transparent 40%,rgba(0,0,0,.38))}.acover .ctitle{position:relative;z-index:2;color:#fff;font-weight:800;font-size:16.5px;line-height:1.35;text-shadow:0 2px 10px rgba(0,0,0,.35);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;padding-bottom:26px;width:100%}.adur{left:10px;top:10px;z-index:3;padding:3px 10px;border-radius:var(--r-full);font-size:11.5px;font-weight:700;background:rgba(15,23,34,.45);color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.a-ics,.adur{position:absolute}.a-ics{right:8px;top:8px;z-index:4;display:flex;gap:6px}.a-ic{width:34px;height:34px;border:none;border-radius:50%;cursor:pointer;padding:0;background:hsla(0,0%,100%,.92);color:#33415a;box-shadow:var(--sh-1);display:inline-flex;align-items:center;justify-content:center;transition:transform .12s ease,background var(--t),color var(--t)}.a-ic:hover{transform:scale(1.08);background:#fff;text-decoration:none}.a-ic:active{transform:scale(.92)}.a-ic.danger:hover{background:var(--danger);color:#fff}.eq{position:absolute;right:12px;bottom:12px;z-index:3;display:flex;gap:3px;align-items:flex-end;height:16px}.eq i{width:4px;border-radius:3px;background:#fff;animation:eqb .9s ease-in-out infinite}.eq i:nth-child(2){animation-delay:.2s}.eq i:nth-child(3){animation-delay:.45s}@keyframes eqb{0%,to{height:5px}50%{height:16px}}.aud-end{text-align:center;color:var(--faint);font-size:13px;font-weight:600;padding:26px 10px 6px}.pv-backdrop{position:fixed;inset:0;z-index:80;background:rgba(15,23,34,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:22px;animation:fadein .16s ease}.pv{width:min(430px,100%);max-height:calc(100dvh - 44px);overflow-y:auto;background:var(--bg0);border-radius:26px;box-shadow:var(--sh-3);padding:18px 20px calc(22px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px;animation:pvup .26s cubic-bezier(.2,.8,.3,1)}@keyframes pvup{0%{transform:translateY(7%);opacity:0}to{transform:none;opacity:1}}.pv-top{display:flex;gap:10px}.pv-ic,.pv-top{align-items:center}.pv-ic{width:42px;height:42px;border:1px solid var(--border);border-radius:50%;background:var(--bg1);color:var(--text);cursor:pointer;padding:0;display:inline-flex;justify-content:center;box-shadow:var(--sh-1);transition:transform .12s ease,background var(--t),color var(--t)}.pv-ic:hover{background:var(--bg2);text-decoration:none}.pv-ic:active{transform:scale(.92)}.pv-ic.danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}.pv-cover{width:min(75%,300px);aspect-ratio:1/1;margin:4px auto 0;border-radius:24px;position:relative;overflow:hidden;box-shadow:var(--sh-3);display:flex;align-items:flex-end;padding:14px}.pv-cover .sheen{position:absolute;inset:0;z-index:1;background:radial-gradient(120% 90% at 85% -10%,hsla(0,0%,100%,.34),transparent 55%),linear-gradient(180deg,transparent 45%,rgba(0,0,0,.35))}.pv-ctitle{position:relative;z-index:2;color:#fff;font-weight:800;font-size:18px;line-height:1.4;text-shadow:0 2px 10px rgba(0,0,0,.35);width:100%;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pv-info{text-align:center}.pv-title{font-size:19px;font-weight:800;color:var(--text-strong);letter-spacing:-.01em}.pv-meta{display:flex;justify-content:center;gap:7px;margin-top:7px;flex-wrap:wrap}.pv-topic{color:var(--muted);font-size:13px;margin-top:7px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pv-seek{padding:0 4px}.pv-times{display:flex;justify-content:space-between;color:var(--faint);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:4px}.pv-ctls{display:flex;justify-content:center;gap:30px}.pv-ctls,.pv-skip{align-items:center}.pv-skip{border:none;background:none;cursor:pointer;color:var(--text);padding:8px;display:inline-flex;flex-direction:column;gap:1px;font-family:inherit;font-size:10px;font-weight:700;border-radius:var(--r-md);transition:color var(--t),transform .12s ease}.pv-skip:hover{color:var(--accent-deep)}.pv-skip:active{transform:scale(.9)}.pv-play{width:78px;height:78px;border:none;border-radius:50%;cursor:pointer;padding:0;background:linear-gradient(180deg,#f29a29,var(--accent) 60%,#dd7708);color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 28px -8px rgba(232,131,12,.65),var(--sh-1);transition:transform .12s ease,filter var(--t)}.pv-play:hover{filter:brightness(1.06)}.pv-play:active{transform:scale(.94)}.pv-vol{display:flex;align-items:center;gap:12px;color:var(--muted);max-width:250px;margin:0 auto;width:100%}@media (max-width:640px){.pv-backdrop{padding:0}.pv{width:100%;height:100dvh;max-height:none;border-radius:0;padding-top:calc(14px + env(safe-area-inset-top));justify-content:flex-start;gap:20px}.pv-cover{width:min(80%,330px);margin-top:10px}.pv-vol{display:none}}.tabbar .fab{position:relative;justify-self:center;align-self:start;margin-top:-26px;width:58px;height:58px;border-radius:50%;padding:0;flex:0 0 auto;background:linear-gradient(180deg,#f29a29,var(--accent) 60%,#dd7708);color:#fff;border:4px solid var(--bg1);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 22px -6px rgba(232,131,12,.65),0 3px 8px rgba(18,27,40,.16);transition:transform .12s ease,filter var(--t),box-shadow var(--t)}.tabbar .fab:hover{filter:brightness(1.06);text-decoration:none}.tabbar .fab:active{transform:scale(.9)}.tabbar .fab.on{box-shadow:0 0 0 5px var(--ring),0 10px 22px -6px rgba(232,131,12,.65)}@media (min-width:720px){.aud-grid{grid-template-columns:repeat(auto-fill,minmax(198px,1fr))}}@media (max-width:480px){.aud-grid{grid-template-columns:repeat(2,1fr);gap:12px}.acover .ctitle{font-size:14px}}@media (max-width:359px){.aud-grid{grid-template-columns:1fr}}.acct-block+.acct-block{margin-top:4px}.dep-hist{display:flex;gap:7px;flex-wrap:wrap;margin:7px 2px 2px}.dep-chip{border:1px solid var(--border);border-radius:var(--r-full);background:var(--bg2);color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;padding:4px 12px;font-family:inherit;min-height:30px;display:inline-flex;align-items:center;gap:5px;transition:all var(--t)}.dep-chip:hover{border-color:var(--border-strong);color:var(--text-strong)}.dep-chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.dep-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.dep-steps{list-style:none;margin:4px 0 10px;padding:0}.dep-steps li{display:flex;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;border-radius:var(--r-md);color:var(--muted)}.dep-steps li.running{background:var(--accent-softer);color:var(--accent-ink);font-weight:600}.dep-steps li.ok{color:var(--text)}.dep-steps li.fail{background:var(--danger-soft);color:#a82626}.dep-steps li.skip{opacity:.7}.dep-steps .st-ic{width:22px;text-align:center;flex:0 0 22px}.dep-steps .st-lbl{font-family:ui-monospace,monospace;font-size:12.5px;overflow-wrap:anywhere}.pend-wrap{margin-bottom:22px}.pend-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.pend-item{position:relative;display:flex;flex-direction:column}.pend-card{position:relative;display:block;background:var(--bg1);border:1px solid #f0c286;border-left:4px solid var(--accent);border-radius:var(--r-lg);padding:14px 44px 13px 15px;box-shadow:var(--sh-1);color:inherit;transition:box-shadow var(--t),transform var(--t)}.pend-card:hover{box-shadow:var(--sh-2);transform:translateY(-1px);text-decoration:none}.pend-title{font-size:14.5px;font-weight:700;color:var(--text-strong);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pend-stage{font-size:13px;color:var(--accent-ink);font-weight:600;margin:5px 0 8px}.pend-bar{height:7px}.pend-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.pend-stop{position:absolute;top:9px;right:9px;width:32px;height:32px;border:1px solid #f3caca;border-radius:50%;background:var(--bg1);color:var(--danger);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--sh-1);transition:all .12s ease}.pend-stop:hover{background:var(--danger);border-color:var(--danger);color:#fff;transform:scale(1.08)}.pend-stop:active{transform:scale(.92)}.modal-back{position:fixed;inset:0;z-index:90;background:rgba(15,23,34,.5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadein .15s ease}.modal{width:min(400px,100%);background:var(--bg1);border-radius:var(--r-xl);box-shadow:var(--sh-3);padding:24px 22px;text-align:center;animation:pvup .22s cubic-bezier(.2,.8,.3,1)}.modal-ic{width:54px;height:54px;border-radius:50%;margin:0 auto 12px;background:var(--danger-soft);color:var(--danger);font-size:24px;display:flex;align-items:center;justify-content:center}.modal-btns{display:flex;gap:10px;margin-top:18px}.modal-btns .btn{flex:1 1;min-height:46px}.btn.danger-solid{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:700}.btn.danger-solid:hover{background:#c22f2f;border-color:#c22f2f}.perm-matrix{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:6px}.perm-group{border:1px solid var(--border);border-radius:var(--r-md);padding:10px 12px;background:var(--bg1)}.perm-gname{font-size:12.5px;font-weight:700;color:var(--text-strong);margin-bottom:6px}.perm-tick{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--text);margin:6px 0;cursor:pointer;font-weight:500}.perm-tick input{width:17px;height:17px;min-height:0;accent-color:var(--accent);cursor:pointer}.user-row{border:1px solid var(--border);border-radius:var(--r-lg);margin-top:9px;background:var(--bg1);box-shadow:var(--sh-1);padding:2px 12px}.user-row.dead{opacity:.72;background:var(--bg2);border-style:dashed}.user-edit{border-top:1px dashed var(--border);padding:4px 2px 14px}.conn-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:14px;gap:14px;margin-top:14px}.conn-card{border:1.5px solid var(--border);border-radius:var(--r-lg);background:var(--bg1);padding:18px;box-shadow:var(--sh-1);transition:border-color var(--t),box-shadow var(--t);display:flex;flex-direction:column;gap:12px}.conn-card.live{border-color:#bfe6cf;background:#fbfffc}.conn-head{gap:10px;flex-wrap:wrap}.conn-head,.conn-logo{display:flex;align-items:center}.conn-logo{width:42px;height:42px;border-radius:12px;flex:0 0 42px;justify-content:center;font-size:21px;background:linear-gradient(145deg,var(--accent-soft),var(--accent-softer));border:1px solid #f3ddb9}.conn-title{font-weight:800;font-size:16.5px;color:var(--text-strong);line-height:1.25}.conn-sub{font-size:12px;color:var(--muted)}.conn-status{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.conn-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);flex:0 0 9px;animation:connpulse 1.2s ease-in-out infinite}@keyframes connpulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.oauth-code{display:flex;align-items:center;justify-content:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:25px;font-weight:800;letter-spacing:5px;color:var(--accent-ink);background:var(--accent-softer);border:1.5px dashed #f0c286;border-radius:var(--r-md);padding:13px 16px;-webkit-user-select:all;-moz-user-select:all;user-select:all;word-break:break-all;text-align:center}.conn-actions{display:flex;gap:10px;flex-wrap:wrap}.conn-actions>button{flex:1 1 auto;min-width:118px}.upd-log{background:#101826;color:#d7e3f4;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;border-radius:var(--r-md);border:1px solid #223048;padding:12px 14px;max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word}@media (max-width:640px){.conn-grid{grid-template-columns:1fr}.oauth-code{font-size:20px;letter-spacing:3px}}.yt-open-btn{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;flex:none;cursor:pointer;border:1px solid var(--border);border-radius:13px;color:inherit;background:var(--bg1);box-shadow:var(--sh-1);transition:background var(--t),transform var(--t),box-shadow var(--t)}.yt-open-btn:hover{background:var(--bg2,#faf7f2);box-shadow:0 6px 16px -8px rgba(225,15,15,.45),var(--sh-1)}.yt-open-btn:active{transform:scale(.94)}.yt-open-btn svg{display:block}.yt-open-btn .yt-ic{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:hsla(0,0%,100%,.22);font-size:12px}.yt-modal{position:fixed;z-index:61;left:0;right:0;bottom:0;display:flex;flex-direction:column;background:var(--bg1);border-radius:var(--r-xl) var(--r-xl) 0 0;max-height:94vh;box-shadow:var(--sh-pop);animation:sheetup .24s cubic-bezier(.2,.8,.3,1)}.yt-grab{width:42px;height:5px;border-radius:5px;background:var(--border-strong);margin:10px auto 2px;flex:0 0 auto}.yt-head{display:flex;align-items:center;justify-content:space-between;padding:6px 20px 12px;border-bottom:1px solid var(--border);flex:0 0 auto}.yt-title{font-size:18px;margin:0}.yt-body{overflow-y:auto;padding:18px 20px calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.yt-section{margin-bottom:20px}.yt-label{display:flex;gap:8px;font-size:13px;font-weight:700;margin-bottom:8px}.yt-label,.yt-regen{align-items:center;color:var(--muted)}.yt-regen{margin-left:auto;min-width:34px;min-height:34px;padding:0 10px;border-radius:var(--r-full);border:1.5px solid var(--border);background:var(--bg1);cursor:pointer;font-size:14px;display:inline-flex;justify-content:center}.yt-regen:hover:not(:disabled){border-color:var(--accent);color:var(--accent-ink);background:var(--accent-softer)}.yt-regen:disabled{opacity:.5;cursor:default}.yt-thumb{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--r-md);overflow:hidden;background:var(--bg3);border:1px solid var(--border)}.yt-thumb img{width:100%;height:100%;object-fit:cover;display:block}.yt-thumb.busy img{filter:brightness(.6)}.yt-thumb-empty{color:var(--faint);font-size:14px}.yt-thumb-empty,.yt-thumb-spin{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.yt-thumb-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.yt-thumb-actions .btn{flex:1 1 auto;min-width:120px}.yt-tags{display:flex;flex-wrap:wrap;gap:7px;padding:9px;min-height:46px;background:var(--bg2);border:1.5px solid transparent;border-radius:var(--r-md)}.yt-tags:focus-within{background:var(--bg1);border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.yt-tag{gap:6px;padding:5px 6px 5px 12px;background:var(--accent-soft);border-radius:var(--r-full);font-size:13px;font-weight:600}.yt-tag,.yt-tag button{display:inline-flex;align-items:center;color:var(--accent-ink)}.yt-tag button{border:none;background:rgba(138,74,5,.14);cursor:pointer;width:20px;height:20px;border-radius:50%;font-size:11px;line-height:1;justify-content:center;padding:0}.yt-tag button:hover{background:rgba(138,74,5,.28)}.yt-tag-input{flex:1 1 120px;min-width:120px;min-height:32px!important;border:none!important;background:transparent!important;box-shadow:none!important;padding:4px 6px!important;font-size:14px}.yt-connect{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;margin-bottom:20px;border-radius:var(--r-md);background:var(--info-soft);border:1px solid #d6def7}.yt-connect-txt{display:flex;flex-direction:column;gap:2px;flex:1 1 200px}.yt-connect-btn{border:none;cursor:pointer;padding:10px 18px;min-height:44px;border-radius:var(--r-full);font-family:inherit;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(180deg,#ff4141,#e10f0f);box-shadow:0 4px 12px -4px rgba(225,15,15,.5)}.yt-connect-btn:hover{filter:brightness(1.05)}.yt-publish{background:linear-gradient(180deg,#ff4141,#e10f0f 60%,#c40000);box-shadow:0 6px 18px -6px rgba(225,15,15,.55),var(--sh-1)}.yt-progress{margin-top:18px}.yt-stage{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px;margin-top:10px}.yt-success{text-align:center;padding:20px 6px 8px}.yt-check{width:68px;height:68px;margin:0 auto 14px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:800;background:linear-gradient(180deg,#22c069,var(--ok));box-shadow:0 8px 22px -8px rgba(24,154,85,.6)}.yt-success h3{margin:0 0 4px}.yt-note{font-size:12.5px;color:var(--accent-ink);background:var(--accent-softer);border:1px solid #f5e3c6;border-radius:var(--r-sm);padding:8px 12px;margin:12px 0}.yt-watch{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:12px 24px;min-height:48px;border-radius:var(--r-full);font-weight:700;color:#fff;text-decoration:none;background:linear-gradient(180deg,#ff4141,#e10f0f)}.yt-watch:hover{filter:brightness(1.05);text-decoration:none}.yt-spin{width:22px;height:22px;border-radius:50%;border:3px solid hsla(0,0%,100%,.7);border-top-color:transparent;display:inline-block;animation:ytspin .7s linear infinite}.yt-thumb-spin .yt-spin{border-color:transparent hsla(0,0%,100%,.85) hsla(0,0%,100%,.85)}.yt-spin.sm{width:15px;height:15px;border-width:2.5px;border-color:var(--accent);border-top-color:transparent;vertical-align:middle}@keyframes ytspin{to{transform:rotate(1turn)}}@media (min-width:640px){.yt-modal{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(580px,94vw);max-height:90vh;border-radius:var(--r-xl);animation:ytpop .2s cubic-bezier(.2,.8,.3,1)}.yt-grab{display:none}}@keyframes ytpop{0%{transform:translate(-50%,-48%) scale(.97);opacity:.5}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.fbw-slide{animation:none}.fbw-slide.fwd{animation:fbwin .26s cubic-bezier(.2,.8,.3,1)}.fbw-slide.back{animation:fbwback .26s cubic-bezier(.2,.8,.3,1)}@keyframes fbwin{0%{transform:translateX(46px);opacity:0}to{transform:none;opacity:1}}@keyframes fbwback{0%{transform:translateX(-46px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion:reduce){.fbw-slide.back,.fbw-slide.fwd{animation:none}}.fbw-dots{display:flex;gap:7px;justify-content:center;padding:10px 0 2px}.fbw-dot{width:8px;height:8px;border-radius:50%;background:var(--border-strong);transition:background .2s}.fbw-dot.on{background:#1877f2}.fbw-center{text-align:center;padding:12px 4px 6px}.fbw-hero{margin:6px auto 12px}.fbw-h{font-size:19px;margin:6px 0;text-wrap:balance}.fbw-p{line-height:1.6;max-width:46ch;margin-left:auto;margin-right:auto}.fbw-fbbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#1877f2;color:#fff;border:none;border-radius:var(--r-full);padding:12px 26px;font-size:15.5px;font-weight:700;cursor:pointer;margin-top:14px;min-height:46px}.fbw-fbbtn:hover{background:#166fe0}.fbw-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:12px;gap:12px;margin-top:16px}.fbw-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:16px;border:1.5px solid var(--border);border-radius:var(--r-lg);background:var(--bg1);cursor:pointer;min-height:108px}.fbw-card:hover:not(:disabled){border-color:#1877f2}.fbw-card:disabled{opacity:.55;cursor:default}.fbw-card-emoji{font-size:24px}.fbw-card-t{font-weight:700;font-size:15.5px}.fbw-pages{display:flex;flex-direction:column;gap:8px;margin-top:12px}.fbw-page{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1.5px solid var(--border);border-radius:var(--r-lg);cursor:pointer;background:var(--bg1)}.fbw-page.on{border-color:#1877f2;box-shadow:0 0 0 1px #1877f2}.fbw-page-t{gap:2px;font-weight:600}.fbw-page-t,.fbw-review{display:flex;flex-direction:column}.fbw-review{gap:10px;border:1.5px solid var(--border);border-radius:var(--r-lg);padding:14px 16px}.fbw-review>div{display:flex;flex-direction:column;gap:2px}.fbw-steps{margin:10px 0 0;padding-left:20px;line-height:1.8}.fbw-z{z-index:90}.fbw-zm{z-index:91}.fbw-disc{border:1.5px solid #e0245e44;color:#e0245e;background:transparent;border-radius:var(--r-full);font-size:12.5px;font-weight:700;padding:6px 12px;cursor:pointer;margin-right:8px;white-space:nowrap}.fbw-disc:hover:not(:disabled){background:#e0245e12}.fbw-disc:disabled{opacity:.5;cursor:default}.fbw-dest{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.fbw-destbtn{display:flex;align-items:center;gap:9px;padding:12px;border:1.5px solid var(--border);border-radius:var(--r-lg);cursor:pointer;background:var(--bg1)}.fbw-destbtn.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.fbw-destbtn.disabled{opacity:.5;cursor:not-allowed}.fbw-destbtn span{display:flex;flex-direction:column;line-height:1.25;font-weight:700}.fbw-destbtn input{flex:0 0 auto}.fbw-story{display:flex;align-items:flex-start;gap:9px;margin:10px 0 2px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;cursor:pointer;line-height:1.3}.fbw-story input{flex:0 0 auto;margin-top:3px}.fbw-story b{font-weight:800}.fbw-teaser{margin:14px 0 4px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--accent) 6%,transparent)}.fbw-teaser-head{display:flex;align-items:baseline;gap:8px;font-weight:800}.fbw-teaser-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fbw-teaser-row select{padding:7px 10px;border-radius:10px;border:1px solid var(--border);background:var(--bg1);color:inherit}.fbw-teaser-row .btn{flex:1 1 auto}.yt-prog{height:8px;border-radius:5px;background:var(--border);overflow:hidden}.yt-prog-bar{height:100%;background:var(--accent);border-radius:5px;transition:width .4s ease}.fbw-linkrow{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}.fbw-linkrow input{flex:1 1 200px;min-width:0}.fbw-linkrow .btn{white-space:nowrap}.fbw-linkbtn{background:none;border:none;color:var(--accent);font:inherit;font-weight:700;cursor:pointer;padding:0;text-decoration:underline}.fbw-linkbtn:disabled{opacity:.5;cursor:default}.autosave-chip{font-size:12px;font-weight:700;padding:5px 11px;border-radius:var(--r-full);background:var(--accent-softer);color:var(--accent-ink);border:1.5px solid var(--border);white-space:nowrap}.save-toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:200;background:#16994b;color:#fff;font-weight:700;font-size:14.5px;padding:11px 20px;border-radius:var(--r-full);box-shadow:var(--sh-3);animation:toastpop .24s cubic-bezier(.2,.8,.3,1);max-width:calc(100vw - 32px);text-align:center}.save-toast.warn{background:#c23b3b}@keyframes toastpop{0%{transform:translate(-50%,14px);opacity:0}to{transform:translate(-50%);opacity:1}}@media (prefers-reduced-motion:reduce){.save-toast{animation:none}}