:root{--text: #eef2f8;--muted: #9aa7bd;--accent: #5ef2c0;--accent2: #6aa8ff;--danger: #ff6b8b;--glass: rgba(255, 255, 255, .06);--glass-strong: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .14);--glass-hi: rgba(255, 255, 255, .35);--blur: 22px;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;color:var(--text);background:#05070d;overflow:hidden}body:before{content:"";position:fixed;top:-20vmax;right:-20vmax;bottom:-20vmax;left:-20vmax;z-index:-2;background:radial-gradient(38vmax 38vmax at 12% 18%,rgba(106,168,255,.55),transparent 60%),radial-gradient(34vmax 34vmax at 88% 12%,rgba(94,242,192,.45),transparent 60%),radial-gradient(42vmax 42vmax at 78% 88%,rgba(180,120,255,.5),transparent 62%),radial-gradient(36vmax 36vmax at 20% 92%,rgba(255,107,139,.4),transparent 60%);filter:blur(30px) saturate(140%);animation:drift 26s ease-in-out infinite alternate}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(120vmax 80vmax at 50% -10%,transparent,rgba(5,7,13,.7) 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E")}@keyframes drift{0%{transform:translate3d(-2%,-1%,0) scale(1.05) rotate(0)}to{transform:translate3d(3%,2%,0) scale(1.12) rotate(8deg)}}.glass{position:relative;background:var(--glass);backdrop-filter:blur(var(--blur)) saturate(180%);-webkit-backdrop-filter:blur(var(--blur)) saturate(180%);border:1px solid var(--glass-border);border-radius:20px;box-shadow:0 10px 40px #00000073,inset 0 1px 0 var(--glass-hi),inset 0 -1px #00000040}.glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.12),transparent 34%);opacity:.9}.app{display:flex;flex-direction:column;height:100vh;padding:14px;gap:14px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(440px,100%);display:flex;flex-direction:column;gap:16px;padding:24px}.brand-logo{width:118px;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 0 14px rgba(94,242,192,.18))}.auth-card h1{margin:8px 0 4px;font-size:24px}.auth-card p{margin:0;color:var(--muted);font-size:14px}.auth-card label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:12px}.auth-card input,.project-tools select,.share-fields input{background:#00000052;color:var(--text);border:1px solid var(--glass-border);border-radius:10px;padding:10px 12px;font:inherit}.auth-card input:focus,.project-tools select:focus,.share-fields input:focus{outline:none;border-color:var(--accent)}.password-field{display:grid;grid-template-columns:1fr 42px;align-items:center;gap:0}.password-field input{border-radius:10px 0 0 10px;min-width:0}.password-field button{height:41px;display:grid;place-items:center;background:#ffffff14;border:1px solid var(--glass-border);border-left:0;border-radius:0 10px 10px 0;color:var(--muted);cursor:pointer}.password-field svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.google-btn{display:flex;align-items:center;justify-content:center;gap:10px;height:42px;color:var(--text);text-decoration:none;background:#ffffff14;border:1px solid var(--glass-border);border-radius:12px;font-weight:750;font-size:13px}.google-btn svg{width:18px;height:18px}.auth-sep{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;color:var(--muted);font-size:11px}.auth-sep span{height:1px;background:var(--glass-border)}.primary-btn{background:linear-gradient(180deg,var(--accent),#35c99c);color:#04231a;border:none;border-radius:12px;padding:11px 14px;font-weight:800;cursor:pointer}.primary-btn.compact{padding:9px 13px;white-space:nowrap}.primary-btn:disabled{opacity:.6;cursor:wait}.text-btn{background:none;color:var(--accent2);border:none;padding:4px;cursor:pointer}.form-error{color:var(--danger);font-size:12px}.dash-shell{height:100vh;display:grid;grid-template-columns:268px 1fr;gap:14px;padding:14px;min-width:0}.dash-sidebar{padding:22px 16px;border-radius:18px;display:flex;flex-direction:column;gap:10px;min-height:0}.dash-logo{margin-bottom:22px}.sidebar-logo{width:134px;max-width:100%}.side-label{color:var(--muted);font-size:12px;margin:4px 12px 8px}.workspace-item,.new-workspace{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;width:100%;min-height:48px;padding:9px 12px;background:#ffffff0b;color:var(--text);border:1px solid transparent;border-radius:8px;text-align:left;cursor:pointer;font:inherit;font-size:13px}.workspace-item span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-item b{min-width:28px;height:24px;display:grid;place-items:center;border-radius:8px;color:var(--muted);background:#ffffff12;font-size:12px}.workspace-item.on{border-color:#5ef2c08c;background:#5ef2c017}.workspace-mark{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#5ef2c01a;color:var(--accent);font-size:16px}.workspace-thumb{width:26px;height:26px;border-radius:8px;object-fit:cover;border:1px solid rgba(255,255,255,.18)}.new-workspace{margin-top:8px;grid-template-columns:1fr;justify-items:center;color:var(--accent);border-color:#5ef2c059;background:#5ef2c012}.dash-main{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0}.dash-top{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-radius:18px}.dash-top h1{margin:0;font-size:28px;letter-spacing:0}.dash-top p{margin:5px 0 0;color:var(--muted);font-size:13px}.dash-user{display:flex;align-items:center;gap:10px;font-size:13px}.dash-user img,.dash-user>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#ffffff14;border:1px solid var(--glass-border);object-fit:cover;color:var(--accent)}.dash-user div{display:flex;flex-direction:column;min-width:0}.dash-user small{color:var(--muted)}.dash-user button{margin-left:8px;background:#ffffff12;color:var(--text);border:1px solid var(--glass-border);border-radius:10px;padding:8px 11px;cursor:pointer}.dash-content{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;min-height:0}.project-board,.roadmap{border-radius:18px;min-height:0}.project-board{padding:16px;display:flex;flex-direction:column;gap:14px;overflow:hidden}.board-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) 210px auto;gap:10px}.board-toolbar input,.board-toolbar select,.project-row select{width:100%;background:#00000042;color:var(--text);border:1px solid var(--glass-border);border-radius:10px;padding:10px 12px;font:inherit;font-size:13px}.project-table{overflow:auto;display:flex;flex-direction:column;gap:6px;padding-right:2px}.project-row{display:grid;grid-template-columns:minmax(180px,1.35fr) 54px 126px minmax(104px,.8fr) 130px 172px;align-items:center;gap:12px;min-height:56px;padding:8px 10px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff09;font-size:13px}.project-row.clickable{cursor:pointer}.project-row.clickable:hover{border-color:#5ef2c052;background:#5ef2c00b}.project-row.head{min-height:34px;color:var(--muted);background:transparent;border:none;font-size:11px;text-transform:uppercase}.workspace-section{display:flex;align-items:baseline;gap:10px;margin:10px 2px 2px;color:var(--text)}.workspace-section strong{font-size:15px}.workspace-section span{color:var(--muted);font-size:12px}.project-name{display:flex;align-items:center;gap:10px;min-width:0}.project-name i{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;font-style:normal;border-radius:8px;color:#03120e;background:linear-gradient(135deg,var(--accent),var(--accent2));font-weight:850}.project-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-ok{color:var(--accent);font-family:ui-monospace,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-missing{color:var(--muted)}.row-actions{display:flex;gap:6px}.row-actions button{background:#ffffff0f;color:var(--text);border:1px solid var(--glass-border);border-radius:8px;padding:7px 8px;cursor:pointer;font-size:12px}.row-actions button:first-child{color:var(--accent);border-color:#5ef2c047}.row-actions button.danger{color:#ff9eb3;border-color:#ff6b8b47;background:#ff6b8b14}.empty-board{min-height:180px;display:grid;place-content:center;justify-items:center;gap:6px;color:var(--muted);border:1px dashed var(--glass-border);border-radius:12px}.empty-board strong{color:var(--text)}.roadmap{padding:20px;overflow:auto}.roadmap h2{margin:0 0 18px;font-size:18px}.workspace-editor{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.workspace-editor label,.delete-workspace label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:12px}.workspace-editor input,.delete-workspace select{width:100%;background:#00000047;color:var(--text);border:1px solid var(--glass-border);border-radius:10px;padding:9px 10px;font:inherit;font-size:13px}.workspace-editor input[type=file]{padding:8px;color:var(--muted)}.workspace-editor input[type=file]::file-selector-button{margin-right:10px;background:#ffffff14;color:var(--text);border:1px solid var(--glass-border);border-radius:8px;padding:7px 9px;cursor:pointer}.workspace-preview{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;background:#ffffff0b;border:1px solid rgba(255,255,255,.09)}.workspace-preview img,.workspace-preview>span{width:46px;height:46px;border-radius:10px;object-fit:cover;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#03120e;font-weight:850}.workspace-preview div{min-width:0;display:flex;flex-direction:column}.workspace-preview small,.workspace-help{color:var(--muted);font-size:12px;line-height:1.45}.workspace-status{color:var(--accent);font-style:normal;font-size:12px}.delete-workspace{display:flex;flex-direction:column;gap:10px;padding-top:4px}.delete-workspace button{background:#ff6b8b1f;color:#ff9eb3;border:1px solid rgba(255,107,139,.32);border-radius:10px;padding:9px 11px;cursor:pointer;font-weight:750}.delete-workspace button:disabled{opacity:.45;cursor:not-allowed}.phase{display:flex;flex-direction:column;gap:12px;margin-bottom:26px}.phase>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.phase>div span{color:var(--accent);background:#5ef2c01a;border-radius:999px;padding:4px 9px;font-size:11px}.phase ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.phase li{position:relative;padding-left:24px;color:var(--muted);font-size:13px;min-height:18px}.phase li:before{content:"";position:absolute;left:0;top:2px;width:13px;height:13px;border-radius:50%;border:1.5px solid var(--muted)}.phase li.done{color:var(--text)}.phase li.done:before{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 3px #062018}.admin-shell{height:100vh;display:flex;flex-direction:column;gap:14px;padding:14px;min-width:0}.admin-top .brand{align-items:center;gap:16px}.admin-top h1{margin:0;font-size:24px}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;min-height:0;overflow:auto;align-content:start;padding-right:2px}.admin-metrics{grid-column:1 / -1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.admin-metric{min-height:96px;border-radius:12px;padding:14px;display:flex;flex-direction:column;justify-content:space-between}.admin-metric span,.admin-metric small{color:var(--muted);font-size:12px}.admin-metric strong{font-size:24px;line-height:1.1}.admin-panel{border-radius:14px;padding:14px;min-width:0;min-height:0;overflow:hidden}.admin-users,.admin-activity{min-height:280px}.admin-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-panel-head.second{margin-top:22px}.admin-panel-head h2{margin:0;font-size:16px}.admin-panel-head span{color:var(--muted);font-size:12px}.admin-table{display:flex;flex-direction:column;gap:6px;overflow:auto;max-height:420px;padding-right:2px}.admin-row{display:grid;align-items:center;gap:10px;min-height:48px;padding:8px 9px;border-radius:8px;background:#ffffff09;border:1px solid rgba(255,255,255,.08);font-size:12px}.users-table .admin-row{grid-template-columns:minmax(220px,1.3fr) 106px 64px minmax(110px,.8fr) 98px 58px}.workspaces-table .admin-row{grid-template-columns:minmax(180px,1.2fr) 106px 64px 72px 64px 98px}.admin-projects-table .admin-row{grid-template-columns:minmax(170px,1.2fr) minmax(110px,.8fr) 106px 58px 88px 76px}.admin-row.head{min-height:30px;color:var(--muted);background:transparent;border:none;text-transform:uppercase;font-size:10px}.admin-user-cell{display:flex;align-items:center;gap:9px;min-width:0}.admin-user-cell img,.admin-user-cell i{width:32px;height:32px;border-radius:50%;object-fit:cover;display:grid;place-items:center;flex:0 0 auto;background:#5ef2c01c;border:1px solid var(--glass-border);color:var(--accent);font-style:normal;font-weight:800}.admin-user-cell>span,.admin-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-cell strong,.admin-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-cell small{color:var(--muted);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.usage-list,.status-list,.activity-feed{display:flex;flex-direction:column;gap:8px;overflow:auto;max-height:360px}.usage-line,.status-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;background:#ffffff0a}.usage-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.usage-line strong,.status-line strong{color:var(--accent);font-size:12px}.status-line{grid-template-columns:minmax(0,1fr) 42px auto}.status-line small,.usage-list p,.activity-feed p{color:var(--muted);font-size:12px;margin:0}.admin-row small{color:var(--muted);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-danger-btn{width:100%;background:#ff6b8b1a;color:#ff9eb3;border:1px solid rgba(255,107,139,.3);border-radius:8px;padding:7px 8px;cursor:pointer}.activity-item{display:grid;grid-template-columns:78px minmax(110px,.7fr) minmax(120px,1fr) minmax(90px,.8fr);gap:10px;align-items:center;min-height:38px;padding:8px 9px;border-radius:8px;background:#ffffff09;font-size:12px}.activity-item time,.activity-item small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-item span,.activity-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-shell{height:100vh;display:flex;flex-direction:column;gap:14px;padding:14px}.canvas-tools{display:flex;align-items:center;gap:8px;margin-left:auto;color:var(--muted);font-size:12px}.canvas-tools em{color:var(--accent);font-style:normal;min-width:70px}.canvas-viewport{flex:1;min-height:0;overflow:auto;border-radius:18px;position:relative;padding:0}.canvas-plane{position:relative;width:2600px;height:1800px;transform-origin:0 0}.canvas-grid{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:40px 40px}.canvas-node{position:absolute;display:flex;flex-direction:column;overflow:hidden;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:#090e18e6;box-shadow:0 16px 36px #00000061;cursor:grab;touch-action:none}.canvas-node.dragging{cursor:grabbing;border-color:var(--accent)}.canvas-node.lod-low .canvas-node-media,.canvas-node.lod-low .canvas-node-body small,.canvas-node.lod-low .canvas-node-actions{display:none}.canvas-node.lod-low{justify-content:center;min-height:64px}.canvas-node.lod-low .canvas-node-body{padding:12px 14px}.canvas-node-media{height:60%;min-height:116px;display:grid;place-items:center;background:#ffffff0f}.canvas-node-media img,.canvas-node-media video{width:100%;height:100%;object-fit:cover;pointer-events:none}.canvas-node-media span{width:62px;height:62px;border-radius:16px;display:grid;place-items:center;color:#03120e;background:linear-gradient(135deg,var(--accent),var(--accent2));font-size:26px;font-weight:850}.canvas-node-body{display:flex;flex-direction:column;gap:6px;padding:10px 12px}.canvas-node-body strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-node-body small{color:var(--muted);font-family:ui-monospace,monospace}.canvas-node-actions{display:flex;align-items:center;gap:8px}.canvas-node-body button{align-self:flex-start;background:#5ef2c01a;color:var(--accent);border:1px solid rgba(94,242,192,.25);border-radius:8px;padding:6px 9px;cursor:pointer}.canvas-node-body button.danger{background:#ff6b8b1a;color:#ff9eb3;border-color:#ff6b8b47}.canvas-empty{position:absolute;left:80px;top:80px;display:flex;flex-direction:column;gap:8px;color:var(--muted);border:1px dashed var(--glass-border);border-radius:14px;padding:28px}.canvas-empty strong{color:var(--text)}.minimap{position:sticky;left:calc(100% - 190px);bottom:16px;width:170px;height:118px;margin:0 16px 16px auto;border-radius:12px;border:1px solid var(--glass-border);background:#00000061;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.minimap span{position:absolute;border-radius:3px;background:#5ef2c0b8;border:1px solid rgba(255,255,255,.35)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px}.brand{display:flex;align-items:center;gap:10px}.logo{font-weight:800;font-size:22px;letter-spacing:-.5px;background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}.topbar-logo{width:92px}.tag{color:var(--muted);font-size:13px}.asset{display:flex;gap:14px;align-items:baseline;font-size:13px}.asset .ver{color:var(--accent2)}.asset .fps{color:var(--muted);font-family:ui-monospace,monospace}.user-pill{margin-left:8px;color:var(--muted);border:1px solid var(--glass-border);border-radius:10px;padding:6px 11px;background:#ffffff0e}.project-tools{display:flex;align-items:center;gap:8px;margin-left:auto;margin-right:12px}.project-tools select{min-width:170px;padding:7px 10px;font-size:12px}.share-panel{display:flex;align-items:center;gap:14px;padding:12px 16px;font-size:13px}.share-panel>div:first-child{display:flex;flex-direction:column;min-width:150px}.share-panel>div:first-child span{color:var(--muted)}.share-fields{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.share-fields span{color:var(--muted);font-family:ui-monospace,monospace}.share-fields input{flex:1;min-width:160px;padding:8px 10px}.share-fields label{display:flex;align-items:center;gap:5px;color:var(--muted);white-space:nowrap}.share-fields button{background:var(--glass-strong);color:var(--text);border:1px solid var(--glass-border);border-radius:10px;padding:8px 11px;cursor:pointer}.share-panel a{color:var(--accent);max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-panel em{color:var(--accent);font-style:normal}.share-linkbox{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:8px;flex:1;min-width:0;padding:6px;border-radius:12px;background:#00000047;border:1px solid var(--glass-border)}.share-linkbox span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-family:ui-monospace,monospace}.share-linkbox button,.share-linkbox a,.share-close{background:var(--glass-strong);color:var(--text);border:1px solid var(--glass-border);border-radius:9px;padding:7px 10px;cursor:pointer;text-decoration:none;font:inherit;font-size:12px}.share-linkbox a{max-width:none}.share-linkbox a.disabled{opacity:.45;pointer-events:none}.share-advanced{min-width:260px;color:var(--muted)}.share-advanced summary{cursor:pointer;white-space:nowrap}.share-advanced .share-fields{position:absolute;right:64px;z-index:10;margin-top:12px;padding:12px;border-radius:12px;background:#0c101af5;border:1px solid var(--glass-border);box-shadow:0 18px 42px #0006}.share-close{color:var(--muted)}.player-layout{display:grid;grid-template-columns:1fr 360px;gap:14px;flex:1;min-height:0}.stage{display:flex;flex-direction:column;gap:12px;min-height:0}.video-wrap{position:relative;flex:1;min-height:0;padding:10px;display:flex;overflow:hidden}.video-wrap video{width:100%;height:100%;object-fit:contain;display:block;background:#000;border-radius:12px;cursor:pointer}.annotation-layer{position:absolute;top:10px;right:10px;bottom:10px;left:10px;width:calc(100% - 20px);height:calc(100% - 20px);border-radius:12px;pointer-events:none;overflow:hidden;touch-action:none}.annotation-layer.drawing{pointer-events:auto;cursor:crosshair}.annotation-layer path{filter:drop-shadow(0 2px 5px rgba(0,0,0,.55))}.timeline{position:relative;padding:6px 14px 2px}.timeline input[type=range]{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff24;border-radius:999px;outline:none}.timeline input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:linear-gradient(180deg,#fff,#cfe4ff);box-shadow:0 2px 8px #00000080,0 0 0 4px #6aa8ff40;cursor:pointer}.markers{position:relative;height:14px;margin:4px 2px 0}.marker{position:absolute;top:0;width:10px;height:14px;transform:translate(-50%);background:linear-gradient(180deg,var(--accent),#34c79b);border:none;border-radius:3px;cursor:pointer;padding:0;box-shadow:0 2px 6px #0006}.marker:hover{background:#fff}.transport{display:flex;align-items:center;gap:8px;padding:12px 14px}.transport button{background:var(--glass-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text);border:1px solid var(--glass-border);border-radius:12px;padding:9px 13px;font-size:15px;cursor:pointer;transition:transform .08s ease,border-color .15s ease}.transport button:hover{border-color:var(--accent2);transform:translateY(-1px)}.transport button:active{transform:translateY(0)}.transport .play{background:linear-gradient(180deg,var(--accent2),#4b86e6);border-color:transparent;color:#041018;font-weight:700;box-shadow:0 6px 18px #6aa8ff66}.play-icon,.frame-icon{width:16px;height:16px;display:block;position:relative}.play-icon:before{content:"";position:absolute;left:4px;top:2px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor}.play-icon.pause:before,.play-icon.pause:after{content:"";position:absolute;top:2px;width:4px;height:12px;background:currentColor;border:0}.play-icon.pause:before{left:3px}.play-icon.pause:after{right:3px}.frame-icon:before{content:"";position:absolute;top:2px;width:2px;height:12px;background:currentColor}.frame-icon:after{content:"";position:absolute;top:3px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent}.frame-icon.prev:before{left:2px}.frame-icon.prev:after{left:6px;border-right:8px solid currentColor}.frame-icon.next:before{right:2px}.frame-icon.next:after{right:6px;border-left:8px solid currentColor}.skip-btn,.speed-btn{min-width:52px;font-weight:800;font-size:12px!important}.speed-btn.on{color:var(--accent);border-color:#5ef2c059}.tc-block{margin-left:12px;display:flex;flex-direction:column;align-items:flex-start;cursor:text;padding:2px 12px;border-left:1px solid var(--glass-border)}.tc{font-family:ui-monospace,Menlo,monospace;font-size:27px;font-weight:700;letter-spacing:1px;color:var(--accent);text-shadow:0 0 18px rgba(94,242,192,.45)}.tc-edit{background:#00000080;border:1px solid var(--accent);border-radius:8px;width:200px}.frameno{font-family:ui-monospace,monospace;font-size:12px;color:var(--muted)}.toggle{margin-left:auto;font-size:12px!important}.toggle.on{border-color:var(--accent)!important;color:var(--accent)}.comments{padding:16px;display:flex;flex-direction:column;min-height:0}.comments h3{margin:0 0 12px;font-size:15px;letter-spacing:.2px}.new-comment{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.new-comment .anchor{font-family:ui-monospace,monospace;font-size:12px;color:var(--accent)}.new-comment textarea{background:#00000059;color:var(--text);border:1px solid var(--glass-border);border-radius:12px;padding:10px;min-height:62px;resize:vertical;font-family:inherit;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.new-comment textarea:focus{outline:none;border-color:var(--accent)}.new-comment>button{background:linear-gradient(180deg,var(--accent),#35c99c);color:#04231a;border:none;border-radius:12px;padding:10px;font-weight:700;cursor:pointer;box-shadow:0 6px 18px #5ef2c059}.new-comment>button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.annotation-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.annotation-tools button{height:32px;border-radius:10px;border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--text);font:inherit;font-size:12px;cursor:pointer}.annotation-tools button:not(.color-dot){padding:0 10px}.annotation-tools button.on{border-color:var(--accent);color:var(--accent)}.annotation-tools button:disabled{cursor:not-allowed;opacity:.45}.annotation-tools .color-dot{width:24px;min-width:24px;height:24px;padding:0;border-radius:50%;box-shadow:inset 0 0 0 2px #00000052}.annotation-tools .color-dot.on{outline:2px solid var(--text);outline-offset:2px}.attachment-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.attach-btn,.attachment-tools button{height:32px;border-radius:10px;border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--text);font:inherit;font-size:12px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.attach-btn input{display:none}.attachment-tools button.recording{border-color:#ff6b8b;color:#ff9bad}.pending-attachments{display:flex;flex-direction:column;gap:6px}.pending-attachments span{display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:7px;padding:6px 8px;border:1px solid var(--glass-border);border-radius:10px;background:#00000040;font-size:12px}.pending-attachments b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.pending-attachments small{color:var(--muted)}.pending-attachments button{width:24px;height:24px;border-radius:8px;border:1px solid var(--glass-border);background:transparent;color:var(--muted);cursor:pointer}.comments ul{list-style:none;margin:0;padding:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.comments li{background:var(--glass);border:1px solid var(--glass-border);border-radius:14px;padding:10px 12px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.comments li.active{border-color:var(--accent);box-shadow:0 0 0 1px #5ef2c059}.comments li.empty{color:var(--muted);background:transparent;border:1px dashed var(--glass-border);text-align:center;font-size:13px}.comments .jump{background:none;border:none;color:var(--accent);font-family:ui-monospace,monospace;font-size:13px;cursor:pointer;padding:0;display:flex;gap:8px;align-items:baseline}.comments .jump .fn{color:var(--muted);font-size:11px}.comments li p{margin:4px 0 0;font-size:14px}.comment-attachments{margin-top:8px;display:flex;flex-direction:column;gap:7px}.comment-attachment{min-width:0;border:1px solid var(--glass-border);border-radius:10px;overflow:hidden;background:#00000047;color:var(--text);text-decoration:none}.comment-attachment.image{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center}.comment-attachment.image img{width:58px;height:42px;object-fit:cover;background:#000}.comment-attachment.image span,.comment-attachment.file span,.comment-attachment.media span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:8px;font-size:12px}.comment-attachment.media{padding:8px;display:flex;flex-direction:column;gap:7px}.comment-attachment.media span{padding:0}.comment-attachment.media audio,.comment-attachment.media video{width:100%;max-height:150px}.comment-attachment.file{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 8px 0 0}.comment-attachment.file small{color:var(--muted);font-size:11px;white-space:nowrap}.annotation-badge{display:inline-flex;margin-top:8px;padding:3px 7px;border-radius:999px;color:var(--accent);border:1px solid rgba(94,242,192,.35);font-size:11px}.hint{padding:11px 20px;color:var(--muted);font-size:13px}.hint b{color:var(--text)}.library{display:flex;gap:8px;padding:10px 12px;overflow-x:auto;align-items:center}.chip{display:flex;align-items:center;gap:8px;white-space:nowrap;background:var(--glass);color:var(--text);border:1px solid var(--glass-border);border-radius:999px;padding:7px 14px;font-size:13px;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chip.on{border-color:var(--accent);color:var(--accent)}.chip .st{color:var(--accent);font-size:10px}.chip:disabled{opacity:.55;cursor:wait}.upl-btn{margin-left:8px;background:var(--glass-strong);color:var(--text);border:1px solid var(--glass-border);border-radius:10px;padding:6px 12px;font-size:12px;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.upl-btn:hover{border-color:var(--accent)}.upl-btn.on{border-color:var(--accent);color:var(--accent)}.upl-btn.danger-btn{color:#ff9eb3;border-color:#ff6b8b47;background:#ff6b8b17}.chip-delete{min-width:18px;height:18px;display:grid;place-items:center;margin-left:2px;border-radius:50%;color:#ff9eb3;background:#ff6b8b1f;border:1px solid rgba(255,107,139,.25);font-size:11px;line-height:1}.chip-delete:hover{background:#ff6b8b38}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;flex:1;min-height:0}.compare-pane{display:flex;flex-direction:column;min-width:0;min-height:0;gap:8px}.compare-head{display:flex;justify-content:space-between;align-items:center;padding:0 4px;font-size:13px;color:var(--muted)}.compare-head strong{color:var(--text)}.compare-head span{color:var(--accent2);font-family:ui-monospace,monospace}.compare-pane .player-layout{grid-template-columns:1fr}.compare-pane .comments{display:none}.uploader{padding:16px;display:flex;flex-direction:column;gap:12px}.dropzone{border:1.5px dashed var(--glass-border);border-radius:16px;padding:26px;text-align:center;color:var(--muted);transition:border-color .15s ease,background .15s ease;cursor:pointer}.dropzone.drag{border-color:var(--accent);background:#5ef2c014;color:var(--text)}.dropzone strong{color:var(--text)}.upload-row{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--glass);border:1px solid var(--glass-border);border-radius:12px}.upload-row .name{font-size:13px;display:flex;justify-content:space-between;gap:8px}.upload-row .name .st{color:var(--muted);font-family:ui-monospace,monospace;font-size:11px}.bar{height:8px;border-radius:999px;background:#ffffff1f;overflow:hidden}.bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent2),var(--accent));transition:width .2s ease}.bar.transcode>span{background:linear-gradient(90deg,#b478ff,var(--accent2))}@media (max-width: 1100px){.dash-shell{grid-template-columns:1fr;overflow:auto}.dash-sidebar{min-height:auto}.dash-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.dash-logo,.side-label,.new-workspace{grid-column:1 / -1}.dash-content{grid-template-columns:1fr}.roadmap{max-height:none}.project-row{grid-template-columns:minmax(180px,1fr) 54px 126px minmax(104px,.8fr) 130px 172px}.admin-shell{height:auto;min-height:100vh;overflow:auto}.admin-grid{grid-template-columns:1fr;overflow:visible}.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-table,.usage-list,.status-list,.activity-feed{max-height:none}}@media (max-width: 760px){body{overflow:auto}.dash-shell{height:auto;min-height:100vh;padding:10px}.dash-sidebar{grid-template-columns:1fr}.dash-top{align-items:flex-start;gap:14px;flex-direction:column}.dash-user{width:100%}.dash-user button{margin-left:auto}.board-toolbar{grid-template-columns:1fr}.project-row,.project-row.head{grid-template-columns:1fr 74px;align-items:start}.project-row.head{display:none}.project-row>span:nth-child(3),.project-row>span:nth-child(4),.project-row>span:nth-child(5),.project-row>span:nth-child(6){grid-column:1 / -1}.project-row select{max-width:100%}.row-actions{justify-content:stretch}.row-actions button{flex:1}.topbar{align-items:flex-start;flex-direction:column}.project-tools,.asset{flex-wrap:wrap;margin:0}.player-layout,.compare-grid{grid-template-columns:1fr}.admin-metrics{grid-template-columns:1fr 1fr}.admin-top .brand{align-items:flex-start}.users-table .admin-row,.workspaces-table .admin-row,.admin-projects-table .admin-row,.activity-item{grid-template-columns:1fr}.admin-row.head{display:none}.admin-user-cell>span,.admin-row>span,.activity-item span,.activity-item strong,.activity-item small{white-space:normal}}
