@font-face{font-family:Outfit;src:url(/assets/outfit-regular-D5nSJVYk.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:LXGW Neo XiHei;src:url(/assets/LXGWNeoXiHei-Dm471KpK.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Outfit;src:url(/assets/outfit-medium-Bi1G6hPu.ttf)format("truetype");font-style:normal;font-weight:500 700;font-display:swap}@font-face{font-family:Haomi Unified;src:url(/assets/LXGWNeoXiHei-Dm471KpK.ttf)format("truetype");font-style:normal;font-weight:400 700;font-display:swap;unicode-range:U+3000-303F,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF}@font-face{font-family:Haomi Unified;src:url(/assets/outfit-regular-D5nSJVYk.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0-24F,U+1E??,U+2000-206F}@font-face{font-family:Haomi Unified;src:url(/assets/outfit-medium-Bi1G6hPu.ttf)format("truetype");font-style:normal;font-weight:500 700;font-display:swap;unicode-range:U+0-24F,U+1E??,U+2000-206F}:root{--stylesheet-revision:20260800;--accent:#1bb1c8;--accent-strong:#0a8ea4;--accent-soft:#f0fdff;--accent-ink:#063f49;--bg:#f6fcfd;--surface:#fff;--surface-2:#f0fdff;--surface-3:#e3f8fb;--ink:#000;--muted:#52686d;--faint:#8fa4a8;--line:#d7edf0;--line-strong:#bfe2e7;--danger:#e26053;--success:#20a394;--warning:#e79a35;--sidebar-width:216px;--sidebar-collapsed:68px;--text-display:22px;--text-page-title:22px;--text-section-title:18px;--text-ui:14px;--text-meta:12px;--text-caption:12px;--font-ui:"Haomi Unified", "LXGW Neo XiHei", "Outfit", "SimHei", "Heiti SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box;letter-spacing:0}html,body{background:var(--bg);min-height:100%;color:var(--type-primary);font-family:var(--font-ui);margin:0}body,body *,body :before,body :after{font-family:inherit!important}body{overflow:hidden}.feishu-login-shell{background:linear-gradient(#ffffffa8,#ffffffa8),radial-gradient(circle at 50% 20%,#dff5fc 0,#0000 42%),#f4f7f9;place-items:center;min-height:100vh;padding:24px;display:grid}.feishu-login-panel{text-align:center;background:#ffffffeb;border:1px solid #d6e1e9e6;border-radius:8px;width:min(420px,100%);padding:42px 36px 36px;box-shadow:0 24px 70px #1e3a481f}.feishu-login-brand{width:58px;height:58px;color:var(--type-inverse);background:linear-gradient(145deg,#1598c9,#68d1ef);border-radius:8px;place-items:center;margin:0 auto 18px;display:grid;box-shadow:0 10px 24px #168ab740}.feishu-login-brand span{font-size:22px;font-weight:700;line-height:1}.feishu-login-kicker{color:var(--type-accent);margin:0 0 7px;font-size:12px;font-weight:700}.feishu-login-panel h1{margin:0;font-size:22px;font-weight:700}.feishu-login-message{min-height:24px;color:var(--type-muted);margin:12px 0 22px;font-size:14px}.feishu-login-status{min-height:44px;color:var(--type-accent);background:#edf9fd;border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:11px 14px;font-size:14px;display:flex}.feishu-login-status.is-error{color:var(--type-accent);background:#f1f7f9}.feishu-login-spinner{border:2px solid #bce7f5;border-top-color:var(--accent-strong);border-radius:50%;flex:none;width:17px;height:17px;animation:.7s linear infinite feishu-login-spin}.feishu-login-retry{height:40px;color:var(--type-inverse);background:var(--accent-strong);border-radius:7px;align-items:center;gap:8px;margin-top:14px;padding:0 18px;display:inline-flex;box-shadow:0 7px 16px #168ab733}@keyframes feishu-login-spin{to{transform:rotate(360deg)}}button,input,textarea,select{color:inherit;font:inherit}button{border:0}button:not(:disabled),select:not(:disabled),input[type=checkbox]:not(:disabled),input[type=range]:not(:disabled),input[type=color]:not(:disabled){cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}input,textarea,select{border:1px solid var(--line);background:var(--surface);border-radius:6px;outline:none;width:100%;transition:border-color .14s,box-shadow .14s}input:focus,textarea:focus,select:focus{border-color:color-mix(in srgb, var(--accent), #000 14%);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent), transparent 82%)}textarea{resize:vertical}::selection{background:color-mix(in srgb, var(--accent), transparent 68%)}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);width:100%;height:100dvh;transition:grid-template-columns .18s;display:grid;overflow:hidden}.app-shell.sidebar-is-collapsed{grid-template-columns:var(--sidebar-collapsed) minmax(0, 1fr)}.main-stage{min-width:0;height:100dvh;overflow:hidden}.sidebar{z-index:40;min-width:0;height:100dvh;color:var(--type-inverse);background:#1d2125;border-right:1px solid #262b30;flex-direction:column;display:flex;position:relative;overflow:hidden}.brand-row{border-bottom:1px solid #2c3237;align-items:center;min-height:76px;padding:0 14px;display:flex}.brand{min-width:0;color:inherit;text-align:left;background:0 0;flex:1;align-items:center;gap:11px;padding:0;display:flex}.brand-mark{background:var(--accent);width:34px;height:34px;color:var(--type-accent);border-radius:7px;flex:0 0 34px;place-items:center;display:grid}.brand-copy{flex-direction:column;min-width:0;line-height:1;display:flex}.brand-copy small{color:var(--type-muted);margin-top:5px;font-size:12px;font-weight:700}.sidebar-toggle{color:var(--type-muted);flex:0 0 34px}.sidebar .icon-button:hover{background:#2a3035}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:18px 12px;display:flex}.nav-item{width:100%;min-height:42px;color:var(--type-muted);text-align:left;background:0 0;border-radius:6px;align-items:center;gap:12px;padding:0 12px;font-size:14px;transition:background .12s,color .12s;display:flex}.sidebar-footer{border-top:1px solid #2c3237;align-items:center;gap:11px;min-height:74px;padding:12px 14px;display:flex}.workspace-avatar{background:#30363b;border:1px solid #515961;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:14px;font-weight:700;display:grid}.workspace-meta{flex-direction:column;gap:4px;min-width:0;display:flex}.workspace-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.workspace-meta span{color:var(--type-muted);white-space:nowrap;font-size:12px}.workspace-meta i{background:#5db497;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.sidebar-is-collapsed .brand-copy,.sidebar-is-collapsed .nav-item span,.sidebar-is-collapsed .workspace-meta,.sidebar-is-collapsed .sidebar-toggle{display:none}.sidebar-is-collapsed .brand-row,.sidebar-is-collapsed .sidebar-footer{justify-content:center;padding-left:0;padding-right:0}.sidebar-is-collapsed .brand{flex:none}.sidebar-is-collapsed .sidebar-nav{align-items:center;padding-left:10px;padding-right:10px}.sidebar-is-collapsed .nav-item{justify-content:center;width:44px;padding:0}.screen{height:100%;padding:38px 42px 56px;overflow:auto}.screen-header{justify-content:space-between;align-items:flex-start;gap:24px;max-width:1440px;margin:0 auto 28px;display:flex}.eyebrow{color:var(--type-muted);margin:0 0 9px;font-size:12px;font-weight:700}.screen-header h1,.workspace-header h1{margin:0;font-weight:700}.screen-header h1{font-size:22px;line-height:1.15}.screen-subtitle{color:var(--type-muted);margin:8px 0 0;font-size:14px}.header-actions,.toolbar-group,.row-actions,.batch-actions{align-items:center;gap:8px;display:flex}.button{border:1px solid var(--line-strong);background:var(--surface);min-height:36px;color:var(--type-muted);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:14px;font-weight:600;line-height:1;transition:border-color .12s,background .12s,transform .12s;display:inline-flex}.button:hover:not(:disabled){background:#fafbfb;border-color:#abb2b8}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--type-accent)}.button-ghost{background:0 0;border-color:#0000}.button-danger{color:var(--type-error);background:snow;border-color:#e3c3c0}.icon-button{width:34px;height:34px;color:var(--type-muted);background:0 0;border-radius:6px;flex:0 0 34px;place-items:center;transition:background .12s,color .12s;display:inline-grid}.icon-button:hover:not(:disabled){background:var(--surface-3);color:var(--type-primary)}.icon-button.is-active{background:color-mix(in srgb, var(--accent), transparent 82%);color:var(--type-accent)}.icon-button.is-danger{color:var(--type-error)}.icon-button.is-danger:hover:not(:disabled){background:#f8e9e7}.project-toolbar{justify-content:space-between;align-items:center;gap:18px;max-width:1440px;margin:0 auto 16px;display:flex}.search-control{border:1px solid var(--line);background:var(--surface);width:min(440px,100%);height:38px;color:var(--type-muted);border-radius:6px;align-items:center;gap:9px;padding:0 10px;display:flex}.search-control input{min-width:0;height:100%;box-shadow:none;background:0 0;border:0;flex:1;padding:0}.search-control button{width:24px;height:24px;color:var(--type-muted);background:0 0;border-radius:4px;place-items:center;display:grid}.segmented{border:1px solid var(--line);background:#eff1f2;border-radius:7px;align-items:center;gap:2px;padding:3px;display:inline-flex}.segmented>button{min-height:28px;color:var(--type-muted);background:0 0;border-radius:4px;padding:0 11px;font-size:12px;font-weight:600}.segmented>button.is-active{background:var(--surface);color:var(--type-primary);box-shadow:0 1px 3px #14191e1a}.segmented.full{display:flex}.segmented.full>button{flex:1}.icon-segmented{gap:0}.icon-segmented .icon-button{flex-basis:31px;width:31px;height:29px;min-height:29px;padding:0}.project-list{flex-direction:column;gap:8px;max-width:1440px;margin:0 auto;display:flex}.project-list.is-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-item{border:1px solid var(--line);background:var(--surface);border-radius:7px;align-items:stretch;min-width:0;min-height:96px;transition:border-color .14s,box-shadow .14s;display:flex;position:relative}.project-item:hover{border-color:#c2c8cd;box-shadow:0 5px 18px #14191e0f}.project-open-area{text-align:left;background:0 0;flex:1;grid-template-columns:136px minmax(0,1fr) 164px;align-items:center;gap:18px;min-width:0;padding:10px 58px 10px 10px;display:grid}.project-cover{aspect-ratio:16/9;width:136px;color:var(--type-muted);background:#252a2e;border-radius:5px;place-items:center;display:grid;position:relative;overflow:hidden}.project-cover img{object-fit:cover;width:100%;height:100%}.project-mark{max-width:calc(100% - 10px);color:var(--type-inverse);text-overflow:ellipsis;white-space:nowrap;background:#111417c7;border-radius:3px;padding:3px 5px;font-size:12px;font-style:normal;font-weight:700;position:absolute;bottom:5px;left:5px;overflow:hidden}.project-copy{flex-direction:column;gap:5px;min-width:0;display:flex}.project-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.project-copy span,.project-copy small,.project-copy small{color:var(--type-muted);font-size:12px}.project-progress{align-items:center;gap:10px;display:flex}.project-progress>span{width:38px;color:var(--type-muted);text-align:right;font-size:12px}.project-progress>div{background:#eceff1;border-radius:4px;width:110px;height:4px;overflow:hidden}.project-progress i{background:var(--accent);height:100%;display:block}.project-menu{z-index:5;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.popover{z-index:80;border:1px solid var(--line);background:var(--surface);border-radius:7px;min-width:152px;padding:5px;position:absolute;box-shadow:0 12px 30px #13171b24}.menu-popover{top:calc(100% + 6px);right:0}.menu-popover button{width:100%;min-height:34px;color:var(--type-muted);text-align:left;background:0 0;border-radius:4px;align-items:center;gap:8px;padding:0 9px;font-size:12px;display:flex}.menu-popover button:hover{background:var(--surface-3)}.menu-popover button.danger{color:var(--type-error)}.project-list.is-grid .project-item{min-height:224px}.project-list.is-grid .project-open-area{flex-direction:column;align-items:stretch;gap:12px;padding:10px 10px 14px;display:flex}.project-list.is-grid .project-cover{width:100%}.project-list.is-grid .project-menu{top:18px;right:18px;transform:none}.project-list.is-grid .project-menu>.icon-button{color:var(--type-inverse);background:#14181bad}.empty-state{min-height:220px;color:var(--type-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px;display:flex}.empty-state>strong{color:var(--type-muted);font-size:14px}.empty-icon{border:1px solid var(--line);background:var(--surface);border-radius:8px;place-items:center;width:46px;height:46px;display:grid}.empty-state.has-mascot{gap:9px}.empty-state.has-mascot>img{object-fit:contain;object-position:center;filter:drop-shadow(0 8px 18px #20637b1a);width:clamp(112px,12vw,166px);height:126px}.empty-state.has-mascot>strong{color:var(--type-accent);font-weight:700}.empty-state.has-mascot.mascot-pose-cards>img{transform-origin:50% 78%;animation:2.8s cubic-bezier(.2,.8,.2,1) infinite mascotCardsPresent}@keyframes mascotCardsPresent{0%,64%,to{transform:translateY(0)rotate(0)}16%{transform:translateY(-5px)rotate(-2deg)}30%{transform:translateY(-1px)rotate(1.5deg)}44%{transform:translateY(-4px)rotate(-1deg)}}.app-shell.is-template-editor{grid-template-columns:minmax(0,1fr)}.template-editor-shell{background:#f7f9fb;grid-template-rows:56px minmax(0,1fr) 62px;width:100%;min-width:0;height:100dvh;display:grid;overflow:hidden}.template-editor-header{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border-bottom:1px solid #e5eaee;grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr);align-items:center;gap:16px;min-width:0;padding:0 18px;display:grid;position:relative;box-shadow:0 1px #fffc}.template-editor-identity,.template-editor-meta,.template-editor-tabs,.template-editor-identity>button{align-items:center;display:flex}.template-editor-identity{gap:8px;min-width:0}.template-editor-mark{width:31px;height:31px;color:var(--type-accent);background:#5fc4eb;border-radius:7px;flex:0 0 31px;place-items:center;font-size:16px;font-weight:700;display:grid}.template-editor-identity>button:not(.icon-button){min-width:0;color:var(--type-accent);background:0 0;gap:6px}.template-editor-identity>button strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.template-editor-identity>input{width:min(320px,45vw);height:34px}.template-editor-tabs{gap:2px;height:100%}.template-editor-tabs button{height:100%;color:var(--type-muted);background:0 0;align-items:center;gap:7px;padding:0 22px;font-size:12px;font-weight:700;display:flex;position:relative}.template-editor-tabs button:after{content:"";background:0 0;border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:20px;right:20px}.template-editor-tabs button:hover,.template-editor-tabs button.is-active{color:var(--type-accent)}.template-editor-tabs button.is-active:after{background:#5fc4eb}.template-editor-meta{color:var(--type-muted);justify-content:flex-end;gap:9px;font-size:12px}.template-editor-meta i{background:#d8dfe4;width:1px;height:12px}.template-editor-content{background:#fff;min-width:0;min-height:0;overflow:hidden}.template-editor-content>*{height:100%}.template-editor-footer{z-index:35;background:#fff;border-top:1px solid #e4e9ed;justify-content:space-between;align-items:center;gap:16px;padding:0 18px;display:flex;position:relative;box-shadow:0 -8px 28px #192d3a0d}.template-editor-footer>div,.template-save-note{align-items:center;gap:9px;display:flex}.template-save-note{color:var(--type-muted);font-size:12px}.template-save-note svg{color:var(--type-success)}.template-view-heading{flex-direction:column;gap:2px;min-width:200px;margin-right:8px;display:flex}.template-view-heading>span{color:var(--type-accent);font-size:14px;font-weight:700}.template-view-heading>small{color:var(--type-muted);font-size:12px}.modal-backdrop{z-index:200;background:#1114177a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid #d7dbde;border-radius:8px;flex-direction:column;width:min(100%,620px);max-height:min(90dvh,920px);display:flex;overflow:hidden;box-shadow:0 24px 70px #0a0d103d}.modal-small{width:min(100%,450px)}.modal-large{width:min(100%,860px)}.modal-wide{width:min(100%,1180px)}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:0 22px;display:flex}.modal-header h2{margin:0;font-size:18px}.modal-header .eyebrow{margin-bottom:5px}.modal-body{flex:1;padding:22px;overflow:auto}.modal-footer{border-top:1px solid var(--line);background:var(--surface-2);justify-content:flex-end;align-items:center;gap:8px;min-height:64px;padding:0 22px;display:flex}.modal-count{color:var(--type-muted);margin-right:auto;font-size:12px}.form-stack,.form-grid{gap:16px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field>span{color:var(--type-muted);font-size:12px;font-weight:700}.field input,.field select{height:38px;padding:0 10px}.field textarea{min-height:90px;padding:9px 10px}.span-2{grid-column:span 2}.check-row{border:1px solid var(--line);background:var(--surface-2);border-radius:6px;align-items:flex-start;gap:10px;padding:12px;display:flex}.check-row input{flex:0 0 16px;width:16px;height:16px;margin-top:1px}.check-row span{flex-direction:column;gap:3px;display:flex}.check-row strong{font-size:12px}.check-row small{color:var(--type-muted);font-size:12px;line-height:1.5}.toast{z-index:400;max-width:360px;min-height:42px;color:var(--type-inverse);background:#23282d;border:1px solid #3f464c;border-radius:7px;align-items:center;gap:9px;padding:0 14px;font-size:12px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 30px #0a0d1038}.toast-success svg{color:var(--type-success)}.toast-danger svg{color:var(--type-error)}.contact-table{border:1px solid var(--line);background:var(--surface);border-radius:7px;max-width:1440px;margin:0 auto;overflow:hidden}.contact-row{border-top:1px solid var(--line);min-height:64px;color:var(--type-muted);grid-template-columns:minmax(150px,1.1fr) minmax(120px,.9fr) minmax(130px,.9fr) minmax(160px,1.2fr) minmax(160px,1.4fr) 86px;align-items:center;gap:12px;padding:0 16px;font-size:12px;display:grid}.contact-row:first-child{border-top:0}.contact-head{background:var(--surface-2);min-height:42px;color:var(--type-muted);font-size:12px;font-weight:700}.contact-name{min-width:0;color:var(--type-primary);align-items:center;gap:10px;display:flex}.contact-name i{width:30px;height:30px;color:var(--type-muted);background:#e9edf0;border-radius:50%;flex:0 0 30px;place-items:center;font-size:12px;font-style:normal;display:grid}.contact-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-layout{grid-template-columns:1fr;gap:14px;max-width:940px;margin:0 auto;display:grid}.settings-screen .screen-header{max-width:940px}.settings-section{border:1px solid var(--line);background:var(--surface);border-radius:7px;grid-template-columns:220px minmax(0,1fr);gap:28px;padding:24px;display:grid}.settings-section-title{align-items:flex-start;gap:10px;display:flex}.settings-section-title svg{color:var(--type-muted);margin-top:1px}.settings-section-title h2{margin:0;font-size:14px}.settings-section-title p{color:var(--type-muted);margin:5px 0 0;font-size:12px}.settings-fields{gap:13px;display:grid}.setting-toggle{border:1px solid var(--line);background:var(--surface-2);border-radius:6px;justify-content:space-between;align-items:center;gap:20px;min-height:50px;padding:0 12px;display:flex}.setting-toggle span{flex-direction:column;gap:3px;display:flex}.setting-toggle strong{font-size:12px}.setting-toggle small{color:var(--type-muted);font-size:12px}.setting-toggle input{appearance:none;background:#c9ced2;border:0;border-radius:12px;flex:0 0 38px;width:38px;height:22px;position:relative}.setting-toggle input:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .14s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #14191e40}.setting-toggle input:checked{background:var(--accent)}.setting-toggle input:checked:after{transform:translate(16px)}.color-swatches,.export-colors{flex-wrap:wrap;gap:10px;display:flex}.color-swatch,.export-colors button{width:34px;height:34px;color:var(--type-inverse);border:2px solid #0000;border-radius:7px;place-items:center;display:grid}.color-swatch.is-selected,.export-colors button.is-active{border-color:var(--ink);box-shadow:inset 0 0 0 2px #fff}.settings-actions{flex-wrap:wrap;gap:8px;display:flex}.mobile-menu{display:none}.workspace{background:var(--surface);grid-template-rows:74px 48px minmax(0,1fr);height:100%;display:grid}.workspace-header{border-bottom:1px solid var(--line);align-items:center;gap:14px;min-width:0;padding:0 22px;display:flex}.workspace-project-title{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.workspace-project-mark{min-width:54px;max-width:90px;height:34px;color:var(--type-inverse);text-overflow:ellipsis;white-space:nowrap;background:#252a2e;border-radius:5px;place-items:center;padding:0 8px;font-size:12px;font-weight:700;display:grid;overflow:hidden}.workspace-project-title>div{min-width:0}.workspace-header h1{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.workspace-header p{color:var(--type-muted);margin:5px 0 0;font-size:12px}.workspace-status{color:var(--type-muted);align-items:center;gap:6px;font-size:12px;display:flex}.workspace-status i{background:var(--success);border-radius:50%;width:7px;height:7px}.workspace-tabs{border-bottom:1px solid var(--line);background:var(--surface-2);scrollbar-width:none;align-items:stretch;gap:2px;padding:0 14px;display:flex;overflow-x:auto}.workspace-tabs::-webkit-scrollbar{display:none}.workspace-tabs button{min-width:max-content;color:var(--type-muted);background:0 0;align-items:center;gap:7px;padding:0 14px;font-size:12px;font-weight:600;display:flex;position:relative}.workspace-tabs button:hover,.workspace-tabs button.is-active{color:var(--type-primary)}.workspace-tabs button.is-active:after{background:var(--accent);content:"";height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.workspace-content{min-width:0;min-height:0;overflow:hidden}.table-view,.board-view,.plan-view,.callsheet-view,.continuity-view{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid}.view-toolbar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:18px;min-height:54px;padding:8px 18px;display:flex}.toolbar-toggle,.toolbar-check{min-height:34px;color:var(--type-muted);background:0 0;border-radius:6px;align-items:center;gap:7px;padding:0 9px;font-size:12px;display:inline-flex}.toolbar-toggle:hover,.toolbar-toggle.is-active{background:var(--surface-3);color:var(--type-primary)}.toolbar-check input{width:15px;height:15px}.toolbar-summary,.toolbar-hint{color:var(--type-muted);align-items:center;gap:8px;font-size:12px;display:flex}.toolbar-summary i{background:var(--line-strong);width:1px;height:12px}.batch-bar{border-bottom:1px solid color-mix(in srgb, var(--accent), #fff 52%);background:color-mix(in srgb, var(--accent), #fff 88%);min-height:46px;color:var(--type-warning);align-items:center;gap:14px;padding:6px 18px;font-size:12px;display:flex}.batch-bar>button{color:inherit;background:0 0;align-items:center;gap:7px;display:flex}.batch-actions{margin-left:auto}.rotate-up{transform:rotate(-90deg)}.shot-table-scroll{background:#eceff1;min-height:0;position:relative;overflow:auto}.shot-table{border-spacing:0;border-collapse:separate;table-layout:fixed;background:var(--surface);width:max-content;min-width:100%}.shot-table th,.shot-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:top}.shot-table th{z-index:10;height:42px;color:var(--type-muted);text-align:center;vertical-align:middle;background:#f1f3f4;padding:0 8px;font-size:12px;font-weight:700;position:sticky;top:0}.shot-table td{background:var(--surface);height:132px;padding:7px;transition:background .12s}.compact-rows .shot-table td{height:102px}.shot-table .drag-column{width:34px;min-width:34px;color:var(--type-muted);text-align:center;vertical-align:middle}.shot-table .select-column{text-align:center;vertical-align:middle;width:38px;min-width:38px}.select-column button{width:28px;height:28px;color:var(--type-muted);background:0 0;border-radius:4px;place-items:center;margin:auto;display:grid}.shot-table .shot-number-column{text-align:center;vertical-align:middle;width:48px;min-width:48px}.shot-number-column strong{width:28px;height:28px;color:var(--type-inverse);background:#252a2e;border-radius:5px;place-items:center;margin:auto;font-size:12px;display:grid}.shot-table .row-menu-column{text-align:center;vertical-align:middle;width:46px;min-width:46px}.shot-table textarea,.shot-table select,.shot-table input{width:100%;box-shadow:none;color:var(--type-muted);background:0 0;border-color:#0000;font-size:12px}.shot-table textarea{resize:none;height:116px;min-height:80px;padding:6px;line-height:1.55}.compact-rows .shot-table textarea{height:86px}.shot-table textarea:hover,.shot-table textarea:focus,.shot-table select:hover,.shot-table select:focus,.shot-table input:hover,.shot-table input:focus{border-color:var(--line-strong);background:var(--surface)}.shot-table select,.shot-table .cell-number{height:34px;padding:0 7px}.cell-number{text-align:center}.status-select{font-weight:700}.status-select.status-已完成{color:var(--type-success)}.status-select.status-待补拍{color:var(--type-error)}.shot-image-cell{flex-direction:column;gap:5px;height:100%;display:flex;position:relative}.shot-image-frame{width:100%;min-height:82px;color:var(--type-muted);background:#e9edf0;border-radius:5px;flex:1;place-items:center;display:grid;position:relative;overflow:hidden}.shot-image-frame.is-empty{background:#f8f9fa;border:1px dashed #bcc3c8}.shot-image-frame.is-empty span{margin-top:4px;font-size:12px}.shot-image-actions{justify-content:center;gap:2px;display:flex}.shot-image-actions .icon-button{flex-basis:28px;width:28px;height:26px}.row-menu{display:inline-block;position:relative}.row-menu .menu-popover{top:calc(100% + 4px);right:0}.add-row-button{width:max-content;min-height:36px;color:var(--type-muted);background:#f9fafb;border:1px dashed #b9c0c6;border-radius:6px;align-items:center;gap:7px;margin:12px;padding:0 12px;font-size:12px;display:flex;position:sticky;left:14px}.column-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.column-settings label{border:1px solid var(--line);border-radius:5px;align-items:center;gap:9px;min-height:38px;padding:0 10px;font-size:12px;display:flex}.column-settings input{width:15px;height:15px}.assistant-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:18px;min-height:430px;display:grid}.assistant-input{flex-direction:column;gap:10px;min-width:0;display:flex}.assistant-input textarea{min-height:360px;font-family:var(--font-ui);flex:1;padding:12px;font-size:12px;line-height:1.65}.copy-prompt-button{align-self:flex-start}.assistant-preview{border:1px solid var(--line);background:var(--surface-2);border-radius:7px;grid-template-rows:38px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.assistant-preview-head{border-bottom:1px solid var(--line);color:var(--type-muted);justify-content:space-between;align-items:center;padding:0 12px;font-size:12px;display:flex}.assistant-preview-head strong{width:22px;height:22px;color:var(--type-muted);background:#dfe3e6;border-radius:50%;place-items:center;font-size:12px;display:grid}.assistant-preview-list{overflow:auto}.assistant-preview-list>div{border-bottom:1px solid var(--line);grid-template-columns:28px minmax(0,1fr);gap:8px;padding:10px 12px;display:grid}.assistant-preview-list>div>span{width:26px;height:26px;color:var(--type-inverse);background:#252a2e;border-radius:4px;place-items:center;font-size:12px;display:grid}.assistant-preview-list strong{font-size:14px}.assistant-preview-list p{color:var(--type-muted);margin:4px 0 0;font-size:12px;line-height:1.45}.drawing-toolbar{border:1px solid var(--line);background:var(--surface-2);border-radius:6px 6px 0 0;align-items:center;gap:5px;min-height:48px;padding:6px 8px;display:flex}.toolbar-divider{background:var(--line-strong);width:1px;height:22px;margin:0 5px}.drawing-color{place-items:center;width:34px;height:34px;display:grid;position:relative}.drawing-color input{opacity:0;width:1px;height:1px;position:absolute}.drawing-color i{width:22px;height:22px;box-shadow:0 0 0 1px var(--line-strong);border:3px solid #fff;border-radius:50%}.drawing-size{border:1px solid var(--line);min-height:34px;color:var(--type-muted);background:#f7fafb;border-radius:8px;align-items:center;gap:6px;margin-left:5px;padding:3px 8px;font-size:12px;display:flex}.drawing-size-preview{background:#fff;border:1px solid #d8e2e8;border-radius:6px;flex:0 0 36px;place-items:center;width:36px;height:20px;display:grid}.drawing-size-preview i{border-radius:999px;width:26px;min-height:2px;transition:height .14s,background-color .14s;display:block;box-shadow:0 1px 2px #182d3d24}.drawing-size input{width:92px;box-shadow:none;accent-color:var(--accent);border:0}.drawing-size output{width:30px;color:var(--type-primary);font-variant-numeric:tabular-nums;text-align:right;font-size:12px}.drawing-stage{border:1px solid var(--line);background:#22272b;border-top:0;place-items:center;min-height:380px;max-height:64dvh;display:grid;overflow:auto}.drawing-stage canvas{touch-action:none;cursor:crosshair;max-width:100%;max-height:62dvh;display:block}.board-view{background:#eef0f2}.storyboard-grid{grid-auto-rows:max-content;align-content:start;gap:12px;min-height:0;padding:16px;display:grid;overflow:auto}.storyboard-grid.columns-4{grid-template-columns:repeat(4,minmax(210px,1fr))}.storyboard-grid.columns-3{grid-template-columns:repeat(3,minmax(260px,1fr))}.story-card{border:1px solid var(--line);background:var(--surface);border-radius:7px;min-width:0;transition:border-color .14s,box-shadow .14s;overflow:hidden}.story-card:hover{border-color:#b9c0c6;box-shadow:0 7px 20px #161a1e14}.story-image{aspect-ratio:16/9;width:100%;color:var(--type-muted);background:#dfe3e6;place-items:center;display:grid;position:relative;overflow:hidden}.story-image img{object-fit:cover;width:100%;height:100%;transition:transform .18s}.story-card:hover .story-image img{transform:scale(1.015)}.story-image>i,.story-image>em{min-width:28px;height:24px;color:var(--type-inverse);background:#14171ac2;border-radius:4px;place-items:center;padding:0 6px;font-size:12px;font-style:normal;font-weight:700;display:grid;position:absolute}.story-image>i{top:7px;left:7px}.story-image>em{bottom:7px;right:7px}.story-meta{justify-content:space-between;align-items:center;gap:10px;min-height:46px;padding:8px 10px;display:flex}.story-meta>div{flex-direction:column;gap:2px;min-width:0;display:flex}.story-meta span{color:var(--type-muted);font-size:12px}.status-pill{min-height:22px;color:var(--type-muted);white-space:nowrap;background:#edf0f2;border-radius:12px;justify-content:center;align-items:center;padding:0 7px;font-size:12px;font-weight:700;display:inline-flex}.status-pill.status-已完成,.status-pill.已完成{color:var(--type-success);background:#e2f0eb}.status-pill.status-待补拍{color:var(--type-error);background:#f7e6e4}.status-pill.进行中{color:var(--type-warning);background:#fff0d9}.story-card>p{min-height:49px;color:var(--type-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;padding:0 10px 10px;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.presentation-overlay{z-index:500;color:var(--type-inverse);background:#121518;grid-template-rows:68px minmax(0,1fr) 54px;display:grid;position:fixed;inset:0}.presentation-overlay>header{border-bottom:1px solid #2b3035;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.presentation-overlay>header>div{align-items:center;gap:12px;display:flex}.presentation-overlay>header span{background:var(--accent);color:var(--type-accent);border-radius:4px;padding:5px 7px;font-size:12px;font-weight:700}.presentation-overlay>header strong{font-size:14px}.presentation-overlay .icon-button{color:var(--type-muted)}.presentation-overlay .icon-button:hover{color:var(--type-inverse);background:#2c3237}.presentation-stage{grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;gap:18px;min-height:0;padding:28px 18px;display:grid}.presentation-arrow{width:48px;height:64px;color:var(--type-muted);background:#252a2e;border-radius:7px;place-items:center;display:grid}.presentation-arrow:hover:not(:disabled){color:var(--type-inverse);background:#333a40}.presentation-arrow.previous svg{transform:rotate(180deg)}.presentation-shot{grid-template-columns:minmax(0,1.65fr) minmax(310px,.7fr);gap:26px;min-width:0;max-width:1500px;max-height:78dvh;margin:auto;display:grid}.presentation-image{aspect-ratio:16/9;background:#1c2024;border:1px solid #333a40;border-radius:7px;place-items:center;min-height:0;display:grid;overflow:hidden}.presentation-image img{object-fit:contain;width:100%;height:100%}.presentation-copy{align-content:center;gap:28px;min-width:0;display:grid}.presentation-number span{color:var(--type-muted);font-size:12px;font-weight:700}.presentation-number strong{color:var(--type-accent);margin-top:2px;font-size:22px;line-height:1;display:block}.presentation-copy h2{margin:0;font-size:clamp(18px,2vw,30px);line-height:1.35}.presentation-copy p{color:var(--type-muted);margin:14px 0 0;font-size:12px;line-height:1.65}.presentation-copy ul{flex-wrap:wrap;gap:7px;margin:18px 0 0;padding:0;list-style:none;display:flex}.presentation-copy li{color:var(--type-muted);border:1px solid #384047;border-radius:4px;padding:6px 8px;font-size:12px}.presentation-overlay>footer{border-top:1px solid #2b3035;align-items:center;gap:14px;padding:0 24px;display:flex}.presentation-overlay>footer span{width:52px;color:var(--type-muted);font-size:12px}.presentation-overlay>footer div{background:#30363b;flex:1;height:3px;overflow:hidden}.presentation-overlay>footer i{background:var(--accent);height:100%;transition:width .18s;display:block}.plan-view{background:#eef0f2;overflow:hidden}.plan-view>.view-toolbar{grid-row:1}.plan-view{grid-template-rows:auto auto minmax(0,1fr)}.unplanned-tray{border:1px solid var(--line);background:var(--surface);border-radius:7px;margin:12px 16px 0;overflow:hidden}.unplanned-tray>header{border-bottom:1px solid var(--line);background:var(--surface-2);justify-content:space-between;align-items:center;min-height:40px;padding:0 12px;display:flex}.unplanned-tray>header>div{align-items:center;gap:8px;display:flex}.unplanned-tray>header strong{font-size:12px}.unplanned-tray>header span{width:21px;height:21px;color:var(--type-muted);background:#dfe3e6;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.plan-shot-strip{align-items:stretch;gap:8px;min-height:104px;padding:10px;display:flex;overflow-x:auto}.tray-empty{width:100%;color:var(--type-success);justify-content:center;align-items:center;gap:7px;font-size:12px;display:flex}.plan-list{min-height:0;padding:12px 16px 24px;overflow:auto}.plan-band{border:1px solid var(--line);background:var(--surface);border-radius:7px;margin-bottom:12px;overflow:hidden}.plan-band>header{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:64px;padding:8px 12px;display:grid}.plan-index{width:34px;height:34px;color:var(--type-inverse);background:#252a2e;border-radius:5px;place-items:center;font-size:12px;font-weight:700;display:grid}.plan-title h2{margin:0;font-size:14px}.plan-title p{color:var(--type-muted);flex-wrap:wrap;align-items:center;gap:5px;margin:6px 0 0;font-size:12px;display:flex}.plan-title p svg:not(:first-child){margin-left:7px}.plan-stat{border-right:1px solid var(--line);align-items:baseline;gap:4px;padding:0 10px;display:flex}.plan-stat strong{font-size:18px}.plan-stat span{color:var(--type-muted);font-size:12px}.plan-drop-area{background:#f8f9fa;align-items:stretch;gap:8px;min-height:104px;padding:10px;display:flex;overflow-x:auto}.plan-drop-empty{min-width:100%;min-height:80px;color:var(--type-muted);border:1px dashed #bec5ca;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.plan-shot-card{border:1px solid var(--line);background:var(--surface);width:260px;min-width:260px;color:var(--type-muted);border-radius:6px;grid-template-columns:88px minmax(0,1fr) 24px;align-items:center;gap:9px;padding:6px;display:grid}.plan-shot-card:hover{border-color:#b6bdc3}.plan-shot-image span{width:20px;height:20px;color:var(--type-inverse);background:#121619b8;border-radius:3px;place-items:center;font-size:12px;display:grid;position:absolute;top:4px;left:4px}.plan-shot-card>div:nth-child(2){min-width:0}.plan-shot-card strong{color:var(--type-primary);font-size:12px}.plan-shot-card p{color:var(--type-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:3px 0;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.plan-shot-card small{font-size:12px}.plan-shot-card>.icon-button{flex-basis:24px;width:24px;height:24px}.plan-notes{border-top:1px solid var(--line);color:var(--type-muted);margin:0;padding:9px 12px;font-size:12px}.callsheet-view{background:#eef0f2}.callsheet-layout{grid-template-columns:280px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.callsheet-list{border-right:1px solid var(--line);background:var(--surface);min-height:0;overflow:auto}.callsheet-list>header,.continuity-shot-list>header{border-bottom:1px solid var(--line);min-height:42px;color:var(--type-muted);justify-content:space-between;align-items:center;padding:0 13px;font-size:12px;display:flex}.callsheet-list>header strong,.continuity-shot-list>header strong{color:var(--type-primary);font-size:12px}.callsheet-list-item{border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:8px minmax(0,1fr) 18px;align-items:center;gap:10px;width:100%;min-height:66px;padding:8px 12px;display:grid}.callsheet-list-item:hover,.callsheet-list-item.is-active{background:var(--surface-2)}.callsheet-list-item.is-active{box-shadow:3px 0 0 var(--accent) inset}.sheet-status-dot{background:#aeb5ba;border-radius:50%;width:7px;height:7px}.sheet-status-dot.进行中{background:var(--warning)}.sheet-status-dot.已完成{background:var(--success)}.callsheet-list-item div{min-width:0}.callsheet-list-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.callsheet-list-item p{color:var(--type-muted);margin:5px 0 0;font-size:12px}.callsheet-detail{min-height:0;padding:16px;overflow:auto}.callsheet-detail-actions{justify-content:flex-end;align-items:center;gap:5px;max-width:980px;margin:0 auto 8px;display:flex}.callsheet-detail-actions select{background:var(--surface);width:100px;height:34px;margin-right:auto;padding:0 8px;font-size:12px}.callsheet-document{border:1px solid var(--line);background:#fff;border-radius:4px;max-width:980px;margin:0 auto;padding:28px;box-shadow:0 7px 24px #12161912}.callsheet-document>header{border-bottom:2px solid #252a2e;justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.document-brand{align-items:center;gap:8px;display:flex}.document-brand img{object-fit:contain;width:30px;height:30px;display:block}.document-brand strong{font-size:12px}.document-mark{color:var(--type-muted);font-size:12px;font-weight:700}.callsheet-title{padding:28px 0 22px;position:relative}.callsheet-title p{color:var(--type-muted);margin:0 0 5px;font-size:12px;font-weight:700}.callsheet-title h2{max-width:calc(100% - 100px);margin:0;font-size:22px}.callsheet-title>.status-pill{position:absolute;top:28px;right:0}.callsheet-facts{border:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.callsheet-facts>div{border-right:1px solid var(--line);grid-template-columns:24px minmax(0,1fr);gap:4px 7px;min-width:0;padding:12px;display:grid}.callsheet-facts>div:last-child{border-right:0}.callsheet-facts svg{color:var(--type-muted);grid-row:span 2}.callsheet-facts span{color:var(--type-muted);font-size:12px}.callsheet-facts strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.document-section{margin-top:24px}.document-section h3{margin:0 0 9px;font-size:12px}.schedule-table{border:1px solid var(--line)}.schedule-row{border-top:1px solid var(--line);grid-template-columns:54px 40px 88px minmax(190px,1.4fr) minmax(150px,.8fr);align-items:center;min-height:58px;font-size:12px;display:grid}.schedule-row:first-child{border-top:0}.schedule-row>span{border-right:1px solid var(--line);height:100%;padding:8px;line-height:1.45}.schedule-row>span:last-child{border-right:0}.schedule-head{min-height:32px;color:var(--type-muted);background:#f1f3f4;font-size:12px;font-weight:700}.schedule-thumb{place-items:center;display:grid}.schedule-thumb img{aspect-ratio:16/9;object-fit:cover;width:72px}.schedule-empty{color:var(--type-muted);text-align:center;padding:22px;font-size:12px}.document-columns{grid-template-columns:1fr 1fr;gap:22px;display:grid}.crew-list{border-top:1px solid var(--line)}.crew-list>div{border-bottom:1px solid var(--line);grid-template-columns:90px minmax(0,1fr) 110px;align-items:center;min-height:38px;font-size:12px;display:grid}.crew-list span,.crew-list small{color:var(--type-muted)}.document-info-list{border-top:1px solid var(--line);margin:0}.document-info-list>div{border-bottom:1px solid var(--line);grid-template-columns:88px minmax(0,1fr);align-items:center;min-height:38px;display:grid}.document-info-list dt,.document-info-list dd{margin:0;font-size:12px}.document-info-list dt{color:var(--type-muted)}.crew-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.crew-selector label{border:1px solid var(--line);border-radius:5px;align-items:center;gap:8px;padding:8px;display:flex}.crew-selector input{width:15px;height:15px}.crew-selector span{flex-direction:column;min-width:0;display:flex}.crew-selector strong{font-size:12px}.crew-selector small{color:var(--type-muted);font-size:12px}.continuity-view{background:#eef0f2}.continuity-layout{grid-template-columns:260px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.continuity-shot-list{border-right:1px solid var(--line);background:var(--surface);min-height:0;overflow:auto}.continuity-shot-list>button{border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:70px minmax(0,1fr) 16px;align-items:center;gap:9px;width:100%;min-height:66px;padding:7px 10px;display:grid}.continuity-shot-list>button:hover,.continuity-shot-list>button.is-active{background:var(--surface-2)}.continuity-shot-list>button.is-active{box-shadow:3px 0 0 var(--accent) inset}.continuity-thumb{aspect-ratio:16/9;width:70px;color:var(--type-muted);background:#e2e6e8;border-radius:4px;place-items:center;display:grid;overflow:hidden}.continuity-thumb img{object-fit:cover;width:100%;height:100%}.continuity-shot-list>button>div{min-width:0}.continuity-shot-list strong{font-size:12px;display:block}.continuity-shot-list small{color:var(--type-muted);margin-top:4px;font-size:12px;display:block}.continuity-detail{min-height:0;padding:18px;overflow:auto}.continuity-shot-head{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,360px) minmax(0,1fr);align-items:center;gap:20px;margin-bottom:16px;padding-bottom:16px;display:grid}.continuity-large-thumb{aspect-ratio:16/9;color:var(--type-muted);background:#dfe3e6;border-radius:6px;place-items:center;display:grid;overflow:hidden}.continuity-large-thumb img{object-fit:cover;width:100%;height:100%}.continuity-shot-head p{color:var(--type-muted);margin:0 0 6px;font-size:12px;font-weight:700}.continuity-shot-head h2{margin:0;font-size:18px;line-height:1.45}.continuity-shot-head span{color:var(--type-muted);margin-top:10px;font-size:12px;display:block}.continuity-notes{background:var(--surface);min-height:80px;padding:9px}.take-table{border:1px solid var(--line);background:var(--surface);border-radius:7px;margin-top:18px;overflow:hidden}.take-row{border-top:1px solid var(--line);grid-template-columns:58px 100px minmax(130px,.8fr) minmax(180px,1.3fr) 120px 42px;align-items:center;gap:8px;min-height:54px;padding:0 8px;display:grid}.take-row:first-child{border-top:0}.take-head{background:var(--surface-2);min-height:36px;color:var(--type-muted);font-size:12px;font-weight:700}.take-row>span{min-width:0;color:var(--type-muted);font-size:12px}.take-row>span:first-child{color:var(--type-primary);text-align:center}.take-row input,.take-row select{height:32px;padding:0 7px;font-size:12px}.take-rating.rating-最佳{color:var(--type-success);background:#edf7f3;border-color:#90c1af}.take-rating.rating-NG{color:var(--type-error);background:#fff5f4;border-color:#e1b7b3}.slate-overlay{z-index:600;color:var(--type-inverse);background:#101316;grid-template-rows:72px minmax(0,1fr) 100px;display:grid;position:fixed;inset:0;overflow:hidden}.slate-overlay.clap{background:#fff}.slate-overlay>header{border-bottom:1px solid #2c3237;justify-content:space-between;align-items:center;padding:0 28px;display:flex}.slate-brand{align-items:center;gap:9px;display:flex}.slate-brand svg{color:var(--type-accent)}.slate-overlay .icon-button{color:var(--type-muted)}.slate-main{align-content:center;gap:42px;width:min(1120px,100% - 48px);margin:auto;display:grid}.slate-project span,.slate-numbers span,.slate-meta span{color:var(--type-muted);font-size:12px;font-weight:700}.slate-project h1{margin:10px 0 7px;font-size:clamp(30px,5vw,66px);line-height:1.05}.slate-project p{color:var(--type-accent);margin:0;font-size:14px;font-weight:700}.slate-numbers{border:1px solid #394047;grid-template-columns:1fr 1fr;display:grid}.slate-numbers>div{border-right:1px solid #394047;padding:22px 28px}.slate-numbers>div:last-child{border-right:0}.slate-numbers strong{font-family:var(--font-ui);margin-top:7px;font-size:clamp(56px,9vw,120px);line-height:1;display:block}.slate-meta{grid-template-columns:1fr 1fr 1.2fr;gap:18px;display:grid}.slate-meta>div{border-top:1px solid #394047;padding-top:12px}.slate-meta strong{font-family:var(--font-ui);margin-top:7px;font-size:clamp(16px,2.2vw,28px);display:block}.slate-overlay>footer{border-top:1px solid #2c3237;justify-content:center;align-items:center;gap:14px;display:flex}.slate-overlay .button-ghost{color:var(--type-muted)}.clap-button{background:var(--accent);width:210px;height:54px;color:var(--type-accent);border-radius:6px;justify-content:center;align-items:center;gap:11px;font-size:14px;font-weight:700;display:flex}.clap-button>span{width:32px;height:28px;position:relative}.clap-button i{background:#24282c;width:32px;height:7px;display:block;position:absolute;left:0}.clap-button i:first-child{transform-origin:0;top:4px;transform:rotate(-10deg)}.clap-button i:last-child{bottom:4px}.slate-countdown{color:var(--type-accent);font-family:var(--font-ui);text-align:center;font-size:clamp(150px,30vw,420px);font-weight:700;line-height:1}.export-controls{border-right:1px solid var(--line);background:var(--surface);min-height:0;padding:20px;overflow:auto}.export-controls>header{border-bottom:1px solid var(--line);padding-bottom:14px}.export-controls h2{margin:0;font-size:18px}.export-controls section{border-bottom:1px solid var(--line);padding:16px 0}.export-controls h3{color:var(--type-muted);margin:0 0 10px;font-size:12px}.export-checks{gap:6px;display:grid}.export-checks label{border:1px solid var(--line);background:var(--surface-2);border-radius:5px;grid-template-columns:16px 20px minmax(0,1fr);align-items:center;gap:8px;min-height:38px;padding:0 9px;font-size:12px;display:grid}.export-checks input{width:15px;height:15px}.export-colors button{width:30px;height:30px}.export-actions{gap:7px;padding-top:18px;display:grid}.export-actions .button{width:100%}.export-preview-shell{min-height:0;padding:18px;overflow:auto}.export-preview-shell>header{max-width:1180px;color:var(--type-muted);justify-content:space-between;align-items:center;margin:0 auto 8px;font-size:12px;display:flex}.export-report{--report-color:#49b7dc;width:1120px;min-height:790px;color:var(--type-primary);background:#fff;margin:0 auto;padding:28px;box-shadow:0 8px 28px #1216191f}.export-report.portrait{width:790px;min-height:1120px}.report-header{border-bottom:3px solid var(--report-color);justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:14px;display:flex}.report-header h1{margin:0;font-size:18px}.report-header p{color:var(--type-muted);margin:5px 0 0;font-size:12px}.report-header>div:last-child{color:var(--type-muted);gap:10px;font-size:12px;display:flex}.report-section{margin-top:24px}.report-section h2{margin:0 0 10px;font-size:12px}.report-table-section{overflow-x:auto}.report-section table{border-spacing:0;border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.report-section th,.report-section td{vertical-align:middle;border:1px solid #666;padding:5px;line-height:1.35}.report-section th{background:var(--report-color);color:var(--type-inverse);text-align:center;font-weight:700}.report-section th:first-child{width:4%}.report-section th:nth-child(2){width:14%}.report-section th:nth-child(3){width:5%}.report-section th:nth-child(4){width:6%}.report-section th:nth-child(5){width:22%}.report-section th:nth-child(6){width:16%}.report-section th:nth-child(7),.report-section th:nth-child(8){width:6%}.report-section th:nth-child(9){width:10%}.report-section th:nth-child(10){width:11%}.report-section td img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.report-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.export-report.portrait .report-board{grid-template-columns:repeat(3,minmax(0,1fr))}.report-board>div{border:1px solid #bfc5ca;overflow:hidden}.report-board>div>span{aspect-ratio:16/9;background:#eceff1;display:block}.report-board img{object-fit:cover;width:100%;height:100%}.report-board strong,.report-board p{margin:0;padding:5px 6px 0;font-size:12px;display:block}.report-board p{min-height:30px;color:var(--type-muted);padding-bottom:6px;line-height:1.4}.report-plan{border-bottom:1px solid #d8dde0;grid-template-columns:1.1fr 1fr 1.5fr;gap:10px;padding:8px 0;font-size:12px;display:grid}.report-plan p{margin:0}.report-footer{color:var(--type-muted);border-top:1px solid #d3d8dc;justify-content:space-between;align-items:center;margin-top:24px;padding-top:8px;font-size:12px;display:flex}@media (width<=1180px){.project-list.is-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.storyboard-grid.columns-4{grid-template-columns:repeat(3,minmax(210px,1fr))}.presentation-shot{grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr)}.callsheet-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.callsheet-facts>div:nth-child(2){border-right:0}.callsheet-facts>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media (width<=900px){.app-shell{grid-template-columns:var(--sidebar-collapsed) minmax(0, 1fr)}.sidebar{width:var(--sidebar-collapsed)}.brand-copy,.nav-item span,.workspace-meta,.sidebar-toggle{display:none}.brand-row,.sidebar-footer{justify-content:center;padding-left:0;padding-right:0}.brand{flex:none}.sidebar-nav{padding-left:10px;padding-right:10px}.nav-item{justify-content:center;width:44px;padding:0}.screen{padding:28px 24px 48px}.project-open-area{grid-template-columns:112px minmax(0,1fr)}.project-cover{width:112px}.project-progress{display:none}.contact-table{overflow-x:auto}.contact-row{width:980px}.settings-section{grid-template-columns:1fr;gap:18px}.storyboard-grid.columns-3,.storyboard-grid.columns-4{grid-template-columns:repeat(2,minmax(220px,1fr))}.presentation-shot{grid-template-columns:1fr;overflow:auto}.presentation-copy{grid-template-columns:80px minmax(0,1fr);align-content:start}.callsheet-layout,.continuity-layout{grid-template-columns:220px minmax(0,1fr)}.continuity-shot-head{grid-template-columns:1fr}.take-table{overflow-x:auto}.take-row{width:830px}.export-view{grid-template-columns:240px minmax(0,1fr)}}@media (width<=680px){body{overflow:auto}.app-shell,.app-shell.sidebar-is-collapsed{height:100dvh;display:block}.sidebar{z-index:90;border-top:1px solid #30363b;border-right:0;width:100%;height:58px;display:block;position:fixed;inset:auto 0 0}.brand-row,.sidebar-footer{display:none}.sidebar-nav{grid-template-columns:repeat(3,1fr);gap:0;height:58px;padding:0;display:grid}.nav-item,.sidebar-is-collapsed .nav-item{border-radius:0;flex-direction:column;justify-content:center;gap:3px;width:100%;height:58px;min-height:58px;font-size:12px;display:flex}.nav-item span,.sidebar-is-collapsed .nav-item span{display:inline}.main-stage{height:calc(100dvh - 58px)}.screen{padding:22px 16px 40px}.screen-header{align-items:center}.screen-header h1{font-size:22px}.screen-subtitle{font-size:12px}.header-actions .icon-button{display:none}.project-toolbar{flex-direction:column;align-items:stretch}.project-toolbar .segmented{align-self:flex-end}.project-list.is-grid{grid-template-columns:1fr}.project-open-area{gap:11px;min-height:92px;padding-right:48px;display:flex}.project-cover{flex:0 0 104px;width:104px}.project-list.is-grid .project-open-area{min-height:0}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.modal-backdrop{padding:0}.modal{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh}.assistant-layout{grid-template-columns:1fr}.assistant-preview{min-height:280px}.settings-section{padding:18px}.workspace{grid-template-rows:62px 44px minmax(0,1fr)}.workspace-header{padding:0 10px}.workspace-project-mark,.workspace-status{display:none}.workspace-tabs{padding:0 6px}.workspace-tabs button{padding:0 10px;font-size:12px}.view-toolbar{min-height:50px;padding:7px 9px}.view-toolbar .button{padding:0 9px}.view-toolbar .button span,.toolbar-summary,.toolbar-hint,.toolbar-check{display:none}.storyboard-grid.columns-3,.storyboard-grid.columns-4{grid-template-columns:1fr;padding:10px}.story-card{min-height:250px}.presentation-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:7px;padding:14px 4px}.presentation-arrow{width:34px;height:52px}.presentation-copy{display:block}.presentation-number{margin-bottom:16px}.plan-band>header{grid-template-columns:34px minmax(0,1fr) auto}.plan-stat{display:none}.unplanned-tray,.plan-list{margin-left:8px;margin-right:8px}.plan-list{padding-left:0;padding-right:0}.callsheet-layout,.continuity-layout{grid-template-columns:1fr;overflow:auto}.callsheet-list,.continuity-shot-list{border-right:0;border-bottom:1px solid var(--line);max-height:180px}.callsheet-detail,.continuity-detail{overflow:visible}.callsheet-document{min-width:760px}.callsheet-detail{overflow-x:auto}.crew-selector{grid-template-columns:1fr}.slate-main{gap:24px}.slate-meta{grid-template-columns:1fr 1fr}.slate-meta>div:last-child{grid-column:span 2}.export-view{display:block;overflow:auto}.export-controls{border-right:0;border-bottom:1px solid var(--line);overflow:visible}.export-preview-shell{overflow:visible}}@keyframes interface-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes interface-pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.sidebar{color:var(--type-primary);background:#fff;border-right:1px solid #e5eaf2;box-shadow:1px 0 20px #28456d08}.brand-row{border-bottom-color:#edf1f6;min-height:74px}.brand-mark{color:var(--type-inverse);background:#397cf6;border-radius:8px;box-shadow:0 7px 16px #397cf633}.brand-copy small,.workspace-meta span,.sidebar-toggle,.nav-item{color:var(--type-muted)}.sidebar .icon-button:hover,.nav-item:hover{color:var(--type-accent);background:#f2f6fd}.nav-item{border-radius:8px;min-height:44px;font-weight:600}.sidebar-footer{border-top-color:#edf1f6}.workspace-avatar{color:var(--type-muted);background:#f4f7fb;border-color:#e4eaf3}.workspace-meta strong{color:var(--type-accent)}.screen{background:#f6f8fc;padding:42px 48px 64px;animation:.36s cubic-bezier(.22,1,.36,1) both interface-enter}.screen-header,.project-toolbar,.project-list{max-width:1360px}.screen-header{margin-bottom:32px}.eyebrow{color:var(--type-accent);font-size:12px;font-weight:700}.screen-header h1{font-size:22px;font-weight:700}.screen-subtitle{color:var(--type-muted)}.button{background:#fff;border-color:#dfe7f1;border-radius:8px;min-height:38px;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s;box-shadow:0 1px 1px #21304805}.button:hover:not(:disabled){background:#fbfcff;border-color:#c7d6ec;transform:translateY(-1px);box-shadow:0 8px 18px #21437714}.button:active:not(:disabled){box-shadow:none;transform:translateY(0)}.button-primary:hover:not(:disabled){background:#2d70ed;border-color:#2d70ed}.button.is-active{color:var(--type-accent);background:#eef4ff;border-color:#c8dbff}.icon-button{border-radius:8px}.icon-button:hover:not(:disabled){color:var(--type-accent);background:#eef4ff}.search-control{border-color:#e2e9f2;border-radius:8px;height:42px;transition:border-color .18s,box-shadow .18s;box-shadow:0 4px 12px #2d4a7508}.search-control:focus-within{border-color:#9fc0ff;box-shadow:0 0 0 4px #397cf61a}.segmented{background:#edf2f8;border-color:#e0e7f0;border-radius:8px}.segmented>button.is-active{color:var(--type-accent);box-shadow:0 4px 12px #3353831a}.project-list{gap:12px}.project-item{border-color:#e3eaf3;border-radius:8px;min-height:104px;transition:border-color .18s,box-shadow .18s,transform .18s;animation:.42s cubic-bezier(.22,1,.36,1) both interface-enter;overflow:hidden;box-shadow:0 4px 16px #2d4a750a}.project-item:nth-child(2){animation-delay:45ms}.project-item:nth-child(3){animation-delay:90ms}.project-item:hover{border-color:#cadbf5;transform:translateY(-2px);box-shadow:0 14px 30px #2d4a751a}.project-cover{background:#e8effb;border-radius:7px}.project-mark{background:#1e365bc7}.project-copy strong{color:var(--type-accent)}.project-progress>div{background:#e9eef6;height:5px}.project-progress i{background:#397cf6}.popover{border-color:#dde7f4;border-radius:8px;animation:.16s cubic-bezier(.22,1,.36,1) both interface-pop;box-shadow:0 18px 40px #23406e29}.workspace{background:#f6f8fc;animation:.32s cubic-bezier(.22,1,.36,1) both interface-enter}.workspace-header{background:#fff;border-bottom-color:#e5ebf3}.workspace-header h1{font-size:16px;font-weight:700}.workspace-status{color:var(--type-muted)}.workspace-status i{background:#20a394;box-shadow:0 0 0 4px #20a3941a}.workspace-tabs{background:#fff;border-bottom-color:#e5ebf3;gap:6px;padding:0 18px}.workspace-tabs button{border-radius:7px;min-height:34px;margin:7px 0;padding:0 12px;font-weight:700;transition:background .16s,color .16s}.workspace-tabs button.is-active:after{background:#397cf6;border-radius:4px;bottom:3px;left:12px;right:12px}.workspace-content{background:#f6f8fc;padding:16px}.view-toolbar{border-bottom-color:#e6ecf4;min-height:58px;padding:10px 14px}.toolbar-toggle{border-radius:8px;font-weight:600}.toolbar-toggle:hover,.toolbar-toggle.is-active{color:var(--type-accent);background:#eef4ff}.shot-table-scroll{overscroll-behavior-x:contain;touch-action:pan-x pan-y;background:#f8faff}.shot-table th{height:44px;color:var(--type-muted);background:#fbfcff}.shot-table tbody tr{animation:.26s both interface-enter}.shot-table tbody tr:nth-child(2){animation-delay:24ms}.shot-table tbody tr:nth-child(3){animation-delay:48ms}.shot-table tbody tr:nth-child(n+4){animation-delay:72ms}.scene-column{z-index:1;text-align:center;position:relative}.shot-scene-select{background:#f8fafb;border:1px solid #dbe4ea;border-radius:7px;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:7px;width:min(100%,92px);min-height:34px;margin:auto;padding:0 8px;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.shot-scene-select:hover,.shot-scene-select:focus-within{border-color:color-mix(in srgb, var(--scene-color) 58%, #b8c5ce);box-shadow:0 0 0 3px color-mix(in srgb, var(--scene-color) 13%, transparent);background:#fff}.shot-scene-select>span{background:var(--scene-color);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--scene-color) 15%, transparent);border-radius:50%}.shot-scene-select select{width:100%;min-width:0;color:var(--type-muted);font:inherit;text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;outline:0;font-size:12px;font-weight:700}.shot-scene-select.has-scene select{color:var(--type-accent)}.plan-board-workspace{overscroll-behavior-x:contain;touch-action:pan-x pan-y}@media (pointer:coarse){.shot-table-scroll,.plan-board-workspace{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}}.shot-scene-pill,.shot-scene-empty{text-overflow:ellipsis;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;max-width:72px;min-height:24px;padding:0 7px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.shot-scene-pill{border:1px solid color-mix(in srgb, var(--scene-color) 48%, white);background:color-mix(in srgb, var(--scene-color) 13%, white);color:var(--type-accent)}.shot-scene-empty{color:var(--type-muted);font-weight:500}.scene-quick-menu{min-width:210px}.scene-menu-dot{border-radius:50%;flex:none;width:9px;height:9px}.scene-manager{gap:14px;display:grid}.scene-manager>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.scene-manager>header div,.scene-manager>header strong,.scene-manager>header span{display:block}.scene-manager>header span,.scene-manager>header small{color:var(--type-muted);margin-top:4px;font-size:12px}.scene-manager-list{gap:8px;display:grid}.scene-manager-list article{background:#fbfcfe;border:1px solid #e4eaf2;border-radius:8px;grid-template-columns:36px 90px minmax(180px,1fr) 94px 58px auto 36px;align-items:center;gap:8px;padding:10px;display:grid}.scene-manager-list article>input{background:#fff;border:1px solid #dfe6ef;border-radius:7px;min-width:0;height:36px}.scene-color-picker{cursor:pointer;background:#fff;border:1px solid #dfe6ef;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:relative}.scene-color-picker span{border-radius:50%;width:20px;height:20px}.scene-color-picker input{opacity:0;width:1px;height:1px;position:absolute}.scene-shot-count{color:var(--type-muted);text-align:center;font-size:12px}.cross-project-copy{gap:12px;display:grid}.cross-project-copy>p{color:var(--type-muted);margin:0;font-size:12px;line-height:1.6}.cross-project-list{gap:7px;max-height:330px;display:grid;overflow:auto}.cross-project-list>button{text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:38px 1fr 18px;align-items:center;gap:10px;padding:10px;display:grid}.cross-project-list>button:hover,.cross-project-list>button.is-active{color:var(--type-accent);background:#f1fbff;border-color:#8fd9f2}.cross-project-list>button span:nth-child(2){min-width:0}.cross-project-list strong,.cross-project-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.cross-project-list small{color:var(--type-muted);margin-top:3px;font-size:12px}.project-tag-mini{background:#eef4fb;border-radius:8px;place-items:center;width:34px;height:34px;font-size:18px;display:grid}.empty-copy-target{color:var(--type-muted);text-align:center;padding:22px}.callsheet-form-mode{background:#f8fbff;border:1px solid #e3eaf3;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:11px 12px;display:flex}.callsheet-form-mode strong,.callsheet-form-mode span{display:block}.callsheet-form-mode span{color:var(--type-muted);margin-top:3px;font-size:12px}.callsheet-edit-grid.is-quick{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 13px}.callsheet-production-strip{background:#e4e9ef;border:1px solid #e4e9ef;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden;padding:0!important}.callsheet-production-strip>div{background:#fff;padding:10px 12px}.callsheet-production-strip span,.callsheet-production-strip strong{display:block}.callsheet-production-strip span{color:var(--type-muted);font-size:12px}.callsheet-production-strip strong{color:var(--type-accent);margin-top:4px;font-size:14px}@media (width<=760px){.scene-manager-list article{grid-template-columns:34px 80px minmax(130px,1fr) 70px}.scene-shot-count,.scene-manager-list article>.button,.scene-manager-list article>.icon-button{grid-row:2}.callsheet-production-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.team-access-layout{gap:16px;display:grid}.team-access-summary{background:#f3fafc;border:1px solid #d8e8ef;border-radius:7px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.team-access-summary>span{width:36px;height:36px;color:var(--type-accent);background:#dff4fb;border-radius:7px;place-items:center;display:grid}.team-access-summary strong,.team-access-summary p{margin:0;display:block}.team-access-summary strong{color:var(--type-accent);font-size:12px}.team-access-summary p{color:var(--type-muted);margin-top:3px;font-size:12px;line-height:1.55}.team-invite-form{grid-template-columns:minmax(0,1fr) 112px auto;align-items:end;gap:9px;display:grid}.team-invite-copy{align-self:center;gap:4px;min-width:0;display:grid}.team-invite-copy strong{color:var(--type-accent);font-size:12px}.team-invite-copy span{color:var(--type-muted);font-size:12px;line-height:1.55}.team-invite-form label{gap:6px;min-width:0;display:grid}.team-invite-form label>span{color:var(--type-muted);font-size:12px;font-weight:700}.team-invite-form input,.team-invite-form select{width:100%;height:38px;color:var(--type-accent);background:#fff;border:1px solid #dbe4ea;border-radius:6px;font-size:12px}.team-member-section{background:#fff;border:1px solid #dfe7ec;border-radius:7px;overflow:hidden}.team-member-section>header{background:#f8fafb;border-bottom:1px solid #e8edf0;justify-content:space-between;align-items:center;min-height:42px;padding:0 12px;display:flex}.team-member-section>header strong{font-size:12px}.team-member-section>header span{color:var(--type-muted);font-size:12px}.team-member-list{max-height:300px;display:grid;overflow-y:auto}.team-member-list article{border-bottom:1px solid #eef2f4;grid-template-columns:32px minmax(0,1fr) auto 92px 30px;align-items:center;gap:9px;min-width:0;min-height:58px;padding:8px 10px;display:grid}.team-member-list article:last-child{border-bottom:0}.team-member-list article>i{width:30px;height:30px;color:var(--type-inverse);background:#5fc4eb;border-radius:50%;place-items:center;font-size:12px;font-style:normal;font-weight:700;display:grid}.team-member-list article>span,.team-member-list article>span strong,.team-member-list article>span small{min-width:0;display:block}.team-member-list article>span strong,.team-member-list article>span small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-member-list article>span strong{color:var(--type-accent);font-size:12px}.team-member-list article>span small{color:var(--type-muted);margin-top:3px;font-size:12px}.team-member-list article>em{color:var(--type-success);white-space:nowrap;background:#eaf8f3;border-radius:4px;padding:3px 6px;font-size:12px;font-style:normal}.team-member-list article>em.is-invited{color:var(--type-warning);background:#fff7dc}.team-member-list article>b{color:var(--type-muted);text-align:center;font-size:12px;font-weight:700}.team-member-list article>select{width:92px;height:32px;font-size:12px}.team-member-empty{color:var(--type-muted);text-align:center;margin:0;padding:24px;font-size:12px}.access-denied-screen{min-height:100dvh;font-family:var(--font-ui);background:#f5f8fa;place-items:center;padding:24px;display:grid}.access-denied-screen>section{text-align:center;background:#fff;border:1px solid #dfe7eb;border-radius:8px;width:min(460px,100%);padding:38px;box-shadow:0 20px 60px #1e3a4a1a}.access-denied-mark{width:54px;height:54px;color:var(--type-inverse);background:#5fc4eb;border-radius:8px;place-items:center;margin:0 auto 18px;font-size:22px;font-weight:700;display:grid}.access-denied-screen p{color:var(--type-accent);margin:0;font-size:12px;font-weight:700}.access-denied-screen h1{color:var(--type-accent);letter-spacing:0;margin:10px 0 12px;font-size:22px}.access-denied-screen section>span:not(.access-denied-mark){color:var(--type-muted);font-size:12px;line-height:1.75;display:block}.access-denied-screen a{min-height:38px;color:var(--type-accent);background:#e8f7fc;border-radius:6px;align-items:center;margin-top:22px;padding:0 16px;font-size:12px;font-weight:700;display:inline-flex}@media (width<=640px){.team-invite-form{grid-template-columns:1fr}.team-member-list article{grid-template-columns:30px minmax(0,1fr) auto}.team-member-list article>b,.team-member-list article>select{grid-column:2;width:100%}.team-member-list article>.icon-button{grid-area:2/3}}.live-cursor-layer{z-index:1800;pointer-events:none;position:fixed;inset:0;overflow:hidden}.live-cursor{color:var(--type-accent);filter:drop-shadow(0 2px 2px #111f2824);transition:left .12s linear,top .12s linear;position:absolute;transform:translate(-2px,-2px)}.live-cursor>span{background:var(--collaborator-color);max-width:150px;color:var(--type-inverse);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;padding:3px 7px;font-size:12px;font-weight:700;position:absolute;top:17px;left:13px;overflow:hidden;box-shadow:0 4px 14px #141f2824}.live-editing-marker{border:2px solid var(--collaborator-color);transform:translate(var(--collaborator-offset), var(--collaborator-offset));border-radius:4px;transition:inset .12s linear,width .12s linear,height .12s linear;position:fixed;box-shadow:inset 0 0 0 1px #ffffffb8}.live-editing-marker>span{background:var(--collaborator-color);color:var(--type-inverse);white-space:nowrap;border-radius:4px 4px 0 0;padding:3px 7px;font-size:12px;font-weight:700;line-height:16px;position:absolute;top:-22px;right:-2px}.live-text-caret{background:var(--collaborator-color);border-radius:2px;width:2px;min-height:17px;animation:1.05s step-end infinite live-caret-blink;position:fixed;box-shadow:0 0 0 1px #fffc}.live-text-caret>span{background:var(--collaborator-color);max-width:140px;color:var(--type-inverse);text-overflow:ellipsis;white-space:nowrap;border-radius:4px 4px 4px 0;padding:3px 6px;font-size:12px;font-weight:700;line-height:14px;position:absolute;bottom:calc(100% + 3px);left:-2px;overflow:hidden}@keyframes live-caret-blink{50%{opacity:.32}}.collaboration-access-note{color:var(--type-accent);background:#f2fafc;border:1px solid #dcebf0;border-radius:6px;align-items:center;gap:9px;margin:4px 0 10px;padding:9px 10px;display:flex}.collaboration-access-note>span{gap:2px;min-width:0;display:grid}.collaboration-access-note strong,.collaboration-access-note small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collaboration-access-note strong{color:var(--type-accent);font-size:12px}.collaboration-access-note small{color:var(--type-muted);font-size:12px}.shot-number-column strong{color:var(--type-accent);background:#ecf3ff;border-radius:7px}.shot-table textarea:hover,.shot-table textarea:focus,.shot-table select:hover,.shot-table select:focus,.shot-table input:hover,.shot-table input:focus{background:#f8fbff;border-color:#bed4ff}.shot-image-frame{background:#eff4fb;border-radius:7px}.shot-image-frame.is-empty{background:#fbfcff;border-color:#cbd8e9}.column-manager{position:relative}.column-heading{padding:0!important}.column-header-menu{align-items:stretch;height:100%;display:flex;position:relative}.column-header-trigger{width:100%;min-height:42px;color:inherit;font-size:inherit;font-weight:inherit;background:0 0;justify-content:center;align-items:center;gap:4px;padding:0 7px;transition:background .15s,color .15s;display:inline-flex}.column-header-trigger:hover,.column-heading.is-open .column-header-trigger{color:var(--type-accent);background:#edf4ff}.column-header-trigger svg{transition:transform .15s}.column-heading.is-open .column-header-trigger svg{transform:rotate(180deg)}.column-header-popover{text-align:left;min-width:156px;padding:5px;top:calc(100% - 1px);left:7px}.column-heading.is-open{z-index:140;overflow:visible}.column-heading.is-open .column-header-menu,.column-heading.is-open .column-header-popover{z-index:141;pointer-events:auto}.column-header-popover:before{content:"";height:8px;position:absolute;bottom:100%;left:0;right:0}.column-header-popover>button,.column-rename-form>div>button{width:100%;min-height:34px;color:var(--type-accent);text-align:left;background:0 0;border-radius:6px;align-items:center;gap:8px;padding:0 9px;font-size:12px;display:flex}.column-header-popover>button:hover,.column-rename-form>div>button:hover{color:var(--type-accent);background:#eef4ff}.column-header-popover>button.danger{color:var(--type-error)}.column-header-popover>button.danger:hover{color:var(--type-error);background:#fff2f0}.column-rename-form{gap:7px;padding:5px;display:grid}.column-rename-form label{color:var(--type-muted);font-size:12px;font-weight:700}.column-rename-form input{background:#fff;border-color:#cad8ec;border-radius:6px;height:32px;padding:0 8px;font-size:12px}.column-rename-form>div{justify-content:flex-end;gap:4px;display:flex}.column-rename-form>div>button{width:auto;min-height:30px}.column-rename-form>div>button.is-primary{color:var(--type-inverse);background:#397cf6}.column-settings-popover{z-index:140;background:#fff;border:1px solid #dce7f5;border-radius:8px;width:292px;animation:.18s cubic-bezier(.22,1,.36,1) both interface-pop;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 18px 42px #23406e2e}.batch-edit-form textarea{resize:vertical;min-height:104px}.batch-edit-mode{background:#f4f7fb;border:1px solid #dfe8f3;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.batch-edit-mode button{min-height:34px;color:var(--type-muted);background:0 0;border-radius:6px;font-size:12px;font-weight:700}.batch-edit-mode button.is-active{color:var(--type-accent);background:#fff;box-shadow:0 2px 8px #2f52781f}.batch-edit-note{min-height:58px;color:var(--type-error);background:#fff8f7;border:1px solid #f1d9d8;border-radius:8px;align-items:center;gap:10px;padding:12px;font-size:12px;display:flex}.plan-sort-control{height:36px;color:var(--type-muted);background:#fff;border:1px solid #d8e4f1;border-radius:8px;align-items:center;gap:6px;padding:0 8px 0 11px;display:inline-flex}.plan-sort-control select{min-width:104px;color:var(--type-accent);background:0 0;border:0;outline:0;font-size:12px;font-weight:700}.column-settings-popover>header{border-bottom:1px solid #edf1f7;justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:0 10px 0 14px;display:flex}.column-settings-popover header>div{flex-direction:column;gap:3px;display:flex}.column-settings-popover header strong{color:var(--type-accent);font-size:14px}.column-settings-popover header span{color:var(--type-muted);font-size:12px}.column-settings-actions{justify-content:flex-end;padding:8px 10px 4px;display:flex}.column-settings-actions button{min-height:28px;color:var(--type-accent);background:0 0;border-radius:6px;align-items:center;gap:5px;padding:0 7px;font-size:12px;font-weight:700;display:inline-flex}.column-settings-actions button:hover{background:#edf4ff}.column-settings-list{gap:2px;max-height:min(53vh,430px);padding:4px 8px 10px;display:grid;overflow:auto}.column-setting-row{border-radius:7px;align-items:center;gap:2px;min-height:38px;padding:0 2px;display:flex}.column-setting-row[draggable=true]{cursor:grab}.column-setting-row[draggable=true]:active{cursor:grabbing}.column-setting-grip{color:var(--type-muted);opacity:.56;flex:none}.column-setting-row:hover .column-setting-grip{color:var(--type-accent);opacity:1}.column-setting-row:hover,.column-setting-row.is-visible{background:#f7faff}.column-setting-toggle{min-width:0;color:var(--type-accent);text-align:left;background:0 0;flex:1;align-items:center;gap:8px;padding:0 8px;font-size:12px;display:flex}.column-setting-check{width:18px;height:18px;color:var(--type-muted);background:#fff;border:1px solid #cbd8ea;border-radius:5px;flex:0 0 18px;place-items:center;display:grid}.column-setting-row.is-visible .column-setting-check{color:var(--type-inverse);background:#397cf6;border-color:#397cf6}.column-setting-edit{opacity:0;flex-basis:30px;width:30px;height:30px}.column-setting-row:hover .column-setting-edit,.column-setting-row.is-editing .column-setting-edit{opacity:1}.column-panel-rename{align-items:center;gap:5px;width:100%;padding:0 4px;display:flex}.column-panel-rename input{border-color:#bcd2fb;border-radius:6px;flex:1;min-width:0;height:30px;padding:0 7px;font-size:12px}.column-panel-rename button{min-height:30px;color:var(--type-inverse);background:#397cf6;border-radius:6px;padding:0 8px;font-size:12px}.custom-column-mark{color:var(--type-accent);background:#eef4ff;border-radius:4px;flex:none;align-items:center;padding:2px 4px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.add-column-header{position:relative;overflow:visible;background:#f6f9fe!important;padding:0!important}.add-column-trigger{width:100%;min-height:42px;color:var(--type-muted);background:0 0;place-items:center;transition:background .15s,color .15s,transform .15s;display:grid}.add-column-trigger:hover,.add-column-trigger.is-active{color:var(--type-accent);background:#eaf2ff}.add-column-trigger:active{transform:scale(.94)}.custom-column-creator{z-index:180;width:286px;color:var(--type-accent);text-align:left;background:#fff;border:1px solid #dce7f5;border-radius:8px;gap:13px;padding:15px;animation:.18s cubic-bezier(.22,1,.36,1) both interface-pop;display:grid;position:absolute;top:calc(100% + 8px);right:2px;box-shadow:0 20px 46px #23406e33}.custom-column-creator .field{gap:7px;margin:0;display:grid}.custom-column-creator .field>span,.custom-column-type-field>span{color:var(--type-muted);font-size:12px;font-weight:700}.custom-column-creator input,.custom-column-creator textarea{width:100%;color:var(--type-accent);background:#f8fafc;border:1px solid #d8e2ef;border-radius:6px;outline:none;font-size:12px;font-weight:500;transition:border-color .15s,background .15s,box-shadow .15s}.custom-column-creator input{height:36px;padding:0 10px}.custom-column-creator textarea{resize:vertical;min-height:62px;padding:9px 10px}.custom-column-creator input:focus,.custom-column-creator textarea:focus{background:#fff;border-color:#8fb6fb;box-shadow:0 0 0 3px #397cf61a}.custom-column-type-field{gap:7px;display:grid}.custom-column-type-select{position:relative}.custom-column-type-select>button{width:100%;min-height:38px;color:var(--type-accent);background:#f5f7fa;border-radius:6px;justify-content:space-between;align-items:center;padding:0 10px;font-size:12px;font-weight:600;transition:background .15s,color .15s;display:flex}.custom-column-type-select>button>span{align-items:center;gap:8px;display:inline-flex}.custom-column-type-select>button:hover,.custom-column-type-select>button.is-open{color:var(--type-accent);background:#edf4ff}.custom-column-type-select>button svg:last-child{transition:transform .15s}.custom-column-type-select>button.is-open svg:last-child{transform:rotate(180deg)}.custom-column-type-menu{z-index:190;background:#fff;border:1px solid #dce7f5;border-radius:8px;gap:2px;width:172px;padding:7px;animation:.16s cubic-bezier(.22,1,.36,1) both interface-pop;display:grid;position:absolute;top:0;right:calc(100% + 10px);box-shadow:0 18px 38px #23406e2e}.custom-column-type-menu button{min-height:38px;color:var(--type-accent);text-align:left;background:0 0;border-radius:6px;grid-template-columns:18px 18px 1fr;align-items:center;gap:7px;padding:0 8px;font-size:12px;display:grid}.custom-column-type-menu button:hover,.custom-column-type-menu button.is-active{color:var(--type-accent);background:#f1f6ff}.custom-column-type-menu .type-check{color:var(--type-accent);place-items:center;display:grid}.custom-column-creator footer{justify-content:flex-end;gap:7px;padding-top:2px;display:flex}.custom-column-creator footer button{min-width:68px;min-height:34px;color:var(--type-muted);background:#fff;border:1px solid #dde5ef;border-radius:6px;padding:0 12px;font-size:12px;font-weight:700}.custom-column-creator footer button:hover{background:#f5f8fc}.custom-column-creator footer button.is-primary{color:var(--type-inverse);background:#397cf6;border-color:#397cf6}.custom-column-creator footer button:disabled{color:var(--type-muted);cursor:not-allowed;background:#eef1f5;border-color:#e5eaf1}.column-settings-section-label{color:var(--type-muted);border-top:1px solid #edf1f7;margin:7px 6px 2px;padding-top:10px;font-size:12px;font-weight:700}.column-setting-name{flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.column-setting-name>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.column-setting-name small{color:var(--type-muted);flex:none;font-size:12px;font-weight:700}.column-setting-delete{opacity:0;flex-basis:30px;width:30px;height:30px}.column-setting-row:hover .column-setting-delete,.column-setting-row.is-editing .column-setting-delete{opacity:1}.add-row-button{background:#fff;border-color:#cbd8ea;border-radius:7px}.sidebar{overflow:visible}.column-header-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar-is-collapsed .brand{display:none}.sidebar-is-collapsed .sidebar-toggle{color:var(--type-accent);margin:0 auto;display:grid}.sidebar-footer{padding:10px;position:relative}.sidebar-account{width:100%;min-width:0;color:inherit;text-align:left;background:0 0;border-radius:8px;align-items:center;gap:11px;padding:4px;transition:background .15s;display:flex}.sidebar-account:hover,.sidebar-account[aria-expanded=true]{background:#f2f6fd}.sidebar-is-collapsed .sidebar-account{justify-content:center;padding:0}.account-popover{z-index:160;color:var(--type-accent);background:#fff;border:1px solid #dce7f5;border-radius:8px;gap:3px;padding:8px;animation:.18s cubic-bezier(.22,1,.36,1) both interface-pop;display:grid;position:absolute;bottom:calc(100% + 8px);left:10px;right:10px;box-shadow:0 18px 42px #23406e2e}.sidebar-is-collapsed .account-popover{width:270px;bottom:6px;left:calc(100% + 8px);right:auto}.account-popover-profile{border-bottom:1px solid #edf1f7;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:7px;display:grid}.account-popover-profile>div{min-width:0}.account-popover-profile strong,.account-popover-profile small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-popover-profile strong{color:var(--type-accent);font-size:12px}.account-popover-profile small{color:var(--type-muted);margin-top:4px;font-size:12px}.account-popover>button,.account-popover>a{min-height:36px;color:var(--type-accent);background:0 0;border-radius:6px;align-items:center;gap:8px;padding:0 9px;font-size:12px;display:flex}.account-popover>button:hover,.account-popover>a:hover{color:var(--type-accent);background:#eef4ff}.project-list.is-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}.project-item{overflow:visible}.project-item .menu-popover{z-index:180}.account-settings-card{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;display:grid}.account-settings-avatar{width:44px;height:44px;color:var(--type-accent);background:#eef4ff;border:1px solid #dce6f3;border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid}.account-settings-copy{min-width:0}.account-settings-copy strong,.account-settings-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-settings-copy strong{color:var(--type-accent);font-size:14px}.account-settings-copy small{color:var(--type-muted);margin-top:5px;font-size:12px}.account-status-pill{color:var(--type-accent);background:#eaf8f4;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:700}.account-settings-actions{flex-wrap:wrap;grid-column:2/-1;gap:8px;display:flex}.account-signout-button{color:var(--type-muted);align-items:center;gap:7px;padding:0 12px;font-size:12px;display:inline-flex}.plan-view{background:#f6f8fc;grid-template-rows:auto minmax(0,1fr)}.plan-vertical-workspace{grid-template-columns:300px minmax(0,1fr);gap:16px;min-height:0;padding:16px;display:grid;overflow:hidden}.plan-vertical-workspace .unplanned-tray{border-color:#e0e8f2;border-radius:8px;grid-template-rows:auto minmax(0,1fr);min-height:0;margin:0;display:grid;box-shadow:0 8px 24px #27436d0d}.plan-vertical-workspace .plan-shot-strip{align-content:start;gap:8px;min-height:0;padding:10px;display:grid;overflow:hidden auto}.plan-list{min-height:0;margin:0;padding:0 4px 28px 34px;position:relative;overflow:auto}.plan-list:before{content:"";background:#dce7f5;border-radius:2px;width:2px;position:absolute;top:22px;bottom:20px;left:14px}.plan-band{background:#fff;border-color:#e0e8f2;border-radius:8px;margin-bottom:16px;position:relative;overflow:visible;box-shadow:0 8px 24px #27436d0d}.plan-band:before{background:var(--accent);content:"";border:3px solid #f6f8fc;border-radius:50%;width:12px;height:12px;position:absolute;top:24px;left:-26px;box-shadow:0 0 0 1px #bfd4f7}.plan-band>header{border-bottom-color:#e8edf5;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;min-height:72px;padding:10px 12px}.plan-index{color:var(--type-accent);background:#edf4ff;border-radius:7px}.plan-title h2{color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.plan-title p{color:var(--type-muted);margin-top:6px;font-size:12px}.plan-facts{background:#fbfcff;border-bottom:1px solid #e8edf5;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.plan-facts>div{border-right:1px solid #e8edf5;grid-template-columns:24px minmax(0,1fr);gap:2px 7px;min-width:0;padding:12px;display:grid}.plan-facts>div:last-child{border-right:0}.plan-facts svg{color:var(--type-accent);grid-row:span 2}.plan-facts span{color:var(--type-muted);font-size:12px}.plan-facts strong{color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.plan-shot-section>header{min-height:40px;color:var(--type-muted);justify-content:space-between;align-items:center;padding:0 12px;font-size:12px;display:flex}.plan-shot-section>header span{color:var(--type-muted);font-size:12px}.plan-drop-area{background:#fff;align-content:start;gap:7px;min-height:88px;padding:0 10px 12px;display:grid;overflow:visible}.plan-shot-card{background:#fbfcff;border-color:#e2e9f2;border-radius:7px;grid-template-columns:104px minmax(0,1fr) auto;gap:10px;width:100%;min-width:0;padding:7px;transition:border-color .15s,background .15s,transform .15s}.plan-shot-card:hover{background:#f7faff;border-color:#bfd3f3;transform:translateY(-1px)}.plan-shot-image{border-radius:6px;width:104px}.unplanned-tray .plan-shot-card{grid-template-columns:88px minmax(0,1fr)}.unplanned-tray .plan-shot-image{width:88px}.plan-shot-assign{width:100%;height:32px;color:var(--type-muted);background:#fff;border-color:#d8e3f1;border-radius:6px;grid-column:1/-1;padding:0 8px;font-size:12px}.plan-notes{color:var(--type-muted);background:#fffdf7;border-top-color:#e8edf5;grid-template-columns:42px minmax(0,1fr);gap:8px;padding:11px 12px;font-size:12px;display:grid}.plan-notes strong{color:var(--type-warning)}.plan-form-vertical{max-width:520px;margin:0 auto}.export-view{background:#edf1f7;grid-template-columns:340px minmax(0,1fr)}.export-controls{background:#fff;border-right-color:#e0e7f0;padding:20px 18px 28px}.export-primary-settings{gap:12px;display:grid}.export-controls .field input,.export-controls .field select{background:#f8fafc;border-color:#dce5f0;border-radius:7px;width:100%;height:38px;padding:0 10px;font-size:12px}.export-controls section{border-bottom-color:#e9eef5}.export-checks label{background:#f9fbfd;border-color:#e1e8f1;border-radius:7px}.export-scope-control button{min-width:0;padding:0 5px}.export-option-toggles{gap:7px;display:grid}.export-option-toggles label{background:#f9fbfd;border:1px solid #e1e8f1;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:0 10px;display:flex}.export-option-toggles label>span{gap:3px;display:grid}.export-option-toggles strong{color:var(--type-accent);font-size:12px}.export-option-toggles small{color:var(--type-muted);font-size:12px}.export-option-toggles input{width:16px;height:16px}.export-actions{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;border-top:1px solid #e1e8f1;margin:0 -18px -28px;padding:14px 18px 18px;position:sticky;bottom:-28px;box-shadow:0 -12px 24px #334b6f0f}.export-report.paper-a3.landscape{width:1580px;min-height:1120px}.export-report.paper-a3.portrait{width:1120px;min-height:1580px}@media (width>=681px) and (width<=900px){.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr)}.app-shell.sidebar-is-collapsed{grid-template-columns:var(--sidebar-collapsed) minmax(0, 1fr)}.sidebar{width:auto}.app-shell:not(.sidebar-is-collapsed) .brand-copy,.app-shell:not(.sidebar-is-collapsed) .workspace-meta{display:flex}.app-shell:not(.sidebar-is-collapsed) .nav-item span{display:inline}.app-shell:not(.sidebar-is-collapsed) .sidebar-toggle{display:grid}.app-shell:not(.sidebar-is-collapsed) .brand-row,.app-shell:not(.sidebar-is-collapsed) .sidebar-footer{justify-content:flex-start;padding-left:10px;padding-right:10px}.app-shell:not(.sidebar-is-collapsed) .brand{flex:1;display:flex}.app-shell:not(.sidebar-is-collapsed) .sidebar-nav{align-items:stretch;padding-left:12px;padding-right:12px}.app-shell:not(.sidebar-is-collapsed) .nav-item{justify-content:flex-start;width:100%;padding:0 12px}.export-view{grid-template-columns:300px minmax(0,1fr)}}@media (width<=980px){.plan-vertical-workspace{grid-template-columns:260px minmax(0,1fr);gap:12px;padding:12px}.plan-facts{grid-template-columns:1fr}.plan-facts>div{border-bottom:1px solid #e8edf5;border-right:0}.plan-facts>div:last-child{border-bottom:0}}@media (width<=760px){.screen{padding:24px 16px 44px}.workspace-content{padding:8px}.table-view{border-radius:7px}.view-toolbar{gap:8px;padding:7px 8px}.column-settings-popover{width:auto;max-height:calc(100dvh - 76px);position:fixed;top:58px;left:10px;right:10px}.column-setting-edit,.column-setting-delete{opacity:1}.custom-column-creator{width:auto;position:fixed;top:58px;left:10px;right:10px}.custom-column-type-menu{width:100%;top:calc(100% + 6px);right:0}.account-settings-card{grid-template-columns:40px minmax(0,1fr)}.account-status-pill{display:none}.account-settings-actions{grid-column:1/-1}.plan-view{overflow:auto}.plan-vertical-workspace{min-height:auto;padding:10px;display:block;overflow:visible}.plan-vertical-workspace .unplanned-tray{max-height:300px;margin:0 0 12px}.plan-list{min-height:auto;margin:0;padding:0 0 24px 28px;overflow:visible}.plan-list:before{left:10px}.plan-band:before{left:-23px}.plan-band>header{grid-template-columns:36px minmax(0,1fr)}.plan-band>header .row-actions{border-top:1px solid #edf1f7;grid-column:1/-1;justify-content:flex-end;padding-top:4px}.plan-shot-card{grid-template-columns:88px minmax(0,1fr) auto}.plan-shot-image{width:88px}.export-view{display:block;overflow:auto}.export-controls{border-bottom:1px solid #e0e7f0;border-right:0;overflow:visible}.export-preview-shell{overflow:visible}}.new-project-form{gap:18px}.new-project-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.project-tag-picker{position:relative}.project-tag-trigger{border:1px solid var(--line);width:100%;min-height:40px;color:var(--type-primary);text-align:left;background:#fff;border-radius:7px;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:4px 10px;display:grid}.project-tag-trigger>span{background:color-mix(in srgb, var(--accent), #fff 86%);border-radius:7px;place-items:center;width:28px;height:28px;font-size:18px;display:grid}.project-tag-trigger em{color:var(--type-muted);font-size:12px;font-style:normal}.project-tag-popover{z-index:240;background:#fff;border:1px solid #dbe2e7;border-radius:8px;width:286px;padding:12px;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 18px 46px #1b2d3a2e}.project-tag-popover header{gap:2px;margin-bottom:10px;display:grid}.project-tag-popover header strong{font-size:12px}.project-tag-popover header small{color:var(--type-muted);font-size:12px}.project-tag-popover>div{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.project-tag-popover>div button{aspect-ratio:1;background:#f4f7f8;border-radius:7px;place-items:center;font-size:18px;transition:transform .14s,background .14s;display:grid}.project-tag-popover>div button:hover,.project-tag-popover>div button.is-active{background:color-mix(in srgb, var(--accent), #fff 78%);transform:translateY(-2px)}.project-tag-clear{border-top:1px solid var(--line);width:100%;color:var(--type-muted);background:0 0;margin-top:9px;padding-top:9px;font-size:12px}.new-project-template-summary{background:#f7fafb;border:1px solid #dce4e9;border-radius:8px;align-items:center;gap:12px;padding:13px;display:flex}.template-summary-swatch{width:42px;height:42px;color:var(--type-inverse);border-radius:8px;flex:0 0 42px;place-items:center;font-size:22px;display:grid}.new-project-template-summary>div{gap:3px;display:grid}.new-project-template-summary strong{font-size:12px}.new-project-template-summary small{color:var(--type-muted);font-size:12px;line-height:1.5}.project-cover .project-tag-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #ffffffb3;border-radius:7px;place-items:center;width:28px;height:28px;font-size:16px;display:grid;position:absolute;top:7px;right:7px;box-shadow:0 5px 14px #121e2824}.select-option-editor{gap:8px;display:grid}.select-option-editor>header{justify-content:space-between;align-items:center;display:flex}.select-option-editor>header>span{color:var(--type-muted);font-size:12px;font-weight:700}.select-option-editor>header>button{color:var(--type-accent);background:0 0;align-items:center;gap:4px;font-size:12px;display:inline-flex}.select-option-list{gap:6px;display:grid}.select-option-row{background:#f5f7f8;border:1px solid #e1e7eb;border-radius:7px;grid-template-columns:22px minmax(0,1fr) 28px;align-items:center;gap:5px;padding:5px;transition:opacity .12s,transform .12s;display:grid}.select-option-row>svg{color:var(--type-muted);cursor:grab}.select-option-row input{background:#fff;border-color:#0000;min-height:32px}.select-option-row .icon-button{width:28px;height:28px;color:var(--type-error)}.select-option-row.is-dragging{opacity:.58;transform:scale(.985)}.confirm-dialog-copy{grid-template-columns:42px 1fr;align-items:start;gap:13px;display:grid}.confirm-dialog-copy>span{width:42px;height:42px;color:var(--type-error);background:#fff0ec;border-radius:8px;place-items:center;display:grid}.confirm-dialog-copy>div{gap:5px;display:grid}.confirm-dialog-copy strong{font-size:14px}.confirm-dialog-copy p{color:var(--type-muted);margin:0;font-size:12px;line-height:1.6}.shot-drag-handle{width:30px;height:30px;color:var(--type-muted);cursor:grab;background:0 0;border-radius:7px;place-items:center;margin:auto;display:grid}.shot-drag-handle:hover{color:var(--type-muted);background:#edf3f6}.shot-drag-handle:active{cursor:grabbing}.shot-insert-anchor{z-index:1;position:relative;overflow:visible}.shot-table tbody .shot-row{z-index:0;position:relative}.shot-table tbody .shot-row:hover,.shot-table tbody .shot-row:focus-within{z-index:12}.shot-table tbody .shot-row:hover .shot-insert-anchor,.shot-table tbody .shot-row:focus-within .shot-insert-anchor{z-index:13}.between-shot-insert{z-index:20;width:32px;height:32px;color:var(--type-accent);opacity:0;pointer-events:none;background:#fff;border:1px solid #dce6eb;border-radius:50%;place-items:center;transition:opacity .14s,transform .18s cubic-bezier(.2,.8,.2,1),border-color .14s,background .14s;display:grid;position:absolute;left:50%;box-shadow:0 8px 24px #1f323e21}.between-shot-insert.is-after{bottom:0;transform:translate(-50%,50%)scale(.72)}.shot-row:hover .between-shot-insert,.between-shot-insert:focus-visible{opacity:1;pointer-events:auto}.shot-row:hover .between-shot-insert.is-after,.between-shot-insert.is-after:focus-visible{transform:translate(-50%,50%)scale(1)}.between-shot-insert:hover{background:#eaf8fd;border-color:#55bfe2}.between-shot-insert:hover svg{transform:rotate(90deg)}.between-shot-insert svg{transition:transform .18s}@keyframes shot-inserted{0%{background:color-mix(in srgb, var(--accent) 24%, white);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--accent) 58%, white)}to{background:var(--surface);box-shadow:inset 0 0 #0000}}.shot-row.is-newly-inserted td{animation:.52s both shot-inserted}@media (pointer:coarse){.between-shot-insert{width:30px;height:30px}.shot-row:focus-within .between-shot-insert{opacity:1;pointer-events:auto}}.select-all-shots{width:28px;height:28px;color:var(--type-muted);background:0 0;place-items:center;margin:auto;display:grid}.shot-table .select-column button{color:var(--type-muted)}.shot-table tr.is-selected .select-column button{color:var(--type-accent)}.shot-table tr.is-drop-before td{box-shadow:inset 0 3px 0 var(--accent)}.shot-table tr.is-drop-after td{box-shadow:inset 0 -3px 0 var(--accent)}.custom-shot-number-input{text-align:center;border-radius:6px;min-height:30px;font-weight:700;width:52px!important;color:var(--type-accent)!important;background:#f7fafb!important;border:1px solid #cfdde4!important;padding:4px!important}.shot-selection-dock{z-index:150;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border:1px solid #d2dee5eb;border-radius:8px;align-items:center;gap:4px;min-height:54px;padding:7px 9px;animation:.18s cubic-bezier(.2,.8,.2,1) selectionDockIn;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 18px 48px #2036442e}@keyframes selectionDockIn{0%{opacity:0;transform:translate(-50%,10px)scale(.98)}to{opacity:1;transform:translate(-50%)scale(1)}}.shot-selection-dock>button,.selection-move-control>button{min-height:38px;color:var(--type-muted);background:0 0;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:14px;display:inline-flex}.shot-selection-dock>button:hover,.selection-move-control>button:hover,.selection-move-control>button.is-active{background:#edf5f8}.shot-selection-dock>button.is-danger{color:var(--type-error)}.selection-count{color:var(--type-accent);align-items:center;gap:7px;padding:0 8px;font-size:14px;display:inline-flex}.selection-count svg{color:var(--type-accent)}.selection-divider{background:var(--line);width:1px;height:24px}.selection-move-control{position:relative}.selection-move-menu{background:#fff;border:1px solid #dbe3e8;border-radius:8px;width:150px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 14px 36px #162a3729}.selection-move-menu button{color:var(--type-muted);background:0 0;border-radius:5px;align-items:center;gap:8px;padding:9px;font-size:12px;display:flex}.selection-move-menu button:hover{background:#f0f5f7}.workspace-history-control{position:relative}.workspace-history-popover{z-index:80;background:#fff;border:1px solid #dbe3e8;border-radius:8px;width:230px;padding:7px;animation:.16s cubic-bezier(.22,1,.36,1) both select-open;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 42px #192d3a2b}.workspace-history-popover header{border-bottom:1px solid var(--line);gap:2px;padding:7px 9px 9px;display:grid}.workspace-history-popover header strong{font-size:12px}.workspace-history-popover header small{color:var(--type-muted);font-size:12px}.workspace-history-popover>button{color:var(--type-muted);text-align:left;background:0 0;border-radius:6px;grid-template-columns:24px 1fr;align-items:center;gap:7px;padding:9px;display:grid}.workspace-history-popover>button:hover:not(:disabled){background:#f1f6f8}.workspace-history-popover>button:disabled{opacity:.42;cursor:default}.workspace-history-popover>button span{justify-content:space-between;align-items:center;gap:8px;display:flex}.workspace-history-popover>button strong{font-size:12px}.workspace-history-popover>button small{color:var(--type-muted);font-size:12px}.shot-table.text-align-top-left td.shot-data-cell,.shot-table.text-align-top-left td.custom-column-cell{vertical-align:top;text-align:left}@media (width<=760px){.new-project-field-grid{grid-template-columns:1fr}.shot-selection-dock{bottom:10px;left:10px;right:10px;overflow-x:auto;transform:none}.shot-selection-dock .selection-count{background:#fff;position:sticky;left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{@page{size:A4 landscape;margin:8mm}body{background:#fff;overflow:visible}.sidebar,.workspace-header,.workspace-tabs,.view-toolbar,.callsheet-list,.callsheet-detail-actions,.export-controls,.export-preview-shell>header,.toast{display:none!important}.app-shell,.main-stage,.workspace,.workspace-content,.callsheet-view,.callsheet-layout,.callsheet-detail,.export-view,.export-preview-shell{background:#fff;width:auto;height:auto;padding:0;display:block;overflow:visible}.callsheet-document{width:100%;max-width:none;box-shadow:none;border:0;padding:0}.export-report,.export-report.portrait,.export-report.paper-a3.landscape,.export-report.paper-a3.portrait{width:100%;min-height:0;box-shadow:none;padding:0}.report-section,.report-board>div,.report-plan,.callsheet-document,.schedule-row{break-inside:avoid}}.haomi-mark{background:linear-gradient(145deg,#1b66ff 0%,#55c7ff 100%);border:1px solid #ffffff2e;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff52,0 7px 18px #236fea3d}.haomi-mark:after{content:"";border:1px solid #fff3;border-radius:50%;width:24px;height:24px;position:absolute;top:-10px;right:-8px}.haomi-mark i{content:"";background:#fff;display:block;position:absolute}.haomi-stem{border-radius:1px;width:4px;top:8px;bottom:8px}.haomi-stem-left{left:9px;transform:skewY(-12deg)}.haomi-stem-right{right:9px;transform:skewY(12deg)}.haomi-bridge{clip-path:polygon(0 28%,100% 0,100% 72%,0 100%);width:12px;height:4px;top:15px;left:11px}.brand-copy small{color:var(--type-muted);letter-spacing:0;font-size:12px}.create-project-menu{position:relative}.create-project-trigger{min-width:108px}.create-project-trigger>svg:last-child{margin-left:2px}.create-project-popover{z-index:190;width:274px;padding:7px;top:calc(100% + 8px);right:0}.create-project-popover>button{width:100%;min-height:58px;color:var(--type-muted);text-align:left;background:0 0;border-radius:7px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:7px 9px;display:grid}.create-project-popover>button:hover{color:var(--type-accent);background:#eef5ff}.create-project-popover>button>svg{justify-self:center}.create-project-popover>button>span,.create-project-popover strong,.create-project-popover small{min-width:0;display:block}.create-project-popover strong{color:var(--type-accent);font-size:12px}.create-project-popover small{color:var(--type-muted);margin-top:4px;font-size:12px;line-height:1.35}.project-group-filter{scrollbar-width:none;align-items:center;gap:7px;max-width:1440px;margin:0 auto 14px;display:flex;overflow-x:auto}.project-group-filter::-webkit-scrollbar{display:none}.project-group-filter button{min-height:34px;color:var(--type-muted);background:#fff;border:1px solid #e0e8f2;border-radius:7px;flex:none;align-items:center;gap:7px;padding:0 9px;font-size:12px;display:inline-flex}.project-group-filter button:hover,.project-group-filter button.is-active{color:var(--type-accent);background:#eef5ff;border-color:#bfd5fb}.project-group-filter i{min-width:20px;height:20px;color:var(--type-muted);background:#edf1f6;border-radius:5px;place-items:center;font-size:12px;font-style:normal;display:grid}.project-group-filter button.is-active i{color:var(--type-accent);background:#dceaff}.project-item.menu-is-open{z-index:50;border-color:#bfd5fb}.project-menu-group{border-top:1px solid #e8edf4;gap:5px;margin-top:4px;padding:7px 8px 5px;display:grid}.project-menu-group span{color:var(--type-muted);font-size:12px}.project-menu-group select{width:100%;height:30px;color:var(--type-muted);background:#f8fafc;border:1px solid #dce5f0;border-radius:5px;padding:0 6px;font-size:12px}.project-copy small{white-space:normal;line-height:1.45}.project-group-label{width:max-content;max-width:100%;color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;background:#eef5ff;border-radius:4px;padding:3px 6px;font-size:12px;font-style:normal;overflow:hidden}.project-shared-label{width:max-content;max-width:100%;color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;background:#eaf8f5;border-radius:4px;align-items:center;gap:4px;padding:3px 6px;font-size:12px;font-style:normal;font-weight:600;display:inline-flex;overflow:hidden}.trash-list{gap:9px;max-width:1440px;margin:0 auto;display:grid}.trash-item{background:#fff;border:1px solid #e0e8f2;border-radius:8px;grid-template-columns:126px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:94px;padding:9px;display:grid;box-shadow:0 8px 24px #27436d0a}.trash-cover{aspect-ratio:16/9;width:126px;color:var(--type-muted);background:#edf1f6;border-radius:6px;place-items:center;display:grid;overflow:hidden}.trash-cover img{object-fit:cover;width:100%;height:100%}.trash-copy{gap:5px;min-width:0;display:grid}.trash-copy strong{color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.trash-copy span,.trash-copy small{color:var(--type-muted);font-size:12px}.trash-copy small{color:var(--type-warning)}.trash-actions{gap:7px;display:flex}.shot-image-cell{justify-content:flex-start;min-height:142px}.shot-image-list{justify-items:center;gap:6px;width:100%;display:grid}.shot-image-stack{will-change:transform;border-radius:7px;flex:0 0 86px;width:100%;height:86px;transition:transform .16s cubic-bezier(.2,.75,.25,1),opacity .12s,box-shadow .12s;position:relative;overflow:hidden}.shot-image-stack .shot-image-frame{height:100%;min-height:0}.shot-image-count{z-index:4;color:var(--type-inverse);background:#151d28b8;border-radius:4px;padding:3px 5px;font-size:12px;position:absolute;top:5px;left:5px}.shot-image-hover-actions{z-index:3;opacity:0;pointer-events:none;background:#0d131b94;transition:opacity .14s,transform .14s;display:flex;position:absolute;inset:0;transform:scale(.985)}.shot-image-stack:hover .shot-image-hover-actions,.shot-image-stack:focus-within .shot-image-hover-actions{opacity:1;pointer-events:auto;transform:scale(1)}.shot-image-cell.is-drag-active .shot-image-hover-actions,.shot-image-cell.is-drag-active .shot-image-corner-actions,.shot-image-cell.is-image-sorting .shot-image-hover-actions,.shot-image-cell.is-image-sorting .shot-image-corner-actions,.shot-image-cell.is-image-sorting .shot-image-count{opacity:0;pointer-events:none}.shot-image-stack[draggable=true]{cursor:grab}.shot-image-stack[draggable=true]:active{cursor:grabbing}.shot-image-stack.is-image-dragging{opacity:.42;transform:scale(.975)}.shot-image-stack.is-image-drop-target{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent), transparent 18%), 0 10px 22px color-mix(in srgb, var(--accent), transparent 78%)}.shot-image-stack.is-image-drop-target:before{z-index:9;background:var(--accent);height:2px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent), transparent 84%);content:"";pointer-events:none;border-radius:999px;animation:.13s both image-sort-target-in;position:absolute;top:5px;left:6px;right:6px}.shot-image-sort-handle{z-index:5;width:24px;height:24px;color:var(--type-inverse);opacity:0;cursor:grab;pointer-events:auto;background:#0d131ba8;border:1px solid #ffffff42;border-radius:6px;place-items:center;transition:opacity .14s,transform .14s,background .14s;display:inline-grid;position:absolute;bottom:5px;right:5px}.shot-image-sort-handle:active{cursor:grabbing;background:color-mix(in srgb, var(--accent), #101820 45%)}.shot-image-sort-ghost{z-index:2147483000;border:1px solid color-mix(in srgb, var(--accent), #fff 42%);min-height:28px;color:var(--type-inverse);pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#121d27e0;border-radius:8px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:700;animation:.13s both image-sort-ghost-in;display:inline-flex;position:fixed;box-shadow:0 9px 24px #121e283d}.shot-image-stack:hover .shot-image-sort-handle,.shot-image-stack:focus-within .shot-image-sort-handle,.shot-image-cell.is-image-sorting .shot-image-sort-handle{opacity:1;transform:translateY(0)}.shot-image-hover-actions button{min-width:0;min-height:100%;color:var(--type-inverse);background:0 0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:5px;padding:4px 2px;font-size:12px;display:inline-flex}.shot-image-hover-actions button+button{border-left:1px solid #ffffff21}.shot-image-hover-actions button:hover{background:#ffffff1f}.image-sort-intro{min-height:42px;color:var(--type-muted);background:#f4fafc;border:1px solid #dce8ed;border-radius:7px;align-items:center;gap:9px;margin-bottom:14px;padding:0 13px;font-size:14px;display:flex}.image-sort-list{gap:8px;display:grid}.image-sort-item{cursor:grab;background:#fff;border:1px solid #dfe6ea;border-radius:7px;grid-template-columns:30px 30px 152px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:106px;padding:9px 11px;transition:border-color .14s,box-shadow .14s,transform .14s,opacity .14s;display:grid;position:relative;overflow:hidden}.image-sort-item:hover{border-color:#bcdde8;box-shadow:0 7px 20px #173c4a14}.image-sort-item:active{cursor:grabbing}.image-sort-item.is-dragging{z-index:2;border-color:var(--accent);opacity:.72;transform:scale(1.012);box-shadow:0 12px 28px #126c8f2e}.image-sort-item.is-drop-target:before{background:var(--accent);content:"";border-radius:999px;height:3px;animation:.13s both image-sort-target-in;position:absolute;top:-1px;left:10px;right:10px}.image-sort-handle{width:30px;height:42px;color:var(--type-muted);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.image-sort-item:hover .image-sort-handle{color:var(--type-accent);background:#edf6f9}.image-sort-number{width:28px;height:28px;color:var(--type-accent);background:#eaf7fb;border-radius:6px;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.image-sort-preview{aspect-ratio:16/9;background:#f2f4f5;border:1px solid #e3e8eb;border-radius:6px;width:152px;overflow:hidden}.image-sort-preview img{object-fit:contain;width:100%;height:100%}.image-sort-meta{gap:5px;min-width:0;display:grid}.image-sort-meta strong{color:var(--type-accent);font-size:14px}.image-sort-meta span{color:var(--type-muted);font-size:12px}.image-sort-stepper{gap:5px;display:flex}.image-sort-stepper .icon-button{background:#fff;border:1px solid #dfe7eb}@keyframes image-sort-target-in{0%{opacity:0;transform:scaleX(.72)}}@keyframes image-sort-ghost-in{0%{opacity:0;transform:translate(-5px,-4px)scale(.96)}}@media (width<=680px){.image-sort-item{grid-template-columns:28px 26px minmax(120px,1fr) auto}.image-sort-preview{width:100%}.image-sort-meta{display:none}}.shot-image-hover-actions button.danger:hover{background:#e9444447}.shot-image-corner-actions{z-index:4;opacity:0;gap:3px;transition:opacity .14s;display:flex;position:absolute;top:4px;right:4px}.shot-image-stack:hover .shot-image-corner-actions,.shot-image-stack:focus-within .shot-image-corner-actions{opacity:1}.shot-image-corner-actions .icon-button{width:25px;height:25px;color:var(--type-inverse);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#151d28b3;border:1px solid #ffffff24;flex-basis:25px}.shot-image-drop-actions{z-index:8;border-radius:inherit;color:var(--type-inverse);pointer-events:none;background:#0c1219ad;grid-template-columns:repeat(2,minmax(0,1fr));animation:.14s both image-drop-actions-in;display:grid;position:absolute;inset:0;overflow:hidden}.shot-image-drop-actions.is-single{grid-template-columns:minmax(0,1fr)}.shot-image-drop-option{min-width:0;color:var(--type-inverse);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 4px;transition:background .12s,color .12s;display:flex}.shot-image-drop-option+.shot-image-drop-option{border-left:1px solid #ffffff2e}.shot-image-drop-option strong{font-size:12px}.shot-image-drop-option span{opacity:.76;font-size:12px}.shot-image-drop-option.is-active{background:color-mix(in srgb, var(--accent), transparent 18%);color:var(--type-inverse);box-shadow:inset 0 0 0 2px #ffffffc2}.shot-image-stack.is-drag-hover{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent), transparent 64%)}@keyframes image-drop-actions-in{0%{opacity:0;transform:scale(.98)}}.shot-image-thumbs{align-items:center;gap:4px;min-height:25px;display:flex;overflow:hidden}.shot-image-thumbs button{background:#eef2f7;border:1px solid #dce5f0;border-radius:4px;flex:0 0 32px;width:32px;height:24px;overflow:hidden}.shot-image-thumbs button.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.shot-image-thumbs img{object-fit:cover;width:100%;height:100%}.shot-image-thumbs>span{color:var(--type-muted);font-size:12px}.shot-image-add-more{width:100%;min-height:24px;color:var(--type-muted);background:#fbfcff;border:1px dashed #cbd8e9;border-radius:5px;justify-content:center;align-items:center;gap:5px;font-size:12px;display:inline-flex}.shot-image-add-more:hover{color:var(--type-accent);background:#eef5ff;border-color:#a9c6f6}.image-gallery-stage{background:#151a20;border-radius:8px;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px;min-height:480px;padding:14px;display:grid}.image-gallery-stage>.icon-button{color:var(--type-inverse);background:#ffffff17}.image-gallery-main{place-items:center;min-width:0;height:min(58dvh,620px);display:grid}.image-gallery-main img{object-fit:contain;max-width:100%;max-height:100%}.image-gallery-thumbs{gap:7px;margin-top:10px;padding:4px 0;display:flex;overflow-x:auto}.image-gallery-thumbs button{background:#edf1f6;border:2px solid #0000;border-radius:6px;flex:0 0 92px;width:92px;height:58px;position:relative;overflow:hidden}.image-gallery-thumbs button.is-active{border-color:var(--accent)}.image-gallery-thumbs img{object-fit:cover;width:100%;height:100%}.image-gallery-thumbs span{width:17px;height:17px;color:var(--type-inverse);background:#141c26b8;border-radius:3px;place-items:center;font-size:12px;display:grid;position:absolute;bottom:3px;right:3px}.drawing-toolbar{z-index:3;background:#fff;border-radius:8px 8px 0 0;flex-wrap:wrap;gap:6px;padding:8px;position:relative;box-shadow:0 8px 24px #1c304c12}.drawing-tools{flex-wrap:wrap;gap:3px;display:flex}.drawing-tools .icon-button{border:1px solid #0000}.drawing-tools .icon-button.is-active{border-color:#bdd4fb}.drawing-label-input{background:#f8fafc;border:1px solid #dce5f0;border-radius:6px;width:150px;height:32px;padding:0 9px;font-size:12px}.drawing-stage{background:linear-gradient(45deg,#202731 25%,#0000 25%) 0 0/20px 20px,linear-gradient(-45deg,#202731 25%,#0000 25%) 0 10px/20px 20px,linear-gradient(45deg,#0000 75%,#202731 75%) 10px -10px/20px 20px,linear-gradient(-45deg,#0000 75%,#202731 75%) -10px 0/20px 20px,#272f3a}.drawing-stage canvas.tool-eraser{cursor:not-allowed}.drawing-hint{color:var(--type-muted);margin:8px 2px 0;font-size:12px}.plan-view{border:0;border-radius:0;width:calc(100% + 32px);height:calc(100% + 32px);margin:-16px}.plan-vertical-workspace{grid-template-columns:minmax(350px,390px) minmax(0,1fr);gap:12px;padding:12px 0 0 12px}.plan-vertical-workspace .unplanned-tray{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.plan-list{padding-bottom:34px;padding-right:16px}.plan-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-form-vertical{max-width:620px}.plan-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.required-field>span{color:var(--type-error)}.required-field input{color:var(--type-accent)}@media (width<=1080px){.plan-vertical-workspace{grid-template-columns:310px minmax(0,1fr)}.plan-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-facts>div:nth-child(2){border-right:0}.trash-item{grid-template-columns:112px minmax(0,1fr)}.trash-cover{width:112px}.trash-actions{grid-column:2}}@media (width<=760px){.create-project-popover{width:auto;position:fixed;top:76px;left:12px;right:12px}.project-group-filter{margin-bottom:12px}.trash-item{grid-template-columns:90px minmax(0,1fr);gap:10px}.trash-cover{width:90px}.trash-actions{grid-column:1/-1;justify-content:flex-end}.image-gallery-stage{grid-template-columns:34px minmax(0,1fr) 34px;min-height:340px;padding:8px}.drawing-size{display:none}.plan-view{width:calc(100% + 16px);height:calc(100% + 16px);margin:-8px}.plan-vertical-workspace{flex-direction:column;padding:8px 0 0 8px;display:flex;overflow:auto}.plan-vertical-workspace .unplanned-tray{flex:0 0 430px;min-height:430px}.plan-list{min-height:auto;overflow:visible}.plan-form-grid{grid-template-columns:1fr}}.plan-view{background:#f4f6f8;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.plan-view-toolbar{z-index:12;background:#fffffff5;border-bottom-color:#e5e9ee;min-height:64px;padding:9px 18px;position:relative}.plan-toolbar-title,.plan-toolbar-actions,.plan-toolbar-title>div,.plan-selection-bar{align-items:center;display:flex}.plan-toolbar-title{gap:14px;min-width:0}.plan-toolbar-title>div{align-items:baseline;gap:9px}.plan-toolbar-title h1{color:var(--type-accent);margin:0;font-size:16px;font-weight:700}.plan-toolbar-title span{color:var(--type-muted);font-size:12px}.plan-toolbar-actions{gap:10px}.plan-display-control,.plan-column-menu{position:relative}.plan-display-control>.button.is-active{border-color:color-mix(in srgb, var(--accent), #176683 25%);background:color-mix(in srgb, var(--accent), #fff 86%);color:var(--type-accent)}.plan-display-popover{z-index:90;background:#fff;border:1px solid #dce4eb;border-radius:8px;width:250px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 45px #23303e29}.plan-display-popover>header{min-height:34px;color:var(--type-accent);justify-content:space-between;align-items:center;padding:0 2px 6px 8px;font-size:12px;display:flex}.plan-display-setting,.plan-display-toggle{min-height:46px;color:var(--type-muted);border-top:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:12px;padding:7px 8px;font-size:12px;display:flex}.segmented-control{background:#eef2f5;border-radius:6px;grid-template-columns:repeat(2,1fr);padding:2px;display:grid}.segmented-control button{min-height:27px;color:var(--type-muted);background:0 0;border-radius:5px;padding:0 10px;font-size:12px}.segmented-control button.is-active{color:var(--type-accent);background:#fff;box-shadow:0 1px 4px #1723301f}.plan-display-toggle input{width:16px;height:16px;accent-color:var(--accent)}.plan-selection-bar{border:1px solid color-mix(in srgb, var(--accent), #fff 55%);background:color-mix(in srgb, var(--accent), #fff 90%);height:36px;color:var(--type-accent);border-radius:7px;gap:8px;padding:3px 4px 3px 11px;font-size:12px}.plan-selection-bar select{width:118px;height:28px;color:var(--type-accent);background-color:#fff;border-color:#cce2ea;border-radius:5px;padding:0 28px 0 8px;font-size:12px}.plan-board-workspace{scrollbar-gutter:stable;align-items:stretch;gap:10px;min-width:0;min-height:0;padding:12px;display:flex;overflow:auto hidden}.plan-kanban-column{background:#fff;border:1px solid #e0e5ea;border-radius:8px;grid-template-rows:auto auto auto minmax(0,1fr) auto;width:clamp(300px,25vw,380px);min-width:300px;min-height:0;transition:border-color .14s,background .14s,box-shadow .14s;display:grid;overflow:visible;box-shadow:0 2px 8px #2836440a}.plan-board-workspace.is-dragging-shot .plan-kanban-column{border-color:color-mix(in srgb, var(--accent), #c7d2da 58%);background:color-mix(in srgb, var(--accent), #fff 97%);box-shadow:0 5px 14px #28708c12}.plan-board-workspace.is-dragging-shot .plan-column-shots{background:color-mix(in srgb, var(--accent), #fff 98%)}.plan-kanban-column>header{border-bottom:1px solid #e8ecef;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:64px;padding:9px 10px;display:grid;position:relative}.unplanned-tray{z-index:4;background:#fbfcfd;grid-template-rows:auto minmax(0,1fr);width:clamp(310px,27vw,400px);min-width:310px;margin:0;position:sticky;left:0;box-shadow:6px 0 16px #2936430d}.unplanned-tray>header{background:#fff;grid-template-columns:minmax(0,1fr) auto}.unplanned-tray>header>div{align-items:center;gap:7px;min-width:0;display:flex}.unplanned-tray>header strong{color:var(--type-accent);font-size:14px}.unplanned-tray>header span{width:20px;height:20px;color:var(--type-muted);background:#e7ebee;border-radius:50%;place-items:center;font-size:12px;display:grid}.unplanned-tray>header small{color:var(--type-muted);font-size:12px}.plan-column-heading{align-items:center;gap:9px;min-width:0;display:flex}.plan-index{background:color-mix(in srgb, var(--accent), #fff 83%);width:26px;height:26px;color:var(--type-accent);border-radius:6px;flex:0 0 26px;place-items:center;font-size:12px;font-weight:700;display:grid}.plan-title{min-width:0}.plan-title h2{color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:700;overflow:hidden}.plan-title p{color:var(--type-muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;margin:5px 0 0;font-size:12px;display:flex;overflow:hidden}.plan-title p.is-warning{color:var(--type-error)}.plan-column-summary{color:var(--type-muted);white-space:nowrap;align-items:baseline;gap:3px;display:flex}.plan-column-summary strong{color:var(--type-accent);font-size:14px}.plan-column-summary span{font-size:12px}.plan-column-actions{align-items:center;gap:2px;display:flex}.plan-column-actions .icon-button{flex-basis:28px;width:28px;height:28px}.plan-column-actions .icon-button svg{width:15px;height:15px}.plan-column-menu .menu-popover{min-width:154px}.plan-column-menu .menu-popover button:disabled{opacity:.38;cursor:default}.plan-column-meta{background:#fafbfc;border-bottom:1px solid #edf0f2;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.plan-column-meta span{min-width:0;height:34px;color:var(--type-muted);text-overflow:ellipsis;white-space:nowrap;border-right:1px solid #edf0f2;align-items:center;gap:5px;padding:0 8px;font-size:12px;display:flex;overflow:hidden}.plan-column-meta span:last-child{border-right:0}.plan-column-meta svg{color:var(--type-muted);flex:none}.plan-column-progress{background:#edf1f3;height:3px;overflow:hidden}.plan-column-progress i{background:var(--accent);height:100%;transition:width .18s;display:block}.plan-column-shots{scrollbar-width:thin;align-content:start;gap:6px;min-height:0;padding:8px;display:grid;overflow:hidden auto}.plan-shot-card{width:100%;min-width:0;min-height:82px;color:var(--type-muted);cursor:grab;background:#fff;border:1px solid #e3e8ec;border-radius:7px;grid-template-columns:18px 104px minmax(0,1fr) 24px;align-items:center;gap:7px;padding:7px;transition:border-color .14s,background .14s,box-shadow .14s,transform .14s;display:grid;position:relative;overflow:hidden}.plan-shot-card:hover{z-index:1;border-color:color-mix(in srgb, var(--accent), #8ba0ae 44%);background:#fff;transform:translateY(-1px);box-shadow:0 7px 16px #28384617}.plan-shot-card:active{cursor:grabbing}.plan-shot-card.is-selected{border-color:color-mix(in srgb, var(--accent), #14769a 30%);background:color-mix(in srgb, var(--accent), #fff 94%);box-shadow:inset 3px 0 0 var(--accent)}.plan-shot-select{width:17px;height:17px;color:var(--type-inverse);background:#fff;border:1px solid #aeb8c1;border-radius:50%;place-items:center;display:grid}.plan-shot-card.is-selected .plan-shot-select{border-color:var(--accent);background:var(--accent)}.plan-shot-image{aspect-ratio:16/9;background:#eef1f3;border-radius:5px;place-items:center;width:104px;display:grid;position:relative;overflow:hidden}.plan-shot-image img{object-fit:cover;width:100%;height:100%}.plan-shot-image>span:not(.plan-shot-image-empty){width:18px;height:18px;color:var(--type-inverse);background:#121a21b8;border-radius:4px;place-items:center;font-size:12px;display:grid;position:absolute;top:4px;left:4px}.plan-shot-image-empty{color:var(--type-muted);font-size:12px}.plan-shot-copy{min-width:0}.plan-shot-copy>span{color:var(--type-muted);font-size:12px}.plan-shot-copy p{color:var(--type-accent);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0;font-size:12px;font-weight:600;line-height:1.42;display:-webkit-box;overflow:hidden}.plan-shot-copy small{color:var(--type-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.plan-shot-grip{color:var(--type-muted)}.plan-shot-card>.icon-button{opacity:0;flex-basis:24px;width:24px;height:24px}.plan-shot-card:hover>.icon-button,.plan-shot-card:focus-within>.icon-button{opacity:1}.plan-notes{color:var(--type-muted);background:#fffdf7;border-top:1px solid #edf0f2;grid-template-columns:auto minmax(0,1fr);gap:7px;margin:0;padding:8px 10px;font-size:12px;display:grid}.plan-drop-empty,.tray-empty{min-height:86px;color:var(--type-muted);border:1px dashed #cdd5db;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.tray-empty{color:var(--type-success)}.plan-create-column{color:var(--type-muted);text-align:center;border-style:dashed;align-content:center;place-items:center;gap:12px}.plan-board-workspace.is-compact .plan-shot-card{min-height:70px}.plan-board-workspace.is-compact .plan-shot-image{width:92px}.plan-board-workspace.is-compact .plan-shot-card{grid-template-columns:18px 92px minmax(0,1fr) 24px}.plan-board-workspace.is-comfortable .plan-shot-card{min-height:96px;padding:9px}.plan-board-workspace.is-image-hidden .plan-shot-card{grid-template-columns:18px minmax(0,1fr) 24px;min-height:58px}.plan-board-workspace.is-details-hidden .plan-shot-card{min-height:64px}@media (width<=920px){.plan-view-toolbar{flex-direction:column;align-items:flex-start}.plan-toolbar-actions{justify-content:flex-end;width:100%}.plan-board-workspace{padding:8px}.plan-kanban-column,.unplanned-tray{width:min(84vw,360px);min-width:min(84vw,360px)}}@media (width<=620px){.plan-toolbar-title{justify-content:space-between;align-items:flex-start;width:100%}.plan-toolbar-title>div{display:block}.plan-toolbar-title span{margin-top:3px;display:block}.plan-selection-bar{flex:1}}.haomi-mark{background:linear-gradient(145deg,#168fbd 0%,#5fc4eb 100%);border-color:#ffffff57;box-shadow:inset 0 1px #ffffff6b,0 7px 18px #209bca3d}.button-primary{color:var(--type-accent);background:#5fc4eb;border-color:#43b7e2;box-shadow:0 3px 10px #2ca3d024}.button-primary:hover{background:#50bae3;border-color:#2ba8d8}.workspace{background:#f4f7f9;grid-template-rows:76px 66px minmax(0,1fr)}.workspace-header{-webkit-backdrop-filter:blur(18px)saturate(1.18);backdrop-filter:blur(18px)saturate(1.18);background:#fffffff0;border-bottom-color:#dfe7ed;gap:12px;padding:0 18px}.workspace-header-actions{flex:none;align-items:center;gap:8px;display:flex}.workspace-status{min-height:32px;color:var(--type-muted);background:#f4f7f9;border-radius:6px;gap:6px;padding:0 8px}.workspace-status.is-synced{color:var(--type-success);background:#eef9f5}.workspace-status.is-syncing,.workspace-status.is-connecting{color:var(--type-accent);background:#eef8fc}.workspace-status.is-syncing svg,.workspace-status.is-connecting svg{animation:1.4s ease-in-out infinite cloud-breathe}@keyframes cloud-breathe{50%{opacity:.45;transform:translateY(-1px)}}.workspace-export-button{min-width:76px}.workspace-export-button.is-active{color:var(--type-accent);background:#eaf8fd;border-color:#a8dcef}.collaboration-control{position:relative}.collaboration-trigger{min-height:34px;color:var(--type-muted);background:#fff;border:1px solid #dbe5eb;border-radius:7px;align-items:center;gap:7px;padding:0 9px;font-size:12px;font-weight:700;transition:border-color .15s,background .15s,transform .15s;display:inline-flex}.collaboration-trigger:hover,.collaboration-trigger[aria-expanded=true]{color:var(--type-accent);background:#edf9fd;border-color:#a8dcef;transform:translateY(-1px)}.collaboration-avatars{padding-left:3px;display:flex}.collaboration-avatars i,.collaboration-list>div>i{width:24px;height:24px;color:var(--type-inverse);border:2px solid #fff;border-radius:50%;place-items:center;font-size:12px;font-style:normal;font-weight:700;display:grid}.collaboration-avatars i+i{margin-left:-7px}.collaboration-popover{z-index:260;width:318px;color:var(--type-accent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffffa;border:1px solid #dbe5eb;border-radius:8px;padding:10px;animation:.18s cubic-bezier(.22,1,.36,1) both interface-pop;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 20px 54px #1d3e502e}.collaboration-popover>header{border-bottom:1px solid #e8eef2;justify-content:space-between;align-items:center;padding:3px 4px 9px;display:flex}.collaboration-popover header strong,.collaboration-popover header span{display:block}.collaboration-popover header strong{font-size:12px}.collaboration-popover header span{color:var(--type-muted);margin-top:3px;font-size:12px}.live-dot{background:#22a67a;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #22a67a1f}.collaboration-list{gap:4px;padding:8px 0;display:grid}.collaboration-list>div{border-radius:6px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;padding:5px;display:grid}.collaboration-list>div:hover{background:#f3f8fa}.collaboration-list span,.collaboration-list strong,.collaboration-list small{min-width:0;display:block}.collaboration-list strong,.collaboration-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collaboration-list strong{font-size:12px}.collaboration-list small{color:var(--type-muted);margin-top:2px;font-size:12px}.collaboration-list em{color:var(--type-success);font-size:12px;font-style:normal}.collaboration-list p{color:var(--type-muted);margin:4px;font-size:12px;line-height:1.55}.collaboration-popover>button{width:100%;min-height:36px;color:var(--type-accent);background:#eaf8fd;border-radius:6px;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.collaboration-popover>.collaboration-manage-button{color:var(--type-muted);text-align:left;background:#fff;border:1px solid #dce8ed;grid-template-columns:18px minmax(0,1fr) 16px;justify-content:stretch;margin-bottom:6px}.collaboration-manage-button span{text-align:left}.collaboration-manage-button svg:last-child{color:var(--type-muted)}.read-only-badge{min-height:32px;color:var(--type-muted);white-space:nowrap;background:#f5f7f9;border:1px solid #dce5eb;border-radius:6px;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.workspace-content.is-read-only input,.workspace-content.is-read-only textarea,.workspace-content.is-read-only select,.workspace-content.is-read-only [contenteditable=true]{pointer-events:none;-webkit-user-select:text;user-select:text}.workspace-content.is-read-only .view-toolbar,.workspace-content.is-read-only .insert-shot-control,.workspace-content.is-read-only .row-actions,.workspace-content.is-read-only .shot-image-dropzone,.workspace-content.is-read-only .image-hover-actions,.workspace-content.is-read-only .shot-row-menu-trigger{pointer-events:none;opacity:.58}.workspace-progress{background:#fff;border-bottom:1px solid #dfe7ed;gap:0;padding:8px 16px;overflow:visible}.workspace-progress button{min-width:128px;color:var(--type-muted);background:#f7f9fa;border-right:1px solid #e4ebef;flex:1 1 0;justify-content:center;gap:9px;padding:0 18px;transition:background .16s,color .16s,transform .16s;position:relative}.workspace-progress button:first-child{border-radius:7px 0 0 7px}.workspace-progress button:last-child{border-right:0;border-radius:0 7px 7px 0}.workspace-progress button:after{display:none}.workspace-progress button:hover{z-index:1;color:var(--type-accent);background:#eef6f9}.workspace-progress button.is-active{z-index:2;color:var(--type-accent);background:#dff4fb;box-shadow:inset 0 -2px #37addb}.workspace-progress button.is-complete:not(.is-active){color:var(--type-accent)}.progress-step-index{width:24px;height:24px;color:var(--type-muted);background:#fff;border:1px solid #cfdae1;border-radius:50%;flex:0 0 24px;place-items:center;font-size:12px;font-style:normal;font-weight:700;display:grid}.is-complete .progress-step-index,.is-active .progress-step-index{color:var(--type-accent);background:#5fc4eb;border-color:#58bfe6}.workspace-progress button>span{text-align:left;white-space:nowrap;align-items:baseline;gap:7px;min-width:0;display:flex}.workspace-progress button small{color:var(--type-muted);font-size:12px;font-weight:700;line-height:1}.workspace-progress button strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;overflow:hidden}.workspace-content{padding:12px}.table-view{background:#fff;border:1px solid #dce5ea;border-radius:8px;overflow:hidden;box-shadow:0 10px 30px #233e4e0d}.shot-table th{height:52px;color:var(--type-accent);text-align:center;background:#e6eef3;border-color:#d8e2e8;font-size:12px;font-weight:700}.shot-table th.is-media-image{color:var(--type-accent);background:#dff3fa}.shot-table td{color:var(--type-accent);background:#fff;border-color:#e1e8ec;font-size:12px}.shot-table tbody tr:nth-child(2n) td{background:#f8fafb}.shot-table td.has-context-menu,.shot-table tbody tr:nth-child(2n) td.has-context-menu,.shot-table tbody tr:hover td.has-context-menu{z-index:16;background:#fff;position:relative;box-shadow:inset 0 0 0 2px #49bce5}.cell-context-menu{z-index:4200;width:208px;color:var(--type-accent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border:1px solid #dfe7ec;border-radius:8px;padding:7px;animation:.13s cubic-bezier(.2,.8,.2,1) both cell-context-menu-in;position:fixed;box-shadow:0 18px 46px #182d3a2e}@keyframes cell-context-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.cell-context-menu-heading{border-bottom:1px solid #edf1f3;justify-content:space-between;align-items:center;gap:10px;min-height:32px;padding:0 9px 6px;display:flex}.cell-context-menu-heading strong{font-size:12px;font-weight:700}.cell-context-menu-heading span{color:var(--type-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.cell-context-menu>button{width:100%;min-height:38px;color:var(--type-accent);text-align:left;background:0 0;border-radius:6px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:6px;padding:0 9px;font-size:12px;display:grid}.cell-context-menu>button:hover,.cell-context-menu>button:focus-visible{color:var(--type-accent);background:#eaf8fd;outline:none}.cell-context-menu>button:disabled{color:var(--type-muted);cursor:default}.cell-context-menu>button:disabled:hover{background:0 0}.cell-context-menu kbd{color:var(--type-muted);font-family:var(--font-ui);font-size:12px}.shot-context-menu{z-index:4200;width:216px;color:var(--type-accent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff7;border:1px solid #dfe7ec;border-radius:8px;padding:7px;animation:.13s cubic-bezier(.2,.8,.2,1) both cell-context-menu-in;position:fixed;box-shadow:0 20px 48px #182d3a30}.shot-context-menu-heading,.row-menu-heading{color:var(--type-muted);padding:4px 9px 8px;font-size:12px;font-weight:700;display:block}.shot-context-menu>button,.shot-context-submenu-control>button,.shot-context-submenu>button,.row-menu-submenu-control>button,.row-menu-submenu>button{width:100%;min-height:36px;color:var(--type-accent);text-align:left;background:0 0;border-radius:6px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 9px;font-size:12px;display:grid}.shot-context-menu>button:hover,.shot-context-menu>button:focus-visible,.shot-context-submenu-control>button:hover,.shot-context-submenu-control>button[aria-expanded=true],.shot-context-submenu>button:hover,.row-menu-submenu-control>button:hover,.row-menu-submenu>button:hover{color:var(--type-accent);background:#eaf8fd;outline:none}.shot-context-submenu-control,.row-menu-submenu-control{position:relative}.shot-context-submenu,.row-menu-submenu{z-index:4210;background:#fff;border:1px solid #dfe7ec;border-radius:8px;width:176px;padding:7px;position:absolute;top:-7px;box-shadow:0 16px 38px #182d3a29}.shot-context-submenu.opens-right{left:calc(100% + 6px)}.shot-context-submenu.opens-left,.row-menu-submenu{right:calc(100% + 6px)}.row-menu-submenu{left:auto}.shot-context-submenu>button:disabled,.row-menu-submenu>button:disabled,.row-menu .menu-popover>button:disabled{color:var(--type-muted);cursor:default}.shot-context-submenu>button:disabled:hover,.row-menu-submenu>button:disabled:hover,.row-menu .menu-popover>button:disabled:hover{background:0 0}.shot-context-divider{background:#edf1f3;height:1px;margin:6px 4px}.shot-context-menu>button.is-danger{color:var(--type-error)}.shot-context-menu>button.is-danger:hover{color:var(--type-error);background:#fff0f0}.row-menu .menu-popover{width:218px}.row-menu .menu-popover>button,.row-menu-submenu-control>button{min-height:34px}.shot-table tbody .shot-row.has-context-menu>td{background-color:#f3fbfe}.shot-table tbody .shot-row.has-context-menu>td:first-child{box-shadow:inset 3px 0 #5fc4eb}.shot-table td.is-media-image,.shot-table tbody tr:nth-child(2n) td.is-media-image{background:#f2fbfe}.column-header-trigger{color:inherit;text-align:center;justify-content:center}.shot-data-cell.align-center textarea,.shot-data-cell.align-center input,.custom-column-cell.align-center textarea,.custom-column-cell.align-center input{text-align:center}.column-header-popover{border-color:#d7e3ea;border-radius:8px;width:354px;max-width:min(354px,100vw - 28px);padding:7px;box-shadow:0 22px 54px #223a482e}.column-definition-editor{text-align:left;gap:11px;padding:8px;display:grid}.column-definition-editor>header{border-bottom:1px solid #e7edf1;padding:2px 1px 8px}.column-definition-editor header strong,.column-definition-editor header span{display:block}.column-definition-editor header strong{color:var(--type-accent);font-size:12px}.column-definition-editor header span{color:var(--type-muted);margin-top:3px;font-size:12px}.column-definition-editor .field,.column-editor-group,.column-editor-inline>label{gap:6px;display:grid}.column-definition-editor .field>span,.column-editor-group>span,.column-editor-inline label>span:first-child{color:var(--type-muted);font-size:12px;font-weight:700}.column-definition-editor input,.column-definition-editor textarea,.column-definition-editor select{background:#f7fafb;border-color:#dbe5eb;font-size:12px}.column-definition-editor input,.column-definition-editor select{height:36px;padding:0 9px}.column-definition-editor textarea{min-height:58px;padding:8px 9px}.column-kind-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;display:grid}.column-kind-grid button{min-height:54px;color:var(--type-muted);background:#fff;border:1px solid #dfe7ec;border-radius:7px;place-items:center;gap:4px;font-size:12px;display:grid}.column-kind-grid button:hover,.column-kind-grid button.is-active{color:var(--type-accent);background:#eaf8fd;border-color:#8ed3ed}.column-editor-inline{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:8px;display:grid}.mini-segmented{background:#edf2f5;border:1px solid #dbe5eb;border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;height:36px;padding:3px;display:grid}.mini-segmented button{color:var(--type-muted);background:0 0;border-radius:5px;font-size:12px}.mini-segmented button.is-active{color:var(--type-accent);background:#fff;box-shadow:0 1px 4px #233a491f}.column-definition-editor footer{justify-content:flex-end;gap:7px;padding-top:3px;display:flex}.column-definition-editor footer button{min-width:72px;min-height:34px;color:var(--type-muted);background:#fff;border:1px solid #dce5ea;border-radius:6px;font-size:12px;font-weight:700}.column-definition-editor footer button.is-primary{color:var(--type-accent);background:#5fc4eb;border-color:#50bae3}.cell-select{width:100%;position:relative}.cell-select-input{width:100%;min-height:34px;color:var(--type-accent);text-align:inherit;background:0 0;border:1px solid #0000;border-radius:6px;outline:0;padding:5px 30px 5px 8px;font-size:12px;line-height:1.45;transition:border-color .15s,background .15s,box-shadow .15s}.cell-select-input::placeholder{color:var(--type-muted)}.cell-select:hover .cell-select-input,.cell-select:focus-within .cell-select-input,.cell-select.is-open .cell-select-input{background:#fff;border-color:#a8dcef;box-shadow:0 0 0 3px #5fc4eb1f}.cell-select-toggle{z-index:2;width:26px;height:28px;color:var(--type-muted);opacity:.62;background:0 0;border-radius:5px;place-items:center;padding:0;transition:background .15s,color .15s,opacity .15s;display:grid;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.cell-select-toggle:hover,.cell-select.is-open .cell-select-toggle{color:var(--type-accent);opacity:1;background:#eef8fb}.cell-select-toggle svg{transition:transform .15s}.cell-select.is-open .cell-select-toggle svg{transform:rotate(180deg)}.cell-select-menu{z-index:320;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffffa;border:1px solid #d5e1e8;border-radius:8px;gap:2px;min-width:132px;max-height:260px;padding:5px;animation:.16s cubic-bezier(.22,1,.36,1) both select-open;display:grid;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:auto;box-shadow:0 18px 42px #1f3a4933}@keyframes select-open{0%{opacity:0;transform:translateY(-5px)scale(.98)}}.cell-select-menu button{min-height:32px;color:var(--type-muted);text-align:left;background:0 0;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:0 8px;font-size:12px;display:flex}.cell-select-menu button:hover,.cell-select-menu button.is-active{color:var(--type-accent);background:#eaf8fd}.cell-select-create{min-height:38px;color:var(--type-muted);border-top:1px solid #edf1f3;grid-template-columns:16px minmax(0,1fr) 28px;align-items:center;gap:5px;margin-top:3px;padding:4px 4px 4px 7px;display:grid}.cell-select-create input{min-width:0;height:28px;color:var(--type-accent);background:0 0;border:0;outline:0;padding:0 5px;font-size:12px}.cell-select-menu .cell-select-create>button{width:28px;min-height:28px;color:var(--type-accent);background:#e8f7fc;border-radius:5px;place-items:center;padding:0;display:grid}.cell-select-menu .cell-select-create>button:disabled{opacity:.38}.cell-select-options{gap:2px;display:grid;overflow:auto}.cell-select-menu .cell-select-options>button.is-highlighted{color:var(--type-accent);background:#eef9fd}.cell-select-menu .cell-select-create-option{color:var(--type-accent);border-bottom:1px solid #edf2f4;border-radius:5px 5px 0 0;grid-template-columns:16px minmax(0,1fr) auto;margin-bottom:3px}.cell-select-menu .cell-select-create-option:before{display:none}.cell-select-create-option span{text-align:left;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cell-select-create-option strong{color:var(--type-accent);font-weight:700}.cell-select-create-option kbd{color:var(--type-muted);font:500 12px/1.2 var(--font-ui);background:#fff;border:1px solid #dce7ec;border-radius:4px;padding:2px 5px}.cell-select-empty{color:var(--type-muted);text-align:center;margin:0;padding:14px 8px;font-size:12px}.excel-import-summary{background:#f4fafc;border:1px solid #dce8ed;border-radius:7px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:66px;margin-bottom:16px;padding:11px 13px;display:grid}.excel-import-summary>span{width:38px;height:38px;color:var(--type-accent);background:#dff4fb;border-radius:7px;place-items:center;display:grid}.excel-import-summary strong,.excel-import-summary small{display:block}.excel-import-summary strong{color:var(--type-accent);font-size:12px}.excel-import-summary small,.excel-import-summary em{color:var(--type-muted);margin-top:4px;font-size:12px;font-style:normal}.excel-import-summary em{background:#fff;border-radius:999px;margin:0;padding:4px 7px}.excel-import-table{border:1px solid #dfe6ea;border-radius:7px;overflow:hidden}.excel-import-row{border-top:1px solid #edf1f3;grid-template-columns:minmax(120px,.8fr) minmax(180px,1.4fr) 190px;align-items:center;gap:12px;min-height:50px;padding:7px 10px;display:grid}.excel-import-row:first-child{border-top:0}.excel-import-row.is-heading{min-height:34px;color:var(--type-muted);background:#f2f5f7;font-size:12px;font-weight:700}.excel-import-row strong,.excel-import-header-input{color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.excel-import-header-input{background:0 0;border:1px solid #0000;border-radius:5px;width:100%;height:32px;padding:0 7px;font-weight:700}.excel-import-header-input:hover,.excel-import-header-input:focus{background:#fff;border-color:#c6e3ed;outline:0;box-shadow:0 0 0 3px #5fc4eb1a}.excel-import-samples{color:var(--type-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.excel-import-row select{width:100%;height:32px;color:var(--type-accent);background:#fff;border:1px solid #d9e2e7;border-radius:6px;font-size:12px}.excel-import-note{color:var(--type-muted);margin:10px 2px 0;font-size:12px}.cell-select.status-select .cell-select-input{text-align:center}.shot-image-generate{width:100%;min-height:28px;color:var(--type-accent);background:#eaf8fd;border:1px solid #a9daec;border-radius:6px;justify-content:center;align-items:center;gap:5px;font-size:12px;font-weight:700;transition:background .15s,transform .15s,box-shadow .15s;display:flex}.shot-image-generate:hover{background:#dff4fb;transform:translateY(-1px);box-shadow:0 5px 14px #2c97c11f}.visual-generator-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px;display:grid}.visual-style-panel,.visual-prompt-panel{background:#f8fafb;border:1px solid #dde6eb;border-radius:8px;align-content:start;gap:12px;padding:14px;display:grid}.visual-style-title{grid-template-columns:34px minmax(0,1fr);gap:9px;display:grid}.visual-style-title>span{width:34px;height:34px;color:var(--type-accent);background:#dff4fb;border-radius:7px;place-items:center;display:grid}.visual-style-title strong,.visual-style-title p,.visual-reference-card strong,.visual-reference-card p{margin:0;display:block}.visual-style-title strong,.visual-reference-card strong{color:var(--type-accent);font-size:12px}.visual-style-title p,.visual-reference-card p{color:var(--type-muted);margin-top:4px;font-size:12px;line-height:1.55}.visual-style-panel .field{gap:6px;display:grid}.visual-style-panel .field>span{color:var(--type-muted);font-size:12px;font-weight:700}.visual-style-panel textarea{background:#fff;border-color:#dbe5ea;min-height:112px;padding:9px;font-size:12px;line-height:1.6}.visual-reference-card{background:#fff;border:1px solid #dce6eb;border-radius:7px;grid-template-columns:112px minmax(0,1fr);gap:10px;padding:9px;display:grid}.visual-reference-preview{aspect-ratio:16/10;width:112px;color:var(--type-muted);background:#edf3f6;border-radius:6px;place-items:center;display:grid;overflow:hidden}.visual-reference-preview img{object-fit:cover;width:100%;height:100%}.visual-reference-card button,.visual-prompt-panel header button,.upload-generated-result{min-height:30px;color:var(--type-accent);background:#fff;border:1px solid #cfe1e9;border-radius:6px;justify-content:center;align-items:center;gap:6px;margin-top:8px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.visual-prompt-panel{color:var(--type-inverse);background:#17232d}.visual-prompt-panel>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.visual-prompt-panel header strong,.visual-prompt-panel header span{display:block}.visual-prompt-panel header strong{font-size:12px}.visual-prompt-panel header span{color:var(--type-muted);margin-top:4px;font-size:12px}.visual-prompt-panel header button{color:var(--type-accent);background:#21323d;border-color:#37505e;flex:none;margin:0}.visual-prompt-panel pre{max-height:310px;color:var(--type-muted);font-family:var(--font-ui);white-space:pre-wrap;background:#111b22;border:1px solid #304552;border-radius:7px;margin:0;padding:12px;font-size:12px;line-height:1.65;overflow:auto}.visual-generator-notice{color:var(--type-muted);background:#302832;border:1px solid #5b5360;border-radius:6px;padding:9px 10px;font-size:12px;line-height:1.55}.upload-generated-result{width:100%;color:var(--type-accent);background:#21323d;border-color:#33505e;margin:0}.drawing-toolbar{background:#fffffff5;border:1px solid #dce5ea;border-bottom:0;gap:8px;padding:8px 10px}.drawing-tools{gap:4px}.drawing-tool-wrap{position:relative}.drawing-tool-button{width:34px;height:34px;color:var(--type-muted);background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;transition:border-color .15s,background .15s,color .15s,transform .15s;display:grid;position:relative}.drawing-tool-button:hover{color:var(--type-accent);background:#f0f8fb;border-color:#cce4ed;transform:translateY(-1px)}.drawing-tool-button.is-active{color:var(--type-accent);background:#dff4fb;border-color:#78cce9;box-shadow:0 0 0 3px #5fc4eb21}.drawing-tool-button.is-active:after{content:"";background:#35addb;border-radius:2px;height:2px;animation:1.5s ease-in-out infinite tool-range;position:absolute;bottom:3px;left:5px;right:5px}@keyframes tool-range{50%{opacity:.55;left:9px;right:9px}}.drawing-tool-wrap>span{z-index:50;opacity:0;width:max-content;max-width:130px;color:var(--type-inverse);pointer-events:none;background:#17232d;border-radius:5px;padding:5px 7px;font-size:12px;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%,-3px)}.drawing-tool-wrap:hover>span{opacity:1;transform:translate(-50%)}.drawing-active-guide{background:#f5fafc;border:1px solid #dce5ea;border-bottom:0;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:52px;padding:7px 11px;animation:.18s both guide-enter;display:grid}@keyframes guide-enter{0%{opacity:0;transform:translateY(-3px)}}.drawing-active-icon{width:32px;height:32px;color:var(--type-accent);background:#dff4fb;border-radius:7px;place-items:center;display:grid;position:relative}.drawing-active-icon i{border:1px solid #45b3dd5c;border-radius:8px;animation:1.6s ease-out infinite guide-pulse;position:absolute;inset:-3px}@keyframes guide-pulse{to{opacity:0;inset:-9px}}.drawing-active-guide strong,.drawing-active-guide p{margin:0;display:block}.drawing-active-guide strong{color:var(--type-accent);font-size:12px}.drawing-active-guide p{color:var(--type-muted);margin-top:3px;font-size:12px}.drawing-active-guide small{color:var(--type-muted);background:#fff;border-radius:5px;padding:5px 7px;font-size:12px}.drawing-stage canvas:not(.tool-select):not(.tool-eraser){cursor:crosshair}.drawing-stage canvas.tool-select{cursor:grab}.drawing-stage canvas.tool-select:active{cursor:grabbing}@media (width<=1020px){.workspace-status span,.collaboration-trigger>span:last-child{display:none}.workspace-progress button{gap:6px;min-width:104px;padding:0 8px}.workspace-progress button>span{gap:5px}.workspace-progress button small,.workspace-progress button strong{font-size:12px}.visual-generator-layout{grid-template-columns:1fr}}@media (width<=760px){.workspace{grid-template-rows:68px 60px minmax(0,1fr)}.workspace-header{padding:0 10px}.workspace-header-actions{gap:4px}.workspace-project-title p,.workspace-status,.collaboration-avatars,.workspace-export-button span{display:none}.workspace-export-button{min-width:36px;padding:0}.collaboration-popover{width:auto;position:fixed;top:64px;left:10px;right:10px}.workspace-progress{padding:6px 8px}.workspace-progress button{min-width:70px;padding:0 7px}.workspace-progress button small{display:none}.workspace-progress button strong{font-size:12px}.progress-step-index{flex-basis:20px;width:20px;height:20px}.column-header-popover{width:auto;position:fixed;top:132px;left:10px;right:10px}.drawing-active-guide{grid-template-columns:30px minmax(0,1fr)}.drawing-active-guide small{display:none}}.workspace,.workspace button,.workspace input,.workspace textarea,.workspace select{font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizelegibility}.shot-table{font-variant-numeric:tabular-nums}.shot-table th,.shot-table td{vertical-align:middle}.shot-table th{color:var(--type-accent);font-size:12px;font-weight:700;line-height:1.35;text-align:center!important}.column-header-trigger{text-align:center;grid-template-columns:16px minmax(0,1fr) 16px;align-items:center;gap:4px;width:100%;min-height:36px;display:grid}.column-header-trigger:before{content:"";width:16px;height:16px}.column-header-trigger>span{overflow-wrap:anywhere;text-align:center;grid-column:2}.column-header-trigger>svg{grid-column:3;justify-self:center}.shot-table td,.shot-data-cell,.custom-column-cell{text-align:center}.shot-table textarea,.shot-table input,.shot-table select{color:var(--type-accent);text-align:center;font-size:12px;font-weight:500;line-height:1.6}.shot-table textarea{overflow-wrap:anywhere;padding:18px 10px}.shot-table .cell-number{text-align:center;font-weight:600}.cell-select-menu button{text-align:center;grid-template-columns:14px minmax(0,1fr) 14px;align-items:center;font-size:12px;font-weight:500;display:grid}.cell-select-menu button:before{content:"";width:14px;height:14px}.cell-select-menu button>span{text-align:center}.cell-select-menu button>svg{justify-self:center}.shot-number-column strong{font-family:var(--font-ui);font-size:12px;font-weight:700}.story-card,.story-meta,.story-meta>div,.story-card>p,.continuity-shot-list>button,.continuity-shot-head,.callsheet-list-item{text-align:center}.story-meta{align-items:center}.story-meta>div,.continuity-shot-list>button>div{min-width:0}.story-card>p,.continuity-shot-head p{text-wrap:pretty;line-height:1.6}.project-open-area{z-index:1;position:relative}.project-menu{z-index:240;isolation:isolate;pointer-events:auto}.project-menu .icon-button,.project-menu .menu-popover,.project-menu-action,.project-menu-group,.project-menu-group select{pointer-events:auto;touch-action:manipulation}.project-menu-action:active{transform:scale(.985)}.column-heading,.resizable-utility-column{position:sticky}.column-resize-handle{z-index:45;cursor:col-resize;touch-action:none;background:0 0;border:0;border-radius:0;width:10px;height:100%;padding:0;position:absolute;top:0;right:-5px}.column-resize-handle:after{content:"";opacity:0;background:#a7b7c3;border-radius:2px;width:2px;transition:opacity .13s,transform .13s,background .13s;position:absolute;top:9px;bottom:9px;right:4px;transform:scaleY(.72)}.column-heading:hover>.column-resize-handle:after,.resizable-utility-column:hover>.column-resize-handle:after,.column-resize-handle:hover:after,.column-resize-handle:focus-visible:after{background:var(--accent);opacity:1;transform:scaleY(1)}.column-resize-handle:focus-visible{outline:2px solid color-mix(in srgb, var(--accent), #fff 28%);outline-offset:-2px}body.is-column-resizing,body.is-column-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.utility-column-label{text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.shot-image-stack,.shot-image-frame{background:#f2f5f7}.shot-image-frame img{object-fit:contain;object-position:center;background:#f2f5f7}.shot-image-primary-actions{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;width:100%;display:grid}.shot-image-primary-actions .shot-image-add-more,.shot-image-primary-actions .shot-image-generate{white-space:nowrap;gap:4px;width:100%;min-width:0;min-height:26px;padding:0 5px}.shot-image-primary-actions button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shot-image-primary-actions button>svg{flex:none}.visual-generator-status,.visual-generator-notice{justify-content:space-between;align-items:center;gap:10px;min-height:38px;padding:9px 10px;font-size:12px;display:flex}.visual-generator-status.is-ready{color:var(--type-muted);background:#183a31;border:1px solid #2d6d59;border-radius:6px}.visual-generator-status.is-ready svg{flex:none}.visual-generator-notice.is-checking{color:var(--type-muted);background:#1b2a33;border-color:#3e5360}.visual-generator-notice>span{min-width:0;line-height:1.5}.visual-generator-notice>button{min-width:max-content;min-height:28px;color:inherit;background:#ffffff12;border:1px solid #ffffff24;border-radius:5px;align-items:center;gap:5px;padding:0 8px;font-size:12px;display:inline-flex}.visual-generator-notice>button:hover{background:#ffffff1f}.shot-image-cell{align-items:center;width:100%}.shot-image-stack{aspect-ratio:16/9;flex:none;width:min(100%,480px);height:auto}.shot-image-stack .shot-image-frame{width:100%;height:100%}.shot-image-frame img{object-fit:contain;width:100%;height:100%}.shot-image-thumbs,.shot-image-primary-actions,.shot-image-list{width:min(100%,480px)}.workspace{grid-template-rows:54px 42px minmax(0,1fr)}.workspace-header{gap:9px;padding:0 12px}.workspace-project-title{gap:8px}.workspace-project-mark{border-radius:6px;height:30px}.workspace-header h1{font-size:14px}.workspace-header p{margin-top:2px;font-size:12px}.workspace-header-actions{gap:6px}.workspace-progress{min-height:42px;padding:4px 8px}.workspace-progress button{min-width:104px;min-height:32px;margin:0;padding:0 10px}.workspace-progress button small,.workspace-progress button strong{font-size:12px}.progress-step-index{flex-basis:22px;width:22px;height:22px}.workspace-content.is-table-workspace{padding:6px 6px 0}.workspace-content.is-table-workspace .table-view{box-shadow:none;border-radius:6px 6px 0 0}.workspace-content.is-table-workspace .view-toolbar{min-height:46px;padding:5px 9px}.workspace-content.is-table-workspace .view-toolbar .button,.workspace-content.is-table-workspace .toolbar-toggle{min-height:32px}.workspace-content.is-table-workspace .shot-table-scroll{scrollbar-gutter:stable}.project-item .menu-popover{min-width:220px}.project-identity-preview{background:#f7fafc;border:1px solid #dde7ef;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:12px;display:grid}.project-identity-preview>span{min-width:66px;height:34px;color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;background:#e7f7fc;border-radius:6px;place-items:center;padding:0 8px;font-size:12px;font-weight:700;display:grid;overflow:hidden}.project-identity-preview strong,.project-identity-preview small{display:block}.project-identity-preview strong{color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.project-identity-preview small{color:var(--type-muted);margin-top:4px;font-size:12px}.storyboard-settings-control{position:relative}.storyboard-settings-popover{z-index:900;width:min(500px,100vw - 24px);color:var(--type-accent);background:#fff;border:1px solid #d9e4eb;border-radius:8px;animation:.17s cubic-bezier(.22,1,.36,1) both interface-pop;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 22px 54px #1c3b4c33}.storyboard-settings-popover>header{border-bottom:1px solid #e8eef2;justify-content:space-between;align-items:center;gap:10px;min-height:52px;padding:0 9px 0 14px;display:flex}.storyboard-settings-popover>header strong,.storyboard-settings-popover>header span{display:block}.storyboard-settings-popover>header strong{font-size:12px}.storyboard-settings-popover>header span{color:var(--type-muted);margin-top:2px;font-size:12px}.storyboard-settings-body{grid-template-columns:220px minmax(0,1fr);min-height:236px;display:grid}.storyboard-settings-body>nav{background:#f7fafb;border-right:1px solid #e8eef2;align-content:start;gap:2px;padding:7px;display:grid}.storyboard-settings-body>nav button{min-height:42px;color:var(--type-muted);text-align:left;background:0 0;border-radius:6px;grid-template-columns:18px minmax(0,1fr) auto 14px;align-items:center;gap:7px;padding:0 8px;font-size:12px;display:grid}.storyboard-settings-body>nav button:hover,.storyboard-settings-body>nav button.is-active{color:var(--type-accent);background:#e9f7fc}.storyboard-settings-body>nav em{color:var(--type-muted);font-size:12px;font-style:normal}.storyboard-setting-options{align-content:start;gap:5px;padding:13px;display:grid}.storyboard-setting-options>div{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.storyboard-setting-options>div strong{font-size:12px}.storyboard-setting-options>div small{color:var(--type-muted);font-size:12px}.storyboard-setting-options>button{min-height:50px;color:var(--type-muted);text-align:left;background:#fff;border:1px solid #e1e9ee;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:0 10px;display:flex}.storyboard-setting-options>button:hover,.storyboard-setting-options>button.is-active{color:var(--type-accent);background:#effafd;border-color:#9bd7eb}.storyboard-setting-options button strong,.storyboard-setting-options button small{display:block}.storyboard-setting-options button strong{font-size:12px}.storyboard-setting-options button small{color:var(--type-muted);margin-top:3px;font-size:12px}.storyboard-settings-popover>footer{background:#fbfcfd;border-top:1px solid #e8eef2;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:0 12px;display:flex}.storyboard-settings-popover>footer button{color:var(--type-accent);font-size:12px;font-weight:700}.storyboard-settings-popover>footer span{color:var(--type-muted);font-size:12px}.shot-table textarea,.shot-table input,.shot-table td{font-size:var(--storyboard-text-size,14px);line-height:1.58}.custom-font-size-control{background:#f7fbfd;border:1px solid #dce8ee;border-radius:7px;grid-template-columns:38px minmax(92px,1fr) 38px;padding:12px;align-items:center!important;gap:8px!important;display:grid!important}.custom-font-size-control>button{width:38px;height:38px;color:var(--type-accent);background:#fff;border:1px solid #d4e3ea;border-radius:6px;place-items:center;display:grid}.custom-font-size-control>label{background:#fff;border:1px solid #b9dce9;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.custom-font-size-control input{width:100%;height:38px;color:var(--type-accent);text-align:center;background:0 0;border:0;outline:0;font-size:16px;font-weight:700}.custom-font-size-control>label span{color:var(--type-muted);padding-right:10px;font-size:12px}.custom-font-size-control>small{color:var(--type-muted);text-align:center;grid-column:1/-1;line-height:1.45;font-size:12px!important}.shot-table.text-align-left textarea,.shot-table.text-align-left input,.shot-table.text-align-left select,.shot-table.text-align-left .shot-data-cell,.shot-table.text-align-left .custom-column-cell{text-align:left!important}.shot-table .shot-image-stack{aspect-ratio:var(--storyboard-image-ratio,16 / 9)}.shot-table .shot-image-stack.is-square-image{aspect-ratio:1;flex:none;height:auto;min-height:0}.shot-table.image-fit-contain .shot-image-frame img{object-fit:contain}.shot-table.image-fit-cover .shot-image-frame img{object-fit:cover}.column-resize-handle{width:14px;right:-7px;overflow:visible}.column-resize-handle:after{opacity:.42;background:#bdcbd4;top:5px;bottom:5px;right:6px;transform:scaleY(1)}.column-heading:hover>.column-resize-handle:after,.resizable-utility-column:hover>.column-resize-handle:after,.column-resize-handle:hover:after,.column-resize-handle:focus-visible:after,.column-resize-handle.is-active:after{background:var(--accent);width:3px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent), transparent 82%);opacity:1;border-radius:999px}.column-resize-handle.is-active:after{background:var(--accent);opacity:1;height:calc(100dvh - 102px);top:0;bottom:auto;right:5px}.column-resize-feedback{z-index:3;min-width:52px;color:var(--type-inverse);text-align:center;white-space:nowrap;background:#18313d;border-radius:5px;padding:5px 7px;font-size:12px;font-weight:700;position:absolute;top:calc(100% + 6px);right:-20px;box-shadow:0 7px 18px #15334233}.text-formatting-field{align-items:stretch;width:100%;height:100%;min-height:88px;display:flex;position:relative}.text-formatting-field>textarea{width:100%;height:100%;min-height:88px;transition:box-shadow .15s}.text-formatting-field.has-text-selection>textarea{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent), #4e7c91 32%)}.text-formatting-toolbar{z-index:2600;transform-origin:bottom;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;overscroll-behavior:contain;background:#fffffff7;border:1px solid #e4e8ec;border-radius:7px;align-items:center;gap:2px;width:max-content;max-width:calc(100vw - 44px);min-height:32px;padding:3px 5px;animation:.14s cubic-bezier(.2,.8,.2,1) text-format-toolbar-in;display:flex;position:fixed;transform:translate(-50%,-100%);box-shadow:0 8px 22px #172a3626}.text-formatting-toolbar.opens-bottom{transform-origin:top;transform:translate(-50%)}@keyframes text-format-toolbar-in{0%{opacity:0;scale:.97}}.text-formatting-toolbar>button,.text-color-control{width:27px;height:27px;color:var(--type-muted);background:0 0;border-radius:5px;flex:0 0 27px;place-items:center;font-size:14px;display:grid;position:relative}.text-formatting-toolbar>button:hover,.text-formatting-toolbar>button.is-active,.text-color-control:hover{color:var(--type-accent);background:#e9f7fc}.text-formatting-toolbar>button b,.text-formatting-toolbar>button em,.text-formatting-toolbar>button s,.text-formatting-toolbar>button u{font-family:var(--font-ui);font-size:14px}.text-formatting-toolbar>i{background:#e1e5e9;width:1px;height:18px;margin:0 3px}.text-format-select{min-width:54px;height:27px;display:block}.text-format-select select{width:100%;height:27px;color:var(--type-muted);background-color:#0000;border:0;border-radius:5px;padding:0 20px 0 7px;font-size:12px}.text-format-select select:hover,.text-format-select select:focus{background-color:#eef8fb;outline:0}.text-size-select{border-radius:5px;grid-template-columns:42px auto;align-items:center;min-width:66px;padding:0 5px;display:grid}.text-size-select select{width:42px;height:27px;color:var(--type-muted);text-align:center;background:0 0;border:0;outline:0;font-size:12px;font-weight:700}.text-size-select span{color:var(--type-muted);font-size:12px}.text-color-control>span{border-radius:999px;height:3px;position:absolute;bottom:3px;left:5px;right:5px;box-shadow:0 0 0 1px #1828311a}.text-color-control>input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.cell-select-menu.is-floating,.collaboration-popover.is-floating,.workspace-history-popover.is-floating{z-index:2400}.cell-select-menu.opens-top{transform-origin:bottom;animation-name:select-open-up}@keyframes select-open-up{0%{opacity:0;transform:translateY(5px)scale(.98)}}.collaboration-popover.opens-top{transform-origin:100% 100%}.workspace-history-popover.opens-top{transform-origin:100% 100%;animation-name:select-open-up}.shot-table td.is-media-image{padding:4px 6px}.shot-image-cell{gap:3px;min-height:0}.shot-image-primary-actions{gap:3px}.shot-image-primary-actions .shot-image-add-more,.shot-image-primary-actions .shot-image-generate{min-height:24px}.shot-image-drop-feedback{z-index:40;border:2px dashed var(--accent);color:var(--type-accent);text-align:center;pointer-events:none;background:#f7fdfff5;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:4px;animation:.15s both drop-ready;display:flex;position:absolute;inset:4px}.shot-image-drop-feedback strong{font-size:12px}.shot-image-drop-feedback span{color:var(--type-muted);font-size:12px}.shot-image-cell.is-drag-active .shot-image-stack{box-shadow:0 0 0 3px #5fc4eb33}.shot-image-cell.is-drag-active .shot-image-list{opacity:1}@keyframes drop-ready{0%{opacity:0;transform:scale(.98)}}.visual-generator-status.is-ready>span{align-items:center;gap:6px;display:inline-flex}.visual-generator-status.is-ready>button{color:var(--type-muted);border:1px solid #b9ead93d;border-radius:5px;padding:4px 7px;font-size:12px}.visual-generator-notice-actions{flex:none;gap:5px;display:flex}.visual-generator-notice-actions>button{min-height:28px;color:inherit;background:#ffffff12;border:1px solid #ffffff24;border-radius:5px;align-items:center;gap:5px;padding:0 8px;font-size:12px;display:inline-flex}.visual-api-key-connector{color:var(--type-muted);background:#172933;border:1px solid #3e5360;border-radius:7px;gap:9px;padding:11px;display:grid}.visual-api-key-connector strong{font-size:12px}.visual-api-key-connector p{color:var(--type-muted);margin:3px 0 0;font-size:12px;line-height:1.5}.visual-api-key-connector>label{background:#10212a;border:1px solid #45606e;border-radius:6px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;padding:0 9px;display:grid}.visual-api-key-connector input{width:100%;height:36px;color:var(--type-inverse);font-family:var(--font-ui);background:0 0;border:0;outline:none;font-size:12px}.visual-api-key-connector>footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.visual-api-key-connector a,.visual-api-key-connector footer button{border-radius:5px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.visual-api-key-connector a{color:var(--type-accent)}.visual-api-key-connector footer button{color:var(--type-accent);background:#5fc4eb}.visual-api-key-connector footer button:disabled{opacity:.46;cursor:not-allowed}@media (width<=760px){.workspace{grid-template-rows:52px 42px minmax(0,1fr)}.workspace-content.is-table-workspace{padding:4px 0 0}.storyboard-settings-popover{width:auto;position:fixed;top:54px;left:8px;right:8px}.storyboard-settings-body{grid-template-columns:1fr}.storyboard-settings-body>nav{border-bottom:1px solid #e8eef2;border-right:0;grid-template-columns:repeat(5,minmax(0,1fr))}.storyboard-settings-body>nav button{text-align:center;grid-template-columns:1fr;justify-items:center;gap:2px;min-height:48px;padding:4px}.storyboard-settings-body>nav em,.storyboard-settings-body>nav svg:last-child{display:none}.visual-generator-notice{flex-direction:column;align-items:stretch}}.projects-screen{background:#f5f7fa;padding:28px 32px 48px}.projects-header,.project-overview,.projects-screen .project-toolbar,.projects-screen .project-group-filter,.projects-screen .project-list{width:min(100%,1560px);max-width:1560px}.projects-header{align-items:center;margin-bottom:18px}.projects-header .eyebrow{color:var(--type-muted);margin-bottom:6px;font-size:12px}.projects-header h1{color:var(--type-accent);font-size:22px;font-weight:700}.projects-header .screen-subtitle{color:var(--type-muted);margin-top:5px;font-size:12px}.project-template-trigger{height:36px;color:var(--type-muted);box-shadow:none;background:#fff;border-color:#dfe5eb}.project-template-trigger:hover{color:var(--type-accent);background:#f7fbfd;border-color:#bcdde9}.project-overview{background:#e7ebef;border:1px solid #e2e7ed;border-radius:8px;grid-template-columns:minmax(260px,1.65fr) repeat(3,minmax(112px,.55fr)) minmax(170px,.85fr);gap:1px;min-height:76px;margin:0 auto 14px;display:grid;overflow:hidden;box-shadow:0 8px 24px #202b380d}.project-overview>*{background:#fff;border:0;min-width:0}.project-overview-primary,.project-overview-template{text-align:left;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:11px;padding:0 17px;transition:background .16s;display:grid}.project-overview-primary:hover:not(:disabled),.project-overview-template:hover{background:#f7fbfd}.overview-icon,.project-overview-template>svg:first-child{width:36px;height:36px;color:var(--type-accent);background:#eaf8fd;border-radius:8px;place-items:center;display:grid}.project-overview-primary span:nth-child(2),.project-overview-template span{min-width:0}.project-overview-primary small,.project-overview-primary strong,.project-overview-template small,.project-overview-template strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-overview-primary small,.project-overview-template small{color:var(--type-muted);font-size:12px}.project-overview-primary strong,.project-overview-template strong{color:var(--type-accent);margin-top:4px;font-size:12px}.project-overview-primary>svg,.project-overview-template>svg:last-child{color:var(--type-muted)}.project-overview-stat{justify-content:center;align-items:center;gap:10px;padding:0 12px;display:flex}.project-overview-stat>span{width:30px;height:30px;color:var(--type-muted);background:#f1f4f7;border-radius:7px;place-items:center;display:grid}.project-overview-stat strong,.project-overview-stat small{display:block}.project-overview-stat strong{color:var(--type-accent);font-size:18px;font-weight:700;line-height:1}.project-overview-stat small{color:var(--type-muted);margin-top:4px;font-size:12px}.projects-screen .project-toolbar{min-height:44px;margin-bottom:10px}.projects-screen .search-control{width:min(520px,100%);height:40px;box-shadow:none;border-color:#dde4eb;border-radius:8px}.project-toolbar-actions{align-items:center;gap:8px;display:flex}.project-sort-control{min-width:122px;height:36px;color:var(--type-muted);background:#fff;border:1px solid #dfe5ec;border-radius:7px;align-items:center;gap:6px;padding:0 7px 0 10px;display:flex}.project-sort-control select{height:100%;box-shadow:none;color:var(--type-muted);background:0 0;border:0;padding:0 2px;font-size:12px}.projects-screen .project-group-filter{margin-bottom:12px}.projects-screen .project-group-filter button{background:0 0;border-color:#0000;min-height:32px;font-size:12px}.projects-screen .project-group-filter button:hover,.projects-screen .project-group-filter button.is-active{color:var(--type-accent);background:#fff;border-color:#d9e8ee;box-shadow:0 3px 10px #2241520d}.projects-screen .project-list.is-grid{grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:14px}.projects-screen .project-list.is-grid .project-item,.project-create-tile{min-height:252px}.projects-screen .project-item{border-color:#e1e6ec;border-radius:8px;box-shadow:0 4px 16px #1e2a360a}.projects-screen .project-item:hover{border-color:#bcdde9;transform:translateY(-2px);box-shadow:0 14px 32px #19394a1a}.projects-screen .project-list.is-grid .project-open-area{gap:10px;padding:10px 10px 13px}.projects-screen .project-list.is-grid .project-cover{background:#edf1f4;border-radius:7px}.projects-screen .project-list.is-grid .project-copy{gap:4px;min-height:70px;padding:1px 3px 0}.projects-screen .project-list.is-grid .project-copy strong{color:var(--type-accent);font-size:14px}.projects-screen .project-list.is-grid .project-copy span,.projects-screen .project-list.is-grid .project-copy small{font-size:12px}.projects-screen .project-list.is-grid .project-progress{border-top:1px solid #edf0f3;gap:8px;width:100%;margin-top:auto;padding:7px 3px 0}.projects-screen .project-list.is-grid .project-progress>span{text-align:left;width:32px;font-size:12px}.projects-screen .project-list.is-grid .project-progress>div{flex:1;width:auto}.projects-screen .project-list:not(.is-grid) .project-item{min-height:88px}.projects-screen .project-list:not(.is-grid) .project-open-area{grid-template-columns:116px minmax(0,1fr) 150px;gap:15px;padding:8px 54px 8px 8px}.projects-screen .project-list:not(.is-grid) .project-cover{width:116px}.project-create-tile{color:var(--type-muted);background:#ffffffad;border:1px dashed #cbd5df;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:7px;transition:border-color .16s,background .16s,transform .16s;display:flex}.project-create-tile:hover{color:var(--type-accent);background:#fff;border-color:#89cfe8;transform:translateY(-2px)}.project-create-tile>span{width:44px;height:44px;color:var(--type-accent);background:#eaf8fd;border-radius:50%;place-items:center;margin-bottom:4px;transition:transform .16s;display:grid}.project-create-tile:hover>span{transform:scale(1.06)}.project-create-tile strong,.project-create-tile small{color:var(--type-muted);font-size:12px}.template-library{grid-template-rows:auto minmax(0,1fr);min-height:620px;display:grid}.template-library.is-manager{min-height:590px}.template-gallery.template-manager-gallery{background:#f6f8fa;grid-template-columns:repeat(3,minmax(0,1fr));padding:18px}.template-new-card{min-height:254px;color:var(--type-muted);background:#ffffffb8;border:1px dashed #c7d4dc;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.template-new-card>span{width:52px;height:52px;color:var(--type-accent);background:#e7f7fd;border-radius:50%;place-items:center;margin-bottom:4px;transition:transform .18s,background .18s;display:grid}.template-new-card:hover{color:var(--type-accent);background:#fff;border-color:#70c5e5}.template-new-card:hover>span{color:var(--type-accent);background:#5fc4eb;transform:rotate(90deg)}.template-new-card strong{font-size:14px}.template-new-card small{color:var(--type-muted);font-size:12px}.template-manager-card{grid-template-rows:minmax(0,1fr) 45px;min-height:254px;display:grid}.template-manager-card .template-card-select{grid-template-rows:116px minmax(0,1fr);min-height:0}.template-card-actions{border-top:1px solid #edf0f2;align-items:center;gap:6px;padding:6px 7px;display:flex}.template-card-actions>.button{flex:1;min-width:70px}.template-card-mini-actions{gap:2px;margin-left:2px;display:flex}.template-card-mini-actions .icon-button{width:30px;height:30px}@media (width<=1020px){.template-gallery.template-manager-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.template-editor-header{grid-template-columns:minmax(180px,1fr) auto}.template-editor-tabs{order:3;grid-column:1/-1;justify-content:center;height:42px}.template-editor-header{min-height:98px}.template-editor-shell{grid-template-rows:98px minmax(0,1fr) 62px}}@media (width<=680px){.template-gallery.template-manager-gallery{grid-template-columns:1fr}.template-editor-tabs button{padding:0 10px}.template-editor-tabs button svg,.template-editor-meta,.template-save-note{display:none}.template-editor-footer{justify-content:flex-end}}.new-template-form{gap:18px;display:grid}.new-template-hint{background:#f2fbfe;border:1px solid #dcecf2;border-radius:8px;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:14px;min-height:112px;padding:8px 16px 8px 3px;display:grid;overflow:hidden}.new-template-hint img{object-fit:contain;object-position:center;width:104px;height:96px}.template-card-name-input{width:100%;min-width:0;height:30px;color:var(--type-accent);font:inherit;background:#fff;border:1px solid #65c5e8;border-radius:6px;outline:none;padding:0 8px;font-weight:700;box-shadow:0 0 0 3px #5fc4eb21}.template-delete-confirm{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;width:100%;display:grid}.template-delete-confirm>span{color:var(--type-error);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.template-delete-confirm .button{min-width:54px;padding-inline:10px}.new-template-hint p,.template-use-summary>span{flex-direction:column;gap:4px;display:flex}.new-template-hint strong,.template-use-summary strong{color:var(--type-accent);font-size:12px}.new-template-hint span,.template-use-summary small{color:var(--type-muted);font-size:12px;line-height:1.6}.template-use-summary{color:var(--type-accent);background:#f1f8fb;border-radius:7px;align-items:center;gap:11px;padding:12px;display:flex}.modal-wide:has(.template-library) .modal-body{padding:0;overflow:hidden}.template-library-toolbar{border-bottom:1px solid #e7ebef;align-items:center;gap:16px;min-height:66px;padding:12px 18px;display:flex}.template-library-toolbar .search-control{flex:0 0 260px;width:260px;height:38px}.template-category-tabs{scrollbar-width:none;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.template-category-tabs::-webkit-scrollbar{display:none}.template-category-tabs button{min-height:30px;color:var(--type-muted);background:0 0;border-radius:6px;flex:none;padding:0 10px;font-size:12px}.template-category-tabs button:hover,.template-category-tabs button.is-active{color:var(--type-accent);background:#eaf8fd}.template-library-body{grid-template-columns:minmax(0,1fr) 340px;min-height:0;display:grid}.template-gallery{background:#f6f8fa;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;min-height:0;padding:16px;display:grid;overflow:auto}.template-card{text-align:left;background:#fff;border:1px solid #e0e5ea;border-radius:8px;min-width:0;min-height:228px;transition:border-color .16s,box-shadow .16s,transform .16s;position:relative;overflow:hidden}.template-card-select{text-align:left;background:0 0;border:0;grid-template-rows:116px minmax(0,1fr);width:100%;min-height:226px;padding:7px;display:grid}.template-card-select:focus-visible{outline-offset:-3px;outline:2px solid #2da9d4}.template-card:hover,.template-card.is-selected{border-color:#83cde7;transform:translateY(-1px);box-shadow:0 10px 26px #1c4d601a}.template-card.is-selected{box-shadow:0 0 0 2px #5fc4eb29,0 10px 26px #1c4d601a}.template-card-preview{background:#f2f5f7;border-radius:6px;display:block;position:relative;overflow:hidden}.template-card-preview:before{content:"";background:linear-gradient(90deg,#0000 0 22%,#e2e8ec 22% 23%,#0000 23% 52%,#e2e8ec 52% 53%,#0000 53%),repeating-linear-gradient(0deg,#fff 0 20px,#e4e9ed 20px 21px);border:1px solid #dce3e8;border-radius:4px;position:absolute;inset:12px 12px 12px 50px}.template-preview-header{z-index:2;background:var(--template-color);border-radius:4px 4px 0 0;height:19px;position:absolute;top:12px;left:50px;right:12px}.template-preview-sidebar{background:color-mix(in srgb, var(--template-color), #fff 80%);border-radius:4px;width:28px;position:absolute;top:12px;bottom:12px;left:12px}.template-preview-line{z-index:3;background:#bcc6ce;border-radius:3px;height:3px;position:absolute;left:58px}.template-preview-line.line-one{width:38%;top:43px}.template-preview-line.line-two{width:54%;top:65px}.template-preview-line.line-three{width:30%;top:87px}.template-card-copy{align-content:start;gap:7px;min-width:0;padding:10px 6px 5px;display:grid}.template-card-copy>span:first-child{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.template-card-copy strong{color:var(--type-accent);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.template-card-copy small{color:var(--type-muted);background:#f0f4f6;border-radius:4px;flex:none;padding:3px 5px;font-size:12px}.template-card-copy em{color:var(--type-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-style:normal;line-height:1.5;display:-webkit-box;overflow:hidden}.template-card-meta{color:var(--type-muted);font-size:12px}.template-delete{z-index:5;width:28px;height:28px;color:var(--type-error);opacity:0;background:#ffffffe6;border-radius:6px;place-items:center;transition:opacity .14s;display:grid;position:absolute;top:12px;right:12px;box-shadow:0 4px 12px #141c231f}.template-card:hover .template-delete,.template-delete:focus-visible{opacity:1}.template-inspector{background:#fff;border-left:1px solid #e5e9ed;min-width:0;padding:20px;overflow:auto}.template-inspector-head{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:11px;display:grid}.template-inspector-head>span{width:44px;height:44px;color:var(--type-inverse);border-radius:8px;place-items:center;display:grid}.template-inspector-head small,.template-inspector-head strong{display:block}.template-inspector-head small{color:var(--type-muted);font-size:12px}.template-inspector-head strong{color:var(--type-accent);margin-top:5px;font-size:16px}.template-inspector>p{color:var(--type-muted);margin:14px 0 16px;font-size:12px;line-height:1.6}.template-column-preview{border:1px solid #e1e6ea;border-radius:7px;overflow:hidden}.template-column-preview>header{background:#f7f9fa;border-bottom:1px solid #e8ecef;justify-content:space-between;align-items:center;min-height:38px;padding:0 10px;display:flex}.template-column-preview header span{color:var(--type-muted);font-size:12px;font-weight:700}.template-column-preview header small{color:var(--type-muted);font-size:12px}.template-column-preview>div{flex-wrap:wrap;gap:6px;max-height:146px;padding:10px;display:flex;overflow:auto}.template-column-preview>div>span{min-height:25px;color:var(--type-accent);background:#eef7fa;border-radius:5px;align-items:center;gap:4px;padding:0 7px;font-size:12px;display:inline-flex}.template-create-form{gap:11px;margin-top:17px;display:grid}.template-create-form .field{gap:5px}.template-create-form input,.template-create-form select{height:36px;padding:0 9px;font-size:12px}.template-create-form .button{width:100%;margin-top:3px}@media (width<=1180px){.project-overview{grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(100px,.5fr))}.project-overview-template{display:none}.projects-screen .project-list.is-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (width<=900px){.projects-screen{padding:24px 22px 42px}.project-overview{grid-template-columns:minmax(240px,1fr) repeat(2,minmax(92px,.45fr))}.project-overview-stat:nth-of-type(3){display:none}.template-library-body{grid-template-columns:minmax(0,1fr) 300px}.template-gallery{grid-template-columns:1fr}.template-gallery.template-manager-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.projects-screen{padding:17px 12px 34px}.projects-header{align-items:flex-start;margin-bottom:14px}.projects-header h1{font-size:22px}.projects-header .screen-subtitle,.projects-header .eyebrow,.projects-header .header-actions>.icon-button,.project-template-trigger{display:none}.project-overview{grid-template-columns:minmax(0,1fr) 78px;min-height:68px}.project-overview-primary{grid-template-columns:32px minmax(0,1fr) 16px;gap:8px;padding:0 10px}.overview-icon{width:32px;height:32px}.project-overview-stat{gap:5px;padding:0 5px}.project-overview-stat:nth-of-type(n+2),.project-overview-template,.project-overview-stat>span{display:none}.projects-screen .project-toolbar{gap:8px}.project-toolbar-actions{justify-content:space-between}.project-sort-control{flex:1}.projects-screen .project-list.is-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.projects-screen .project-list.is-grid .project-item,.project-create-tile{min-height:205px}.projects-screen .project-list.is-grid .project-copy{min-height:64px}.projects-screen .project-list.is-grid .project-copy small,.projects-screen .project-list.is-grid .project-group-label{display:none}.project-create-tile>span{width:38px;height:38px}.template-library{height:100%;min-height:0}.template-library-toolbar{flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px}.template-library-toolbar .search-control{flex-basis:38px;width:100%}.template-library-body{display:block;overflow:auto}.template-gallery{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;overflow:visible}.template-gallery.template-manager-gallery{grid-template-columns:1fr}.template-card{min-height:195px}.template-card-select{grid-template-rows:90px minmax(0,1fr);min-height:193px}.template-card-copy em{display:none}.template-inspector{border-top:1px solid #e5e9ed;border-left:0}}.app-shell.is-export-view{grid-template-columns:minmax(0,1fr)}.app-shell.is-export-view>.sidebar,.app-shell.is-export-view>.mobile-menu{display:none}.export-workspace{background:#eef1f4;height:100%;display:block}.export-view{background:#eef1f4;grid-template-columns:304px minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.export-controls{background:#fff;border-right:1px solid #e1e5e9;grid-template-rows:52px minmax(0,1fr) auto;min-height:0;padding:0;display:grid;overflow:hidden}.export-controls>.export-controls-header{border-bottom:1px solid #eceff2;align-items:center;gap:10px;min-height:52px;padding:0 18px;display:flex}.export-controls-header>button{width:30px;height:30px;color:var(--type-muted);background:0 0;border-radius:6px;place-items:center;display:grid}.export-controls-header>button:hover{background:#f1f4f6}.export-controls-header h2{color:var(--type-accent);margin:0;font-size:16px;font-weight:700}.export-controls-scroll{min-height:0;overflow:auto}.export-controls-scroll section{border-bottom:1px solid #eef1f3;padding:20px 22px}.export-controls-scroll h3{color:var(--type-accent);margin:0 0 13px;font-size:12px;font-weight:700}.export-section-heading{justify-content:space-between;align-items:center;display:flex}.export-section-heading h3{margin:0}.export-section-heading small{color:var(--type-muted);font-size:12px}.export-history-list{gap:5px;display:grid}.export-history-item{background:#f8fafb;border:1px solid #e4e9ec;border-radius:7px;grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:7px;min-height:48px;padding:6px 7px;display:grid}.export-history-item>span,.export-history-item>button{border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.export-history-item>span{color:var(--type-accent);background:#e9f7fb}.export-history-item>button{color:var(--type-muted);background:#fff;border:1px solid #dce4e8}.export-history-item>button:hover:not(:disabled){color:var(--type-accent);border-color:#9fd6e8}.export-history-item>button:disabled{cursor:not-allowed;opacity:.35}.export-history-item strong,.export-history-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.export-history-item strong{color:var(--type-muted);font-size:12px}.export-history-item small{color:var(--type-muted);margin-top:3px;font-size:12px}.export-history-empty{min-height:48px;color:var(--type-muted);border:1px dashed #dce5e9;border-radius:7px;justify-content:center;align-items:center;gap:7px;font-size:12px;display:flex}.export-content-options{gap:3px;display:grid}.export-content-options label{min-height:36px;color:var(--type-muted);cursor:pointer;border-radius:6px;grid-template-columns:16px 18px minmax(0,1fr);align-items:center;gap:8px;padding:0 8px;font-size:12px;transition:background .12s,color .12s;display:grid}.export-content-options label:hover,.export-content-options label.is-active{color:var(--type-accent);background:#f2f8fb}.export-content-options input{width:14px;height:14px;accent-color:var(--accent)}.export-wide-field{gap:7px;display:grid}.export-wide-field>span,.export-brand-settings label>span{color:var(--type-muted);font-size:12px}.export-wide-field select,.export-page-settings select,.export-brand-settings select{width:100%;height:36px;color:var(--type-accent);background-color:#fff;border:1px solid #dde3e8;border-radius:6px;padding:0 9px;font-size:12px}.export-page-settings{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.export-page-settings label{text-align:center;gap:6px;min-width:0;display:grid}.export-page-settings select{text-align:center;min-width:0;padding:0 5px}.export-page-settings label>span{color:var(--type-muted);white-space:nowrap;font-size:12px}.export-quality-setting{background:#f8fafb;border:1px solid #dfe5e9;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;min-height:48px;margin-top:10px;padding:8px 9px;display:flex}.export-quality-setting>span{min-width:0}.export-quality-setting strong,.export-quality-setting small{display:block}.export-quality-setting strong{color:var(--type-muted);font-size:12px}.export-quality-setting small{color:var(--type-muted);margin-top:2px;font-size:12px}.export-quality-setting select{width:78px;height:32px;color:var(--type-accent);text-align:center;background:#fff;border:1px solid #d9e0e5;border-radius:6px;flex:0 0 78px;font-size:12px}.export-pagination-hint{min-height:30px;color:var(--type-success);background:#edf8f4;border-radius:6px;align-items:center;gap:7px;margin-top:7px;padding:0 9px;font-size:12px;line-height:1.35;display:flex}.export-pagination-hint svg{flex:none}.export-brand-settings{grid-template-columns:1fr 1.55fr;gap:8px;margin-top:15px;display:grid}.export-brand-settings label{gap:6px;min-width:0;display:grid}.export-brand-settings label:first-child select{background:linear-gradient(90deg, var(--selected-color) 0 22px, transparent 22px), #fff;padding-left:30px}.export-refresh-preview{width:100%;min-height:34px;color:var(--type-muted);background:#fff;border:1px solid #d8dee4;border-radius:6px;justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:12px;font-weight:700;display:inline-flex}.export-refresh-preview:hover{color:var(--type-accent);background:#f4fbfd;border-color:#9ccfe1}.export-controls>.export-actions{background:#fff;border-top:1px solid #e7eaed;gap:7px;margin:0;padding:12px 22px 14px;display:grid;position:static;box-shadow:0 -10px 24px #202a340d}.export-actions>button{background:var(--accent);width:100%;min-height:40px;color:var(--type-accent);border-radius:6px;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.export-actions>button:hover{filter:brightness(.97)}.export-actions>span{color:var(--type-muted);text-align:center;font-size:12px}.export-preview-shell{background:#eef1f4;min-width:0;min-height:0;padding:36px 22px 54px;overflow:auto}.export-preview-shell>.export-preview-notice{width:max-content;max-width:calc(100% - 24px);min-height:24px;color:var(--type-muted);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #e2e6e9;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin:-29px auto 9px;padding:0 10px;font-size:12px;display:flex}.export-preview-notice strong{color:var(--type-muted)}.export-report{border:1px solid #e3e6e8;width:min(1480px,100% - 20px);min-width:1040px;min-height:820px;padding:44px 54px;box-shadow:0 8px 25px #1820271a}.export-report.portrait{width:800px;min-width:800px;min-height:1120px}.report-header{border-bottom:0;align-items:center;padding-bottom:8px}.report-project-title{text-align:right;min-width:0;margin-left:auto}.report-header h1{font-size:22px;font-weight:700}.report-brand{color:var(--type-accent);letter-spacing:0;font-size:22px;font-weight:700}.report-summary{color:var(--type-muted);justify-content:flex-end;gap:10px;margin:4px 0 18px;font-size:12px;display:flex}.report-summary span+span:before{color:var(--type-muted);content:"|";margin-right:10px}.report-table-section{margin-top:0;overflow:visible}.report-section table{font-size:12px}.export-number-control{background:#fff;border:1px solid #dce4e9;border-radius:6px;grid-template-columns:30px minmax(38px,1fr) auto 30px;align-items:center;height:34px;display:grid;overflow:hidden}.export-number-control button{height:100%;color:var(--type-accent);background:#f6f9fa;place-items:center;display:grid}.export-number-control input{text-align:center;background:0 0;border:0;outline:0;width:100%;min-width:0;height:100%;font-size:12px;font-weight:700}.export-number-control>span{color:var(--type-muted);font-size:12px}.report-section th,.report-section td{text-align:center;border-color:#4d555c;padding:8px 7px;line-height:1.4}.report-section th{height:46px;font-weight:700}.report-section .report-column-shotNo{width:5%}.report-section .report-column-image,.report-section .report-column-referenceImage{width:16%}.report-section .report-column-duration{width:6%}.report-section .report-column-shotSize{width:8%}.report-section .report-column-content{width:30%}.report-section td img{object-fit:contain;margin:0 auto}.export-report.images-small .report-section td img{max-height:54px}.export-report.images-medium .report-section td img{max-height:84px}.export-report.images-large .report-section td img{max-height:112px}.report-footer{margin-top:20px}@media (width<=900px){.export-view{grid-template-columns:268px minmax(0,1fr)}.export-controls-scroll section,.export-controls>.export-actions{padding-left:16px;padding-right:16px}}@media (width<=680px){.export-workspace{overflow:auto}.export-view{height:auto;display:block;overflow:visible}.export-controls{display:block;overflow:visible}.export-controls>.export-actions{z-index:20;position:sticky;bottom:0}.export-preview-shell{min-height:720px;overflow:auto}}.export-format-options{gap:5px;display:grid}.export-format-options>button{min-height:46px;color:var(--type-muted);text-align:left;background:#f7f9fa;border:1px solid #0000;border-radius:7px;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:6px 8px;transition:border-color .13s,background .13s,color .13s;display:grid}.export-format-options>button:hover,.export-format-options>button.is-active{color:var(--type-accent);background:#edf9fc;border-color:#a9dce9}.export-format-options strong,.export-format-options small{display:block}.export-format-options strong{color:var(--type-accent);font-size:12px}.export-format-options small{color:var(--type-muted);margin-top:2px;font-size:12px}.export-data-summary{min-height:58px;color:var(--type-accent);background:#f7fafb;border:1px solid #e2e7eb;border-radius:7px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:9px;padding:10px;display:grid}.export-data-summary strong,.export-data-summary span{display:block}.export-data-summary strong{color:var(--type-accent);font-size:12px}.export-data-summary span{color:var(--type-muted);margin-top:3px;font-size:12px}.export-actions>button:disabled{cursor:wait;opacity:.62}.export-report-table{table-layout:fixed;width:100%}.export-report-table th,.export-report-table td,.export-report-table .report-column-shotNo,.export-report-table .report-column-image,.export-report-table .report-column-duration,.export-report-table .report-column-shotSize,.export-report-table .report-column-content{overflow-wrap:anywhere;word-break:normal;min-width:0;width:auto!important}.export-report-table td>span{border-radius:2px;padding:1px 2px;display:inline}.export-pagination-stage{z-index:-1;pointer-events:none;width:max-content;position:absolute;top:0;left:-20000px}.export-render-page{background:#fff;position:relative;border:0!important}.export-render-page .report-section,.export-render-page .report-table-section{overflow:visible}.export-render-page .export-page-footer{background:#fff;min-height:20px;margin:0;padding-top:7px;position:absolute;bottom:18px;left:54px;right:54px}.export-render-page.portrait .export-page-footer{left:44px;right:44px}.export-render-overlay{z-index:5000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1c22276b;place-items:center;padding:20px;animation:.16s both interface-fade;display:grid;position:fixed;inset:0}@keyframes interface-fade{0%{opacity:0}to{opacity:1}}.export-render-dialog{background:#fff;border:1px solid #ffffffc7;border-radius:8px;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:20px;width:min(520px,100vw - 32px);min-height:226px;padding:34px 34px 70px;animation:.19s cubic-bezier(.22,1,.36,1) both interface-pop;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 68px #111f283d}.export-render-progress,.export-render-success-icon,.export-render-error-icon{border-radius:50%;place-items:center;width:78px;height:78px;display:grid}.export-render-progress{background:radial-gradient(circle at center, #fff 59%, transparent 61%), conic-gradient(#ffd45e var(--progress), #f0f1f2 0);color:var(--type-muted);position:relative}.export-render-progress:after{content:"";border:1px solid #eceff1;border-radius:50%;position:absolute;inset:11px}.export-render-progress>svg{z-index:1}.export-render-success-icon{color:var(--type-inverse);background:#ffdc73;box-shadow:0 0 0 8px #fff7d9}.export-render-error-icon{color:var(--type-error);background:#ffeded;box-shadow:0 0 0 8px #fff7f7}.export-render-copy h3{color:var(--type-muted);margin:0;font-size:18px;font-weight:700}.export-render-copy p{color:var(--type-muted);margin:8px 0 0;font-size:12px}.export-render-bar{background:#edf0f2;border-radius:999px;width:100%;height:4px;margin-top:18px;overflow:hidden}.export-render-bar>span{border-radius:inherit;background:#ffd45e;height:100%;transition:width .22s;display:block}.export-render-dialog>footer{justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex;position:absolute;bottom:16px;left:34px;right:24px}.export-render-dialog>footer strong{color:var(--type-muted);font-size:12px;font-weight:700}.export-render-dialog>footer>div{gap:9px;display:flex}.export-render-dialog footer button{min-width:106px;min-height:40px;color:var(--type-muted);background:#fff;border:1px solid #dde2e6;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:700;display:inline-flex}.export-render-dialog footer button:hover{background:#f7f9fa}.export-render-dialog footer button.is-primary{color:var(--type-warning);background:#ffd45e;border-color:#ffd45e}.export-render-dialog footer button:disabled{cursor:not-allowed;opacity:.42}.export-render-close{width:30px;height:30px;color:var(--type-muted);border-radius:6px;place-items:center;display:grid;position:absolute;top:12px;right:12px}.export-render-close:hover{background:#f1f3f4}@media (width<=600px){.export-render-dialog{text-align:center;grid-template-columns:1fr;justify-items:center;gap:12px;min-height:330px;padding:30px 22px 104px}.export-render-dialog>footer{display:grid;bottom:16px;left:18px;right:18px}.export-render-dialog>footer>div{grid-template-columns:1fr 1fr;display:grid}.export-render-dialog footer button{min-width:0}}@media (width<=760px){.workspace,.workspace-header,.workspace-progress,.workspace-content{width:100%;min-width:0}.workspace-progress{scrollbar-width:none;overflow:auto hidden}.workspace-progress::-webkit-scrollbar{display:none}.workspace-progress button{flex:1 0 68px;gap:4px;min-width:68px;padding:0 5px}.plan-view{width:100%;height:100%;margin:0}.plan-view-toolbar{min-width:0;padding:9px 10px}.plan-toolbar-title,.plan-toolbar-actions,.plan-toolbar-title>div{min-width:0}.plan-toolbar-title h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.plan-toolbar-title .button,.plan-toolbar-actions>.plan-display-control>.button{flex:0 0 34px;min-width:34px;padding:0;font-size:0}.plan-toolbar-title .button svg,.plan-toolbar-actions>.plan-display-control>.button svg{margin:0}.plan-toolbar-actions{justify-content:flex-end}.plan-board-workspace{width:100%}}.haomi-mark,.feishu-login-brand{background:#fff;overflow:hidden}.haomi-mark{border:0;box-shadow:0 5px 14px #21374424}.haomi-mark:after,.haomi-mark i,.feishu-login-brand span{display:none}.brand-logo-image{object-fit:cover;object-position:center;border-radius:inherit;width:100%;height:100%;display:block}.feishu-login-brand{border:1px solid #dce5eaf2;padding:0;box-shadow:0 10px 24px #1e3a481f}.app-shell,.workspace,.screen,.workspace-content{background:var(--bg)}.sidebar{background:var(--surface);border-right-color:var(--line);box-shadow:1px 0 20px #0a63720a}.brand-row,.sidebar-footer,.workspace-header,.workspace-tabs,.view-toolbar,.plan-toolbar{border-color:var(--line)}.haomi-mark{box-shadow:0 5px 14px #0a8ea41f}.sidebar-toggle,.nav-item{color:var(--type-muted);font-size:var(--text-ui);font-weight:600}.sidebar .icon-button:hover,.nav-item:hover{background:var(--accent-soft);color:var(--type-accent)}.nav-item.is-active{color:var(--type-accent);background:#e4f9fc}.brand-copy small,.workspace-meta span,.project-copy small{color:var(--type-muted);font-size:var(--text-caption)}.eyebrow{color:var(--type-accent);font-size:var(--text-caption)}.screen-subtitle,.workspace-header p,.workspace-status{color:var(--type-muted);font-size:var(--text-meta)}.project-copy strong,.workspace-header h1,.plan-toolbar-title h1{color:var(--type-primary);font-size:var(--text-section-title);font-weight:700}.project-copy span,.toolbar-summary,.toolbar-hint,.plan-toolbar-title p{color:var(--type-muted);font-size:var(--text-meta)}.button,.toolbar-toggle,.workspace-tabs button,.view-toolbar,.batch-bar{font-size:var(--text-ui)}.button{color:var(--type-accent);background:#fff;border-color:#cfe8eb}.button:hover:not(:disabled){background:#f8feff;border-color:#8ed6df;box-shadow:0 4px 12px #0a8ea41a}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--type-inverse);box-shadow:0 6px 14px #1bb1c833}.button-primary:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong)}.button.is-active,.icon-button:hover:not(:disabled),.toolbar-toggle.is-active{color:var(--type-accent);background:#e8fafc;border-color:#b8e8ee}.search-control,.search-control:focus-within,.segmented,.view-toolbar,.table-view,.plan-board-workspace{border-color:var(--line)}.search-control:focus-within{box-shadow:0 0 0 3px #1bb1c824}.workspace-project-mark{color:var(--type-accent);background:#e5f9fc}.workspace-tabs button{color:var(--type-muted);font-size:var(--text-meta)}.workspace-tabs button.is-active:after{background:var(--accent)}.table-view{background:#fff;box-shadow:0 14px 30px #0a63720f}.shot-table-scroll{background:#f8fcfd}.shot-table th{background:var(--accent-soft);color:var(--type-accent);font-size:var(--text-caption);font-weight:700}.shot-table th,.shot-table td{border-color:var(--line)}.shot-table tbody tr:hover td{background:#fbffff}.shot-table tr.is-selected td{background:#e8fafc}.shot-table textarea,.shot-table select,.shot-table input{color:var(--type-accent);font-size:var(--text-ui)}.shot-table textarea{line-height:1.6}.shot-number-column strong{color:var(--type-primary);font-size:var(--text-meta)}.modal-header h2,.settings-section-title h2,.plan-title h2{color:var(--type-primary);font-size:var(--text-page-title);font-weight:700}.modal-header p,.settings-section-title p,.plan-title p{color:var(--type-muted);font-size:var(--text-meta)}:root{--text-display:22px;--text-page-title:22px;--text-section-title:18px;--text-ui:14px;--text-meta:14px;--text-caption:12px}body,button,input,select,textarea{font-size:14px}.sidebar{border-right-color:var(--line-strong);background:linear-gradient(#fff 0%,#f7fdfe 100%)}.nav-item{min-height:44px;color:var(--type-accent);border-radius:7px;font-size:16px;font-weight:700}.nav-item:hover{color:var(--type-accent);background:#e8fafc}.nav-item.is-active{background:var(--accent);color:var(--type-inverse);box-shadow:inset 3px 0 0 var(--accent-strong), 0 5px 14px #1bb1c82e}.workspace-progress button{min-height:44px}.workspace-progress button small{font-size:12px}.workspace-progress button strong,.shot-table th,.shot-table td,.shot-table textarea,.shot-table select,.shot-table input,.cell-placeholder,.shot-number-column strong{font-size:14px}.projects-screen .project-list.is-grid .project-copy strong{font-size:16px}.projects-screen .project-list.is-grid .project-copy span,.projects-screen .project-list.is-grid .project-copy small,.projects-screen .project-list.is-grid .project-progress>span,.project-overview-stat small{font-size:12px}.project-sort-control{min-width:144px;height:40px}.project-sort-control select,.projects-screen .project-group-filter button{font-size:14px}.story-image>i,.story-image>em,.status-pill{font-size:12px}.story-meta{min-height:58px;padding:10px 12px}.story-meta strong{font-size:16px}.story-meta span,.story-card>p{font-size:14px;line-height:1.55}.unplanned-tray>header,.callsheet-list>header,.continuity-shot-list>header{min-height:48px;font-size:14px}.unplanned-tray>header strong,.callsheet-list>header strong,.continuity-shot-list>header strong,.plan-column-heading strong{font-size:16px}.unplanned-tray>header span,.unplanned-tray>header small,.plan-shot-card small,.plan-notes,.plan-shot-copy small{font-size:12px}.plan-shot-copy>span,.plan-shot-copy p{font-size:14px;line-height:1.5}.callsheet-layout{grid-template-columns:310px minmax(0,1fr)}.callsheet-list-item{min-height:76px}.callsheet-list-item strong,.continuity-shot-list strong{font-size:14px}.callsheet-list-item p,.continuity-shot-list small{font-size:12px}.callsheet-detail-actions select,.document-brand strong,.document-mark{font-size:14px}.callsheet-title p,.callsheet-facts span,.schedule-head,.take-head{font-size:12px}.callsheet-facts strong,.schedule-row,.schedule-empty,.crew-list>div,.document-info-list dt,.document-info-list dd,.crew-selector strong,.crew-selector small,.callsheet-production-strip span,.callsheet-production-strip strong{font-size:14px}.document-section h3{font-size:16px}.continuity-layout{grid-template-columns:300px minmax(0,1fr)}.continuity-shot-list>button{grid-template-columns:82px minmax(0,1fr) 18px;min-height:78px}.continuity-thumb{width:82px}.continuity-shot-head p{font-size:12px}.continuity-shot-head h2{font-size:18px}.continuity-shot-head span,.take-row>span,.take-row input,.take-row select,.toolbar-summary,.toolbar-hint{font-size:14px}.empty-state strong{font-size:16px}.production-import-modal{gap:16px;display:grid}.production-import-actions{flex-wrap:wrap;gap:10px;display:flex}.production-import-status{border:1px solid var(--line);background:var(--accent-soft);color:var(--type-muted);border-radius:7px;margin:0;padding:12px 14px;font-size:14px;line-height:1.55}.production-notice-list{gap:8px;max-height:360px;display:grid;overflow:auto}.production-notice-item{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.production-notice-item:hover{background:#f8feff;border-color:#8ed6df}.production-notice-item input{width:18px;height:18px;accent-color:var(--accent)}.production-notice-item span{gap:4px;display:grid}.production-notice-item strong{font-size:16px}.production-notice-item small{color:var(--type-muted);font-size:14px}:root{--haomi-blue:#1bb1c8;--haomi-blue-strong:#0d8ea5;--haomi-blue-soft:#f0fdff;--haomi-ink:#000;--haomi-muted:#52727a;--haomi-line:#c9e9ef}.brand-mark.haomi-mark,.feishu-login-brand{overflow:visible;box-shadow:none!important;background:0 0!important;border:0!important}.brand-mark.haomi-mark{border-radius:0;width:30px;height:24px}.brand-logo-image{display:block;object-fit:contain!important;width:26px!important;height:22px!important}.brand-copy strong{color:var(--type-primary);font-size:18px!important}.brand-copy small{letter-spacing:.05em;color:var(--type-muted);font-size:12px!important}.nav-item{font-size:16px!important}.nav-item.is-active{box-shadow:inset 3px 0 0 var(--haomi-blue);background:var(--haomi-blue-soft)!important;color:var(--type-accent)!important}.sidebar-account{align-items:center;gap:10px;display:flex}.workspace-meta{text-align:left;align-content:center;gap:3px;display:grid}.workspace-meta strong,.workspace-meta span{font-size:14px!important}.workspace-progress{border-bottom:1px solid var(--haomi-line);background:#fff!important;min-height:52px!important;padding:6px 16px!important}.workspace-progress button{min-height:40px!important;color:var(--type-muted)!important;place-items:center!important;padding:0 20px!important;display:grid!important}.workspace-progress .progress-step-index,.workspace-progress button small{display:none!important}.workspace-progress button>span{place-items:center;display:grid!important}.workspace-progress button strong{font-size:16px!important;line-height:1.2!important}.workspace-progress button.is-active{background:var(--haomi-blue-soft)!important;color:var(--type-accent)!important;box-shadow:inset 0 -3px 0 var(--haomi-blue)!important}.shot-table th,.shot-table td,.shot-table input,.shot-table textarea,.shot-table select{font-size:var(--storyboard-text-size,16px)!important;line-height:1.55!important}.shot-table th{font-weight:700}.shot-table th,.shot-table .is-selected{background-color:var(--haomi-blue-soft)!important}.project-card h2,.project-card h3,.project-card strong{font-size:18px!important}.project-card p,.project-card small,.project-card span{font-size:16px!important}.story-card h3,.story-card strong,.plan-shot-copy h3,.callsheet-list h3,.continuity-shot-list h3{font-size:18px!important}.story-card p,.plan-shot-copy p,.callsheet-list p,.continuity-shot-list p,.continuity-shot-list small{line-height:1.5;font-size:16px!important}.callsheet-view,.continuity-view,.callsheet-view input,.callsheet-view textarea,.continuity-view input,.continuity-view textarea,.continuity-view select,.callsheet-list>header,.continuity-shot-list>header,.unplanned-tray>header{font-size:16px!important}.report-brand-logo{object-fit:contain;object-position:left center;width:118px;height:50px}.export-report .report-summary,.export-report .report-section,.export-report .report-section table,.export-report .report-footer,.report-sheet,.report-sheet table,.report-sheet th,.report-sheet td{font-size:12px!important}.workspace-toolbar,.workspace-toolbar button,.workspace-toolbar input,.workspace-toolbar select,.shot-toolbar,.shot-toolbar button,.shot-toolbar input,.shot-toolbar select,.production-import-modal,.production-import-modal button,.production-import-modal input,.production-import-modal select,.select-popover,.select-popover button,.context-menu,.context-menu button,.story-card .shot-number,.callsheet-list-item .shot-number,.continuity-shot-list .shot-number,.callsheet-list-item small,.continuity-shot-list small,.unplanned-tray,.callsheet-list,.continuity-shot-list{font-size:16px!important}:root{--type-primary:#000;--type-secondary:#000000ad;--type-muted:#00000085;--type-accent:#0f7b8c;--type-success:#248a3d;--type-warning:#a06c18;--type-error:#b42318;--type-inverse:#fff}body.liquid-dark,[data-theme=dark]{--type-primary:#fff;--type-secondary:#ffffffbd;--type-muted:#ffffff8f;--type-accent:#4dd0e1;--type-success:#34c759;--type-warning:#ffb84d;--type-error:#ff453a;--type-inverse:#fff}html,body,body *,body :before,body :after{font-family:var(--font-ui)!important}.nav-item.is-active{font-weight:600!important}.screen-header h1,.workspace-header h1,.plan-toolbar-title h1,.report-header h1{font-size:var(--text-page-title)!important}.modal-header h2,.settings-section-title h2,.plan-title h2,.callsheet-title h2,.continuity-shot-head h2,.export-controls h2{font-size:var(--text-section-title)!important}:root{--font-ui:"Outfit", "LXGW Neo XiHei", SimHei, "Heiti SC", "Microsoft YaHei", sans-serif;--text-display:22px;--text-page-title:16px;--text-section-title:18px;--text-ui:14px;--text-meta:12px;--text-caption:12px;--storyboard-text-size:14px}html,body,body *,body :before,body :after{font-family:var(--font-ui)!important;letter-spacing:0!important}a{color:var(--type-accent)!important}body{font-size:var(--text-ui)!important;line-height:1.45!important}.screen-header h1,.workspace-header h1,.plan-toolbar-title h1,.report-header h1{font-size:var(--text-page-title)!important;font-weight:700!important}.settings-section-title h2,.plan-title h2,.callsheet-title h2,.continuity-shot-head h2,.export-controls h2,.modal-header h2{font-size:var(--text-section-title)!important;font-weight:600!important}.project-card h2,.project-card h3,.project-card strong,.story-card h3,.story-card strong,.plan-shot-copy h3,.callsheet-list h3,.continuity-shot-list h3,.production-notice-item strong{font-size:var(--text-page-title)!important;font-weight:600!important}.project-card p,.project-card small,.project-card span,.story-card p,.plan-shot-copy p,.callsheet-list p,.continuity-shot-list p,.callsheet-view,.continuity-view,.unplanned-tray,.workspace-toolbar,.workspace-toolbar button,.workspace-toolbar input,.workspace-toolbar select,.shot-toolbar,.shot-toolbar button,.shot-toolbar input,.shot-toolbar select,.production-import-modal,.production-import-modal button,.production-import-modal input,.production-import-modal select,.select-popover,.select-popover button,.context-menu,.context-menu button,button,input,select,textarea{font-size:var(--text-ui)!important}.shot-table th,.report-sheet th,.report-sheet td,.export-report .report-footer,.brand-copy small,.workspace-meta span,.callsheet-list-item small,.continuity-shot-list small,.report-sheet,.report-sheet table,.report-sheet th,.report-sheet td{font-size:var(--text-meta)!important}.workspace-progress button strong{font-size:var(--text-ui)!important;font-weight:600!important}.nav-item{font-size:var(--text-caption)!important;font-weight:500!important}.brand-copy strong{font-size:var(--text-title,16px)!important;font-weight:600!important}.sidebar-reopen{display:none}@media (width>=681px){.app-shell.sidebar-is-collapsed{grid-template-columns:minmax(0,1fr)}.app-shell.sidebar-is-collapsed .sidebar{display:none}.sidebar-reopen{z-index:80;border:1px solid var(--line);width:34px;height:34px;color:var(--type-accent);background:#ffffffeb;border-radius:7px;place-items:center;padding:0;display:grid;position:fixed;top:10px;left:10px;box-shadow:0 6px 16px #0a63721f}.sidebar-reopen:hover{background:var(--accent-soft)}}.nav-item,.nav-item span{font-size:var(--text-ui)!important}.project-overview-stat strong{font-size:var(--text-display)!important;font-weight:700!important}.button.button-primary{color:#fff!important;min-height:36px!important;box-shadow:none!important;background:#1bb1c8!important;border-color:#1bb1c8!important;border-radius:12px!important;padding:0 14px!important;font-size:14px!important;font-weight:600!important;transition:background .2s,border-color .2s,transform .2s cubic-bezier(.22,1,.36,1)!important}.button.button-primary svg,.button.button-primary svg *{color:currentColor!important;stroke:currentColor!important}.button.button-primary:hover:not(:disabled){box-shadow:none!important;background:#0f7b8c!important;border-color:#0f7b8c!important;transform:scale(1.018)!important}.button.button-primary:active:not(:disabled){transform:scale(.98)!important}:root{--ui-bg:#eeedef;--ui-surface:#ffffff94;--ui-surface-strong:#fffc;--ui-line:#ffffffdb;--ui-ink:#20242d;--ui-muted:#6f7480;--ui-accent:#1bb1c8;--ui-accent-deep:#08758a;--ui-radius:20px;--ui-control-radius:12px;--ui-shadow:0 12px 28px #23263017,inset 0 1px 0 #ffffffe6}html,body{background:var(--ui-bg)!important;color:var(--ui-ink)!important}body{background:linear-gradient(126deg,#e9e8e4 0%,#f2eff4 46%,#e7e9f0 100%)!important}.app-shell,.main-stage{background:0 0!important}.sidebar{-webkit-backdrop-filter:blur(22px)saturate(115%);color:var(--ui-ink)!important;background:#f8f7f775!important;border-right:1px solid #ffffffd1!important;border-radius:0 22px 22px 0!important;box-shadow:0 14px 32px #2326300f,inset -1px 0 #ffffffb8!important}.brand-row,.sidebar-footer{border-color:#59657b1f!important}.brand-copy strong{color:var(--ui-ink)!important;font-size:16px!important;font-weight:600!important}.brand-copy small{color:var(--ui-muted)!important;font-size:12px!important}.nav-item{min-height:42px!important;color:var(--ui-muted)!important;border-radius:14px!important;font-size:14px!important;font-weight:500!important;transition:background .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1)!important}.nav-item:hover{color:var(--ui-ink)!important;background:#ffffff85!important;border:1px solid #ffffffb3!important}.nav-item.is-active{color:var(--ui-ink)!important;box-shadow:var(--ui-shadow)!important;background:#ffffffd1!important;border:1px solid #fffffff0!important}.nav-item.is-active svg{color:var(--ui-accent)!important}.sidebar .icon-button:hover{color:var(--ui-accent-deep)!important;background:#ffffffb3!important}.workspace{background:#ffffff4d!important}.workspace-header{-webkit-backdrop-filter:blur(24px)saturate(120%);background:#ffffff85!important;border-bottom:1px solid #ffffffd1!important}.workspace-header h1{color:var(--ui-ink)!important;font-size:16px!important;font-weight:600!important}.workspace-header p,.workspace-status{color:var(--ui-muted)!important;font-size:12px!important}.workspace-project-mark{color:var(--ui-accent-deep)!important;background:#ffffffb8!important;border-radius:12px!important}.workspace-tabs{background:#ffffff57!important;border-bottom:1px solid #ffffffc7!important}.workspace-tabs button{border-radius:12px!important;min-height:34px!important;font-size:14px!important;font-weight:500!important}.workspace-tabs button:hover,.workspace-tabs button.is-active{color:var(--ui-ink)!important;background:#ffffffc7!important}.workspace-tabs button.is-active:after{background:var(--ui-accent)!important;border-radius:3px!important}.screen,.workspace-content{background:0 0!important}.screen{padding:30px 32px 52px!important}.screen-header h1{color:var(--ui-ink)!important;font-size:18px!important;font-weight:600!important}.screen-subtitle{color:var(--ui-muted)!important;font-size:14px!important}.button{color:var(--ui-ink)!important;background:#ffffff9e!important;border-color:#78829138!important;border-radius:12px!important;font-size:14px!important}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:none!important;background:#ffffffd6!important;border-color:#fffffff0!important}.button.button-primary{border-color:var(--ui-accent)!important;background:var(--ui-accent)!important;color:#fff!important;box-shadow:none!important}.button.button-primary:hover:not(:disabled){border-color:var(--ui-accent-deep)!important;background:var(--ui-accent-deep)!important}.project-card,.story-card,.table-view,.view-toolbar,.plan-toolbar,.workspace-progress,.production-notice-item{-webkit-backdrop-filter:blur(18px)saturate(112%);border-radius:var(--ui-radius)!important;border-color:var(--ui-line)!important;background:var(--ui-surface)!important;box-shadow:var(--ui-shadow)!important}.project-card:hover,.story-card:hover{transform:translateY(-1px);box-shadow:0 16px 34px #2326301f,inset 0 1px #fffffff0!important}.modal{-webkit-backdrop-filter:blur(26px)saturate(112%);backdrop-filter:blur(26px)saturate(112%);background:#faf9fcdb!important;border-color:#ffffffeb!important;border-radius:20px!important;box-shadow:0 24px 64px #1d1f282e!important}.modal-header,.modal-footer{border-color:#2f333e1f!important}.modal-header h2{font-size:18px!important;font-weight:600!important}.modal-body{font-size:14px!important}.context-menu,.menu-popover,.popover,.select-popover{-webkit-backdrop-filter:blur(20px)saturate(112%);backdrop-filter:blur(20px)saturate(112%);background:#faf9fceb!important;border-color:#ffffffeb!important;border-radius:14px!important;box-shadow:0 16px 40px #1d1f2824!important}input,select,textarea,[contenteditable=true]{border-radius:12px!important}.table-view{overflow:auto!important}.shot-table th,.report-sheet th{font-size:12px!important}.shot-table td,.report-sheet td{font-size:14px!important}@media (width<=680px){.screen{padding:24px 16px 40px!important}.sidebar{border-radius:0!important}.project-card,.story-card,.table-view,.view-toolbar,.plan-toolbar{border-radius:16px!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.feishu-login-shell{background:linear-gradient(126deg,#e9e8e4 0%,#f2eff4 46%,#e7e9f0 100%)!important;padding:24px!important}.feishu-login-panel{-webkit-backdrop-filter:blur(26px)saturate(112%);background:#faf9fcdb!important;border:1px solid #ffffffeb!important;border-radius:20px!important;width:min(460px,100%)!important;padding:36px!important;box-shadow:0 24px 64px #1d1f282e,inset 0 1px #ffffffe6!important}.feishu-login-panel h1{color:var(--ui-ink)!important;font-size:18px!important;font-weight:600!important}.feishu-login-message{color:var(--ui-muted)!important;font-size:14px!important}.feishu-login-retry{border-color:var(--ui-accent)!important;background:var(--ui-accent)!important;color:#fff!important;border-radius:12px!important;font-size:14px!important}.feishu-login-brand{box-shadow:var(--ui-shadow)!important;background:#ffffffb8!important;border-radius:14px!important}
