@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bg:#fff;--bg-secondary:#fcfcfc;--bg-sidebar:#f8f8f8;--bg-tertiary:#f1f1f1;--bg-quaternary:#ebebeb;--bg-hover:#0000000a;--bg-active:#00000012;--bg-overlay:#ffffffeb;--text:#333;--text-secondary:#666;--text-tertiary:#999;--text-light:#b3b3b3;--border-light:#f1f1f1;--border:#ebebeb;--border-strong:#d6d6d6;--accent:#3e63dd;--accent-hover:#3358d4;--accent-soft:#edf2fe;--focus:#5e8af7;--danger:#e5484d;--shadow-light:0 2px 4px #0000000a, 0 0 4px #00000014;--shadow-strong:0 4px 16px #0000001f, 0 0 4px #00000014;--red:#e5484d;--red-bg:#feebec;--purple:#8e4ec6;--purple-bg:#f7edfe;--sky:#0b8eb5;--sky-bg:#e1f6fd;--turquoise:#0d9b8a;--turquoise-bg:#e0f8f3;--yellow:#a35829;--yellow-bg:#fff7c2;--green:#2b9a66;--green-bg:#e6f6eb;--blue:#3e63dd;--blue-bg:#edf2fe;--gray:#646464;--gray-bg:#f0f0f0;--orange:#cc4e00;--orange-bg:#ffefd6;--pink:#c2298a;--pink-bg:#fee9f5;--sidebar-width:220px;--panel-width:440px;--row-height:32px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#171717;--bg-secondary:#1b1b1b;--bg-sidebar:#1d1d1d;--bg-tertiary:#222;--bg-quaternary:#292929;--bg-hover:#ffffff0d;--bg-active:#ffffff17;--bg-overlay:#171717eb;--text:#ebebeb;--text-secondary:#b3b3b3;--text-tertiary:#818181;--text-light:#666;--border-light:#222;--border:#292929;--border-strong:#333;--accent:#5b7ff0;--accent-hover:#6e8ef3;--accent-soft:#1d2440;--shadow-light:0 2px 4px #0000004d, 0 0 4px #0006;--shadow-strong:0 4px 16px #00000080, 0 0 4px #0006;--red:#ff6369;--red-bg:#3b1219;--purple:#c18df6;--purple-bg:#301c3b;--sky:#4ccce6;--sky-bg:#0f2d3a;--turquoise:#3dd2b8;--turquoise-bg:#0d2d2a;--yellow:#f5c84a;--yellow-bg:#362b00;--green:#3dd68c;--green-bg:#132d21;--blue:#8da4ef;--blue-bg:#1d2440;--gray:#b4b4b4;--gray-bg:#2a2a2a;--orange:#ff9e57;--orange-bg:#331e0b;--pink:#f17fca;--pink-bg:#37172f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;font-size:13px;line-height:1.4;overflow:hidden}input,textarea,select,button{font:inherit;color:inherit}input,textarea{-webkit-user-select:text;user-select:text}button{cursor:pointer;background:0 0;border:none;padding:0}a{color:inherit;text-decoration:none}svg{flex-shrink:0}::selection{background:var(--accent-soft)}.app{height:100%;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:2px;padding:8px;display:flex}[data-platform=darwin] .sidebar{padding-top:40px}.drag-strip{-webkit-app-region:drag;z-index:0;pointer-events:none;height:32px;position:fixed;top:0;left:0;right:0}[data-platform=darwin] .drag-strip{pointer-events:auto;width:var(--sidebar-width)}.workspace{justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;font-weight:600;display:flex}.workspace-name{align-items:center;gap:8px;display:flex}.workspace-logo{border-radius:4px;flex-shrink:0;width:18px;height:18px;display:block}.title-logo{border-radius:4px;width:16px;height:16px;display:block}.nav-section{color:var(--text-tertiary);padding:14px 8px 4px;font-size:11px;font-weight:600}.nav-item{height:30px;color:var(--text-secondary);text-align:left;border-radius:4px;align-items:center;gap:8px;width:100%;padding:0 8px;font-weight:500;display:flex}.nav-item:hover{background:var(--bg-hover)}.nav-item.active{background:var(--bg-active);color:var(--text)}.nav-item .kbd{color:var(--text-light);margin-left:auto;font-size:11px}.sidebar-spacer{flex:1}.main{background:var(--bg);flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.page{flex:1;min-height:0;display:flex}.page-content{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:48px;padding:0 12px 0 16px;display:flex}.topbar-title{align-items:center;gap:6px;min-width:0;font-weight:600;display:flex}.topbar-title .crumb{color:var(--text-tertiary);font-weight:500}.topbar-actions{align-items:center;gap:6px;display:flex}.viewbar{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:40px;padding:0 12px 0 16px;display:flex}.viewbar-left{color:var(--text);align-items:center;gap:6px;font-weight:500;display:flex}.viewbar-left .count{color:var(--text-tertiary)}.viewbar-right{align-items:center;gap:2px;display:flex;position:relative}.chips-bar{flex-wrap:wrap;align-items:center;gap:6px;padding:0 16px 8px;display:flex}.btn{height:24px;color:var(--text-secondary);white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:0 8px;font-weight:500;display:inline-flex}.btn:hover{background:var(--bg-hover)}.btn.active{color:var(--accent)}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-light)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{border:1px solid var(--border-strong);background:var(--bg);color:var(--text)}.btn-secondary:hover{background:var(--bg-tertiary)}.btn-danger{color:var(--danger)}.btn-lg{height:32px;padding:0 12px}.icon-btn{width:24px;height:24px;color:var(--text-tertiary);border-radius:4px;place-items:center;display:grid}.icon-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.btn:disabled,.btn-primary:disabled{opacity:.5;cursor:default}.segmented{border:1px solid var(--border);border-radius:4px;display:inline-flex;overflow:hidden}.segmented button{height:24px;color:var(--text-secondary);align-items:center;gap:4px;padding:0 8px;display:inline-flex}.segmented button.active{background:var(--bg-tertiary);color:var(--text)}.empty-state{color:var(--text-tertiary);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:40px;display:flex}.empty-state .big-icon{color:var(--text-light)}.empty-state h3{color:var(--text);margin:4px 0 0;font-size:16px;font-weight:600}.empty-state .actions{gap:8px;margin-top:8px;display:flex}.input{border:1px solid var(--border-strong);background:var(--bg);border-radius:4px;outline:none;width:100%;height:32px;padding:0 8px}.input:focus{border-color:var(--focus);box-shadow:0 0 0 3px var(--accent-soft)}.search-input{width:140px;height:24px;color:var(--text);background:0 0;border:none;outline:none;padding:0 4px}.search-input::placeholder,.input::placeholder,textarea::placeholder{color:var(--text-light)}.search-box{color:var(--text-tertiary);border-radius:4px;align-items:center;gap:4px;padding:0 6px;display:flex}.search-box:focus-within{background:var(--bg-tertiary)}.settings{flex:1;overflow-y:auto}.settings-inner{flex-direction:column;gap:24px;max-width:640px;margin:0 auto;padding:32px 24px 64px;display:flex}.settings h2{align-items:center;gap:6px;margin:0 0 4px;font-size:13px;font-weight:600;display:flex}.settings p{color:var(--text-tertiary);margin:0 0 12px}.card{border:1px solid var(--border);background:var(--bg);border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.form-row{flex-direction:column;gap:4px;display:flex}.form-row label{color:var(--text-secondary);font-weight:500}.hint{color:var(--text-tertiary);font-size:12px}.log{background:var(--bg-tertiary);white-space:pre-wrap;-webkit-user-select:text;user-select:text;border-radius:4px;padding:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.log.error{background:var(--red-bg);color:var(--red)}.path{color:var(--text-secondary);word-break:break-all;-webkit-user-select:text;user-select:text;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.loading{height:100%;color:var(--text-tertiary);place-items:center;display:grid}:root{--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-other:#898781;--grid:#ececec;--axis:#c9c9c9;--good:#006300;--bad:#d03b3b}@media (prefers-color-scheme:dark){:root{--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--grid:#262626;--axis:#3a3a3a;--good:#0ca30c;--bad:#e66767}}.nav-list{flex-direction:column;flex:1;gap:2px;min-height:0;display:flex;overflow-y:auto}.nav-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sync-status{color:var(--text-tertiary);border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:6px;margin:4px -8px -8px;padding:8px 12px;font-size:12px;display:flex}.sync-status>:first-child{align-items:center;gap:6px;min-width:0;display:flex}.sync-error{color:var(--bad)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}.select{border:1px solid var(--border);background:var(--bg);height:24px;color:var(--text);border-radius:4px;outline:none;padding:0 6px}.select:focus{border-color:var(--focus)}.segmented button+button{border-left:1px solid var(--border)}.swatch{border-radius:2px;flex-shrink:0;width:8px;height:8px;display:inline-block}.input-row{gap:8px;display:flex}.input-row .input{flex:1;min-width:0}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.check-row{color:var(--text-secondary);align-items:center;gap:8px;display:flex}.button-row{flex-wrap:wrap;gap:8px;display:flex}.error-text{color:var(--bad)}.stats{grid-template-columns:120px 1fr;gap:6px 12px;margin:0;display:grid}.stats dt{color:var(--text-tertiary)}.stats dd{-webkit-user-select:text;user-select:text;margin:0}.empty-state .log{max-width:520px}.toast{background:var(--bg);box-shadow:var(--shadow-strong);border:1px solid var(--border);z-index:30;border-radius:8px;align-items:center;gap:8px;padding:6px 8px 6px 12px;font-weight:500;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.toast.error{color:var(--bad)}.batch-overlay{z-index:80;background:#00000026;place-items:center;display:grid;position:fixed;inset:0}.batch-card{background:var(--bg);box-shadow:var(--shadow-strong);border-radius:8px;padding:16px 20px;font-weight:500}.report-scroll{background:var(--bg-secondary);border-top:1px solid var(--border);flex:1;overflow-y:auto}.report-doc{background:var(--bg);border:1px solid var(--border);-webkit-user-select:text;user-select:text;border-radius:8px;flex-direction:column;gap:28px;max-width:880px;margin:24px auto 64px;padding:32px 40px;display:flex}.report-header h1{color:var(--text);margin:4px 0 6px;font-size:24px;font-weight:600}.eyebrow{color:var(--text-tertiary);font-size:12px;font-weight:500}.report-meta{color:var(--text-secondary)}.report-meta strong{color:var(--text);font-weight:600}.report-section h2{margin:0 0 2px;font-size:15px;font-weight:600}.section-sub{color:var(--text-tertiary);margin:0 0 10px}.notes h2{margin-bottom:6px}.notes-input{border:1px dashed var(--border-strong);resize:vertical;width:100%;color:var(--text);background:0 0;border-radius:6px;outline:none;padding:8px 10px;line-height:1.5}.notes-input:focus{border-style:solid;border-color:var(--focus)}.notes-print{white-space:pre-wrap;line-height:1.5}.print-only{display:none}.tiles{background:var(--border);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.tile{background:var(--bg);flex-direction:column;gap:2px;min-width:0;padding:14px 16px;display:flex}.tile-label{color:var(--text-secondary);font-weight:500}.tile-value{color:var(--text);font-size:26px;font-weight:600;line-height:1.25}.tile-delta{flex-wrap:wrap;align-items:center;gap:3px;font-size:12px;font-weight:500;display:flex}.tile-delta.up{color:var(--good)}.tile-delta.down{color:var(--bad)}.tile-delta.flat,.tile-delta.muted{color:var(--text-tertiary)}.tile-delta .vs{color:var(--text-tertiary);font-weight:400}.legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin:0 0 6px;display:flex}.legend-item{align-items:center;gap:6px;display:inline-flex}.chart{position:relative}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .grid{stroke:var(--grid);stroke-width:1px}.chart .baseline{stroke:var(--axis);stroke-width:1px}.chart text{fill:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:11px}.chart .direct-label{fill:var(--text-secondary);font-weight:500}.chart .line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .end-dot{stroke:var(--bg);stroke-width:2px}.chart .crosshair{stroke:var(--axis);stroke-width:1px}.chart .hit{fill:#0000;outline:none}.chart .hit:focus-visible{fill:var(--bg-hover)}.chart-empty{color:var(--text-tertiary);text-align:center;border:1px dashed var(--border);border-radius:6px;padding:24px 0}.chart-tooltip{pointer-events:none;background:var(--bg-overlay);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow-strong);z-index:10;white-space:nowrap;border-radius:6px;min-width:150px;padding:6px 10px;position:absolute;transform:translate(-50%,calc(-100% - 8px))}.tip-title{margin-bottom:2px;font-weight:600}.tip-row{color:var(--text-secondary);align-items:center;gap:6px;display:flex}.tip-row.total{border-top:1px solid var(--border);margin-top:3px;padding-top:3px}.tip-value{color:var(--text);font-variant-numeric:tabular-nums;margin-left:auto;padding-left:12px;font-weight:500}.tip-extra{color:var(--text-tertiary);font-weight:400}.data-table{margin-top:8px}.data-table summary{color:var(--text-tertiary);cursor:pointer;width:-moz-fit-content;width:fit-content}.data-table summary:hover{color:var(--text-secondary)}.table-scroll{max-height:280px;margin-top:6px;overflow:auto}.report-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.report-table th{text-align:left;color:var(--text-tertiary);border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px;font-weight:500}.report-table td{border-bottom:1px solid var(--border-light);vertical-align:top;padding:6px 8px}.report-table .num{text-align:right;white-space:nowrap}.report-table .rank{color:var(--text-tertiary);width:24px}.report-table .nowrap{white-space:nowrap}.cell-label{align-items:center;gap:6px;display:inline-flex}.post-cell{min-width:180px}.post-platform{color:var(--text-tertiary);font-size:12px}.post-title{color:var(--text);overflow-wrap:anywhere;display:block}a.post-title:hover{color:var(--accent);text-decoration:underline}.report-footer{color:var(--text-tertiary);border-top:1px solid var(--border);padding-top:12px;font-size:12px}.delta{white-space:nowrap;align-items:center;gap:2px;font-size:12px;font-weight:500;display:inline-flex}.delta.up{color:var(--good)}.delta.down{color:var(--bad)}.delta.flat,.tile-delta .muted,.tile-note{color:var(--text-tertiary);font-weight:400}.section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.table-scroll.wide{max-height:none;margin-top:0;overflow-x:auto}.metrics-table th[scope=row]{color:var(--text-secondary);border-bottom:1px solid var(--border-light);white-space:nowrap;font-weight:500}.metrics-table td{vertical-align:top}.derived{color:var(--text-tertiary)}.history-table td{vertical-align:middle}@media print{:root{--bg:#fff;--bg-secondary:#fff;--text:#333;--text-secondary:#666;--text-tertiary:#8a8a8a;--text-light:#b3b3b3;--border-light:#f1f1f1;--border:#e4e4e4;--border-strong:#d6d6d6;--accent:#3e63dd;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--grid:#ececec;--axis:#c9c9c9;--good:#006300;--bad:#d03b3b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body,#root{background:#fff;height:auto;overflow:visible}.no-print{display:none!important}.print-only{display:block}.app,.main,.page,.page-content,.report-scroll{background:#fff;border:none;height:auto;display:block;overflow:visible}.report-doc{border:none;border-radius:0;gap:22px;max-width:none;margin:0;padding:0}.notes.empty{display:none}.avoid-break,.tiles,.report-table tr{break-inside:avoid}.report-section h2{break-after:avoid}.chart-tooltip{display:none}.table-scroll.wide{overflow:visible}}:root{--pf-instagram:#d62976;--pf-facebook:#1877f2;--pf-youtube:red;--pf-tiktok:#111}@media (prefers-color-scheme:dark){:root{--pf-tiktok:#f1f1f1;--pf-facebook:#4a90f5}}.pf-instagram{color:var(--pf-instagram)}.pf-facebook{color:var(--pf-facebook)}.pf-youtube{color:var(--pf-youtube)}.pf-tiktok{color:var(--pf-tiktok)}.new-post{justify-content:center;margin:4px 0 8px}.spacer{flex:1}.muted-row td{color:var(--text-tertiary)}.auth{background:var(--bg-secondary);place-items:center;min-height:100%;padding:24px;display:grid;overflow:auto}.auth-card{background:var(--bg);border:1px solid var(--border);width:380px;max-width:100%;box-shadow:var(--shadow-light);border-radius:10px;padding:28px}.auth-brand{margin-bottom:18px;font-weight:600}.auth h1{margin:0 0 6px;font-size:20px}body{-webkit-user-select:auto;user-select:auto}.form{flex-direction:column;gap:12px;margin-top:12px;display:flex}.form label,.field{color:var(--text-secondary);flex-direction:column;gap:4px;font-weight:500;display:flex}.field-row{gap:12px;display:flex}.field-row .field{flex:1}.textarea{resize:vertical;height:auto;color:var(--text);padding:8px;font-weight:400;line-height:1.5}.input:disabled{background:var(--bg-tertiary)}.inline-form{flex-direction:row;align-items:center;gap:8px;display:flex}.inline-form .input{flex:1}.input.narrow{flex:none;width:120px}.check-row.disabled{color:var(--text-light)}.check-group{flex-direction:column;gap:6px;display:flex}.check-group.indent{padding-left:22px}.copy-row{gap:8px;margin-top:6px;display:flex}.copy-row .input{flex:1}.notice{border-radius:6px;justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 12px;line-height:1.45;display:flex}.notice>div{flex:1;min-width:0}.notice-info{background:var(--accent-soft);color:var(--text)}.notice-error{background:var(--red-bg);color:var(--red)}.notice-success{background:var(--green-bg);color:var(--text)}.badge{white-space:nowrap;border-radius:10px;align-items:center;gap:3px;height:20px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.badge-draft,.badge-cancelled{background:var(--gray-bg);color:var(--gray)}.badge-scheduled{background:var(--blue-bg);color:var(--blue)}.badge-publishing{background:var(--yellow-bg);color:var(--yellow)}.badge-published{background:var(--green-bg);color:var(--green)}.badge-failed{background:var(--red-bg);color:var(--red)}.acct-avatar{background:var(--bg-quaternary);color:var(--text-secondary);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:600;display:inline-grid;position:relative}.acct-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.acct-avatar-pf{background:var(--bg);border-radius:50%;place-items:center;padding:1px;display:grid;position:absolute;bottom:-4px;right:-4px}.acct-label{align-items:center;gap:8px;min-width:0;display:inline-flex}.acct-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.acct-handle{color:var(--text-tertiary)}.modal{background:var(--bg);width:480px;max-width:calc(100vw - 32px);max-height:80vh;box-shadow:var(--shadow-strong);border:1px solid var(--border);border-radius:10px;flex-direction:column;height:-moz-fit-content;height:fit-content;display:flex}.modal.wide{width:720px}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.modal-header h2{margin:0;font-size:15px}.modal-body{flex-direction:column;gap:12px;padding:16px;display:flex;overflow-y:auto}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.pick-list{flex-direction:column;gap:2px;display:flex}.pick-row{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px;display:flex}.pick-row:hover{background:var(--bg-hover)}.client-list{flex-direction:column;gap:8px;display:flex}.client-row{color:var(--text);flex-direction:row;justify-content:space-between;align-items:center}.client-row:hover{box-shadow:var(--shadow-light)}.client-row.archived{opacity:.6}.client-name{font-weight:600}.client-accounts{gap:10px;display:flex}.account-list{flex-direction:column;display:flex}.account-row{border-bottom:1px solid var(--border-light);flex-wrap:wrap;align-items:center;gap:10px;min-height:40px;display:flex}.account-numbers{font-variant-numeric:tabular-nums;flex:1 0 100%;order:1;margin:-8px 0 8px}.numbers-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.connect-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.connect-option{border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;display:flex}.connect-option .hint{flex:1}.connect-title{align-items:center;gap:6px;font-weight:600;display:flex}.card h2{margin:0;font-size:13px;font-weight:600}.card p{color:var(--text-tertiary);margin:0}.media-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.media-strip{flex-wrap:wrap;gap:10px;display:flex}.media-tile{border:1px solid var(--border);background:var(--bg-secondary);text-align:left;border-radius:8px;flex-direction:column;margin:0;padding:0;display:flex;overflow:hidden}.media-tile img,.media-tile video{aspect-ratio:1;object-fit:cover;background:#000;width:100%;display:block}.media-tile figcaption{flex-wrap:wrap;align-items:center;gap:4px;padding:4px 6px;font-size:12px;display:flex}.media-tile.small{width:140px}.media-tile.pickable{cursor:pointer}.media-tile.pickable:hover{border-color:var(--accent)}.media-tile.uploading{justify-content:center;gap:8px;min-height:100px;padding:10px}.media-tile progress{width:100%}.media-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding:0 2px;font-size:12px;overflow:hidden}.tile-actions{margin-left:auto;display:flex}.composer{max-width:720px}.account-toggles{flex-wrap:wrap;gap:8px;display:flex}.account-toggle{border:1px solid var(--border-strong);background:var(--bg);border-radius:20px;padding:4px 12px 4px 6px}.account-toggle.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.account-toggle:disabled{opacity:.6;cursor:default}.target-card.locked{opacity:.7}.target-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.options{flex-direction:column;gap:10px;padding-top:4px;display:flex}.problem{color:var(--red);align-items:center;gap:6px;display:flex}.when-input{width:260px;margin-top:6px}.segmented button{height:30px;padding:0 12px}.field .segmented{align-self:flex-start}.pf-label{color:var(--text-secondary);align-items:center;gap:4px;font-weight:500;display:inline-flex}select.input{padding-right:4px}.queue{flex:1;padding:0 16px 48px;overflow-y:auto}.day{max-width:920px;margin:0 auto}.day-label{color:var(--text-secondary);margin:18px 0 6px;font-size:13px;font-weight:600}.post-row{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;align-items:center;gap:12px;margin-bottom:6px;padding:10px 12px;display:flex}.post-row:hover{box-shadow:var(--shadow-light)}.post-time{width:64px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.post-media{width:28px;color:var(--text-tertiary);align-items:center;gap:2px;display:inline-flex}.post-main{flex-direction:column;flex:1;min-width:0;display:flex}.post-caption{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.post-targets{gap:8px;display:flex}.target-dot{box-shadow:0 0 0 2px var(--border);border-radius:50%;padding:2px;display:inline-flex}.target-dot.status-published{box-shadow:0 0 0 2px var(--green)}.target-dot.status-failed{box-shadow:0 0 0 2px var(--red)}.target-dot.status-publishing{box-shadow:0 0 0 2px var(--yellow)}.target-dot.status-scheduled{box-shadow:0 0 0 2px var(--blue)}.caption-view{white-space:pre-wrap;-webkit-user-select:text;user-select:text;line-height:1.5}.caption-view.small{color:var(--text-secondary);font-size:12px}.target-status{border-bottom:1px solid var(--border-light);flex-direction:column;align-items:flex-start;gap:6px;padding:10px 0;display:flex}.target-status:last-child{border-bottom:none}.target-status .target-head{width:100%}.target-status a{color:var(--accent)}.activity{flex-direction:column;gap:4px;margin:0;padding-left:16px;display:flex}.topbar-title .badge{margin-left:6px}@media (max-width:720px){.connect-grid{grid-template-columns:1fr}.sidebar{display:none}}.settings-inner.wide{max-width:960px}.card h2{align-items:center;gap:6px;display:flex}.report-table td .icon-btn{vertical-align:middle;display:inline-grid}.report-table .total-row td{border-top:1px solid var(--border);font-weight:600}.link-cell{align-items:center;gap:4px;display:flex}.link-code{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.links-table td:first-child{max-width:340px}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pre-line{white-space:pre-line}.form-submit{justify-content:flex-end}.form-submit .btn{align-self:flex-start}.entry-form>.form-grid{gap:8px}.file-button{cursor:pointer;align-items:center;gap:6px;display:inline-flex;position:relative;overflow:hidden}.file-button input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.qr-box{border:1px solid var(--border);background:#fff;border-radius:8px;place-items:center;padding:12px;display:grid}.qr-box img{width:240px;height:240px;image-rendering:pixelated}.board-filters{border-bottom:1px solid var(--border-light);align-items:center;gap:8px;padding:10px 16px;display:flex}.board-filters .error-text{align-items:center;gap:4px;font-weight:500;display:inline-flex}.board-notice{padding:10px 16px 0}.board{flex:1;grid-auto-columns:minmax(220px,1fr);grid-auto-flow:column;align-items:start;gap:10px;padding:12px 16px;display:grid;overflow:auto}.board-column{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;flex-direction:column;gap:8px;min-height:120px;padding:8px;display:flex}.board-column h2{color:var(--text-secondary);gap:6px;margin:2px 4px;font-size:12px;font-weight:600;display:flex}.board-column h2 .count{color:var(--text-tertiary);font-weight:500}.piece-card{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:grab;border-radius:6px;flex-direction:column;gap:3px;padding:8px 10px;text-decoration:none;display:flex}.piece-card:hover{border-color:var(--accent)}.piece-card.overdue{border-left:3px solid var(--red)}.piece-title{font-weight:600}.piece-meta{flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.flag{color:var(--text-secondary);background:var(--bg-tertiary);border-radius:4px;align-self:flex-start;align-items:center;gap:4px;padding:1px 6px;font-size:12px;display:inline-flex}.flag.warn{color:var(--red);background:var(--red-bg)}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.person-chip{border:1px solid var(--border);border-radius:12px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;display:inline-flex}.person-chip .chip-note{color:var(--text-tertiary)}.release-missing,.release-expired{color:var(--red)}.person-chip.release-missing,.person-chip.release-expired{border-color:var(--red);background:var(--red-bg)}.release-expiring{color:var(--yellow,#b7791f)}.person-chip.release-valid{border-color:var(--green)}.link-btn{color:var(--accent);padding:0}.sticky-save{background:linear-gradient(transparent, var(--bg) 30%);padding:10px 0;position:sticky;bottom:0}.history-comment{border-left:3px solid var(--border);color:var(--text-secondary);white-space:pre-wrap;margin:4px 0;padding:6px 10px}.check-list{flex-direction:column;gap:6px;display:flex}.check-list .check-row{flex-wrap:wrap}.span-2{grid-column:1/-1}.calendar-bar{align-items:center;gap:8px;display:flex}.calendar{border-top:1px solid var(--border-light);border-left:1px solid var(--border-light);grid-template-columns:repeat(7,1fr);display:grid}.calendar-head{color:var(--text-tertiary);border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light);padding:4px 6px;font-size:12px}.calendar-day{border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light);flex-direction:column;gap:3px;min-width:0;min-height:84px;padding:4px;display:flex}.calendar-day.other{background:var(--bg-secondary)}.calendar-day.other .calendar-date{color:var(--text-light)}.calendar-day.today .calendar-date{background:var(--accent);color:#fff;border-radius:10px;padding:0 6px}.calendar-date{color:var(--text-secondary);align-self:flex-start;font-size:12px}.calendar-shoot{background:var(--accent-soft);color:var(--text);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;align-items:center;gap:3px;padding:2px 4px;font-size:12px;text-decoration:none;display:flex;overflow:hidden}.calendar-shoot.late{background:var(--red-bg);color:var(--red)}.shoot-row{border-bottom:1px solid var(--border-light);color:var(--text);flex-direction:column;gap:2px;padding:8px 0;text-decoration:none;display:flex}.handoff{border-bottom:1px solid var(--border-light);flex-direction:column;align-items:flex-start;gap:8px;padding:10px 0;display:flex}.handoff-head{align-items:baseline;gap:8px;width:100%;display:flex}.handoff-notes{white-space:pre-wrap;background:var(--bg-secondary);box-sizing:border-box;border-radius:6px;width:100%;padding:8px 10px}.review-card{flex-direction:column;gap:12px;width:640px;display:flex}.review-card h1{margin:0;font-size:20px}.review-media{flex-direction:column;gap:8px;display:flex}.review-media video,.review-media img{background:#000;border-radius:8px;width:100%;max-height:70vh}.review-caption{white-space:pre-wrap;background:var(--bg-secondary);color:var(--text);border-radius:6px;padding:8px 10px;font-weight:400}
