:root{--bg:#f4f5f7;--surface:#fff;--surface-soft:#fafbfc;--border:#e6e8ec;--border-strong:#d5d8de;--text:#1a1d23;--text-2:#4b5563;--muted:#8b93a1;--primary:#4f46e5;--primary-hover:#4338ca;--primary-soft:#eef2ff;--green:#0f766e;--green-soft:#ecfdf5;--amber:#b45309;--amber-soft:#fffbeb;--danger:#dc2626;--danger-soft:#fef2f2;--radius:12px;--shadow-sm:0 1px 2px #1018280d;--shadow-md:0 8px 24px -8px #10182824;--shadow-lg:0 24px 64px -24px #10182852;color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font:14px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}*,:before,:after{box-sizing:border-box}body{background:linear-gradient(#f6f7fb 0%,#f0f2f8 100%) fixed;min-height:100vh;margin:0}.app{max-width:1240px;margin:0 auto;padding:28px 24px 72px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#fff;background:linear-gradient(140deg,#6366f1,#8b5cf6);border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-size:18px;font-weight:600;display:grid;box-shadow:0 10px 20px -10px #6366f1e6}.page-head h1{letter-spacing:-.02em;margin:0 0 3px;font-size:22px;font-weight:650}.page-sub{color:var(--muted);margin:0;font-size:13px}.head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.user-chip{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 4px;display:flex}.avatar{color:#fff;background:linear-gradient(140deg,#6366f1,#8b5cf6);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12.5px;font-weight:600;display:flex}.user-meta{flex-direction:column;line-height:1.3;display:flex}.user-meta strong{color:var(--text);font-size:12.5px;font-weight:600}.role-tag{letter-spacing:.02em;color:var(--muted);font-size:10.5px}.role-tag.admin{color:var(--primary);font-weight:500}.auth-page{background:radial-gradient(900px 480px at 12% -5%, #eef2ff 0%, transparent 62%), radial-gradient(760px 460px at 105% 105%, #f5f3ff 0%, transparent 58%), var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;grid-template-columns:1.02fr 1fr;width:100%;max-width:880px;display:grid;overflow:hidden;box-shadow:0 30px 80px -44px #1018286b,0 1px 2px #1018280f}.auth-brand{color:#fff;background:linear-gradient(150deg,#4f46e5 0%,#6d28d9 58%,#4338ca 100%);flex-direction:column;gap:12px;padding:44px 36px;display:flex}.brand-logo{background:#ffffff29;border:1px solid #ffffff47;border-radius:13px;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;font-weight:600;display:flex}.auth-brand h1{letter-spacing:-.01em;color:#fff;margin:6px 0 0;font-size:22px;font-weight:600}.brand-desc{color:#ffffffd1;margin:0;font-size:13.5px;line-height:1.65}.brand-list{color:#ffffffeb;flex-direction:column;gap:10px;margin:auto 0 0;padding:0;font-size:13px;list-style:none;display:flex}.brand-list li{padding-left:18px;position:relative}.brand-list li:before{content:"";background:#ffffffbf;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;left:2px}.auth-form{flex-direction:column;justify-content:center;padding:40px 40px 32px;display:flex}.auth-tabs{background:#f3f4f7;border-radius:10px;gap:4px;width:fit-content;margin-bottom:22px;padding:3px;display:inline-flex}.auth-tab{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 18px;font-size:13.5px}.auth-tab.active{color:var(--text);box-shadow:var(--shadow-sm);background:#fff;font-weight:600}.auth-form form{flex-direction:column;gap:14px;display:flex}.auth-submit{height:40px;margin-top:4px;font-size:14px}.auth-error{background:var(--danger-soft);color:var(--danger);border-radius:8px;margin:0;padding:8px 10px;font-size:12.5px}.auth-notice{background:var(--primary-soft);color:var(--primary);border-radius:8px;margin:0 0 16px;padding:8px 10px;font-size:12.5px}.auth-hint{color:var(--muted);text-align:center;margin:16px 0 0;font-size:12.5px}.auth-foot{color:var(--muted);margin:20px 0 0;font-size:12px}.boot-screen{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:13.5px;display:flex}.boot-spinner{border:2.5px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.modal-lg{max-width:720px}.modal-body.modal-body-block{display:block}.user-table{border-collapse:collapse;width:100%;font-size:13.5px}.user-table th{text-align:left;color:var(--muted);background:var(--surface-soft);border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px;font-weight:500}.user-table td{color:var(--text-2);border-bottom:1px solid #f1f2f5;padding:10px}.user-table tr:last-child td{border-bottom:0}.user-name{color:var(--text);font-weight:500}.me-tag{background:var(--primary-soft);color:var(--primary);border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10.5px}.user-actions{text-align:right;white-space:nowrap}.user-loading{text-align:center;color:var(--muted);margin:0;padding:26px;font-size:13.5px}.link-btn:disabled{opacity:.5;cursor:not-allowed}.warn-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #efe3d3;border-left:3px solid #e0a35c;margin-bottom:16px;overflow:hidden}.warn-head{background:linear-gradient(90deg,#fff8ef 0%,#fffdfb 72%);border-bottom:1px solid #f5ece0;align-items:center;gap:8px;padding:10px 14px;display:flex}.warn-icon{color:#a5620f;background:#fbe6c9;border-radius:7px;place-items:center;width:24px;height:24px;display:grid}.warn-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.warn-title{letter-spacing:.2px;color:#8a4b0f;font-size:13.5px;font-weight:700}.warn-body{padding:2px 14px 8px}.warn-group{padding:6px 0 3px}.warn-group+.warn-group{border-top:1px dashed #f0e9df}.warn-group-head{align-items:center;gap:6px;padding-bottom:2px;display:flex}.warn-group-dot{border-radius:50%;width:6px;height:6px}.warn-group.shoot .warn-group-dot{background:#e0a35c}.warn-group.review .warn-group-dot{background:#e0778c}.warn-group-label{letter-spacing:.4px;font-size:12px;font-weight:700}.warn-group.shoot .warn-group-label{color:#a5620f}.warn-group.review .warn-group-label{color:#be123c}.warn-group-count{text-align:center;font-variant-numeric:tabular-nums;border-radius:20px;min-width:18px;padding:0 6px;font-size:11px;font-style:normal;font-weight:800;line-height:16px}.warn-group.shoot .warn-group-count{color:#a5620f;background:#fdf1e0}.warn-group.review .warn-group-count{color:#be123c;background:#feeff2}.warn-group-note{color:#a2a9b4;white-space:nowrap;margin-left:auto;font-size:11px}.warn-list{margin:0;padding:0;list-style:none}.warn-item{align-items:flex-start;gap:8px;padding:4px 0;display:flex}.warn-dotm{border-radius:50%;flex:none;width:6px;height:6px;margin-top:8px}.warn-dotm.late{background:#e11d48;box-shadow:0 0 0 3px #fde8ec}.warn-dotm.today{background:#d97706;box-shadow:0 0 0 3px #fdf0dd}.warn-dotm.soon{background:#e0a35c;box-shadow:0 0 0 3px #fdf3e6}.warn-text{color:#4b5563;min-width:0;margin:0;font-size:12.5px;line-height:1.7}.warn-cust{color:var(--text);margin-right:3px;font-size:13px;font-weight:700}.warn-days{white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:6px;align-items:baseline;gap:3px;margin:0 2px;padding:0 6px;font-size:12px;font-weight:600;display:inline-flex}.warn-days b{font-size:14px;font-weight:800;line-height:1}.warn-days.late{color:#be123c;background:#fdeef1}.warn-days.late b{color:#9f1239}.warn-days.today{color:#b45309;background:#fdecd9}.warn-days.soon{color:#a5620f;background:#fdf6e6}.warn-days.soon b{color:#b45309}.warn-num{text-align:center;vertical-align:1px;font-variant-numeric:tabular-nums;border-radius:6px;min-width:20px;margin:0 3px;padding:0 5px;font-size:12.5px;font-weight:800;line-height:18px;display:inline-block}.warn-num.video{color:#3f37c9;background:#e7ebfe}.warn-num.poboo{color:#0b6b64;background:#e0f5ec}.warn-act{white-space:nowrap;font-size:12.5px;font-weight:650}.warn-act.shoot{color:#a5620f}.warn-act.review{color:#be123c}.warn-empty{color:#9299a5;margin:0;padding:1px 0 3px 14px;font-size:12px;line-height:1.6}.warn-foot{color:#a2a9b4;margin:0;padding:1px 0 2px 14px;font-size:11.5px;line-height:1.6}.warn-more{color:#a5620f;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:3px;width:100%;padding:4px 0 2px;font-size:11.5px;display:flex}.warn-more svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px;transition:transform .18s}.warn-more svg.up{transform:rotate(180deg)}.warn-more:hover{color:#8a4b0f}@media (width<=760px){.warn-group-note{display:none}}.stat-tools{justify-content:flex-end;margin:-4px 0 8px;display:flex}.fee-eye{color:var(--text-2);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:500;transition:color .16s,border-color .16s,background .16s;display:inline-flex}.fee-eye:hover{color:var(--primary);background:var(--primary-soft);border-color:#c7cbf7}.fee-eye:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.fee-eye.on{color:var(--primary);background:var(--primary-soft);border-color:#c7cbf7}.fee-eye svg{flex:none}.stat-row{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:4px;padding:15px 18px 16px;transition:box-shadow .18s,border-color .18s;display:flex}.stat-card:hover{border-color:#dcdfe6;box-shadow:0 12px 28px -20px #1018288c}.stat-head{align-items:center;gap:8px;margin-bottom:2px;display:flex}.stat-icon{border-radius:8px;place-items:center;width:26px;height:26px;display:grid}.stat-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.stat-icon.indigo{color:#4f46e5;background:#eef2ff}.stat-icon.emerald{color:#059669;background:#ecfdf5}.stat-icon.amber{color:#d97706;background:#fffbeb}.stat-icon.sky{color:#0284c7;background:#eff6ff}.stat-icon.red{color:#dc2626;background:#fef2f2}.stat-label{color:var(--muted);font-size:12.5px}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:25px;font-weight:600;line-height:1.25}.stat-note{color:var(--muted);font-size:11.5px}.stat-value.green{color:var(--green)}.stat-value.amber{color:var(--amber)}.stat-value.red{color:#dc2626}.stat-people{border-top:1px dashed var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 14px;margin:auto 0 0;padding:8px 0 0;list-style:none;display:grid}.stat-people li{justify-content:space-between;align-items:baseline;gap:6px;min-width:0;font-size:11px;line-height:1.5;display:flex}.stat-people-name{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stat-people-fee{color:var(--amber);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.toolbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;display:flex}.search{flex:280px;align-items:center;min-width:220px;display:flex;position:relative}.search svg{color:var(--muted);pointer-events:none;position:absolute;left:11px}.search input{border:1px solid var(--border);background:var(--surface-soft);width:100%;height:34px;color:var(--text);border-radius:8px;outline:none;padding:0 30px 0 34px;font-size:13.5px;transition:border-color .15s,box-shadow .15s,background .15s}.search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);background:#fff}.search input::placeholder{color:#b3b9c4}.search-clear{width:20px;height:20px;color:var(--text-2);cursor:pointer;background:#eceef2;border:0;border-radius:50%;font-size:10px;line-height:1;position:absolute;right:6px}.search-clear:hover{background:var(--border-strong)}.select{border:1px solid var(--border);background-color:var(--surface);appearance:none;height:34px;color:var(--text-2);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b93a1' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;border-radius:8px;outline:none;padding:0 28px 0 10px;font-size:13.5px}.select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.select-sm{height:28px;padding:0 24px 0 8px;font-size:13px}.toolbar-count{color:var(--muted);margin-left:auto;font-size:13px}.toolbar-count strong{color:var(--text);font-weight:600}.sort-group{border:1px solid var(--border);background:var(--surface-soft);border-radius:9px;align-items:center;gap:2px;height:34px;padding:0 4px 0 10px;display:flex}.sort-label{color:var(--muted);white-space:nowrap;margin-right:2px;font-size:12px}.select-plain{height:26px;color:var(--text);box-shadow:none;background-color:#0000;border:0;padding:0 22px 0 6px;font-size:13px;font-weight:500}.select-plain:hover{background-color:#eceef3;border-radius:6px}.select-plain:focus{box-shadow:none;background-color:#fff}.sort-dir{background:var(--surface);border-color:var(--border);min-width:64px;height:26px;padding:0 8px;font-size:12px}.menu{position:relative}.menu-trigger{gap:6px}.menu-trigger.open,.menu-trigger:hover:not(:disabled){border-color:var(--border-strong)}.menu-trigger.open{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.menu-trigger svg{opacity:.75;flex:none}.menu-trigger.open svg{opacity:1}.menu-caret{color:var(--muted);margin-left:2px;font-size:9px}.menu-trigger.open .menu-caret{color:var(--primary)}.menu-badge{background:var(--primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.menu-value{text-overflow:ellipsis;white-space:nowrap;max-width:150px;color:var(--text-2);font-size:13px;overflow:hidden}.menu-trigger.open .menu-value{color:var(--primary)}.menu-panel{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:12px;width:282px;max-width:calc(100vw - 40px);animation:.14s ease-out pop-in;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 16px 40px -16px #1018284d}.menu-section{border-bottom:1px solid #f2f3f6;padding:12px 14px}.menu-section:last-of-type{border-bottom:0}.menu-title{letter-spacing:.03em;color:var(--muted);margin-bottom:8px;font-size:11.5px}.menu-empty{color:var(--muted);margin:0;font-size:12.5px}.menu-hint{color:var(--muted);margin:8px 0 0;font-size:11.5px}.chip-row{flex-wrap:wrap;align-items:stretch;gap:6px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);min-width:56px;color:var(--text-2);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:4px 11px;font-size:12.5px;line-height:1.5;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.chip:hover{border-color:var(--border-strong);background:#f7f8fa}.chip.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:500}.chip-plain{border-radius:12px;flex:none;align-self:flex-start;min-width:58px;height:58px;margin-right:-6px;font-weight:500}.chip-card-row{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:8px 6px;display:grid}.chip-card-row>.chip{border-radius:12px}.chip.is-locked{cursor:default}.chip.is-locked:hover{border-color:var(--border-strong);background:var(--surface);box-shadow:none}.chip-stacked.is-locked:hover{border-color:var(--border-strong);background:#fff;box-shadow:0 2px 8px #1018280d}.chip-stacked{background:linear-gradient(#fff 0%,#fafbfc 100%);border-radius:12px;flex-direction:column;align-items:stretch;gap:6px;padding:8px 8px 7px;display:inline-flex}.chip-stacked:hover{background:#fff;border-color:#c7d2fe;box-shadow:0 4px 14px -6px #4f46e547}.chip-stacked.active{background:var(--primary-soft);box-shadow:inset 0 0 0 1px #4f46e51a}.chip-head{align-items:center;gap:6px;display:inline-flex}.chip-stacked .chip-head{letter-spacing:.2px;color:var(--text);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13px;font-weight:600;line-height:1.2;overflow:hidden}.chip-stacked.active .chip-head{color:var(--primary)}.chip-types{align-items:stretch;gap:3px;display:flex}.chip-type{font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:6px;flex:1 1 0;justify-content:center;align-items:baseline;gap:2px;min-width:30px;padding:2px 3px;font-size:10px;line-height:1.45;display:inline-flex}.chip-type-key{opacity:.66;font-style:normal;font-weight:500}.chip-type b{font-size:10.5px;font-weight:700}.chip-type.t-video{color:#4c46c9;background:#eef0ff}.chip-type.t-poboo{color:#be123c;background:#fff1f2}.chip-type.t-shoot{color:#1c7a4d;background:#eaf7f0}.chip-type.t-copy{color:#b45309;background:#fff7ea}.chip-type.t-other{color:#5b6472;background:#f4f5f7}.chip-type.is-zero{opacity:.4;filter:saturate(.55)}.chip-stacked.active .chip-type{background:#ffffffd1}.chip-stacked.active .chip-type.is-zero{opacity:.45}.menu-list{flex-direction:column;gap:2px;display:flex}.menu-item{width:100%;color:var(--text-2);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;padding:7px 10px;font-size:13px;display:flex}.menu-item:hover{background:#f5f6f8}.menu-item.active{background:var(--primary-soft);color:var(--primary);font-weight:500}.radio{border:1.5px solid var(--border-strong);background:#fff;border-radius:50%;flex:none;width:13px;height:13px}.menu-item.active .radio{border:4px solid var(--primary)}.menu-foot{background:var(--surface-soft);border-top:1px solid var(--border);justify-content:space-between;gap:8px;padding:10px 12px;display:flex}.btn{border:1px solid var(--border);background:var(--surface);height:34px;color:var(--text);white-space:nowrap;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--border-strong);background:#f5f6f8}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{color:#fff;background:linear-gradient(#5b52f0 0%,#4f46e5 100%);border-color:#4f46e5;box-shadow:0 2px 6px -2px #4f46e5b3}.btn-primary:hover:not(:disabled){background:linear-gradient(#4f46e5 0%,#4338ca 100%);border-color:#4338ca}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.btn-ghost{color:var(--primary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--primary-soft);border-color:#0000}.btn-sm{border-radius:7px;height:28px;padding:0 10px;font-size:13px}.alert{background:var(--danger-soft);color:#991b1b;border:1px solid #fecaca;border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:10px 14px;font-size:13.5px;display:flex}.alert .btn{margin-left:auto}.table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.progress{background:linear-gradient(90deg, transparent, var(--primary), transparent);z-index:3;background-size:40% 100%;height:2px;animation:1.1s linear infinite progress-slide;position:absolute;top:0;left:0;right:0}@keyframes progress-slide{0%{background-position:-40% 0}to{background-position:140% 0}}.table-scroll{overflow-x:auto}.table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1100px;font-size:13.5px}.table th{text-align:left;letter-spacing:.04em;color:#8b93a1;border-bottom:1px solid var(--border);white-space:nowrap;background:#fbfbfd;padding:11px 14px;font-size:11.5px;font-weight:500}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table th.sortable:hover{color:var(--text-2)}.sort-icon{opacity:.45;margin-left:2px;font-size:11px}.table td{color:var(--text-2);vertical-align:middle;border-bottom:1px solid #f1f2f5;padding:11px 14px}.table tbody tr:last-child td{border-bottom:0}.row:hover td,.row.expanded td{background:#f8f9ff}.row:hover td:first-child{box-shadow:inset 3px 0 0 var(--primary)}.name-cell{align-items:center;gap:9px;min-width:0;display:flex}.cell-avatar{border-radius:8px;flex:none;place-items:center;width:26px;height:26px;font-size:12px;font-weight:600;display:grid}.cell-avatar.t0,.hero-avatar.t0{color:#4f46e5;background:#eef2ff}.cell-avatar.t1,.hero-avatar.t1{color:#059669;background:#ecfdf5}.cell-avatar.t2,.hero-avatar.t2{color:#ea580c;background:#fff7ed}.cell-avatar.t3,.hero-avatar.t3{color:#0284c7;background:#eff6ff}.cell-avatar.t4,.hero-avatar.t4{color:#db2777;background:#fdf2f8}tbody.dim{opacity:.45}.mono{color:var(--muted);font-variant-numeric:tabular-nums}.cell-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.clamp-2{-webkit-line-clamp:2;white-space:pre-line;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.muted{color:var(--muted)}.pre{white-space:pre-line}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;height:22px;padding:0 9px;font-size:12px;font-weight:500;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.badge-green{background:var(--green-soft);color:var(--green)}.badge-green .dot{background:#10b981}.badge-amber{background:var(--amber-soft);color:var(--amber)}.badge-amber .dot{background:#f59e0b}.col-toggle{width:36px;padding-left:8px!important;padding-right:0!important}.expand-btn{width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;font-size:11px;line-height:1}.expand-btn:hover{color:var(--text);background:#eceef2}.col-actions{text-align:right;white-space:nowrap;width:118px}.eta-td{white-space:nowrap}.eta{flex-direction:column;gap:3px;line-height:1.3;display:inline-flex}.eta-date{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:13px}.eta-hint{font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:5px;align-self:flex-start;padding:0 6px;font-size:11px;font-style:normal;line-height:17px}.eta-hint b{font-weight:700}.eta-hint.in{color:#1c7a4d;background:#eaf7f0}.eta-hint.today{background:var(--primary-soft,#eef0ff);color:var(--primary,#4f46e5)}.eta-hint.late{color:#be123c;background:#feecef}.link-btn{color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:3px 7px;font-size:13px}.link-btn:hover{background:var(--primary-soft)}.link-btn.danger{color:var(--danger)}.link-btn.danger:hover{background:var(--danger-soft)}.detail-row td{background:var(--surface-soft);border-bottom:1px solid var(--border);padding:0}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;padding:16px 20px 18px 52px;display:grid}.detail-item p{color:var(--text-2);margin:4px 0 0;font-size:13px;line-height:1.55}.detail-label{letter-spacing:.04em;color:var(--muted);font-size:11.5px}.empty{text-align:center;color:var(--muted);padding:56px 20px}.empty-icon{border:1px solid var(--border);background:var(--surface-soft);border-radius:14px;place-items:center;width:46px;height:46px;margin:0 auto 10px;font-size:20px;display:grid}.empty p{margin:0 0 14px;font-size:13.5px}.pager{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.pager-info{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.pager-actions{gap:8px;display:flex}.modal-overlay{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10182873;justify-content:center;align-items:center;padding:24px;animation:.15s ease-out fade-in;display:flex;position:fixed;inset:0}.modal{background:var(--surface);width:100%;max-width:780px;max-height:min(88vh,900px);box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;animation:.18s ease-out pop-in;display:flex;overflow:hidden}.modal-sm{max-width:420px}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px 14px;display:flex}.modal-head h2{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600}.modal-sub{color:var(--muted);margin:4px 0 0;font-size:12.5px}.icon-btn{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:13px}.icon-btn:hover{color:var(--text);background:#f1f2f5}.modal form{flex-direction:column;flex:1;min-height:0;display:flex}.modal-body{grid-template-columns:1fr 1fr;gap:14px 16px;padding:18px 24px;display:grid;overflow-y:auto}.modal-sm .modal-body{padding:22px 24px 8px;display:block}.modal-foot{border-top:1px solid var(--border);background:var(--surface-soft);justify-content:flex-end;gap:8px;padding:14px 24px;display:flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-full{grid-column:1/-1}.field label{color:var(--text-2);font-size:12.5px;font-weight:500}.required{color:var(--danger)}.field input,.field textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);resize:vertical;border-radius:8px;outline:none;padding:8px 11px;font-size:13.5px;line-height:1.5;transition:border-color .15s,box-shadow .15s}.field textarea{min-height:40px}.field input:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.field input::placeholder,.field textarea::placeholder{color:#b3b9c4}.segment{background:#f3f4f7;border-radius:9px;gap:4px;width:fit-content;padding:3px;display:flex}.segment-item{color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;display:inline-flex}.segment-item.active{border-color:var(--border);color:var(--text);box-shadow:var(--shadow-sm);background:#fff;font-weight:500}.dot{border-radius:50%;width:6px;height:6px}.dot-green{background:#10b981}.dot-amber{background:#f59e0b}.dot-red{background:#ef4444}.dot-primary{background:var(--primary)}.form-error{background:var(--danger-soft);color:var(--danger);border-radius:8px;grid-column:1/-1;margin:0;padding:8px 10px;font-size:12.5px}.confirm-title{margin:0 0 6px;font-size:16px;font-weight:600}.confirm-text{color:var(--text-2);white-space:pre-line;margin:0;font-size:13.5px;line-height:1.6}.toast{z-index:60;color:#fff;max-width:360px;box-shadow:var(--shadow-md);border-radius:10px;padding:11px 16px;font-size:13.5px;line-height:1.45;animation:.2s ease-out toast-in;position:fixed;bottom:24px;right:24px}.toast.ok{background:#0f766e}.toast.err{background:#b91c1c}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.row.clickable{cursor:pointer}.row.clickable:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.readonly-tag{color:var(--muted);font-size:12px}.btn-danger-ghost{color:var(--danger);background:#fff;border-color:#f0d3d3}.btn-danger-ghost:hover:not(:disabled){background:var(--danger-soft);border-color:#fecaca}.detail-page{flex-direction:column;gap:14px;display:flex}.back-link{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;padding:5px 12px 5px 8px;font-size:13px;transition:background .15s,color .15s;display:inline-flex}.back-link:hover{color:var(--text);background:#eceef3}.detail-hero{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;display:flex}.hero-main{align-items:center;gap:14px;min-width:0;display:flex}.hero-avatar{border-radius:16px;flex:none;place-items:center;width:54px;height:54px;font-size:22px;font-weight:600;display:grid}.hero-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hero-title h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:650}.detail-hero .page-sub{margin-top:3px}.detail-cards{grid-template-columns:1.1fr 1fr;gap:14px;display:grid}.panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:14px;padding:18px 22px 20px}.panel h2{letter-spacing:.02em;color:var(--text-2);margin:0 0 14px;font-size:13px;font-weight:600}.block+.block{border-top:1px dashed #eceef2;margin-top:14px;padding-top:14px}.block .detail-label{margin-bottom:4px;display:block}.block p{color:var(--text-2);white-space:pre-line;margin:0;font-size:13.5px;line-height:1.65}.kv{grid-template-columns:1fr 1fr;gap:14px 18px;margin:0;display:grid}.kv dt{color:var(--muted);margin-bottom:3px;font-size:11.5px}.kv dd{color:var(--text);margin:0;font-size:13.5px}.kv-full{grid-column:1/-1}.detail-remark{color:var(--text-2);white-space:pre-line;margin:0;font-size:13.5px;line-height:1.7}.detail-state{color:var(--muted);flex-direction:column;align-items:center;gap:12px;padding:60px 20px;font-size:13.5px;display:flex}.detail-state p{margin:0}.detail-error{color:var(--danger)}@media (width<=900px){.app{padding:20px 16px 56px}.stat-row{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:repeat(2,1fr);padding:16px 20px}.modal-body,.detail-cards{grid-template-columns:1fr}}@media (width<=560px){.page-head{align-items:flex-start}.head-actions{justify-content:flex-start;width:100%}.head-actions .btn{flex:1}.user-chip{order:-1;width:100%}.toolbar-count{display:none}.modal-overlay{padding:12px}}@media (width<=760px){.auth-card{grid-template-columns:1fr;max-width:420px}.auth-brand{display:none}.auth-form{padding:32px 24px 28px}}.console{align-items:stretch;max-width:1560px;min-height:100vh;margin:0 auto;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:0 0 236px;width:236px;height:100vh;padding:20px 14px 16px;display:flex;position:sticky;top:0}.side-brand{align-items:center;gap:10px;padding:2px 6px 22px;display:flex}.side-brand .brand-mark{border-radius:11px;width:36px;height:36px;font-size:16px}.side-brand-text{flex-direction:column;line-height:1.3;display:flex}.side-brand-text strong{letter-spacing:-.01em;font-size:14.5px}.side-brand-text span{color:var(--muted);font-size:11.5px}.side-nav{flex-direction:column;flex:1;gap:3px;min-height:0;display:flex;overflow-y:auto}.side-group{letter-spacing:.09em;color:#9aa2b1;margin:0 0 6px;padding:0 10px;font-size:10.5px;font-weight:500}.side-item{text-align:left;cursor:pointer;width:100%;color:var(--text-2);background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;transition:background .15s,color .15s,border-color .15s;display:flex}.side-item:hover{background:#f5f6fa}.side-item.active{background:var(--primary-soft);color:var(--primary);border-color:#e2e5fd}.side-icon{color:#7b8494;background:#f2f3f7;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;display:grid}.side-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.side-item.active .side-icon{color:var(--primary);background:#fff;box-shadow:0 1px 2px #4f46e524}.side-text{flex-direction:column;min-width:0;line-height:1.3;display:flex}.side-text strong{font-size:13.5px;font-weight:550}.side-text span{color:var(--muted);font-size:10.5px}.side-item.active .side-text span{color:#7f83e0}.side-foot{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.side-user{align-items:center;gap:9px;padding:0 4px 10px;display:flex}.side-user-meta{flex-direction:column;min-width:0;line-height:1.3;display:flex}.side-user-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.side-logout{justify-content:center;width:100%}.console-main{flex:1;min-width:0;padding:22px 24px 64px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.topbar h1{letter-spacing:-.02em;margin:0 0 3px;font-size:21px;font-weight:650}.topbar-user{color:var(--muted);padding:0 2px;font-size:12.5px}.role-tag.manager{color:#0284c7;font-weight:500}.badge-red{background:var(--danger-soft);color:var(--danger)}.badge-red .dot{background:#ef4444}.badge-sky{color:#0284c7;background:#eff6ff}.badge-sky .dot{background:#38bdf8}.badge-slate{color:#475569;background:#f1f5f9}.badge-slate .dot{background:#94a3b8}.link-btn.success{color:var(--green)}.link-btn.success:hover{background:var(--green-soft)}.type-tag{letter-spacing:.2px;white-space:nowrap;border-radius:7px;align-items:center;height:21px;padding:0 8px;font-size:11.5px;font-weight:550;display:inline-flex}.type-shoot{color:#1c7a4d;background:#eaf7f0;box-shadow:inset 0 0 0 1px #1c7a4d24}.type-video{color:#4c46c9;background:#eef0ff;box-shadow:inset 0 0 0 1px #4c46c924}.type-poboo{color:#be123c;background:#fff1f2;box-shadow:inset 0 0 0 1px #be123c21}.type-copy{color:#b45309;background:linear-gradient(#fff7ea 0%,#fdefdc 100%);box-shadow:inset 0 0 0 1px #b4530933}.type-other{color:#5b6472;background:#f4f5f7;box-shadow:inset 0 0 0 1px #5b64721f}.work-title{color:var(--text);white-space:nowrap;align-items:center;gap:6px;font-weight:550;display:flex;overflow:hidden}.work-title-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.work-title .type-tag{flex:none}.work-remark{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.col-num{text-align:right}.money-cell{font-variant-numeric:tabular-nums;font-weight:550}.stat-value.money{font-size:21px}.scope-hint{color:var(--muted);align-items:center;gap:6px;margin:-2px 0 10px;font-size:12px;display:flex}.scope-hint:before{content:"";background:#c7ccd6;border-radius:50%;width:6px;height:6px}.segment.segment-4,.segment.segment-2,.segment.segment-5,.segment.segment-6{width:100%}.segment-6 .segment-item{flex:1;justify-content:center;padding-left:3px;padding-right:3px;font-size:12px}.segment-4 .segment-item,.segment-2 .segment-item,.segment-5 .segment-item{flex:1;justify-content:center}.segment-5 .segment-item{padding-left:4px;padding-right:4px;font-size:12.5px}.modal-sm{width:min(420px,100vw - 32px)}.submit-dlg-msg{color:var(--text,#1e293b);white-space:pre-wrap;margin:0 0 14px;font-size:13.5px;line-height:1.6}.readonly-field{border:1px dashed var(--border-strong);background:var(--surface-soft);height:38px;color:var(--text-2);border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:13.5px;display:flex}.field-hint{color:var(--muted);margin:6px 0 0;font-size:11.5px}.copy-count{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex}.count-stepper{border:1px solid var(--border-strong);background:var(--surface);border-radius:9px;align-items:center;height:34px;display:inline-flex;overflow:hidden}.count-btn{width:32px;height:100%;color:var(--text-2);cursor:pointer;background:0 0;border:0;font-size:15px;line-height:1;transition:background .15s,color .15s}.count-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.count-btn:disabled{color:#cfd4dc;cursor:not-allowed}.field .count-stepper input{border:0;border-left:1px solid var(--border);border-right:1px solid var(--border);text-align:center;width:56px;height:100%;color:var(--text);appearance:textfield;background:0 0;border-radius:0;padding:0;font-size:14px;font-weight:600}.field .count-stepper input:focus{box-shadow:none;background:var(--primary-soft)}.count-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.count-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.count-unit{color:var(--muted);border-left:1px solid var(--border);align-items:center;height:100%;padding:0 10px 0 9px;font-size:12.5px;display:inline-flex}.count-total{color:var(--text-2);align-items:baseline;gap:7px;font-size:12.5px;display:inline-flex}.count-total strong{color:var(--primary);font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.count-total-label{color:var(--muted)}.count-rate{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.coming-soon{text-align:center;background:var(--surface);border:1px dashed var(--border-strong);border-radius:16px;flex-direction:column;align-items:center;padding:64px 24px;display:flex}.coming-mark{background:var(--primary-soft);width:56px;height:56px;color:var(--primary);border-radius:16px;place-items:center;margin-bottom:16px;display:grid}.coming-mark svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.coming-soon h2{margin:0 0 8px;font-size:17px;font-weight:600}.coming-desc{max-width:460px;color:var(--text-2);margin:0;font-size:13px}.coming-list{flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0 0;padding:0;list-style:none;display:flex}.coming-list li{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-2);border-radius:999px;padding:5px 12px;font-size:12px}.coming-note{color:var(--muted);margin:18px 0 0;font-size:11.5px}@media (width<=1024px){.console{flex-direction:column}.sidebar{border-right:0;border-bottom:1px solid var(--border);flex:none;width:100%;height:auto;padding:14px 16px;position:static}.side-brand{padding-bottom:12px}.side-nav{flex-direction:row;gap:6px;padding-bottom:2px;overflow-x:auto}.side-group,.side-foot{display:none}.side-item{flex:none;width:auto}.side-text span{display:none}.console-main{padding:18px 16px 48px}}.filter-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:9px;margin-bottom:12px;padding:12px 15px 14px;display:flex}.filter-bar-head{border-bottom:1px solid #f2f3f6;align-items:center;gap:10px;padding-bottom:9px;display:flex}.filter-bar-title{color:var(--text);align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.filter-bar-title svg{width:14px;height:14px;color:var(--primary)}.filter-bar-hint{min-width:0;color:var(--muted);flex:1;font-size:11.5px}.filter-row{align-items:flex-start;gap:12px;display:flex}.filter-label{color:var(--muted);flex:0 0 60px;padding-top:6px;font-size:12.5px}.filter-row .chip-row{flex:auto}@media (width<=640px){.filter-row{flex-wrap:wrap;gap:8px}.filter-label{flex:0 0 100%}}.chip-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:5px;font-size:10.5px;font-style:normal}.chip.active .chip-count{color:var(--primary);opacity:.75}.chip-row-scroll{max-height:320px;padding:2px 4px 2px 0;overflow-y:auto}input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary);cursor:pointer;vertical-align:middle;margin:0}.col-check{text-align:center;width:40px;padding-left:12px!important;padding-right:0!important}.row.selected td{background:#f7f8ff}.row.selected td:first-child{box-shadow:inset 3px 0 0 var(--primary)}.batch-bar{z-index:15;border-radius:var(--radius);background:linear-gradient(#f7f8ff 0%,#fff 100%);border:1px solid #dddcfb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:9px 14px;display:flex;position:sticky;top:8px;box-shadow:0 12px 26px -20px #4f46e5e6}.batch-bar-info{color:var(--text-2);font-size:13px}.batch-bar-info strong{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:600}.batch-bar-actions{flex-wrap:wrap;gap:8px;display:flex}.modal-xl{max-width:920px}.batch-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;padding:14px 16px 16px}.batch-panel+.batch-panel{margin-top:14px}.batch-panel-list{background:linear-gradient(#fcfcff 0%,#fff 46%)}.batch-panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.batch-panel-title{color:var(--text);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:flex}.batch-step{background:var(--primary-soft);width:20px;height:20px;color:var(--primary);font-variant-numeric:tabular-nums;border-radius:7px;place-items:center;font-size:11px;font-weight:600;display:grid}.batch-type-pill{background:var(--primary-soft);height:24px;color:var(--primary);letter-spacing:.2px;border:1px solid #e0e7ff;border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 8px;font-size:12px;font-weight:500;display:inline-flex}.batch-type-pill i{background:var(--primary);border-radius:50%;width:6px;height:6px}.batch-panel-hint{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.batch-panel-hint strong{color:var(--primary);font-weight:600}.batch-shared{grid-template-columns:1.25fr 1fr;gap:12px 16px;display:grid}.batch-rows{flex-direction:column;gap:6px;display:flex}.batch-row{border:1px solid #0000;border-radius:10px;grid-template-columns:26px 96px minmax(0,1.15fr) minmax(0,1fr) 26px;align-items:center;gap:10px;padding:4px 6px;transition:background .15s,border-color .15s;display:grid}.batch-row[data-filled]{background:#fbfbff;border-color:#eef0fe}.batch-row-head{letter-spacing:.4px;color:var(--muted);border-bottom:1px solid var(--border);border-radius:0;margin-bottom:2px;padding:0 6px 4px;font-size:11px;font-weight:500}.batch-row-head span:nth-child(3){padding-left:2px}.batch-row input{border:1px solid var(--border);width:100%;height:34px;color:var(--text);background:#fff;border-radius:8px;padding:0 10px;font-size:13px;transition:border-color .15s,box-shadow .15s}.batch-row input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.batch-row input[type=number]{appearance:textfield;font-variant-numeric:tabular-nums}.batch-row input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.batch-row input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.batch-row .batch-remark-input{font-size:12.5px}.batch-no-preview{min-width:0;color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.3;overflow:hidden}.batch-no-empty{color:var(--muted);font-style:normal}.batch-index{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.batch-remove{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;font-size:12px}.batch-remove:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.batch-remove:disabled{opacity:.35;cursor:not-allowed}.batch-foot{border-top:1px dashed var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.batch-foot-actions{flex-wrap:wrap;gap:8px;display:flex}.batch-tip{color:var(--muted);margin:0;font-size:12px}.batch-tip kbd{border:1px solid var(--border-strong);background:var(--surface-soft);color:var(--text-2);border-bottom-width:2px;border-radius:5px;padding:1px 5px;font-family:inherit;font-size:11px}.batch-foot-sum{color:var(--text-2);align-items:baseline;gap:8px;margin-right:auto;font-size:12.5px;display:flex}.batch-foot-sum strong{color:var(--primary);font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.batch-foot-sum i{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:300px;font-style:normal;overflow:hidden}@media (width<=760px){.batch-shared{grid-template-columns:1fr}.batch-row{grid-template-columns:22px minmax(0,1fr) 26px}.batch-row .batch-no-preview,.batch-row-head span:nth-child(3),.batch-row input[aria-label$=备注],.batch-row-head span:nth-child(4),.batch-foot-sum i{display:none}}.chip-badge.pending{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:5px;padding:0 6px;font-size:10px;font-style:normal;font-weight:600;line-height:1;display:inline-flex;box-shadow:0 1px 3px #ef444459}.chip-badge.reviewing{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;background:#0284c7;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:5px;padding:0 6px;font-size:10px;font-style:normal;font-weight:600;line-height:1;display:inline-flex;box-shadow:0 1px 3px #0284c759}.chip.active .chip-badge.pending{background:#dc2626;box-shadow:0 1px 3px #dc262666}.chip.active .chip-badge.reviewing{background:#0369a1;box-shadow:0 1px 3px #0369a166}.pend-tip{z-index:120;background:var(--surface);border:1px solid var(--border);pointer-events:none;border-radius:12px;padding:10px 12px 11px;animation:.12s ease-out pend-tip-in;position:fixed;box-shadow:0 18px 44px -18px #1018284d,0 2px 8px #1018280d}@keyframes pend-tip-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.pend-tip-title{color:var(--text);align-items:baseline;gap:6px;margin-bottom:7px;font-size:12.5px;font-weight:600;display:flex}.pend-tip-title span{color:var(--muted);font-size:11px;font-weight:400}.pend-tip-table{grid-template-columns:minmax(58px,1fr) repeat(3,34px);align-items:center;gap:3px 4px;display:grid}.pend-tip-table>.pend-tip-col{border-bottom:1px solid #f0f2f7;padding-bottom:3px;font-weight:600}.pend-tip-col{color:var(--muted);text-align:center;letter-spacing:.2px;font-size:10px}.pend-tip-name{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;padding-right:2px;font-size:11.5px;overflow:hidden}.pend-tip-val{text-align:center;color:var(--text-2);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:700}.pend-tip-val.v-video{color:#4c46c9}.pend-tip-val.v-poboo{color:#be123c}.pend-tip-val.v-shoot{color:#1c7a4d}.pend-tip-val.v-copy{color:#b45309}.pend-tip-val.v-other{color:#5b6472}.pend-tip-val.is-zero{color:var(--muted);opacity:.4;font-weight:500}.fee-cell-btn{font:inherit;color:var(--text,#1e293b);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 6px;font-weight:600;transition:background .15s}.fee-cell-btn:hover{background:var(--amber-soft,#fef3c7);color:var(--amber,#b45309)}.fee-cell-btn.empty{color:var(--muted,#94a3b8);border-bottom:1px dashed;font-weight:500}.fee-pop-overlay{z-index:90;position:fixed;inset:0}.fee-pop{z-index:91;background:var(--card,#fff);border:1px solid var(--line,#e2e8f0);border-radius:12px;padding:12px;position:fixed;box-shadow:0 12px 32px #0f172a2e}.fee-pop-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.fee-pop-title{color:var(--text,#1e293b);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.fee-pop-grid{grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:10px;display:grid}.fee-opt{border:1px solid var(--line,#e2e8f0);background:var(--bg-soft,#f8fafc);font-variant-numeric:tabular-nums;height:30px;color:var(--text,#334155);cursor:pointer;border-radius:8px;font-size:12.5px;font-weight:600;transition:all .15s}.fee-opt:hover{border-color:var(--primary,#4f46e5);color:var(--primary,#4f46e5)}.fee-opt.active{background:var(--primary,#4f46e5);border-color:var(--primary,#4f46e5);color:#fff}.fee-pop-input{align-items:center;gap:6px;margin-bottom:10px;display:flex}.fee-pop-input input{border:1px solid var(--line,#e2e8f0);border-radius:8px;flex:1;min-width:0;height:32px;padding:0 10px;font-size:13px}.fee-pop-input input:focus{border-color:var(--primary,#4f46e5);outline:none;box-shadow:0 0 0 3px #4f46e51f}.fee-pop-unit{color:var(--muted,#94a3b8);font-size:12px}.fee-pop-save{width:100%}.date-range{flex:none;align-items:center;gap:6px;display:flex}.date-range input[type=date]{border:1px solid var(--border);height:30px;color:var(--text-2);background:#fff;border-radius:8px;padding:0 8px;font-size:12.5px}.date-range input[type=date]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.date-sep{color:var(--muted);font-size:12px}.date-clear{width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;font-size:11px}.date-clear:hover{color:var(--text);background:#f1f2f5}.dp{display:inline-flex;position:relative}.dp-trigger{border:1px solid var(--border);background:var(--surface);height:30px;color:var(--text-2);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 9px;font-size:12.5px;transition:border-color .15s,box-shadow .15s,background .15s;display:inline-flex}.dp-trigger:hover{border-color:var(--border-strong);background:var(--surface-soft)}.dp-trigger[aria-expanded=true]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);background:var(--surface)}.dp-icon{width:13px;height:13px;color:var(--muted);flex:none;transition:color .15s}.dp-trigger.filled{color:var(--text);font-weight:500}.dp-trigger.filled .dp-icon{color:var(--primary)}.dp-text{font-variant-numeric:tabular-nums;letter-spacing:.2px}.dp-text.empty{color:#b3b9c4;font-weight:400}.dp-clear{width:15px;height:15px;color:var(--muted);border-radius:50%;place-items:center;margin-left:1px;font-size:9px;line-height:1;transition:background .15s,color .15s;display:grid}.dp-clear:hover{color:var(--text);background:#eceef2}.dp-md{width:100%}.dp-md .dp-trigger{border-radius:8px;justify-content:flex-start;width:100%;height:37px;padding:0 11px;font-size:13.5px}.dp-md .dp-icon{width:15px;height:15px}.dp-pop{z-index:70;background:var(--surface);border:1px solid var(--border);border-radius:12px;width:246px;padding:10px 10px 8px;animation:.14s ease-out dp-in;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 18px 44px -16px #10182847,0 2px 6px #1018280f}.dp-pop.right{left:auto;right:0}@keyframes dp-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.dp-pop-head{justify-content:space-between;align-items:center;gap:6px;padding:0 2px 6px;display:flex}.dp-title{color:var(--text);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:600}.dp-nav{width:24px;height:24px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0 0 2px;font-size:16px;line-height:1;transition:background .15s,color .15s;display:grid}.dp-nav:hover{color:var(--text);background:#f2f3f6}.dp-week{grid-template-columns:repeat(7,1fr);gap:2px;padding-bottom:3px;display:grid}.dp-week span{text-align:center;color:var(--muted);font-size:10.5px}.dp-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.dp-day{height:30px;color:var(--text-2);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0;font-size:12.5px;transition:background .13s,color .13s}.dp-day:hover{color:var(--text);background:#f2f3f6}.dp-day.outside{color:#c6cbd4}.dp-day.today{color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary-soft);font-weight:600}.dp-day.active,.dp-day.active:hover{background:var(--primary);color:#fff;box-shadow:none;font-weight:600}.dp-foot{border-top:1px solid #f2f3f6;gap:6px;margin-top:7px;padding-top:7px;display:flex}.dp-foot-btn{background:var(--primary-soft);height:27px;color:var(--primary);font:inherit;cursor:pointer;border:0;border-radius:7px;flex:1;padding:0;font-size:12px;font-weight:500;transition:background .15s}.dp-foot-btn:hover{background:#e3e8ff}.dp-foot-btn.muted{color:var(--muted);background:#f4f5f7}.dp-foot-btn.muted:hover{color:var(--text-2);background:#eceef2}.date-range{gap:5px}.msg{display:inline-flex;position:relative}.msg-btn{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--text-2);cursor:pointer;border-radius:10px;place-items:center;padding:0;transition:border-color .15s,background .15s,color .15s;display:grid;position:relative}.msg-btn svg{width:17px;height:17px}.msg-btn:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.msg-btn.has-unread{color:var(--primary);background:var(--primary-soft);border-color:#dcd9fb}.msg-btn[aria-expanded=true]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.msg-badge{color:#fff;font-variant-numeric:tabular-nums;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--surface), 0 1px 4px #ef444473;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-style:normal;font-weight:600;line-height:1;animation:.2s ease-out msg-pop;display:inline-flex;position:absolute;top:-5px;right:-5px}@keyframes msg-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.msg-pop{z-index:80;background:var(--surface);border:1px solid var(--border);border-radius:13px;width:330px;max-width:calc(100vw - 32px);animation:.15s ease-out dp-in;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 22px 52px -18px #1018284d,0 2px 8px #1018280f}.msg-pop-head{border-bottom:1px solid #f2f3f6;align-items:center;gap:8px;padding:11px 13px 9px;display:flex}.msg-pop-head strong{font-size:13.5px;font-weight:600}.msg-unread-tip{color:var(--muted);flex:1;font-size:11.5px}.msg-mark{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;margin-left:auto;padding:3px 8px;font-size:11.5px;transition:background .15s}.msg-mark:hover:not(:disabled){background:var(--primary-soft)}.msg-mark:disabled{color:#c3c8d2;cursor:default}.msg-list{max-height:380px;padding:5px;overflow-y:auto}.switch{display:inline-flex;position:relative}.switch-btn{align-items:center;gap:6px;display:inline-flex}.switch-icon{width:15px;height:15px}.switch-btn.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.switch-pop{z-index:80;background:var(--surface);border:1px solid var(--border);border-radius:13px;width:318px;max-width:calc(100vw - 32px);padding-bottom:8px;animation:.15s ease-out dp-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 22px 52px -18px #1018284d,0 2px 8px #1018280f}.switch-pop-head{border-bottom:1px solid #f2f3f6;flex-direction:column;gap:2px;padding:12px 13px 9px;display:flex}.switch-pop-head strong{color:var(--text);font-size:13.5px;font-weight:600}.switch-pop-head span{color:var(--muted);font-size:11px}.switch-search{border:1px solid var(--border);background:var(--surface-soft);width:calc(100% - 20px);color:var(--text);border-radius:8px;outline:none;margin:9px 10px 5px;padding:7px 10px;font-size:12.5px;transition:border-color .15s,box-shadow .15s,background .15s;display:block}.switch-search:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px var(--primary-soft)}.switch-list{max-height:320px;padding:4px 6px;overflow-y:auto}.switch-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:9px;padding:7px 8px;transition:background .14s;display:flex}.switch-item:hover:not(:disabled){background:#f6f7fa}.switch-item.current{cursor:default;background:#f8f9ff}.switch-item:disabled{cursor:wait;opacity:.6}.switch-avatar{background:var(--primary-soft);width:26px;height:26px;color:var(--primary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11.5px;font-weight:650;display:inline-flex}.switch-name{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.switch-name strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:12.8px;font-weight:600;overflow:hidden}.switch-name span{color:var(--muted);font-size:10.5px}.switch-role{color:#55607a;background:#eef0f7;border-radius:999px;flex:none;padding:1px 6px;font-size:10px;font-weight:600}.switch-role.admin{color:#4c46c9;background:#eef0ff}.switch-role.manager{color:#0369a1;background:#e6f4ff}.switch-here{color:var(--primary);flex:none;font-size:10px;font-weight:600}.switch-tip{text-align:center;color:var(--muted);padding:18px 12px;font-size:12px}.switch-error{color:var(--danger);margin:6px 12px 0;font-size:11.5px}.switch-foot{color:var(--muted);border-top:1px solid #f2f3f6;margin:7px 13px 0;padding-top:7px;font-size:10.5px}.switch-bar{background:linear-gradient(#fffaef 0%,#fff6e5 100%);border:1px solid #f3d7a3;border-radius:10px;align-items:center;gap:10px;margin:0 0 16px;padding:9px 14px;display:flex;box-shadow:0 1px 2px #b4821e0f}.switch-bar-dot{background:#e08c1a;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #e08c1a29}.switch-bar-text{color:#8a5a12;flex:1;margin:0;font-size:12.5px}.switch-bar-text strong{font-weight:700}.switch-bar-text i{color:#ad7a2c;margin-left:8px;font-size:11.5px;font-style:normal}.msg-empty{text-align:center;color:var(--muted);padding:26px 12px;font-size:12.5px}.msg-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;gap:9px;padding:9px 9px 10px;transition:background .14s;display:flex}.msg-item:hover{background:#f7f8fa}.msg-item.unread{background:#f8f9ff}.msg-item.unread:hover{background:#f1f3ff}.msg-dot{background:#d7dbe3;border-radius:50%;flex:none;width:7px;height:7px;margin-top:6px}.msg-item.unread .msg-dot{background:#ef4444;box-shadow:0 0 0 3px #ef44441f}.msg-item .msg-dot.settle{background:#0ea5a4}.msg-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.msg-title{color:var(--text);align-items:center;gap:5px;font-size:12.5px;font-weight:600;display:flex}.msg-item:not(.unread) .msg-title{color:var(--text-2);font-weight:500}.msg-new{background:#ef4444;border-radius:50%;width:6px;height:6px}.msg-text{color:var(--text-2);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.msg-time{color:var(--muted);margin-top:1px;font-size:11px}.date-rel{color:var(--text-2);cursor:help;font-family:inherit;font-size:12.5px}.reviewer-cell{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}.act-stats .stat-card{padding:13px 15px}.act-stats .stat-value{font-size:21px}.act-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:6px 18px 18px;position:relative;overflow:hidden}.act-day{padding-top:12px}.act-day-label{color:var(--text-2);align-items:center;gap:8px;margin:0 0 4px;font-size:12px;font-weight:600;display:flex}.act-day-label:after{content:"";background:linear-gradient(90deg,#eef0f4,#0000);flex:1;height:1px}.act-day-count{color:var(--muted);font-variant-numeric:tabular-nums;order:3;font-size:11px;font-weight:400}.act-list{margin:0;padding:0;list-style:none}.act-item{border-radius:9px;align-items:flex-start;gap:11px;padding:9px 8px;transition:background .14s;display:flex}.act-item:hover{background:var(--surface-soft)}.act-item.mine{background:#fbfbff}.act-item.mine:hover{background:#f6f6ff}.act-avatar{width:28px;height:28px;color:var(--text-2);background:#eef0f4;border-radius:9px;flex:none;place-items:center;margin-top:1px;font-size:12.5px;font-weight:600;display:grid}.act-avatar.tone-indigo{background:var(--primary-soft);color:var(--primary)}.act-avatar.tone-green{background:var(--green-soft);color:var(--green)}.act-avatar.tone-teal{color:#0e7490;background:#ecfeff}.act-avatar.tone-red{background:var(--danger-soft);color:var(--danger)}.act-avatar.tone-amber{background:var(--amber-soft);color:var(--amber)}.act-main{flex:1;min-width:0}.act-line{color:var(--text);flex-wrap:wrap;align-items:baseline;gap:5px;margin:0;font-size:13px;line-height:1.65;display:flex}.act-line strong{font-weight:600}.act-kind{color:var(--text-2);background:#f1f3f7;border-radius:6px;padding:1px 6px;font-size:11.5px;font-style:normal;font-weight:500}.act-kind.tone-indigo{background:var(--primary-soft);color:var(--primary)}.act-kind.tone-green{background:var(--green-soft);color:var(--green)}.act-kind.tone-teal{color:#0e7490;background:#ecfeff}.act-kind.tone-red{background:var(--danger-soft);color:var(--danger)}.act-kind.tone-amber{background:var(--amber-soft);color:var(--amber)}.act-target{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:500;overflow:hidden}.act-detail{color:var(--muted);margin:2px 0 0;font-size:11.5px;line-height:1.65}.act-change-line{background:var(--surface-soft);color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:6px;margin-top:3px;padding:2px 8px;display:block}.act-time{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;margin-top:3px;font-size:11.5px}@media (width<=640px){.act-card{padding:6px 12px 14px}.act-item{gap:8px;padding:8px 4px}}.act-avatar.tone-sky,.act-kind.tone-sky{color:#1d4ed8;background:#eff6ff}.segment-3 .segment-item{flex:1;justify-content:center}.modal-shoot{max-width:560px}.modal-merge{max-width:520px}.shoot-warn{color:#a4560b;background:#fff8ee;border:1px solid #f4d7b0;border-radius:8px;margin:2px 0 0;padding:6px 9px;font-size:11.5px;line-height:1.6}.shoot-warn.soft{color:#8a6a3a;background:#fdfaf4;border-color:#f0e3cd}.modal-note{max-width:460px}.sched-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:12px 16px;display:flex}.sched-range{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.sched-range strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:16px;font-weight:650}.sched-total{background:var(--primary-soft);color:var(--primary);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:500}.cal-legend{color:var(--muted);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.sched-actions{flex-wrap:wrap;gap:7px;display:flex}.cal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.cal-grid{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.cal-day{background:var(--surface);border-bottom:1px solid #eef0f4;border-right:1px solid #eef0f4;flex-direction:column;min-height:396px;display:flex}.cal-day:nth-child(5n){border-right:0}.cal-day:nth-last-child(-n+5){border-bottom:0}.cal-day.weekend{background:#fffdf8}.cal-day.today{background:#f7f8ff;box-shadow:inset 0 0 0 2px #dcd9fb}.cal-day-head{border-bottom:1px solid #f1f2f6;align-items:center;gap:7px;padding:12px 12px 10px;display:flex}.cal-daynum{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.2px;font-size:16.5px;font-weight:700}.cal-day.today .cal-daynum{color:var(--primary)}.cal-wd{color:var(--text-2);letter-spacing:.3px;background:#f1f2f7;border-radius:999px;padding:2px 8px;font-size:12.5px;font-weight:650;line-height:1.5}.cal-day.weekend .cal-wd{color:#b45309;background:#fdf0dd}.cal-day.today .cal-wd{background:var(--primary-soft);color:var(--primary)}.cal-today{background:var(--primary);color:#fff;border-radius:999px;margin-left:0;padding:1px 7px;font-size:10.5px;font-style:normal;font-weight:600;line-height:1.7}.cal-day-head{position:relative}.cal-fullday{height:20px;color:var(--primary);white-space:nowrap;cursor:pointer;opacity:0;pointer-events:none;background:#fff;border:1px solid #dedbfb;border-radius:999px;align-items:center;gap:1px;padding:0 7px 0 5px;font-family:inherit;font-size:10px;font-weight:700;line-height:1;transition:opacity .14s,transform .14s,background .14s,color .14s,border-color .14s;display:inline-flex;position:absolute;top:50%;right:9px;transform:translateY(-50%)scale(.92);box-shadow:0 1px 3px #1018281a}.cal-fullday i{margin-top:-1px;font-size:11px;font-style:normal;line-height:1}.cal-day:hover .cal-fullday,.cal-fullday:focus-visible{opacity:1;pointer-events:auto;transform:translateY(-50%)scale(1)}.cal-fullday:hover{background:var(--primary);border-color:var(--primary);color:#fff}.cal-fullday:active{transform:translateY(-50%)scale(.96)}@media (width<=900px){.cal-fullday{opacity:1;pointer-events:auto;transform:translateY(-50%)scale(1)}}.cal-slots{flex-direction:column;flex:1;gap:8px;padding:10px 10px 12px;display:flex}.cal-slot{text-align:left;min-height:106px;font:inherit;cursor:pointer;background:#fafbfd;border:1px solid #0000;border-radius:10px;flex-direction:column;flex:auto;gap:5px;padding:8px 9px;transition:background .13s,border-color .13s;display:flex;overflow:hidden}.cal-slot:hover{background:#f2f3f9;border-color:#e2e0fb}.cal-slot.filled{background:#f7f8ff;border-color:#e9e7fc}.cal-slot.filled:hover{background:#f0f0ff;border-color:#d9d5fa}.cal-slot.is-red{background:#fef6f6;border-color:#f9dede}.cal-shot-head{align-items:center;gap:3px;min-width:0;display:flex}.cal-shot-head .cal-chip{flex:auto;min-width:22px}.cal-flags{flex:none;align-items:center;gap:2px;max-width:62%;display:flex;overflow:hidden}.cal-flag{white-space:nowrap;text-overflow:ellipsis;border:1px solid #0000;border-radius:4px;max-width:52px;padding:0 3px;font-size:9.5px;font-style:normal;line-height:1.5;overflow:hidden}.cal-flag.tbd{color:#b45309;background:#fff7e6;border-color:#f3e2be}.cal-flag.travel{color:#1d4ed8;background:#eef4ff;border-color:#d8e3fb}.cal-flag.nohanxiao{color:#6b7280;background:#f3f4f6;border-color:#e3e5ea}.cal-slot.is-red:hover{background:#fdeeee;border-color:#f6cccc}.cal-slot-top{align-items:center;gap:5px;display:flex}.cal-slot-label{color:var(--muted);letter-spacing:.4px;flex:1;align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.cal-slot.is-red .cal-slot-label{color:#b91c1c}.cal-slot-body{flex-wrap:wrap;align-items:stretch;gap:6px;min-width:0;display:flex}.cal-shot-mini{border:1px solid #e9e7fc;border-left:3px solid var(--primary);background:#fff;border-radius:7px;flex-direction:column;flex:1 1 0;justify-content:center;gap:1px;min-width:76px;padding:4px 7px;display:flex;overflow:hidden}.cal-slot.is-red .cal-shot-mini{border-color:#f7d9d9 #f7d9d9 #f7d9d9 #dc6262}.cal-slot .cal-shot-mini.tbd{background:#fffaf0;border-color:#f3e2be #f3e2be #f3e2be #e0a437}.cal-slot .cal-shot-mini.tbd .cal-slot-type{color:#b45309}.cal-slot .cal-shot-mini.tbd .cal-slot-who em,.cal-slot .cal-shot-mini.tbd .cal-slot-equip em{color:#b98a3c}.cal-chip{max-width:100%;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;display:block;overflow:hidden}.cal-slot-type{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.cal-slot.is-red .cal-slot-type{color:#b91c1c}.cal-more{background:var(--primary-soft);color:var(--primary);border-radius:999px;flex:none;padding:0 6px;font-size:10px;font-style:normal;font-weight:700;line-height:1.7}.cal-slot-add{color:#c9cdd6;opacity:0;font-size:11.5px;transition:opacity .13s,color .13s}.cal-slot:hover .cal-slot-add{opacity:1;color:var(--primary)}@media (width<=1280px){.cal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cal-day{border-bottom:1px solid #eef0f4;border-right:1px solid #eef0f4;min-height:356px}.cal-day:nth-child(5n){border-right:1px solid #eef0f4}.cal-day:nth-child(3n){border-right:0}.cal-day:nth-last-child(-n+5){border-bottom:1px solid #eef0f4}.cal-day:nth-last-child(-n+3){border-bottom:0}}@media (width<=820px){.cal-grid{grid-template-columns:1fr}.cal-day{border-bottom:1px solid #eef0f4!important;border-right:0!important}.cal-day:last-child{border-bottom:0!important}}.shoot-list{flex-direction:column;gap:8px;max-height:46vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.shoot-item{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;align-items:flex-start;gap:10px;padding:11px 13px;display:flex}.shoot-item-main{flex:1;min-width:0}.shoot-item-title{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.shoot-item-title strong{font-size:13.5px;font-weight:600}.shoot-eq{color:var(--muted);font-size:11px}.shoot-tag{white-space:nowrap;border:1px solid #0000;border-radius:5px;padding:1px 5px;font-size:10.5px}.shoot-tag.tbd{color:#b45309;background:#fff7e6;border-color:#f3e2be}.shoot-tag.travel{color:#1d4ed8;background:#eef4ff;border-color:#d8e3fb}.shoot-tag.nohanxiao{color:#6b7280;background:#f3f4f6;border-color:#e3e5ea}.shoot-fullday-hint{background:var(--primary-soft);color:var(--text-2);border:1px solid #dcd9fb;border-radius:9px;margin:0;padding:8px 11px;font-size:12.5px;line-height:1.65}.shoot-fullday-hint strong{color:var(--primary)}.shoot-item-meta{color:var(--text-2);margin:3px 0 0;font-size:12px}.shoot-item-actions{flex:none;gap:8px;display:flex}.sched-red-dot{background:#ef4444;border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 0 0 3px #ef444424}.shoot-mark-row{background:var(--surface-soft);border-bottom:1px solid #f2f3f6;justify-content:space-between;align-items:center;gap:12px;padding:9px 24px;display:flex}.shoot-mark-row.on{background:#fef4f4;border-bottom-color:#fbdcdc}.shoot-mark-text{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:7px;font-size:12.5px;display:inline-flex}.shoot-mark-row.on .shoot-mark-text{color:#b91c1c;font-weight:600}.shoot-mark-text em{color:var(--muted);font-size:11.5px;font-style:normal;font-weight:400}.shoot-mark-state{color:var(--muted);flex:none;font-size:11.5px}.shoot-mark-state.on{color:#b91c1c;font-weight:600}.cal-slot-who,.cal-slot-equip{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;line-height:1.5;display:block;overflow:hidden}.cal-slot-who em,.cal-slot-equip em{color:#9aa1ad;margin-right:3px;font-size:9.5px;font-style:normal}.cal-slot-equip{color:var(--muted);font-size:10px}.docs-page{flex-direction:column;gap:14px;display:flex}.docs-head{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;display:flex}.docs-tabs{flex-wrap:wrap;gap:6px;display:flex}.docs-tab{border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:8px 14px;font-size:13.5px;font-weight:550;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.docs-tab:hover{color:var(--text);border-color:#d9d5fa}.docs-tab.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 6px 14px -8px #635bffe6}.docs-tab-count{color:var(--muted);background:#f0f1f6;border-radius:999px;padding:0 6px;font-size:11px;font-weight:600;line-height:1.7}.docs-tab.active .docs-tab-count{color:#fff;background:#ffffff3d}.docs-search{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;align-items:center;gap:6px;min-width:240px;height:36px;margin-left:auto;padding:0 10px;display:flex}.docs-search-icon{color:var(--muted);font-size:14px}.docs-search input{min-width:0;font:inherit;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:13px}.docs-search-clear{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:11px}.docs-body{align-items:flex-start;gap:14px;display:flex}.docs-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex:0 0 264px;position:sticky;top:0;overflow:hidden}.docs-side-head{border-bottom:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding:11px 13px;font-size:12px;display:flex}.docs-side-num{color:var(--primary);font-weight:600}.docs-list{flex-direction:column;gap:4px;max-height:calc(100vh - 300px);margin:0;padding:8px;list-style:none;display:flex;overflow-y:auto}.docs-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex-direction:column;gap:2px;padding:9px 11px;display:flex}.docs-item:hover{background:var(--surface-soft)}.docs-item.active{background:var(--primary-soft);border-color:#e0dcfb}.docs-item-title{color:var(--text);font-size:13px;font-weight:600}.docs-item.active .docs-item-title{color:var(--primary)}.docs-item-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.docs-side-empty{color:var(--muted);margin:0;padding:20px 14px;font-size:12.5px}.docs-view{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow-sm);flex:1;padding:22px 26px 30px}.docs-doc-head h2{color:var(--text);margin:0 0 5px;font-size:20px;font-weight:680}.docs-doc-sub{color:var(--muted);margin:0;font-size:12.5px}.docs-doc-meta{color:var(--muted);flex-wrap:wrap;gap:6px 14px;margin-top:9px;font-size:11.5px;display:flex}.docs-outline{background:var(--surface-soft);border-radius:10px;flex-wrap:wrap;gap:6px;margin:16px 0 4px;padding:10px 12px;display:flex}.docs-outline button{border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;padding:4px 10px;font-size:11.5px}.docs-outline button:hover{color:var(--primary);border-color:#d9d5fa}.docs-content{margin-top:6px}.doc-h{border-left:3px solid var(--primary);color:var(--text);margin:24px 0 10px;padding-left:10px;scroll-margin-top:16px;font-size:15.5px;font-weight:650}.docs-content>.doc-h:first-child{margin-top:10px}.doc-p{color:var(--text-2);margin:0 0 9px;font-size:13.5px;line-height:1.85}.doc-num{color:var(--primary);margin-right:8px;font-size:12.5px;font-weight:650}.doc-term{color:var(--text);margin-right:5px;font-style:normal;font-weight:600}.doc-ul{margin:0 0 12px;padding-left:18px}.doc-ul li{color:var(--text-2);margin-bottom:3px;font-size:13.5px;line-height:1.85}.doc-table-wrap{border:1px solid var(--border);border-radius:10px;margin:6px 0 14px;overflow-x:auto}.doc-table{border-collapse:collapse;width:100%;font-size:12.5px}.doc-table th,.doc-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #f0f1f5;padding:8px 10px}.doc-table th{background:var(--surface-soft);color:var(--text);font-weight:650}.doc-table tr:last-child td{border-bottom:0}.docs-empty{text-align:center;padding:64px 20px}.docs-empty-icon{color:#d7dae2;font-size:34px}.docs-empty h3{color:var(--text);margin:12px 0 6px;font-size:15px}.docs-empty p{max-width:430px;color:var(--muted);margin:0 auto;font-size:12.5px;line-height:1.7}@media (width<=1024px){.docs-body{flex-direction:column}.docs-side{flex:auto;width:100%;position:static}.docs-list{max-height:260px}.docs-search{width:100%;margin-left:0}}.photo-switch{border:1px solid var(--border);background:var(--surface);color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:3px 10px 3px 4px;font-size:12px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.photo-switch-track{background:#e3e5ec;border-radius:999px;width:28px;height:16px;transition:background .15s;position:relative}.photo-switch-track i{background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0f172a2e}.photo-switch.on{color:var(--primary);background:var(--primary-soft);border-color:#ded9fb}.photo-switch.on .photo-switch-track{background:var(--primary)}.photo-switch.on .photo-switch-track i{transform:translate(12px)}.photo-switch:disabled{opacity:.6;cursor:default}.rpt-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;display:flex}.rpt-range{align-items:center;gap:8px;display:flex}.rpt-range-label{color:var(--muted);font-size:12.5px}.rpt-range-sep{color:var(--muted);font-size:12px}.rpt-bar-right{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.rpt-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.rpt-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:3px;padding:11px 14px;display:flex}.rpt-stat span{color:var(--muted);font-size:11.5px}.rpt-stat b{color:var(--primary);font-variant-numeric:tabular-nums;font-size:19px;font-weight:700}.rpt-stat b.rpt-stat-text{color:var(--text)}.rpt-stat-text{line-height:1.6;font-size:14px!important}.rpt-day{margin-top:18px}.rpt-day-head{border-bottom:1px dashed var(--border);flex-direction:column;gap:7px;margin-bottom:10px;padding:0 4px 8px;display:flex}.rpt-day-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.rpt-day-types{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rpt-day-types-label{color:var(--muted);letter-spacing:.3px;font-size:11px}.rpt-day-date{color:var(--text);align-items:baseline;gap:8px;font-size:15.5px;font-weight:680;display:inline-flex}.rpt-day-date i{color:var(--muted);font-size:12px;font-style:normal;font-weight:500}.rpt-today{background:var(--primary);color:#fff;border-radius:999px;padding:1px 7px;font-size:10px;font-style:normal;font-weight:600}.rpt-day-sum{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.rpt-type-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:14px;margin-top:10px;padding:10px 14px;display:flex}.rpt-type-bar-label{color:var(--text-2);white-space:nowrap;align-items:baseline;gap:7px;font-size:12.5px;font-weight:600;display:inline-flex}.rpt-type-bar-label i{color:var(--muted);font-size:11px;font-style:normal;font-weight:400}.rpt-type-bar-chips{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.rpt-type-chip{color:#55607a;font-variant-numeric:tabular-nums;background:#eef0f7;border-radius:8px;align-items:baseline;gap:5px;padding:5px 11px;font-size:12px;line-height:1.35;display:inline-flex}.rpt-type-chip b{font-size:14.5px;font-weight:700}.rpt-type-chip .rpt-type-unit{opacity:.72;font-size:10.5px}.rpt-type-chip.sm{border-radius:7px;padding:3px 9px;font-size:11.5px}.rpt-type-chip.sm b{font-size:12.5px;font-weight:650}.rpt-type-chip.长视频{color:#4c46c9;background:#eef0ff}.rpt-type-chip.破播{color:#be123c;background:#fff1f2}.rpt-type-chip.拍摄{color:#1c7a4d;background:#eaf7f0}.rpt-type-chip.文案{color:#a5620f;background:#fdf3e6}.rpt-type-chip.zero{background:var(--surface-soft);color:#a9b0bd;box-shadow:inset 0 0 0 1px var(--border)}.rpt-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:10px;padding:14px 16px 12px}.rpt-card.mine{background:linear-gradient(180deg, #fbfaff 0%, var(--surface) 90px);border-color:#e2ddfb}.rpt-card-head{align-items:flex-start;gap:10px;display:flex}.rpt-avatar{background:var(--primary-soft);width:30px;height:30px;color:var(--primary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:650;display:inline-flex}.rpt-card-title{flex:1;min-width:0}.rpt-name{color:var(--text);align-items:center;gap:7px;font-size:13.5px;font-weight:650;display:flex}.rpt-count{background:var(--primary-soft);color:var(--primary);font-variant-numeric:tabular-nums;border-radius:999px;padding:0 7px;font-size:11px;font-weight:700}.rpt-headline{color:var(--text-2);flex-direction:column;gap:2px;margin:4px 0 0;font-size:13px;line-height:1.7;display:flex}.rpt-line{align-items:baseline;gap:6px;display:flex}.rpt-lnum{background:var(--primary-soft);min-width:16px;color:var(--primary);text-align:center;font-variant-numeric:tabular-nums;border-radius:5px;flex:none;padding:0 4px;font-size:10.5px;font-style:normal;font-weight:700;line-height:16px}.rpt-ltext{min-width:0}.rpt-ltext b{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:700}.rpt-lnum.extra{color:#a5620f;background:#fdf3e6}.rpt-line.extra .rpt-ltext{color:var(--text-2)}.rpt-extra-input{border:1px solid var(--border-strong);min-width:180px;font:inherit;color:var(--text);background:var(--surface);border-radius:7px;flex:1;padding:2px 8px;font-size:12.5px}.rpt-extra-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #4f46e51f}.rpt-extra-actions{opacity:0;gap:8px;margin-left:4px;transition:opacity .15s;display:inline-flex}.rpt-line.extra:hover .rpt-extra-actions{opacity:1}.rpt-extra-add{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;margin:2px 0 0 22px;padding:0;font-size:12px}.rpt-extra-add:hover{color:var(--primary-hover);text-decoration:underline}.rpt-headline b{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:700}.work-remark.has-shoot{white-space:normal;overflow:visible}.shoot-type-inline{color:#1c7a4d;white-space:nowrap;background:#eaf7f0;border-radius:5px;margin-left:6px;padding:1px 7px;font-size:10.5px;font-weight:600;display:inline-block}.rpt-groups{flex-wrap:wrap;gap:6px;margin-top:8px;padding-left:40px;display:flex}.rpt-tag{color:#55607a;font-variant-numeric:tabular-nums;background:#eef0f7;border-radius:7px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:500;display:inline-flex}.rpt-tag.长视频{color:#4c46c9;background:#eef0ff}.rpt-tag.破播{color:#be123c;background:#fff1f2}.rpt-tag.拍摄{color:#1c7a4d;background:#eaf7f0}.rpt-tag.文案{color:#a5620f;background:#fdf3e6}.rpt-works{background:var(--surface-soft);border-radius:9px;flex-direction:column;gap:4px;margin:10px 0 0;padding:8px 10px;list-style:none;display:flex}.rpt-works-fold{margin:10px 0 0}.rpt-works-fold>summary{background:var(--surface-soft);color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:9px;align-items:center;gap:7px;padding:7px 10px;font-size:12.5px;list-style:none;transition:background .15s;display:flex}.rpt-works-fold>summary::-webkit-details-marker{display:none}.rpt-works-fold>summary:hover{background:#f1f3f9}.rpt-works-fold>summary:before{content:"▸";color:var(--muted);font-size:10px;transition:transform .15s}.rpt-works-fold[open]>summary:before{transform:rotate(90deg)}.rpt-works-fold>summary span:first-of-type{color:var(--text);font-weight:600}.rpt-works-fold>summary em{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px;font-style:normal}.rpt-fold-hint{color:var(--muted);margin-left:auto;font-size:11px}.rpt-works-fold[open] .rpt-fold-hint{visibility:hidden}.rpt-works-fold>.rpt-works{margin-top:6px}.rpt-works li{color:var(--text-2);align-items:center;gap:8px;font-size:12.5px;display:flex}.rpt-wnum{min-width:17px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;flex:none;font-size:11.5px;font-weight:600}.rpt-wt{color:#55607a;background:#eef0f7;border-radius:5px;flex:none;padding:1px 7px;font-size:10.5px;font-weight:600}.rpt-wt.长视频{color:#4c46c9;background:#eef0ff}.rpt-wt.破播{color:#be123c;background:#fff1f2}.rpt-wt.拍摄{color:#1c7a4d;background:#eaf7f0}.rpt-wt.文案{color:#a5620f;background:#fdf3e6}.rpt-wc{color:var(--text);flex:none;font-weight:550}.rpt-wtitle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rpt-summary{border-top:1px dashed var(--border);margin-top:10px;padding:10px 0 0 40px}.rpt-summary-head{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;font-weight:600;display:flex}.rpt-summary-text{color:var(--text-2);white-space:pre-wrap;margin:6px 0 0;font-size:13px;line-height:1.85}.rpt-summary-empty{color:#a9aeb9;margin:6px 0 0;font-size:12.5px}.rpt-textarea{border:1px solid var(--border);background:var(--surface-soft);width:100%;min-height:96px;color:var(--text);font:inherit;resize:vertical;border-radius:9px;outline:none;margin-top:8px;padding:10px 12px;font-size:13px;line-height:1.75}.rpt-textarea:focus{background:var(--surface);border-color:#c9c4f8;box-shadow:0 0 0 3px #635bff1a}.rpt-summary-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:8px;display:flex}.rpt-summary-len{color:var(--muted);font-variant-numeric:tabular-nums;margin-right:auto;font-size:11px}.rpt-empty{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:56px 20px}.rpt-empty-icon{color:#d7dae2;font-size:32px}.rpt-empty h3{color:var(--text);margin:10px 0 6px;font-size:15px}.rpt-empty p{color:var(--muted);margin:0;font-size:12.5px}@media (width<=900px){.rpt-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.rpt-bar-right{width:100%;margin-left:0}.rpt-type-bar{flex-direction:column;align-items:flex-start;gap:8px}.rpt-day-top{flex-wrap:wrap;gap:4px 10px}}.pr-1{--pbg:#fdf1f0;--pfg:#a92c20;--pbd:#f6d6d2;--pdot:#dd5d4e}.pr-2{--pbg:#fdf4ec;--pfg:#a85411;--pbd:#f6ddc9;--pdot:#e2833c}.pr-3{--pbg:#fdf7e6;--pfg:#86610a;--pbd:#f2e4bd;--pdot:#cfa020}.pr-4{--pbg:#f7f9e8;--pfg:#5d6d12;--pbd:#e5eac3;--pdot:#98a92c}.pr-5{--pbg:#eef8f1;--pfg:#1b7a48;--pbd:#cfe9da;--pdot:#33a066}.pr-6{--pbg:#ebf7f4;--pfg:#0e736b;--pbd:#c9ebe4;--pdot:#17a396}.pr-7{--pbg:#eef5fc;--pfg:#155e9e;--pbd:#d3e4f6;--pdot:#3589cf}.pr-8{--pbg:#eef1fb;--pfg:#2c4ba8;--pbd:#d8dff6;--pdot:#4e6fd0}.pr-9{--pbg:#f3effc;--pfg:#5638b8;--pbd:#e2dafa;--pdot:#7a5ede}.pr-10{--pbg:#f4f6f9;--pfg:#556179;--pbd:#e3e8ef;--pdot:#9aa7b8}.kb-bar{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:11px 16px;display:flex}.kb-bar-title{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.kb-bar-title strong{letter-spacing:-.01em;color:var(--text);font-size:14.5px;font-weight:650}.kb-legend{align-items:center;gap:6px;display:inline-flex}.kb-ramp{background:linear-gradient(90deg,#dd5d4e 0%,#e2833c 13%,#cfa020 27%,#98a92c 39%,#33a066 53%,#17a396 64%,#3589cf 75%,#4e6fd0 85%,#7a5ede 94%,#9aa7b8 100%);border-radius:999px;width:92px;height:7px;box-shadow:inset 0 0 0 1px #10182812}.kb-legend-tip{color:var(--muted);font-size:11px;font-style:normal}.kb-legend-tip:before{content:"·";margin-right:5px}.kb-bar-actions{align-items:center;gap:10px;display:flex}.kb-views{border:1px solid var(--border);background:#f4f5f9;border-radius:9px;gap:2px;padding:2px;display:inline-flex}.kb-view{height:24px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 11px;font-size:11.5px;font-weight:600;transition:background .13s,color .13s,box-shadow .13s;position:relative}.kb-view:hover{color:var(--text)}.kb-view.on{color:var(--text);background:#fff;box-shadow:0 1px 2px #10182824}.kb-view-badge{color:#6b7280;font-variant-numeric:tabular-nums;background:#e9ebf2;border-radius:999px;margin-left:4px;padding:0 4px;font-size:9.5px;font-style:normal;font-weight:700}.kb-view.on .kb-view-badge{background:var(--primary-soft);color:var(--primary)}.kb-total{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.kb-board{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:14px;margin-top:14px;display:grid}.kb-col{--col-accent:#94a3b8;--col-tint:#f5f6f9;border:1px solid var(--border);background:var(--surface);border-radius:16px;flex-direction:column;min-height:440px;transition:background .15s,box-shadow .15s;display:flex;overflow:hidden;box-shadow:0 1px 2px #1018280a}.kb-col.col-pool{--col-accent:#8b7ce8;--col-tint:#f7f4ff}.kb-col.col-todo{--col-accent:#dd9a08;--col-tint:#fffaef}.kb-col.col-doing{--col-accent:#3b82f6;--col-tint:#f1f8ff}.kb-col.col-done{--col-accent:#22a06b;--col-tint:#f3faf6}.kb-col.drag-over{background:var(--col-tint);outline:2px dashed var(--col-accent);outline-offset:-3px}.kb-col-head{background:linear-gradient(180deg, var(--col-tint), #fff);border-bottom:1px solid #f1f2f5;align-items:center;gap:9px;padding:13px 13px 11px;display:flex;position:relative}.kb-col-head:before{content:"";background:var(--col-accent);height:3px;position:absolute;top:0;left:0;right:0}.kb-col-dot{background:var(--col-accent);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #ffffffe6}.kb-col-title{flex:1;min-width:0}.kb-col-title strong{color:var(--text);font-size:13.5px;font-weight:650;display:block}.kb-col-title em{color:var(--muted);font-size:10.5px;font-style:normal}.kb-col-count{border:1px solid var(--border);min-width:22px;height:20px;color:var(--col-accent);font-variant-numeric:tabular-nums;background:#fff;border-radius:999px;place-items:center;padding:0 7px;font-size:11px;font-weight:700;display:grid}.kb-col-body{flex-direction:column;flex:1;gap:9px;padding:10px;display:flex}.kb-note{--note-bg1:#fffdf4;--note-bg2:#fdf4d7;--note-bd:#f1e3b0;--note-fg:#4a4632;--note-accent:#dd9a08;--note-sh:#785c1438;border:1px solid var(--note-bd);border-left:3px solid var(--note-accent);background:linear-gradient(180deg, var(--note-bg1), var(--note-bg2));cursor:grab;border-radius:10px;padding:9px 11px 10px;transition:transform .14s,box-shadow .14s;position:relative;box-shadow:0 1px 2px #1018280d}.kb-note.col-pool{--note-bg1:#fbf9ff;--note-bg2:#f1ecfe;--note-bd:#e2d8fb;--note-fg:#3f3860;--note-accent:#8b7ce8;--note-sh:#5c46a047}.kb-note.col-todo{--note-bg1:#fffdf4;--note-bg2:#fdf3d3;--note-bd:#f1e3b0;--note-fg:#4a4632;--note-accent:#dd9a08;--note-sh:#96741442}.kb-note.col-doing{--note-bg1:#f8fcff;--note-bg2:#e6f1fd;--note-bd:#c8dff8;--note-fg:#22405e;--note-accent:#3b82f6;--note-sh:#2364aa47}.kb-note.col-done{--note-bg1:#f8fdfa;--note-bg2:#e8f6ee;--note-bd:#cbe6d8;--note-fg:#456556;--note-accent:#22a06b;--note-sh:#146e4642}.kb-note:hover{box-shadow:0 8px 18px -8px var(--note-sh);transform:translateY(-1px)}.kb-note.dragging{opacity:.5;transform:rotate(-1deg)scale(.99)}.kb-note-head{align-items:center;gap:6px;margin-bottom:6px;display:flex}.kb-note-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:3px 4px;min-width:0;margin-left:auto;display:flex}.kb-pri{border:1px solid var(--pbd,#e3e8ef);background:var(--pbg,#f4f6f9);height:19px;color:var(--pfg,#556179);font:inherit;letter-spacing:.3px;font-variant-numeric:tabular-nums;box-shadow:none;cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:0 7px 0 6px;font-size:10px;font-weight:700;transition:border-color .12s,background .12s;display:inline-flex}.kb-pri:before{content:"";background:var(--pdot,#9aa7b8);border-radius:50%;width:5px;height:5px}.kb-pri:hover{border-color:var(--pdot,#9aa7b8);background:#fff}.kb-due{border:1px solid var(--note-bd);height:18px;color:var(--note-fg);white-space:nowrap;font-variant-numeric:tabular-nums;background:#ffffffc7;border-radius:999px;align-items:center;gap:3px;padding:0 6px 0 5px;font-size:10.5px;font-weight:600;display:inline-flex}.kb-due svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;opacity:.85;width:10px;height:10px}.kb-due.today{color:#b3521c;background:#fff6f0;border-color:#f2c4ae}.kb-due.late{color:#b02a1d;background:#fdf0ef;border-color:#f3c1c0}.kb-slot{border:1px solid var(--note-bd);height:18px;color:var(--note-fg);white-space:nowrap;background:#ffffffc7;border-radius:999px;align-items:center;gap:3px;padding:0 7px 0 6px;font-size:10.5px;font-weight:600;display:inline-flex}.kb-slot svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;opacity:.9;width:11px;height:11px}.kb-slot.s-am svg{color:#d97706}.kb-slot.s-pm svg{color:#ea580c}.kb-slot.s-eve svg{color:#6366f1}.kb-note-title{color:var(--note-fg);word-break:break-word;margin:0;font-size:12.8px;font-weight:540;line-height:1.55}.kb-done-check{color:#13915f;margin-right:4px;font-style:normal;font-weight:700;display:inline-block}.kb-note.from-shoot{--note-accent:#2f7d68}.kb-src{color:#226b58;vertical-align:1px;white-space:nowrap;background:#2f7d681a;border:1px solid #2f7d6847;border-radius:4px;margin-right:4px;padding:0 4px;font-size:9.5px;font-style:normal;font-weight:700;line-height:1.5;display:inline-block}.kb-flags{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.kb-flag{white-space:nowrap;border:1px solid #0000;border-radius:4px;padding:0 5px;font-size:9.5px;font-style:normal;line-height:1.6}.kb-flag.tbd{color:#b45309;background:#fff7e6;border-color:#f3e2be}.kb-flag.travel{color:#1d4ed8;background:#eef4ff;border-color:#d8e3fb}.kb-flag.readonly{color:var(--note-fg);opacity:.75;background:#1018280f;border-color:#10182814}.kb-owner{max-width:64px;color:var(--note-fg);white-space:nowrap;text-overflow:ellipsis;background:#10182812;border-radius:999px;padding:0 5px;font-size:9.5px;font-weight:600;overflow:hidden}.kb-cal-item.shoot{border-left:2px solid #2f7d68}.kb-note.merging{cursor:pointer;position:relative}.kb-note.merging .kb-note-actions{display:none}.kb-note.merging:hover{border-color:var(--primary)}.kb-note.merging .kb-note-meta{margin-right:24px}.kb-note.checked{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft), var(--note-sh,0 6px 16px -10px #1018284d)}.kb-note-check{color:#fff;pointer-events:none;background:#fff;border:1.5px solid #cfd4de;border-radius:999px;place-items:center;width:17px;height:17px;font-size:10.5px;font-style:normal;font-weight:800;line-height:1;display:grid;position:absolute;top:7px;right:7px}.kb-note.merging:hover .kb-note-check{border-color:var(--primary)}.kb-note-check.on{border-color:var(--primary);background:var(--primary)}.kb-merge-bar{z-index:5;background:#fff;border:1px solid #dedbfb;border-radius:12px;justify-content:flex-end;align-items:center;gap:8px;margin-top:14px;padding:10px 14px;display:flex;position:sticky;bottom:12px;box-shadow:0 12px 30px -14px #10182866}.kb-merge-info{color:var(--text-2);align-items:baseline;gap:5px;margin-right:auto;font-size:12.5px;display:flex}.kb-merge-info strong{color:var(--primary);font-size:14px}.kb-merge-info em{color:var(--muted);font-size:11px;font-style:normal}.kb-merge-list{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.kb-merge-list li{border:1px solid var(--border);background:#fcfcfd;border-radius:9px;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;display:flex}.kb-merge-list li span{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.kb-merge-list li em{color:var(--muted);flex:none;font-size:11px;font-style:normal}.kb-merge-rule{background:var(--primary-soft);color:var(--text-2);border-radius:9px;margin:12px 0 0;padding:8px 11px;font-size:12px;line-height:1.7}.kb-merge-rule strong{color:var(--primary)}.kb-folder{background:linear-gradient(#faf9ff 0%,#f7f6fd 100%);border:1px dashed #cfcbf3;border-radius:13px;flex-direction:column;gap:6px;padding:7px 7px 8px;display:flex}.kb-folder-head{cursor:grab;-webkit-user-select:none;user-select:none;border-bottom:1px dashed #e2dffa;align-items:center;gap:6px;padding:3px 4px 5px;display:flex}.kb-folder-head.dragging{cursor:grabbing;opacity:.55}.kb-folder-icon{color:var(--primary);opacity:.85;flex:none;font-size:11px;font-style:normal}.kb-folder-head strong{text-overflow:ellipsis;white-space:nowrap;color:#4a3fa8;flex:auto;min-width:0;font-size:12px;font-weight:700;overflow:hidden}.kb-folder-count{color:var(--primary);font-variant-numeric:tabular-nums;background:#ece9fd;border-radius:999px;flex:none;padding:0 6px;font-size:10px;font-weight:700;line-height:16px}.kb-folder-btn{color:var(--text-2);font:inherit;cursor:pointer;background:#fff;border:1px solid #dedbfb;border-radius:999px;flex:none;padding:1px 7px;font-size:10px;line-height:16px;transition:border-color .13s,color .13s}.kb-folder-btn:hover{color:#b91c1c;border-color:#dc6262}.kb-folder-body{flex-direction:column;gap:6px;display:flex}.kb-note.in-folder{box-shadow:none;border-style:solid}.kb-note.in-folder .kb-note-actions{background:#fffffff5}.kb-note-actions{border:1px solid var(--note-bd);opacity:0;pointer-events:none;background:#fffffff2;border-radius:8px;gap:1px;padding:2px;transition:opacity .13s,transform .13s;display:flex;position:absolute;bottom:6px;right:6px;transform:translateY(2px);box-shadow:0 2px 8px -2px #1018282e}.kb-note:hover .kb-note-actions,.kb-note:focus-within .kb-note-actions{opacity:1;pointer-events:auto;transform:none}.kb-icon-btn{color:#6b7280;width:20px;height:20px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;font-size:12px;line-height:1;transition:background .12s,color .12s;display:grid}.kb-icon-btn:hover{color:var(--text);background:#f1f2f6}.kb-icon-btn.danger:hover{color:#dc2626;background:#fdecea}.kb-icon-btn.locked{color:#c3c9d4}.kb-icon-btn.locked:hover{color:#c3c9d4;background:#f5f6f9}.kb-toast{z-index:90;color:#8a5a12;background:#fffaf0;border:1px solid #f0d9ab;border-radius:11px;max-width:min(520px,100vw - 40px);padding:11px 15px;font-size:12.5px;line-height:1.6;animation:.18s kb-toast-in;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 14px 34px -16px #1018286b}@keyframes kb-toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.kb-empty{text-align:center;color:var(--muted);opacity:.75;margin:0;padding:16px 0 4px;font-size:11.5px}.kb-add{width:100%;height:34px;color:var(--muted);font:inherit;cursor:pointer;background:#ffffffb3;border:1px dashed #d9dce4;border-radius:10px;justify-content:center;align-items:center;gap:3px;font-size:12px;transition:border-color .14s,color .14s,background .14s,box-shadow .14s;display:flex}.kb-add i{font-size:13px;font-style:normal;line-height:1}.kb-add:hover{border-color:var(--col-accent);color:var(--col-accent);box-shadow:0 2px 8px -4px var(--col-accent);background:#fff}.kb-note.composing{cursor:default;border-color:#dcdfe8;border-left-color:var(--note-accent);background:#fff;box-shadow:0 12px 26px -16px #10182873}.kb-edit{cursor:default}.kb-edit-input{width:100%;height:30px;color:var(--text);font:inherit;background:#fff;border:1px solid #dcdfe8;border-radius:8px;outline:none;padding:0 9px;font-size:12.5px;transition:border-color .14s,box-shadow .14s}.kb-edit-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51a}.kb-pick{flex-direction:column;gap:5px;margin-top:9px;display:flex}.kb-pick-label{color:var(--muted);align-items:baseline;gap:5px;font-size:10.5px;font-weight:600;display:flex}.kb-pick-label em{opacity:.85;font-size:10px;font-style:normal;font-weight:500}.kb-pick .dp{width:100%;display:flex}.kb-pick .dp-trigger{border-radius:7px;width:100%;height:28px;padding:0 8px;font-size:12px}.kb-pick .dp-icon{width:12px;height:12px}.kb-pri-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.kb-pri-num{border:1px solid var(--pbd,#e3e8ef);background:var(--pbg,#f4f6f9);height:24px;color:var(--pfg,#556179);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;border-radius:7px;place-items:center;font-size:10.5px;font-weight:700;transition:transform .12s,box-shadow .12s,border-color .12s;display:grid}.kb-pri-num:hover{border-color:var(--pdot,#9aa7b8);transform:translateY(-1px)}.kb-pri-num.on{border-color:var(--pdot,#9aa7b8);box-shadow:0 0 0 2px #fff, 0 0 0 3.5px var(--pdot,#9aa7b8);transform:translateY(-1px)}.kb-slot-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.kb-slot-opt{border:1px solid var(--border-strong);height:24px;color:var(--text-2);font:inherit;cursor:pointer;background:#fff;border-radius:7px;font-size:10.5px;font-weight:600;transition:border-color .12s,color .12s,background .12s,box-shadow .12s}.kb-slot-opt:hover{border-color:var(--primary);color:var(--primary)}.kb-slot-opt.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);box-shadow:0 0 0 2px #4f46e51a}.kb-edit-actions{justify-content:flex-end;gap:6px;margin-top:10px;display:flex}.kb-cal{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;margin-top:14px;padding:14px 16px 12px}.kb-cal-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.kb-cal-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kb-cal-arrow{border:1px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--text-2);font:inherit;cursor:pointer;border-radius:8px;place-items:center;font-size:15px;line-height:1;transition:border-color .13s,color .13s,background .13s;display:grid}.kb-cal-arrow:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.kb-cal-range{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.kb-cal-range strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.kb-cal-range span{color:var(--muted);font-size:11.5px}.kb-cal-today{border:1px solid var(--border);background:var(--surface);height:26px;color:var(--text-2);font:inherit;cursor:pointer;border-radius:8px;padding:0 10px;font-size:11.5px;font-weight:600;transition:border-color .13s,color .13s,opacity .13s}.kb-cal-today:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.kb-cal-today:disabled{opacity:.45;cursor:default}.kb-cal-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.kb-cal-grid{grid-template-columns:repeat(auto-fill,minmax(292px,1fr));gap:12px;display:grid}.kb-cal-cell{border:1px solid var(--border);background:#fcfcfd;border-radius:12px;flex-direction:column;gap:9px;min-height:208px;padding:11px 12px 12px;transition:border-color .13s,background .13s,box-shadow .13s;display:flex}.kb-cal-cell:hover{border-color:var(--border-strong);background:#fff}.kb-cal-cell.weekend{background:#fbfafc}.kb-cal-cell.today{background:#faf9ff;border-color:#c7c2f5;box-shadow:0 6px 18px -12px #4f46e5e6}.kb-cal-dayhead{border-bottom:1px solid #eceff5;align-items:center;gap:7px;padding-bottom:8px;display:flex}.kb-cal-date{letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;font-size:14.5px;font-weight:700}.kb-cal-wd{color:#4a5568;letter-spacing:.02em;background:#eef1f7;border-radius:6px;padding:1px 7px;font-size:12px;font-weight:700}.kb-cal-cell.weekend .kb-cal-wd{color:#b0563c;background:#fdeee9}.kb-cal-cell.today .kb-cal-date{color:var(--primary)}.kb-cal-cell.today .kb-cal-wd{background:var(--primary);color:#fff}.kb-cal-today-tag{background:var(--primary-soft);color:var(--primary);border-radius:999px;margin-left:auto;padding:0 6px;font-size:10px;font-style:normal;font-weight:700;line-height:16px}.kb-cal-slot-side{flex-direction:column;align-items:center;gap:4px;padding-top:1px;display:flex}.kb-cal-add{width:20px;height:20px;color:var(--primary);cursor:pointer;opacity:0;background:#fff;border:1px dashed #cfcbf3;border-radius:6px;place-items:center;padding:0;font-family:inherit;font-size:12px;font-weight:700;line-height:1;transition:opacity .13s,background .13s,color .13s,border-color .13s;display:grid}.kb-cal-slot:hover .kb-cal-add,.kb-cal-slot-side:hover .kb-cal-add,.kb-cal-add:focus-visible{opacity:1}.kb-cal-add:hover{background:var(--primary);border-style:solid;border-color:var(--primary);color:#fff}@media (width<=900px){.kb-cal-add{opacity:1}}.kb-cal-compose{background:#fff;border:1px solid #ddd9fb;border-radius:10px;flex-direction:column;gap:7px;padding:9px 10px 10px;display:flex;box-shadow:0 10px 24px -18px #4f46e5f2}.kb-cal-compose-input{border:1px solid var(--border);width:100%;height:30px;color:var(--text);background:#fff;border-radius:8px;padding:0 9px;font-family:inherit;font-size:12.5px}.kb-cal-compose-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.kb-cal-compose-row{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.kb-cal-compose-label{color:var(--text-2);margin-right:2px;font-size:10.5px}.kb-cal-opt{border:1px solid var(--border);color:var(--text-2);cursor:pointer;background:#fff;border-radius:999px;padding:1px 7px;font-family:inherit;font-size:10.5px;line-height:1.6}.kb-cal-opt:hover{border-color:var(--border-strong);color:var(--text)}.kb-cal-opt.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:700}.kb-cal-pri{border:1px solid var(--pbd,#e3e8ef);background:var(--pbg,#f4f6f9);width:17px;height:17px;color:var(--pfg,#556179);cursor:pointer;opacity:.55;border-radius:5px;place-items:center;padding:0;font-family:inherit;font-size:9px;font-weight:700;line-height:1;transition:opacity .12s,box-shadow .12s;display:grid}.kb-cal-pri:hover{opacity:.85}.kb-cal-pri.on{opacity:1;box-shadow:inset 0 0 0 1.5px var(--pdot,var(--primary))}.kb-cal-compose-err{color:#b02a1d;margin:0;font-size:11px}.kb-cal-compose-actions{justify-content:flex-end;gap:6px;display:flex}.kb-cal-slots{flex-direction:column;flex:auto;gap:7px;display:flex}.kb-cal-slot{border-top:1px dashed #eceff5;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:6px;padding:4px 0 5px;display:grid;position:relative}.kb-cal-slot:first-child{border-top:0;padding-top:0}.kb-cal-slot-label{letter-spacing:.02em;color:#9aa3b2;padding-top:0;font-size:10px;font-weight:700}.kb-cal-slot.am .kb-cal-slot-label{color:#b8842a}.kb-cal-slot.pm .kb-cal-slot-label{color:#c2703c}.kb-cal-slot.eve .kb-cal-slot-label{color:#6d6bc0}.kb-cal-slot-body{flex-direction:column;gap:4px;min-height:26px;display:flex}.kb-cal-item{width:100%;color:var(--text-2);font:inherit;text-align:left;cursor:pointer;background:#f2f4f9;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:5px 7px;font-size:11.5px;transition:border-color .12s,background .12s;display:flex}.kb-cal-del{color:#b8bfcc;cursor:pointer;opacity:0;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;width:17px;height:17px;padding:0;font-family:inherit;font-size:10px;line-height:1;transition:opacity .12s,background .12s,color .12s;display:grid}.kb-cal-item:hover .kb-cal-del,.kb-cal-del:focus-visible{opacity:1}.kb-cal-del:hover{color:#c0392b;background:#fdecec}.modal-foot-left{margin-right:auto}@media (width<=900px){.kb-cal-del{opacity:1}}.kb-cal-item span{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.kb-cal-item:hover{border-color:var(--border-strong);background:#fff}.kb-cal-item.done{opacity:.62}.kb-cal-item.done span{text-decoration:line-through}.kb-cal-dot{background:var(--pdot,#9aa7b8);border-radius:50%;flex:none;width:7px;height:7px}.kb-cal-more{color:var(--muted);padding-left:7px;font-size:10px}.kb-cal-foot{color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.7}@media (width<=1180px){.kb-board{grid-template-columns:repeat(2,minmax(0,1fr))}.kb-col{min-height:280px}.kb-cal-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr))}}@media (width<=680px){.kb-board{grid-template-columns:1fr}.kb-cal{padding:11px 10px 10px}.kb-cal-grid{grid-template-columns:1fr}.kb-cal-cell{min-height:178px}.kb-cal-date{font-size:13.5px}.kb-cal-wd{font-size:11.5px}}.work-status-tabs{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:linear-gradient(#fcfcff,#f4f5fa);border-radius:14px;flex-wrap:wrap;gap:8px;margin:4px 0 14px;padding:8px;display:flex}.status-tab{background:var(--tab-soft,var(--primary-soft));color:var(--tab-color,var(--primary));font:inherit;letter-spacing:.01em;cursor:pointer;border:1px solid #0000;border-radius:10px;flex:110px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:13.5px;font-weight:600;transition:background .16s,color .16s,box-shadow .16s,transform .16s,filter .16s;display:inline-flex}.status-tab-count{min-width:22px;height:19px;color:inherit;font-variant-numeric:tabular-nums;letter-spacing:0;background:#ffffffc7;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:11.5px;font-weight:700;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffffd9}.status-tab.active .status-tab-count{color:var(--tab-color,var(--primary));box-shadow:none;background:#fff}.status-tab-count.is-zero{opacity:.55;font-weight:600}.status-tab:before{content:"";opacity:.6;background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.status-tab:hover{filter:brightness(.96);transform:translateY(-1px)}.status-tab.active{background:var(--tab-color,var(--primary));color:#fff;box-shadow:0 10px 20px -10px var(--tab-color,var(--primary)), inset 0 1px 0 #fff3;font-weight:700;transform:none}.status-tab.active:before{opacity:.9;background:#fff}.status-tab.s-pending{--tab-color:#b45309;--tab-soft:#fef3c7}.status-tab.s-reviewing{--tab-color:#0369a1;--tab-soft:#e0f2fe}.status-tab.s-passed{--tab-color:#047857;--tab-soft:#d1fae5}.status-tab.s-settled{--tab-color:#475569;--tab-soft:#e2e8f0}.status-tab.s-rejected{--tab-color:#b91c1c;--tab-soft:#fee2e2}.status-tab.s-all{--tab-color:#4f46e5;--tab-soft:#e0e7ff}.plan-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.field .plan-row input{text-align:center;font-variant-numeric:tabular-nums;width:92px;font-weight:600}.plan-unit{color:var(--text-2);font-size:12.5px}.detail-hint{color:var(--muted);margin:6px 0 0;font-size:12px}.modal-pub{max-width:540px}.pub-body{flex-direction:column;gap:16px;padding:18px 24px 20px;display:flex}.pub-cust{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.pub-cust-name{font-size:14px;font-weight:600}.pub-cust-total{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.pub-fields{grid-template-columns:1fr 1fr;gap:14px 16px;display:grid}.pub-after{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.pub-after b{color:var(--text);font-size:13px}.pub-hint{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.pub-done-head{color:#0b6b64;align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.pub-done-icon{color:#fff;background:#0f766e;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;line-height:1;display:grid}.pub-script{color:var(--text);white-space:pre-wrap;word-break:break-word;-webkit-user-select:all;user-select:all;cursor:text;background:#f7f8ff;border:1px dashed #c7cdf0;border-radius:10px;padding:13px 15px;font-size:13.5px;line-height:1.75}.pub-script:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.pub-fields .count-stepper{align-self:flex-start}.cc-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.cc-stat{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:5px;padding:10px 11px;display:flex}.cc-stat.cc-main{background:linear-gradient(#f7f8ff 0%,#eff1fd 100%);border-color:#dfe3f5}.cc-stat.cc-rest{background:#fffdf6;border-color:#f0e3c8}.cc-stat.cc-over{background:#fff7f7;border-color:#f4d4d4}.cc-label{color:var(--muted);letter-spacing:.02em;font-size:11.5px;font-weight:600}.cc-pair{align-items:baseline;gap:10px;display:inline-flex}.cc-num{align-items:baseline;gap:3px;display:inline-flex}.cc-num i{color:var(--muted);font-size:11px;font-style:normal;font-weight:600}.cc-num b{color:var(--text);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700;line-height:1.25}.cc-stat.cc-main .cc-num b{color:#3d47b8}.cc-stat.cc-rest .cc-num b{color:#a16207}.cc-stat.cc-over .cc-num b{color:#b91c1c}.cc-empty{color:var(--muted);font-size:13px;font-weight:500}.cc-script{max-height:42vh;overflow:auto}.cc-gift{color:var(--text-2);background:#f7f8fb;border-radius:8px;margin:0 0 12px;padding:7px 11px;font-size:12px;line-height:1.6}.cc-warn{background:var(--amber-soft);color:#92400e;border-radius:8px;margin:10px 0 0;padding:8px 11px;font-size:12.5px;line-height:1.6}.cust-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:14px}.cust-stats .stat-card{background:linear-gradient(#fff 0%,#fcfcfe 100%);border-radius:14px;padding:13px 16px 14px}.cust-stats .stat-head{margin-bottom:8px}.cust-stats .stat-label{letter-spacing:.01em;font-size:12px}.cust-stats .stat-value{letter-spacing:-.03em;font-size:27px;font-weight:600;line-height:1.1}.cust-stats .stat-note{margin-top:2px;font-size:11px}.cust-controls{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:14px;margin-bottom:12px;padding:10px 14px 12px}.cust-controls .toolbar{box-shadow:none;background:0 0;border:0;gap:8px;margin:0;padding:0}.cust-controls .filter-bar{box-shadow:none;background:0 0;border:0;border-top:1px solid #f1f2f6;border-radius:0;gap:7px;margin:10px 0 0;padding:11px 0 0}.cust-controls .filter-bar-head{border-bottom:0;padding-bottom:0}.cust-controls .search input{background:var(--surface-soft);border-radius:9px;height:36px}.icon-text-btn{border:1px solid var(--border);background:var(--surface);height:36px;color:var(--text-2);cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:0 12px;font-size:13px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.icon-text-btn svg{width:14px;height:14px}.icon-text-btn:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.icon-text-btn:disabled{opacity:.55;cursor:default}.btn-add{border-radius:9px;align-items:center;gap:5px;height:36px;padding:0 14px;display:inline-flex}.btn-add svg{width:14px;height:14px}.cust-controls .sort-group{border-radius:9px;height:36px}.table-cust{font-size:13px}.table-cust th{letter-spacing:.02em;color:#6f7785;background:#fafbfd;padding:9px 12px;font-size:11.5px;font-weight:600}.table-cust td{border-bottom:1px solid #f2f4f8;padding:10px 12px}.table-cust .row:hover td{background:#f7f8fe}.table-cust .col-index{color:#b6bcc6;padding-right:2px;font-size:11.5px}.table-cust th.col-index{color:#9aa2b1}.th-eta{line-height:1.35}.th-sub{letter-spacing:0;color:#a9b1be;font-size:10px;font-weight:500;display:block}.table-cust .badge{height:21px;padding:0 8px;font-size:11.5px}.owner-cell{max-width:100%;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;font-size:12.5px;display:inline-block;overflow:hidden}.remark-cell{font-size:12.5px;line-height:1.55}.table-cust .eta{gap:4px}.table-cust .eta-date{font-size:12.5px}.table-cust .eta-hint{padding:0 5px;font-size:10.5px;line-height:16px}.tag-proxy{color:#4338ca;vertical-align:middle;white-space:nowrap;background:#eef2ff;border-radius:6px;align-items:center;height:18px;margin-left:6px;padding:0 6px;font-size:10.5px;font-weight:600;line-height:18px;display:inline-flex}.vpair{flex-wrap:nowrap;align-items:center;gap:5px;display:inline-flex}.vchip{white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:7px;flex:none;align-items:baseline;gap:2px;height:22px;padding:0 5px;font-size:11px;line-height:23px;display:inline-flex}.vchip i{opacity:.78;font-size:9.5px;font-style:normal;font-weight:600}.vchip b{letter-spacing:-.2px;font-size:13px;font-weight:700}.vchip em{opacity:.7;font-size:9.5px;font-style:normal;font-weight:500}.vchip.stock{color:#5b6472;background:#fff;border:1px solid #e6e9f0}.vchip.stock.video{color:#4f46e5;border-color:#e3e6f8}.vchip.stock.poboo{color:#0f766e;border-color:#dbebe6}.vchip.stock.unknown{color:#a6adba;border-style:dashed}.vchip.gift{color:#a1620a;background:#fdf6ec;border:1px solid #f6e3c8}.vchip.gift em{opacity:.65}.gift-pair{align-items:flex-start;gap:7px}.gift-list{color:var(--text-2);flex-wrap:wrap;align-items:baseline;gap:3px;font-size:12px;line-height:20px;display:inline-flex}.gift-item{white-space:nowrap;align-items:baseline;gap:3px;display:inline-flex}.gift-item b{color:#a1620a;font-size:11.5px;font-weight:700}.gift-rows{flex-direction:column;gap:6px;display:flex}.gift-row{align-items:center;gap:6px;display:flex}.gift-row .gift-name{flex:auto;min-width:0}.gift-row .gift-count{flex:0 0 76px;width:76px}.gift-sep{color:var(--muted);flex:none;font-size:12px}.gift-del{color:#c3c8d2;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;width:24px;height:24px;font-size:11px;line-height:1}.gift-del:hover{background:var(--danger-soft);color:var(--danger)}.gift-add{border:1px dashed var(--border-strong);height:28px;color:var(--text-2);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;padding:0 10px;font-size:12.5px}.gift-add:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.vchip.pub{color:#5f6673;background:#f1f3f9}.vchip.pub b{font-size:13px}.vchip.pub.video{color:#3a31c4;background:#e8eafe}.vchip.pub.poboo{color:#0a5f59;background:#e2f4ee}.vchip.pub.is-zero{color:#9aa2af}.vchip.pub.is-zero b{color:#b3b9c4}.vraw{color:var(--text-2);font-size:12px;line-height:1.5}.table-cust .col-actions{text-align:right;white-space:nowrap;width:276px;padding-left:8px;padding-right:8px}.btn-count{color:#4b5a8a;vertical-align:middle;cursor:pointer;background:#fbfcff;border:1px solid #dfe3f5;border-radius:999px;align-items:center;gap:3px;height:27px;margin-left:6px;padding:0 10px 0 7px;font-size:12px;font-weight:600;line-height:1;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn-count svg{opacity:.75;width:13px;height:13px;transition:opacity .16s}.btn-count:hover{color:#3b4a80;background:#f2f5ff;border-color:#c3caf0;box-shadow:0 3px 10px -5px #4f46e573}.btn-count:hover svg{opacity:1}.btn-publish{color:#4338ca;letter-spacing:.01em;cursor:pointer;vertical-align:middle;background:linear-gradient(#f9f9ff 0%,#eff0ff 100%);border:1px solid #dedbfa;border-radius:999px;align-items:center;gap:3px;height:27px;padding:0 11px 0 8px;font-size:12px;font-weight:600;line-height:1;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:inline-flex;box-shadow:0 1px 1px #4338ca0d}.btn-publish svg{opacity:.7;width:12px;height:12px;transition:opacity .16s}.btn-publish:hover{background:linear-gradient(#f3f3ff 0%,#e6e8ff 100%);border-color:#c3bcf8;transform:translateY(-1px);box-shadow:0 4px 12px -4px #4f46e573}.btn-publish:hover svg{opacity:1}.btn-publish:active{transform:translateY(0);box-shadow:0 1px 2px #4f46e52e}.icon-action{color:#9aa2b1;cursor:pointer;vertical-align:middle;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;width:27px;height:27px;margin-left:3px;transition:background .15s,color .15s,border-color .15s;display:inline-grid}.icon-action svg{width:15px;height:15px}.icon-action:hover{color:var(--text);background:#f5f6fa;border-color:#e6e9f0}.icon-action.danger:hover{background:var(--danger-soft);color:var(--danger);border-color:#fbd5d5}.vstock{color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap;flex-wrap:wrap;align-items:baseline;gap:4px;font-size:12.5px;display:inline-flex}.vstock-item{align-items:baseline;gap:3px;display:inline-flex}.vstock-key{color:#a2a9b5;font-size:10.5px;font-style:normal}.vstock-item b{color:#4b5563;font-weight:600}.vstock-sep{color:#d3d7df;margin-right:1px;font-style:normal}.cell-nick{color:#7c8493;text-overflow:ellipsis;white-space:nowrap;background:#f4f5f9;border-radius:5px;flex:0 auto;margin-left:-3px;padding:0 5px;font-size:11px;line-height:17px;overflow:hidden}.hero-nick{color:#6b7280;background:#f4f5f9;border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:500}.plan-key{color:var(--muted);font-size:12px}.field .plan-row .plan-key+input{margin-left:-2px}.toolbar-note{border:1px dashed var(--border-strong);color:var(--muted);white-space:nowrap;border-radius:8px;padding:5px 9px;font-size:12px}.vc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-top:14px;padding:15px 16px 13px}.vc-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.vc-title{align-items:flex-start;gap:10px;min-width:0;display:flex}.vc-title-icon{background:var(--primary-soft);width:30px;height:30px;color:var(--primary);border-radius:9px;flex:none;place-items:center;display:grid}.vc-title-icon svg{width:16px;height:16px}.vc-title h3{color:var(--text);margin:0;font-size:14px;font-weight:650;line-height:1.35}.vc-title p{color:var(--text-3);margin:2px 0 0;font-size:12px}.vc-head-right{flex:none;align-items:center;gap:8px;display:flex}.vc-count{color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap;background:#f5f6fa;border-radius:999px;padding:3px 9px;font-size:12px}.vc-err{background:var(--danger-soft);color:var(--danger);border-radius:8px;margin:0 0 10px;padding:7px 10px;font-size:12px}.vc-list{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.vc-row{background:#fcfcfe;border:1px solid #eef0f5;border-radius:10px;align-items:center;gap:10px;padding:7px 10px;display:flex}.vc-name{flex-direction:column;flex:auto;min-width:0;display:flex}.vc-name b{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.vc-seg{background:#fff;border:1px solid #e3e6ef;border-radius:999px;flex:none;display:inline-flex;overflow:hidden}.vc-opt{color:#8b93a1;cursor:pointer;background:0 0;border:0;height:24px;padding:0 13px;font-size:12px;font-weight:600;transition:background .14s,color .14s}.vc-opt+.vc-opt{border-left:1px solid #eef0f5}.vc-opt:hover:not(.active){color:var(--text);background:#f5f6fa}.vc-opt.yes.active{color:#15803d;background:#dcfce7}.vc-opt.no.active{color:#b91c1c;background:#fee2e2}.vc-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:13px;display:flex}.vc-hint{color:var(--text-3);font-size:12px}.vc-ok{color:#15803d;font-weight:600}.vc-submit{min-width:108px}.rpt-line.vcheck{flex-wrap:wrap;align-items:flex-start;margin-top:2px}.rpt-lnum.vcheck{color:#15803d;background:#e7f8ee;font-size:10px}.rpt-line.vcheck .rpt-ltext{color:var(--text-2);flex:auto}.vcheck-label{color:var(--text);margin-right:6px;font-weight:600}.vcheck-label:after{content:"：";color:var(--text-3)}.vcheck-item{color:var(--text-2);white-space:nowrap}.vcheck-item b{margin-left:3px;font-weight:700}.vcheck-item.yes b{color:#15803d}.vcheck-item.no b{color:#b45309}.vcheck-sep{color:var(--text-3);margin-right:4px;font-style:normal}.vc-card.is-flash{box-shadow:0 0 0 3px #4f46e529, var(--shadow-sm);border-color:#c3bcf8;transition:box-shadow .25s,border-color .25s}.eta-btn{text-align:left;max-width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;margin:-3px -5px;padding:3px 5px;transition:background .15s,border-color .15s;display:inline-block}.eta-btn:hover:not(:disabled){background:#f6f7fe;border-color:#e3e6f5}.eta-btn:disabled{cursor:progress;opacity:.6}.eta-btn:hover:not(:disabled) .eta-date{color:var(--primary)}.eta-td .dp{vertical-align:middle}.eta-td .dp-trigger{height:26px;padding:0 7px}.btn-detail{border:1px solid var(--border);height:27px;color:var(--text-2);cursor:pointer;vertical-align:middle;background:#fff;border-radius:999px;margin-left:6px;padding:0 11px;font-size:12px;font-weight:600;line-height:1;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.btn-detail:hover{color:var(--text);background:#f7f8fc;border-color:#cfd4e6;box-shadow:0 2px 8px -4px #10182847}.form-ok{color:#15803d;background:#ecfdf3;border-radius:8px;margin:8px 0 0;padding:7px 10px;font-size:12.5px}.status-pill{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;height:24px;padding:0 10px;font-size:11.5px;font-weight:600;transition:filter .15s,box-shadow .15s}.status-pill.on{color:#15803d;background:#ecfdf3;border-color:#bbf7d0}.status-pill.waiting{color:#b45309;background:#fff7ed;border-color:#fed7aa;box-shadow:0 0 0 3px #fb923c1f}.status-pill:hover:not(:disabled){filter:brightness(.97)}.status-pill:disabled{cursor:default;opacity:.7}.user-row-pending td{background:#fffdf8}.pwd-reset{align-items:center;gap:6px;display:inline-flex}.pwd-reset-input{border:1px solid var(--border-strong);border-radius:7px;width:128px;height:26px;padding:0 8px;font-size:12px}.backup-page{flex-direction:column;gap:16px;display:flex}.bk-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.bk-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.bk-card-label{color:var(--muted);font-size:12px;font-weight:600}.bk-card-value{letter-spacing:-.01em;color:var(--text);font-size:21px;font-weight:700;line-height:1.35}.bk-card-value i{color:var(--muted);margin-left:3px;font-size:12px;font-style:normal;font-weight:600}.bk-card-value.ok{color:var(--green)}.bk-card-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.bk-card-sub.ok{color:var(--green)}.bk-card-sub.err{color:var(--danger)}.bk-card-path{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;padding-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;font-weight:600;overflow:hidden}.bk-panels{grid-template-columns:1.15fr 1fr;gap:14px;display:grid}.bk-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;padding:16px 18px 14px;display:flex}.bk-panel-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.bk-panel-title{align-items:flex-start;gap:11px;display:flex}.bk-panel-title h3{margin:0;font-size:14.5px;font-weight:650}.bk-panel-title p{color:var(--muted);margin:3px 0 0;font-size:12px}.bk-panel-icon{background:var(--primary-soft);width:32px;height:32px;color:var(--primary);border-radius:10px;flex:none;place-items:center;font-size:15px;display:grid}.bk-switch{border:1px solid var(--border-strong);cursor:pointer;background:#eef0f4;border-radius:999px;flex:none;width:46px;height:26px;padding:0;transition:background .16s,border-color .16s;position:relative}.bk-switch-dot{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .16s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #1018283d}.bk-switch.on{background:var(--primary);border-color:var(--primary)}.bk-switch.on .bk-switch-dot{transform:translate(20px)}.bk-switch:disabled{opacity:.6;cursor:not-allowed}.bk-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;transition:opacity .16s;display:flex}.bk-form.off{opacity:.5}.bk-field{color:var(--text-2);align-items:center;gap:5px;font-size:12.5px;display:inline-flex}.bk-field select,.bk-field input{border:1px solid var(--border-strong);background:var(--surface);font-variant-numeric:tabular-nums;height:30px;color:var(--text);border-radius:8px;padding:0 6px;font-size:12.5px}.bk-field input[type=number]{text-align:center;width:60px}.bk-form .btn{margin-left:auto}.bk-next{color:var(--muted);margin:10px 0 0;font-size:11.5px}.bk-manual{gap:9px;margin-top:16px;display:flex}.bk-note{border:1px solid var(--border-strong);border-radius:9px;flex:auto;min-width:0;height:36px;padding:0 11px;font-size:13px}.bk-note:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #4f46e51f}.bk-manual .btn{flex:none;height:36px}.bk-list-head{align-items:baseline;gap:9px;margin-top:4px;display:flex}.bk-list-head h3{margin:0;font-size:14.5px;font-weight:650}.bk-list-count{color:var(--muted);font-size:12px}.bk-table-wrap{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;overflow:hidden}.bk-table{border-collapse:collapse;width:100%}.bk-table th{background:var(--surface-soft);border-bottom:1px solid var(--border);color:var(--muted);text-align:left;white-space:nowrap;padding:10px 14px;font-size:12px;font-weight:600}.bk-table td{color:var(--text-2);vertical-align:middle;border-bottom:1px solid #f1f2f5;padding:11px 14px;font-size:12.5px}.bk-table tbody tr:last-child td{border-bottom:none}.bk-table tbody tr:hover td{background:#fbfbfe}.bk-row-failed td{background:snow}.bk-time{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px;font-weight:600;display:block}.bk-time-sub{color:var(--muted);white-space:nowrap;margin-top:1px;font-size:11px;display:block}.bk-num{font-variant-numeric:tabular-nums;white-space:nowrap}.bk-kind{white-space:nowrap;color:var(--text-2);background:#f1f2f6;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-block}.bk-kind.manual{background:var(--primary-soft);color:var(--primary)}.bk-kind.auto{background:var(--green-soft);color:var(--green)}.bk-kind.pre_restore{background:var(--amber-soft);color:var(--amber)}.bk-status{white-space:nowrap;align-items:center;gap:5px;max-width:260px;font-size:12px;display:inline-flex}.bk-status i{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.bk-status.ok{color:var(--green)}.bk-status.warn{color:var(--amber)}.bk-status.err{color:var(--danger)}.bk-status em{color:var(--muted);text-overflow:ellipsis;font-size:11.5px;font-style:normal;overflow:hidden}.bk-col-actions{text-align:right;white-space:nowrap}.bk-col-actions .link-btn{margin-left:12px}.bk-col-actions .link-btn:first-child{margin-left:0}.bk-empty{border:1px dashed var(--border-strong);background:var(--surface);text-align:center;border-radius:14px;padding:44px 24px}.bk-empty-icon{color:var(--border-strong);font-size:26px}.bk-empty h4{margin:8px 0 4px;font-size:14px}.bk-empty p{color:var(--muted);margin:0;font-size:12.5px}.bk-restore-box{color:var(--text-2);background:snow;border:1px solid #fbd5d5;border-radius:11px;flex-direction:column;gap:10px;margin-top:12px;padding:12px 14px;font-size:12px;display:flex}.bk-restore-confirm{color:var(--danger);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.bk-restore-confirm input{letter-spacing:2px;border:1px solid #f3c1c1;border-radius:8px;height:32px;padding:0 10px;font-size:13px}.bk-restore-confirm input:focus{border-color:var(--danger);outline:none;box-shadow:0 0 0 3px #dc26261f}.confirm-text b{color:var(--text)}@media (width<=1180px){.bk-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.bk-panels{grid-template-columns:1fr}}.page-loading{min-height:280px;color:var(--muted,#6b7280);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex}.page-loading p{margin:0}.page-loading-dots{gap:7px;display:flex}.page-loading-dots span{background:var(--accent,#2563eb);border-radius:50%;width:7px;height:7px;animation:1.05s ease-in-out infinite page-loading-pulse}.page-loading-dots span:nth-child(2){animation-delay:.14s}.page-loading-dots span:nth-child(3){animation-delay:.28s}@keyframes page-loading-pulse{0%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.kb-switch{border:1px solid var(--note-bd,#e3e8ef);height:22px;color:var(--note-fg,#4b5565);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:0 10px 0 3px;font-size:10.5px;font-weight:600;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.kb-switch>i{background:#dfe3ea;border-radius:999px;width:24px;height:14px;transition:background .15s;display:block;position:relative}.kb-switch>i:after{content:"";background:#fff;border-radius:50%;width:10px;height:10px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #1018283d}.kb-switch:hover{border-color:#cbd3df}.kb-switch.on{color:#b45309;background:#fffaf0;border-color:#f0cf9a}.kb-switch.on>i{background:#e8a33d}.kb-switch.on>i:after{transform:translate(10px)}.kb-switch-tip{color:#a0722c;margin-top:5px;font-size:10px;font-style:normal;line-height:1.5;display:block}.kb-cal-tbd{color:#b45309;background:#fff7e6;border:1px solid #f3e2be;border-radius:3px;flex:none;padding:0 4px;font-size:9px;font-style:normal;font-weight:600;line-height:1.5}.kb-cal-dayhead{flex-wrap:wrap;row-gap:4px}.kb-cal-travel{color:#1d4ed8;white-space:nowrap;background:#eef4ff;border:1px solid #d8e3fb;border-radius:4px;align-items:center;gap:3px;max-width:100%;padding:0 5px 0 4px;font-size:9.5px;font-weight:600;line-height:1.7;display:inline-flex}.kb-cal-travel svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;opacity:.9;flex:none;width:11px;height:11px}.kb-cal-travel span{text-overflow:ellipsis;min-width:0;overflow:hidden}.kb-merge{cursor:pointer;box-shadow:2px 2px 0 -1px #fff, 3px 3px 0 0 var(--note-bd), 0 2px 6px -3px var(--note-sh)}.kb-merge:active{transform:translateY(1px)}.kb-merge.merging-off{opacity:.55;cursor:default}.kb-merge-tag{border:1px solid var(--note-bd);color:var(--note-accent);letter-spacing:.02em;white-space:nowrap;background:#fffc;border-radius:5px;align-items:center;gap:4px;padding:0 6px;font-size:9.5px;font-weight:700;line-height:1.7;display:inline-flex}.kb-merge-tag i{opacity:.85;font-size:10px;font-style:normal}.kb-merge .kb-due-span{text-overflow:ellipsis;max-width:100%;overflow:hidden}.kb-merge-chips{flex-direction:column;gap:2px;margin-top:6px;display:flex}.kb-merge-chip{color:var(--note-fg);text-overflow:ellipsis;white-space:nowrap;opacity:.82;font-size:10.5px;line-height:1.6;display:block;overflow:hidden}.kb-merge-chip:before{content:"· ";opacity:.6}.kb-merge-chip.more{opacity:.6}.kb-merge-chip.more:before{content:""}.kb-merge-foot{border-top:1px dashed var(--note-bd);align-items:center;gap:6px;margin-top:8px;padding-top:7px;display:flex}.kb-merge-open{color:var(--note-accent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:auto;padding:0;font-size:10.5px;font-weight:700}.kb-merge-open:hover{text-decoration:underline}.kb-merge-dissolve{border:1px solid var(--note-bd);color:var(--note-fg);font:inherit;cursor:pointer;opacity:.75;background:#ffffffb3;border-radius:5px;flex:none;padding:1px 7px;font-size:9.5px}.kb-merge-dissolve:hover{opacity:1;background:#fff}.kb-note.peeking{box-shadow:0 0 0 2px var(--primary-soft,#4f46e526);border-style:dashed}.modal-group{max-width:480px}.kb-group-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.kb-group-item{border:1px solid var(--border);width:100%;color:var(--text-2);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:9px;align-items:center;gap:7px;padding:8px 10px;transition:border-color .12s,background .12s;display:flex}.kb-group-item:hover{border-color:var(--primary);background:#fafbff}.kb-group-item-title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:12.5px;overflow:hidden}.kb-group-item em{color:var(--text-3);white-space:nowrap;flex:none;font-size:10.5px;font-style:normal}.kb-group-go{color:var(--primary);opacity:.75;flex:none;font-size:10px;font-style:normal}.kb-rules{border:1px solid var(--border);background:#fbfbfd;border-radius:14px;margin-top:18px;padding:15px 18px 16px}.kb-rules-head{align-items:baseline;gap:10px;margin-bottom:13px;display:flex}.kb-rules-head strong{color:var(--text);letter-spacing:.02em;font-size:13px}.kb-rules-head span{color:var(--text-3);font-size:11px}.kb-rules-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 26px;display:grid}.kb-rule{padding-left:30px;position:relative}.kb-rule-no{border:1px solid var(--border);width:21px;height:21px;color:var(--text-3);font-variant-numeric:tabular-nums;background:#fff;border-radius:6px;place-items:center;font-size:9.5px;font-style:normal;font-weight:700;display:grid;position:absolute;top:0;left:0}.kb-rule h3{color:var(--text);margin:0 0 4px;font-size:12px;font-weight:700}.kb-rule p{color:var(--text-3);margin:0;font-size:11.5px;line-height:1.8}.kb-rule p strong{color:var(--text-2);font-weight:700}@media (width<=900px){.kb-rules-grid{grid-template-columns:1fr;gap:12px}}.kb-switch-bar{background:#fff;height:26px;padding:0 11px 0 4px;font-size:11px}.kb-switch-bar.on{background:#fffaf0}.kb-merge .kb-note-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.modal-pri{max-width:360px}.kb-pri-row.big{gap:6px}.kb-pri-row.big .kb-pri-num{border-radius:9px;height:34px;font-size:12.5px}.op-page{flex-direction:column;gap:16px;display:flex}.op-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:18px 20px}.op-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.op-card-head h2{margin:0;font-size:15px}.op-card-head p{color:var(--muted);margin:0;font-size:12px}.op-count{color:var(--muted);margin-left:10px;font-size:12px;font-weight:500}.op-form-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.op-form-head h2{margin:0 0 3px;font-size:15px}.op-form-head p{color:var(--muted);margin:0;font-size:12px}.op-login-chip{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-2);border-radius:999px;align-items:center;gap:8px;padding:4px 6px 4px 12px;font-size:12px;display:inline-flex}.op-login-chip.ok{background:var(--green-soft);border-color:#c7efe4}.op-login-chip.wait{background:var(--amber-soft);border-color:#fde9c0}.op-login-chip .btn{padding:3px 10px;font-size:12px}.op-login-text{font-weight:500}.op-form-grid{grid-template-columns:minmax(180px,2fr) minmax(110px,1.1fr) minmax(88px,.8fr) minmax(120px,1fr) minmax(88px,.72fr);gap:12px;display:grid}@media (width<=1100px){.op-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op-field-wide{grid-column:1/-1}}.op-tag{color:var(--primary);background:var(--primary-soft);vertical-align:2px;border-radius:999px;margin-left:6px;padding:0 7px;font-size:10.5px;font-style:normal;font-weight:500;display:inline-block}.op-form-grid-2{grid-template-columns:1fr 1fr;margin-top:12px}@media (width<=760px){.op-form-grid-2{grid-template-columns:1fr}}.op-range{align-items:center;gap:6px;display:flex}.op-range select{flex:1;min-width:0}.op-range em{color:var(--muted);flex:none;font-size:12px;font-style:normal}.op-setup{padding:12px 18px}.op-setup-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:26px;display:flex}.op-setup-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.op-setup-title h2{color:var(--text-2);margin:0 4px 0 0;font-size:13.5px}.op-chip{border:1px solid var(--border);background:var(--surface-soft);color:var(--muted);border-radius:999px;padding:2px 9px;font-size:11.5px}.op-chip.ok{background:var(--green-soft);color:var(--green);border-color:#c7efe4}.op-chip.warn{background:var(--amber-soft);color:var(--amber);border-color:#fde9c0}.op-setup-body{border-top:1px dashed var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);margin-top:16px;padding-top:16px;display:grid}@media (width<=1240px){.op-setup-body{grid-template-columns:1fr;gap:18px}}.op-setup-col{flex-direction:column;gap:10px;min-width:0;padding:0 20px;display:flex}.op-setup-col:first-child{padding-left:0}.op-setup-col:last-child{padding-right:0}.op-setup-col+.op-setup-col{border-left:1px dashed var(--border)}@media (width<=1240px){.op-setup-col{padding:0}.op-setup-col+.op-setup-col{border-left:0;border-top:1px dashed var(--border);padding-top:16px}}.op-setup-col-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.op-setup-col-head h3{color:var(--text);margin:0;font-size:13px}.op-setup-desc{color:var(--muted);margin:0;font-size:11.5px;line-height:1.55}.op-setup-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.op-setup-col .op-field input,.op-setup-col .op-field select{padding:7px 9px;font-size:12.5px}.op-setup-col .op-field>span{font-size:11.5px}.op-setup-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:4px;display:flex}.op-switch{color:var(--text);cursor:pointer;align-items:center;gap:8px;margin:2px 0 0;font-size:13px;display:flex}.op-switch input{accent-color:var(--primary);flex:none;width:15px;height:15px}.op-switch em{color:var(--muted);font-size:11.5px;font-style:normal;line-height:1.4}.op-work{grid-template-columns:316px minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=1180px){.op-work{grid-template-columns:1fr}}.op-tasks{padding:14px 12px 12px}.op-tasks-head{justify-content:space-between;align-items:center;gap:10px;padding:0 4px 10px;display:flex}.op-tasks-head h2{margin:0;font-size:14px}.op-task-list{flex-direction:column;gap:6px;max-height:calc(100vh - 260px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.op-task{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;transition:border-color .12s,background .12s;position:relative}.op-task:hover{border-color:var(--border-strong);background:var(--surface)}.op-task.on{border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}.op-task-btn{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;flex-direction:column;gap:5px;padding:10px 30px 10px 12px;display:flex}.op-task-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.op-task-kw{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.op-task-top .op-badge{flex:none;padding:1px 8px;font-size:10.5px}.op-task-meta{color:var(--muted);align-items:center;gap:8px;font-size:11.5px;display:flex}.op-task-no{background:var(--surface-soft);border:1px solid var(--border);min-width:28px;height:19px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;letter-spacing:.03em;border-radius:6px;flex:none;padding:0 5px;font:700 11px/17px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;transition:color .15s,background .15s,border-color .15s}.op-task.on .op-task-no{background:var(--primary-soft);color:var(--primary);border-color:#c7d2fe}.op-task-ch{background:var(--surface-soft);border:1px solid var(--border);color:var(--text-2);border-radius:4px;padding:0 5px;font-size:10.5px}.op-task-ch.browser{background:var(--green-soft);color:var(--green);border-color:#c7efe4}.op-task-time,.op-task-now{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.op-task-now{color:var(--primary)}.op-task-mini{background:var(--border);border-radius:999px;height:3px;display:block;overflow:hidden}.op-task-mini i{background:var(--primary);border-radius:999px;height:100%;transition:width .5s;display:block}.op-task-mini.live i{width:30%;animation:1.4s ease-in-out infinite op-slide}.op-task-del{width:20px;height:20px;color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:6px;font-size:15px;line-height:1;transition:opacity .12s;position:absolute;top:8px;right:6px}.op-task:hover .op-task-del,.op-task.on .op-task-del{opacity:1}.op-task-del:hover{background:var(--danger-soft);color:var(--danger)}.op-results{min-width:0}.op-run{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;margin-bottom:14px;padding:12px 14px}.op-run-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.op-run-now{color:var(--text);font-size:13px;font-weight:500}.op-run .op-log{max-height:168px;margin-top:10px}.op-video-table{min-width:720px}.op-video-table th,.op-video-table td{white-space:nowrap;padding:10px 8px}.op-video-table th{white-space:nowrap}.op-idx{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.op-video-table .op-title{white-space:normal;word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:none;line-height:1.5;display:-webkit-box;overflow:hidden}.op-video-table .op-transcript{white-space:nowrap}.op-cell-main{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.op-cell-sub{color:var(--muted);margin-top:2px;font-size:11.5px;display:block}.op-cell-sub.hot{color:var(--primary);font-weight:600}.op-likes{font-variant-numeric:tabular-nums;font-weight:600}.op-metrics{flex-direction:column;gap:2px;display:flex}.op-metrics-row{white-space:nowrap;align-items:baseline;gap:4px;display:flex}.op-metrics-lb{color:var(--muted);flex:none;font-size:10.5px;font-style:normal}.op-num{font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:12.5px;font-weight:700}.op-num.likes{color:#c2410c}.op-num.fans{color:#1d4ed8}.op-ratio{text-align:center;border:1px solid var(--border);background:var(--surface-soft);min-width:44px;color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:6px;padding:1px 7px;font-size:12px;font-weight:700;display:inline-block}.op-ratio.hot{background:var(--danger-soft);color:#b91c1c;border-color:#fecaca}.op-date{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:12.5px}.op-src{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-2);border-radius:4px;padding:1px 6px;font-size:11px;display:inline-block}.op-src.browser{background:var(--green-soft);color:var(--green);border-color:#c7efe4}.op-video-table .op-acts{flex-wrap:nowrap;gap:6px}.op-video-table .op-acts .btn{padding:3px 8px;font-size:12px}.op-field{color:var(--text-2);flex-direction:column;gap:6px;font-size:12px;display:flex}.op-field input{border:1px solid var(--border-strong);color:var(--text);background:var(--surface-soft);border-radius:8px;outline:none;min-width:0;padding:8px 10px;font-size:13px}.op-field select{border:1px solid var(--border-strong);color:var(--text);background-color:var(--surface-soft);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b93a1' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;border-radius:8px;outline:none;width:100%;min-width:0;padding:8px 26px 8px 10px;font-size:13px}.op-field input:focus,.op-field select:focus{border-color:var(--primary);background-color:var(--surface)}.op-workbench{display:block}.op-tabs{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.op-tab{border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:inherit;text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:9px 16px;transition:background .14s,border-color .14s,color .14s;display:flex}.op-tab strong{color:inherit;font-size:14px;font-weight:600}.op-tab em{color:var(--text-2);font-size:11.5px;font-style:normal;line-height:1.3}.op-tab:hover{border-color:var(--primary);color:var(--text)}.op-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.op-tab.active em{color:#ffffffd1}.op-tab-panel[hidden]{display:none}.op-tab-loading{color:var(--text-2);justify-content:center;align-items:center;gap:6px;padding:60px 0;display:flex}.op-tab-loading span{opacity:.35;background:currentColor;border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite op-tab-blink}.op-tab-loading span:nth-child(2){animation-delay:.15s}.op-tab-loading span:nth-child(3){animation-delay:.3s}.op-tab-loading em{margin-left:6px;font-size:13px;font-style:normal}@keyframes op-tab-blink{0%,to{opacity:.25}50%{opacity:.9}}@media (width<=720px){.op-tab em{display:none}}.op-channels{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}@media (width<=1240px){.op-channels{grid-template-columns:1fr 1fr}}@media (width<=900px){.op-channels{grid-template-columns:1fr}}.op-channel{border:1px solid var(--border);cursor:pointer;background:var(--surface-soft);border-radius:10px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:4px 10px;padding:12px 14px;display:grid}.op-channel.on{border-color:var(--primary);background:var(--primary-soft)}.op-channel input{accent-color:var(--primary);grid-row:1/span 2;align-self:center}.op-channel strong{font-size:13px}.op-channel em{color:var(--text-2);font-size:12px;font-style:normal;line-height:1.5}.op-board-pick{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:12px;padding:12px 14px;display:flex}.op-board-label{color:var(--text-2);white-space:nowrap;font-size:13px;font-weight:600}.op-board-opts{flex-wrap:wrap;gap:8px;display:flex}.op-board-opt{border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;gap:2px;padding:6px 12px;transition:border-color .15s,background .15s;display:flex}.op-board-opt:hover{border-color:var(--primary)}.op-board-opt.on{border-color:var(--primary);background:var(--primary-soft)}.op-board-opt strong{color:var(--text);font-size:13px;font-weight:600}.op-board-opt em{color:var(--text-2);font-size:11px;font-style:normal}.op-board-opt.on strong{color:var(--primary)}.op-board-note{color:var(--text-2);margin-left:auto;font-size:12px}@media (width<=900px){.op-board-note{margin-left:0}}.op-speech-switch{border:1px solid var(--border);background:var(--surface-soft);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;margin-top:12px;padding:11px 14px;transition:border-color .14s,background .14s;display:flex}.op-speech-switch:hover{border-color:var(--primary)}.op-speech-switch.on{border-color:var(--primary);background:var(--primary-soft)}.op-speech-switch input{width:15px;height:15px;accent-color:var(--primary);cursor:pointer;flex:none;margin-top:2px}.op-speech-switch-text{gap:3px;min-width:0;display:grid}.op-speech-switch-text strong{color:var(--text);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.op-speech-switch-text em{color:var(--text-2);font-size:12px;font-style:normal;line-height:1.55}.op-tag.off{background:var(--surface);color:var(--text-2);font-weight:400}.op-task-speech{background:var(--primary-soft);color:var(--primary);white-space:nowrap;border-radius:5px;padding:1px 6px;font-size:11px;font-weight:600}.op-form-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.op-hint{color:var(--muted);font-size:12px}.op-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=900px){.op-row{grid-template-columns:1fr}}.op-login-state{align-items:center;gap:8px;margin:0 0 10px;font-size:13px;display:flex}.op-dot{background:var(--border-strong);border-radius:50%;flex:none;width:9px;height:9px}.op-dot.ok{background:var(--green)}.op-dot.wait{background:var(--amber)}.op-side-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.op-key-row input{border:1px solid var(--border-strong);border-radius:8px;outline:none;flex:1;min-width:160px;padding:6px 10px;font-size:13px}.op-key-row input:focus{border-color:var(--primary)}.op-note{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.6}.op-empty{color:var(--muted);margin:0;padding:18px 0 8px;font-size:13px}.op-industry{color:var(--muted);background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px}.op-badge{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:500;display:inline-block}.op-badge.pending{background:var(--amber-soft);color:var(--amber)}.op-badge.running{background:var(--primary-soft);color:var(--primary)}.op-badge.done{background:var(--green-soft);color:var(--green)}.op-badge.error{background:var(--danger-soft);color:var(--danger)}.op-speech-filter{flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 12px;display:flex}.op-speech-chip{border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;transition:border-color .14s,background .14s,color .14s;display:inline-flex}.op-speech-chip b{color:var(--text-2);font-size:12px;font-weight:600}.op-speech-chip:hover{border-color:var(--primary);color:var(--text)}.op-speech-chip.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.op-speech-chip.on b{color:var(--primary)}.op-speech-chip.primary{border-color:var(--primary);color:var(--primary)}.op-speech-chip.primary.on{background:var(--primary);color:#fff}.op-speech-chip.primary.on b{color:#ffffffdb}.op-speech-tip{color:var(--text-2);font-size:12px}.op-msg.op-silent{color:var(--text-2);opacity:.75}.op-msg{color:var(--text-2);font-size:12px}.op-row-active td{background:var(--primary-soft)}.op-acts{align-items:center;gap:8px;display:flex}.op-del{color:var(--danger)}.op-title{text-overflow:ellipsis;white-space:nowrap;max-width:0;overflow:hidden}.op-author{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.op-link{color:var(--primary);font-size:12px;text-decoration:none}.op-link:hover{text-decoration:underline}.op-toast{color:#fff;box-shadow:var(--shadow-lg);z-index:60;background:#1a1d23;border-radius:10px;max-width:70vw;padding:10px 18px;font-size:13px;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.op-progress-pct{color:var(--primary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.op-card-head h2 .op-badge{vertical-align:2px;margin-left:10px}.op-bar{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;height:8px;overflow:hidden}.op-bar i{background:var(--primary);border-radius:999px;height:100%;transition:width .5s;display:block}.op-bar.live i{width:30%;animation:1.4s ease-in-out infinite op-slide}@keyframes op-slide{0%{margin-left:-30%}to{margin-left:100%}}.op-progress-now{color:var(--text);margin:10px 0 0;font-size:13px;font-weight:500}.op-log{max-height:220px;margin:12px 0 0;padding:0;list-style:none;overflow-y:auto}.op-log li{color:var(--text-2);border-bottom:1px dashed var(--border);gap:10px;padding:4px 0;font-size:12px;display:flex}.op-log li:last-child{border-bottom:0}.op-log time{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.op-log li:first-child span{color:var(--primary);font-weight:500}.op-transcript{white-space:nowrap}.op-transcript-err{color:var(--danger)}.op-modal-mask{z-index:70;background:#10182873;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.op-modal{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);flex-direction:column;width:min(720px,100%);max-height:80vh;padding:18px 20px;display:flex}.op-modal-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.op-modal-head h3{margin:0;font-size:15px}.op-modal-close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:13px}.op-modal-sub{color:var(--muted);margin:8px 0 10px;font-size:12px}.op-modal-title{background:var(--primary-soft);color:var(--primary);border-radius:10px;flex-direction:column;gap:2px;margin:0 0 12px;padding:10px 14px;font-size:15px;font-weight:600;line-height:1.6;display:flex}.op-modal-body{color:var(--text);white-space:pre-wrap;background:var(--surface-soft);border:1px solid var(--border);border-radius:10px;flex:1;padding:14px 16px;font-size:14px;line-height:1.8;overflow-y:auto}.op-modal-foot{align-items:center;gap:14px;margin-top:14px;display:flex}.tp-form{flex-wrap:wrap;align-items:flex-end;gap:12px 14px;display:flex}.tp-field{color:var(--text-2);flex-direction:column;flex:210px;gap:6px;min-width:0;font-size:12px;display:flex}.tp-field>span{font-weight:500}.tp-field>span i{color:var(--muted);margin-left:4px;font-style:normal;font-weight:400}.tp-field input{border:1px solid var(--border-strong);color:var(--text);background:var(--surface-soft);border-radius:8px;outline:none;min-width:0;padding:9px 11px;font-size:13px}.tp-field input:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px var(--primary-soft)}.tp-chips{flex-wrap:wrap;gap:6px;display:flex}.tp-chip{border:1px solid var(--border-strong);background:var(--surface-soft);color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:12px;transition:all .12s}.tp-chip:hover{border-color:var(--primary);color:var(--primary)}.tp-chip.on{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.tp-field-deep{flex-flow:wrap;flex:260px;align-items:center;gap:4px 8px}.tp-field-deep p{color:var(--muted);flex:1 0 100%;margin:0;font-size:11.5px;line-height:1.4}.tp-submit{flex:none;height:38px;padding:0 22px;font-size:13px}.tp-err{background:var(--danger-soft);color:var(--danger);border-radius:8px;margin:12px 0 0;padding:9px 12px;font-size:12.5px;line-height:1.55}.tp-work{margin-top:0}.tp-detail{flex-direction:column;gap:16px;min-width:0;display:flex}.tp-status{background:var(--surface-soft);border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:11px}.tp-status.done{color:var(--green);background:var(--green-soft);border-color:#a7f3d0}.tp-status.running,.tp-status.pending{color:var(--primary);background:var(--primary-soft);border-color:#c7d2fe}.tp-status.error{color:var(--danger);background:var(--danger-soft);border-color:#fecaca}.tp-task-sum{color:var(--text-2);font-size:11.5px}.tp-task-bar{background:var(--border);border-radius:999px;height:3px;overflow:hidden}.tp-task-bar i{background:var(--primary);height:100%;transition:width .4s;display:block}.tp-task-err{color:var(--danger);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;display:-webkit-box;overflow:hidden}.tp-task-del{width:20px;height:20px;color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:6px;font-size:15px;line-height:1;transition:all .12s;position:absolute;top:6px;right:6px}.op-task:hover .tp-task-del{opacity:1}.tp-task-del:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.tp-task-del:disabled{cursor:not-allowed;opacity:.25}.tp-progress{flex-direction:column;gap:10px;display:flex}.tp-progress-head{color:var(--text-2);justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.tp-progress-head strong{color:var(--text);font-size:14px}.tp-progress-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.tp-progress-bar i{background:linear-gradient(90deg, var(--primary), #7c6cf0);border-radius:999px;height:100%;transition:width .4s;display:block}.tp-progress-msg{color:var(--muted);margin:0;font-size:12px}.tp-report-bar h3{align-items:baseline;gap:10px;margin:0 0 4px;font-size:17px;display:flex}.tp-report-range{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:400}.tp-report-bar p{color:var(--muted);margin:0;font-size:12px}.tp-report{flex-direction:column;gap:16px;min-width:0;display:flex}.tp-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}@media (width<=1180px){.tp-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.tp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.tp-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:3px;min-width:0;padding:12px 14px;display:flex}.tp-kpi>span{color:var(--muted);font-size:11.5px}.tp-kpi>strong{font-variant-numeric:tabular-nums;font-size:20px;line-height:1.2}.tp-kpi>em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-style:normal;overflow:hidden}.tp-kpi>em b{font-variant-numeric:tabular-nums}.tp-kpi .up,.tp-kpi>strong.up{color:var(--green)}.tp-kpi .down,.tp-kpi>strong.down{color:var(--danger)}.tp-stage{font-size:18px!important}.tp-stage.up{color:var(--green)}.tp-stage.flat{color:var(--text-2)}.tp-stage.warn{color:var(--amber)}.tp-stage.down{color:var(--danger)}.tp-aud-line{border-radius:var(--radius);border:1px dashed var(--border-strong);background:var(--surface-soft);color:var(--text-2);align-items:baseline;gap:10px;padding:10px 14px;font-size:12.5px;display:flex}.tp-aud-line>span{color:var(--muted);flex:none;font-size:11.5px}.tp-aud-line>p{margin:0;line-height:1.6}.tp-ideas{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tp-idea{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;transition:border-color .12s,background .12s;display:flex}.tp-idea:hover{border-color:var(--border-strong);background:var(--surface)}.tp-idea-no{font-variant-numeric:tabular-nums;background:var(--surface);border:1px solid var(--border);width:26px;height:26px;color:var(--muted);border-radius:8px;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.tp-idea-no.top{background:var(--primary);border-color:var(--primary);color:#fff}.tp-idea-main{flex-direction:column;flex:auto;gap:5px;min-width:0;display:flex}.tp-idea-head{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.tp-idea-head h4{margin:0;font-size:14px;line-height:1.4}.tp-src{background:var(--surface);border:1px solid var(--border-strong);color:var(--text-2);white-space:nowrap;border-radius:999px;flex:none;padding:1px 7px;font-size:10.5px;line-height:1.5}.tp-src.blue,.tp-src.primary{background:var(--primary-soft);color:var(--primary);border-color:#c7d2fe}.tp-src.hot{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.tp-src.trend{background:var(--green-soft);color:var(--green);border-color:#a7f3d0}.tp-src.hotspot{background:var(--danger-soft);color:var(--danger);border-color:#fecaca}.tp-src.suggestion{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.tp-src.videotag{background:var(--amber-soft);color:var(--amber);border-color:#fde68a}.tp-idea-hook{color:var(--text);margin:0;font-size:12.5px;line-height:1.55}.tp-idea-angle{color:var(--text-2);margin:0;font-size:12px;line-height:1.55}.tp-idea-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.tp-meter{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:11px;display:inline-flex}.tp-meter b{font-variant-numeric:tabular-nums;color:var(--text)}.tp-idea-reason{color:var(--muted);flex:100%;font-size:11px;line-height:1.5}.tp-idea-side{flex-direction:column;flex:none;align-items:center;gap:6px;display:flex}.tp-score{font-variant-numeric:tabular-nums;width:34px;height:34px;color:var(--primary);background:var(--primary-soft);border:1px solid #c7d2fe;border-radius:10px;place-items:center;font-size:14px;font-weight:700;display:grid}.tp-chart svg{width:100%;height:auto;display:block}.tp-legend{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.tp-legend-item{border:1px solid var(--border);background:var(--surface);font:inherit;color:var(--text-2);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 8px;font-size:12px;display:inline-flex}.tp-legend-item i{border-radius:999px;width:8px;height:8px}.tp-legend-item em{color:var(--muted);font-variant-numeric:tabular-nums;font-style:normal}.tp-legend-item b{font-variant-numeric:tabular-nums;font-weight:600}.tp-legend-item b.up{color:var(--green)}.tp-legend-item b.down{color:var(--danger)}.tp-legend-item.off{opacity:.45;text-decoration:line-through}.tp-chart-note{color:var(--muted);margin:6px 0 0;font-size:11px}.tp-trend-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:14px;display:grid}.tp-trend-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:6px;min-width:0;padding:10px 12px;display:flex}.tp-trend-head{align-items:center;gap:8px;min-width:0;display:flex}.tp-trend-head strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.tp-trend-nums{color:var(--muted);gap:12px;font-size:11.5px;display:flex}.tp-trend-nums b{color:var(--text);font-variant-numeric:tabular-nums}.tp-trend-badges{flex-wrap:wrap;gap:6px;display:flex}.tp-trend-badges em{background:var(--surface);border:1px solid var(--border);color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 7px;font-size:11px;font-style:normal}.tp-trend-badges em.up{color:var(--green);background:var(--green-soft);border-color:#a7f3d0}.tp-trend-badges em.down{color:var(--danger);background:var(--danger-soft);border-color:#fecaca}.tp-blue-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;display:grid}.tp-blue{background:linear-gradient(#f7f8ff 0%,#fff 100%);border:1px solid #c7d2fe;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;display:flex}.tp-blue-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.tp-blue-head strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.tp-blue-score{color:var(--primary);font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:700}.tp-blue p{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:11.5px}.tp-blue-gap{color:var(--green);font-size:11.5px;font-weight:600}.tp-table-wrap{overflow-x:auto}.tp-table{border-collapse:collapse;width:100%;font-size:12.5px}.tp-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px;font-size:11.5px;font-weight:500}.tp-table td{color:var(--text-2);vertical-align:middle;border-bottom:1px solid #f1f3f6;padding:7px 8px}.tp-table tr:last-child td{border-bottom:0}.tp-table td.num{text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.tp-word{color:var(--text);font-weight:600}.tp-mini{border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10px}.tp-mini.blue{color:var(--primary);background:var(--primary-soft);border-color:#c7d2fe}.tp-mini.hot{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.tp-mini.over{color:var(--muted);background:var(--surface-soft)}.tp-rel{color:var(--muted);font-size:11.5px}.tp-gap{color:var(--muted)}.tp-gap.on{color:var(--green);font-weight:600}.tp-score-sm{background:var(--surface-soft);border:1px solid var(--border);min-width:26px;color:var(--text);border-radius:6px;padding:1px 6px;font-weight:600;display:inline-block}.tp-aud-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px 22px;display:grid}.tp-bars{flex-direction:column;gap:6px;min-width:0;display:flex}.tp-bars-title{color:var(--text);margin:0 0 2px;font-size:12px;font-weight:600}.tp-bar-row{color:var(--text-2);grid-template-columns:62px minmax(0,1fr) 40px 34px;align-items:center;gap:8px;font-size:11.5px;display:grid}.tp-bar-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tp-bar-track{background:#eef0f4;border-radius:999px;height:6px;overflow:hidden}.tp-bar-track i{background:#c7d2fe;border-radius:999px;height:100%;display:block}.tp-bar-val{text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.tp-tgi{text-align:center;font-variant-numeric:tabular-nums;color:var(--muted);background:var(--surface-soft);border-radius:6px;padding:1px 0;font-size:11px}.tp-tgi.hot{color:var(--danger);background:var(--danger-soft);font-weight:600}.tp-tgi.low{color:#b0b7c3}.tp-hits{flex-direction:column;gap:6px;margin:0 0 14px;padding:0;list-style:none;display:flex}.tp-hits li{border:1px solid var(--border);background:var(--surface-soft);border-radius:9px;flex-wrap:wrap;align-items:center;gap:8px;padding:7px 11px;font-size:12.5px;display:flex}.tp-hits strong{color:var(--text)}.tp-hits em{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px;font-style:normal}.tp-hit-terms{color:var(--muted);margin-left:auto;font-size:11px}.tp-boards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.tp-board-title{color:var(--text-2);margin:0 0 6px;font-size:12px;font-weight:600}.tp-board-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.tp-board-list li{color:var(--text-2);border-bottom:1px dashed #f1f3f6;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:6px;padding:3px 0;font-size:11.5px;display:grid}.tp-board-list li.hit{color:var(--text);font-weight:600}.tp-board-list li.hit .tp-board-name:before{content:"●";color:var(--danger);vertical-align:2px;margin-right:4px;font-size:7px}.tp-board-rank{color:var(--muted);font-variant-numeric:tabular-nums;text-align:center}.tp-board-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tp-board-heat{color:var(--muted);font-variant-numeric:tabular-nums}.tp-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.tp-tags>span{color:var(--muted);font-size:11.5px}.tp-tags i{background:var(--primary-soft);color:var(--primary);border:1px solid #c7d2fe;border-radius:999px;padding:2px 8px;font-size:11.5px;font-style:normal}.tp-tags i b{opacity:.7;margin-left:3px;font-weight:500}.tp-videos{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.tp-videos li{border-bottom:1px solid #f1f3f6;align-items:flex-start;gap:10px;padding:8px 0;display:flex}.tp-videos li:last-child{border-bottom:0}.tp-video-likes{color:#c2410c;font-variant-numeric:tabular-nums;flex:0 0 62px;font-size:12px;font-weight:600}.tp-video-main{flex:auto;min-width:0}.tp-video-text{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.tp-video-author{color:var(--muted);font-size:11px}.tp-video-link{color:var(--primary);flex:none;padding-top:2px;font-size:11.5px;text-decoration:none}.tp-calls summary{cursor:pointer;color:var(--text-2);outline:none;font-size:12.5px}.tp-calls summary::marker{color:var(--muted)}.tp-calls table{margin-top:10px}.tp-call-ok{color:var(--green)}.tp-call-err{color:var(--danger)}.tp-empty-line{color:var(--muted);margin:0;font-size:12.5px;line-height:1.65}.tp-toast-wrap{z-index:60;pointer-events:none;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.tp-toast{color:#fff;box-shadow:var(--shadow-md);background:#1a1d23eb;border-radius:999px;padding:9px 16px;font-size:12.5px;animation:.2s tp-toast-in}@keyframes tp-toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tp-comment-table{min-width:760px}.tp-comment-table td{vertical-align:top;padding-top:9px;padding-bottom:9px}.tp-comment-text{color:var(--text);word-break:break-word;white-space:pre-wrap;font-size:13px;line-height:1.55;display:block}.tp-comment-table .op-cell-sub{margin-top:3px;display:block}.tp-video-link{-webkit-line-clamp:2;color:var(--primary);word-break:break-word;-webkit-box-orient:vertical;font-size:12px;line-height:1.45;text-decoration:none;display:-webkit-box;overflow:hidden}.tp-video-link:hover{text-decoration:underline}.acc-toolbar{border-top:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;padding-top:14px;display:flex}.acc-hours{flex-wrap:wrap;gap:6px;display:flex}.acc-hours .tp-chip{padding:4px 9px;font-size:12px}.acc-cands{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;margin-top:14px;overflow:hidden}.acc-cands-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:flex}.acc-cands ul{max-height:260px;margin:0;padding:0;list-style:none;overflow:auto}.acc-cands li{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:9px 12px;display:flex}.acc-cands li:last-child{border-bottom:0}.acc-cands li img{object-fit:cover;background:var(--border);border-radius:50%;flex:none;width:34px;height:34px}.acc-cand-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.acc-cand-main b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.acc-item .op-task-top{gap:8px}.acc-avatar{object-fit:cover;background:var(--border);border-radius:50%;flex:none;width:30px;height:30px}.acc-name{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.acc-name b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.acc-delta.up{color:#d92b2b;font-weight:600}.acc-delta.down{color:#0f8a3d;font-weight:600}.acc-delta.flat{color:var(--muted)}.acc-head{border-bottom:1px solid var(--border);align-items:flex-start;gap:14px;padding-bottom:14px;display:flex}.acc-head-avatar{object-fit:cover;background:var(--border);border-radius:50%;flex:none;width:56px;height:56px}.acc-head-main{flex:1;min-width:0}.acc-head-main h2{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 2px;font-size:16px;font-weight:650;display:flex}.acc-head-main p{margin:0}.acc-badge{background:var(--primary-soft);color:var(--primary);vertical-align:middle;border-radius:999px;align-items:center;padding:1px 7px;font-size:11px;font-weight:600;display:inline-flex}.acc-badge.shop{background:var(--amber-soft);color:var(--amber)}.acc-bio{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.55;display:-webkit-box;overflow:hidden;margin:6px 0 0!important}.acc-stats{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;margin:14px 0;display:grid}.acc-stat{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.acc-stat em{color:var(--muted);font-size:11.5px;font-style:normal}.acc-stat b{letter-spacing:-.3px;font-size:19px;font-weight:650}.acc-stat span{font-size:11.5px}.acc-chart{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;padding:12px}.acc-chart-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.acc-spark{width:100%;height:96px;display:block}.acc-video-table td{vertical-align:top}.acc-video-table .tp-comment-text{display:inline}.rd-boards{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.rd-board{border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:inherit;cursor:pointer;border-radius:10px;flex-direction:column;gap:1px;padding:8px 14px;transition:border-color .14s,background .14s,color .14s;display:flex}.rd-board strong{color:inherit;font-size:13px;font-weight:600}.rd-board em{color:var(--muted);font-size:11px;font-style:normal}.rd-board:hover{border-color:var(--primary);color:var(--text)}.rd-board.on{background:var(--primary);border-color:var(--primary);color:#fff}.rd-board.on em{color:#ffffffc7}.rd-search{border:1px solid var(--border);background:var(--surface);width:168px;color:var(--text);font:inherit;border-radius:8px;padding:5px 10px;font-size:12.5px}.rd-search:focus{border-color:var(--primary);outline:none}.rd-list{margin:0;padding:0;list-style:none}.rd-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 4px;display:flex}.rd-item:last-child{border-bottom:0}.rd-rank{background:var(--surface-soft);width:24px;height:24px;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:7px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.rd-rank.top{background:var(--danger-soft);color:var(--danger)}.rd-name{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;padding:0;font-size:13.5px;overflow:hidden}.rd-name:hover{color:var(--primary);text-decoration:underline}.rd-cat{background:var(--primary-soft);color:var(--primary);border-radius:999px;flex:none;padding:1px 7px;font-size:11px}.rd-nums{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:10px;font-size:11.5px;display:flex}.rd-nums em{font-style:normal}@media (width<=860px){.rd-nums{display:none}}.cc-intent{white-space:nowrap;border-radius:6px;align-items:center;padding:1px 7px;font-size:11.5px;font-weight:600;display:inline-flex}.cc-intent.buy{background:var(--danger-soft);color:var(--danger)}.cc-intent.local{background:var(--primary-soft);color:var(--primary)}.cc-intent.howto{background:var(--green-soft);color:var(--green)}.cc-intent.doubt{background:var(--amber-soft);color:var(--amber)}.cc-reply-row{background:#4f46e506}.cc-reply-tag{background:var(--primary-soft);color:var(--primary);vertical-align:1px;border-radius:4px;align-items:center;margin-right:6px;padding:0 5px;font-size:10.5px;font-weight:600;display:inline-flex}.cc-root{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:420px;margin-top:2px;font-size:11.5px;display:block;overflow:hidden}.copy-cond{border-top:1px dashed var(--border);margin-top:14px;padding-top:14px}.copy-cond-head{align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.copy-cond-head strong{color:var(--text);font-size:13.5px;font-weight:800}.copy-cond-head em{color:var(--muted);font-size:12px;font-style:normal}.copy-cond-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}@media (width<=1100px){.copy-cond-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.copy-range{align-items:center;gap:6px;display:flex}.copy-range i{color:var(--muted);font-style:normal}.copy-range input{min-width:0}.copy-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.copy-table{min-width:880px}.copy-table td{vertical-align:top}.copy-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.copy-text{color:var(--text);word-break:break-word;white-space:pre-wrap;max-height:4.7em;font-size:13px;line-height:1.55;display:block;overflow:hidden}.copy-pin,.copy-unmatched{border-radius:6px;margin:4px 6px 0 0;padding:1px 6px;font-size:11px;line-height:1.6;display:inline-block}.copy-pin{background:var(--primary-soft);color:var(--primary);font-weight:600}.copy-unmatched{color:var(--muted);background:#f1f3f6}.copy-handle{color:var(--muted);margin-left:8px;font-size:12.5px;font-weight:500}.copy-result-head .op-acts{flex-wrap:wrap;justify-content:flex-end}.copy-sort{border:1px solid var(--border);height:30px;color:var(--text);background:#fff;border-radius:8px;padding:0 8px;font-size:12.5px}.copy-cost{color:var(--muted);margin-top:10px;font-size:11.5px}.copy-error{color:#b91c1c;background:#fef2f2;border-radius:8px;margin:0 0 10px;padding:9px 12px;font-size:12.5px;line-height:1.5}
