@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-cyrillic-ext-wght-normal.6e45df54.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-cyrillic-wght-normal.01cec89f.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-vietnamese-wght-normal.4cfbb1da.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-latin-ext-wght-normal.e54f6524.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/montserrat-latin-wght-normal.a838cfed.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#f1f3ed;--paper:#ffffff;--ink:#1a1a1a;--muted:#4b5563;--faint:#656c5c;--line:#e5e7eb;--line-olive:#dce3d1;--accent:#d8eda7;--accent-line:#cfdfae;--accent-ink:#3f512e;--olive:#52653d;--sidebar:#f0f2e9;--ok:#2f7a3e;--ok-bg:#e4f2dc;--off:#6b7280;--off-bg:#eef0ea;--warn:#8a5a00;--warn-bg:#fbf0d6;--bad:#a83a2f;--bad-bg:#fae3df;--radius:12px;--radius-lg:22px;--pill:999px;--field:#f4f5ef;--shadow:0 1px 2px rgba(26,26,26,0.03),0 12px 32px -14px rgba(82,101,61,0.14);--on-olive:#ffffff;--olive-hover:#445632;--hairline:#eef0e8;--txt-strong:#3f4538;--thumb-bg:#eceee6;--skel-a:#eceee6;--skel-b:#f6f7f2;--l1:#eef6dc;--l2:#d8eda7;--l3:#a9c97a;--l4:#52653d;--l3-ink:#22301a;--l4-ink:#ffffff;--cell-ink:#3f512e;--fmt-img:#a9c97a;--fmt-vid:#52653d;--fmt-car:#d8eda7;--logo-bg:#ffffff;--ring:rgba(82,101,61,0.14);--card-hover-shadow:0 2px 4px rgba(26,26,26,.04),0 18px 36px -14px rgba(82,101,61,.22);--select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2352653d' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");color-scheme:light;--font:"Montserrat Variable","Montserrat",Arial,Helvetica,sans-serif;--mono:ui-monospace,"SFMono-Regular",Consolas,monospace}:root[data-theme=dark]{color-scheme:dark;--bg:#11140f;--paper:#1b1f18;--ink:#eef1e8;--muted:#c4cab9;--faint:#a2aa97;--line:#2c3227;--line-olive:#323b2b;--accent:#d8eda7;--accent-line:#b9cf86;--accent-ink:#2f3d22;--olive:#c5df8a;--olive-hover:#d8eda7;--on-olive:#1b2412;--sidebar:#161a13;--ok:#8fd19a;--ok-bg:#1f3323;--off:#a3a9a0;--off-bg:#262b22;--warn:#e7bb63;--warn-bg:#3a2f15;--bad:#f09488;--bad-bg:#3e201c;--field:#252b21;--shadow:0 1px 2px rgba(0,0,0,0.35),0 12px 32px -14px rgba(0,0,0,0.6);--card-hover-shadow:0 2px 4px rgba(0,0,0,.35),0 18px 36px -14px rgba(0,0,0,.7);--hairline:#2a3125;--txt-strong:#dde2d4;--thumb-bg:#252b21;--skel-a:#20251c;--skel-b:#2a3125;--l1:#2b3622;--l2:#3f5230;--l3:#7a9a52;--l4:#c5df8a;--l3-ink:#11160c;--l4-ink:#1b2412;--cell-ink:#dfe8cc;--fmt-img:#7a9a52;--fmt-vid:#c5df8a;--fmt-car:#3f5230;--logo-bg:#f6f7f2;--ring:rgba(197,223,138,0.22);--select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23c5df8a' fill='none' stroke-width='1.5'/%3E%3C/svg%3E")}:root[data-theme=dark] .client-logo{background:#f6f7f2;border-radius:8px;padding:4px;width:54px}:root[data-theme=dark] .login-logos .lg-radium,:root[data-theme=dark] .login-logos .lg-saham{background:#f6f7f2;border-radius:10px;padding:6px 10px;box-sizing:content-box}:root[data-theme=dark] .modal{box-shadow:0 30px 80px rgba(0,0,0,.6)}:root[data-theme=dark] .overlay{background:rgba(0,0,0,.6)}.idle-warn{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:70;display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 32px);padding:10px 10px 10px 18px;border-radius:var(--pill);background:var(--ink);color:var(--paper);box-shadow:0 18px 40px -12px rgba(0,0,0,.35);font-size:13px}.idle-warn b{font-weight:700}.idle-warn .btn.primary{background:var(--accent);color:#2f3d22}.login-notice{margin:-10px 0 22px;padding:10px 14px;border-radius:14px;background:var(--warn-bg);color:var(--warn);font-size:13px}.theme-toggle{width:34px;height:34px;border-radius:50%;border:0;background:var(--field);color:var(--ink);display:grid;place-items:center;cursor:pointer;flex:none;transition:background .12s ease}.theme-toggle:hover{background:var(--accent);color:#2f3d22}.theme-toggle svg{width:16px;height:16px}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.login-theme{position:absolute;top:20px;right:20px}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:13.5px;line-height:1.5}a{color:inherit}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--olive);outline-offset:2px}.tabular{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin:16px 0 16px 16px;padding:24px 14px 18px;display:flex;flex-direction:column;gap:26px;position:-webkit-sticky;position:sticky;top:16px;height:calc(100vh - 32px)}.brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:700;letter-spacing:-.01em;padding:0 8px;text-decoration:none}.brand sup{font-size:10px;font-weight:400}.brand-mark{font-size:20px;color:var(--ink)}.client-switch{background:var(--field);border-radius:16px;padding:12px 14px;display:grid;grid-gap:2px;gap:2px}.client-switch small{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.client-switch b{font-weight:500}.nav{display:grid;grid-gap:4px;gap:4px}.nav-label{font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.08em;padding:0 10px 6px}.nav a{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--pill);text-decoration:none;color:var(--muted);line-height:1.25}.nav a:hover{background:var(--field);color:var(--ink)}.nav a.on{background:var(--olive);color:var(--on-olive)}.nav svg{width:17px;height:17px;flex:none}.sidebar-foot{margin-top:auto;font-size:12px;color:var(--muted);padding:0 8px;display:grid;grid-gap:10px;gap:10px}.client-logo{display:block;width:46px;height:auto;margin-bottom:4px}.logout{justify-self:start;display:inline-flex;align-items:center;gap:6px;border:0;background:var(--field);border-radius:var(--pill);padding:7px 14px;font-size:12px;color:var(--muted);cursor:pointer}.logout:hover{color:var(--ink);background:var(--accent)}.logout svg{width:14px;height:14px}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);background:var(--bg)}.login-left{display:flex;flex-direction:column;justify-content:space-between;gap:48px;padding:56px clamp(24px,8vw,140px)}.login-brand{display:flex;align-items:center;gap:12px;font-size:26px;font-weight:700;letter-spacing:-.05em}.login-brand sup{font-size:13px;font-weight:600;letter-spacing:0}.login-brand-mark{font-size:24px;font-weight:600;letter-spacing:-1.3px}.login-kicker{display:block;font-size:13px;font-weight:600;color:var(--muted);letter-spacing:1.9px;text-transform:uppercase;margin-bottom:20px}.login-pitch h1{font-size:clamp(34px,4.4vw,60px);font-weight:500;line-height:1.08;letter-spacing:-.035em;margin:0 0 22px}.login-pitch p{margin:0;color:var(--muted);font-size:15px;line-height:1.7}.login-partners small{display:block;font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.login-logos{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.login-logos .lg-saham{height:64px;width:auto}.login-logos .lg-radium{height:30px;width:auto}.login-x{color:var(--faint);font-size:18px}.login-right{display:flex;align-items:center;justify-content:center;padding:40px 24px}.login-card{width:100%;max-width:460px;background:var(--paper);border:0;border-radius:28px;padding:44px 46px 36px;box-shadow:0 24px 60px -30px rgba(40,52,25,.18)}.login-lock{width:60px;height:60px;border-radius:50%;background:var(--field);border:0;display:grid;place-items:center;color:var(--ink);margin-bottom:30px}.login-lock svg{width:26px;height:26px}.login-card h2{font-size:26px;font-weight:500;letter-spacing:-1.2px;margin:0 0 10px}.login-sub{margin:0 0 30px;color:var(--muted);font-size:13px}.login-form{display:grid;grid-gap:20px;gap:20px}.login-form label{display:grid;grid-gap:8px;gap:8px;font-size:14px;color:var(--muted)}.login-form input{width:100%;box-sizing:border-box;height:52px;border:1px solid transparent;border-radius:14px;padding:0 16px;background:var(--field);font-size:14px;color:var(--ink)}.login-form input:focus{outline:none;border-color:var(--olive);box-shadow:0 0 0 3px var(--ring)}.login-pass{position:relative;display:block}.login-pass input{padding-right:86px}.login-pass button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--muted);font-size:12px;padding:6px 8px;cursor:pointer;border-radius:var(--radius)}.login-pass button:hover{color:var(--ink);background:var(--bg)}.login-error{margin:-4px 0 0;color:#b42318;font-size:13px}.login-submit{height:50px;margin-top:6px;border:0;background:var(--accent);color:var(--accent-ink);border-radius:var(--pill);font-size:15px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer}.login-submit:hover{background:#cfe697}.login-submit:disabled{opacity:.7;cursor:progress}.login-submit svg{width:18px;height:18px}.login-note{display:block;margin-top:26px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}@media (max-width:900px){.login{display:flex;flex-direction:column;gap:24px;padding:28px 16px 40px}.login-left{display:contents}.login-brand{order:1}.login-right{order:2;padding:0}.login-pitch{order:3;margin-top:12px}.login-partners{order:4}.login-pitch h1{font-size:30px}.login-card{padding:30px 22px 26px}}.main{padding:30px 36px 64px;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:26px;gap:26px;align-content:start}.main,.main>*{min-width:0}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 24px;flex-wrap:wrap}.page-head h1{font-size:36px;font-weight:400;margin:0;letter-spacing:-.035em;line-height:1.1}.page-head p{margin:6px 0 0;color:var(--muted);max-width:70ch}.crumbs,.page-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.crumbs{font-size:12.5px;color:var(--faint);margin-bottom:8px}.stamp{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);background:var(--paper);border-radius:var(--pill);padding:4px 11px;white-space:nowrap}.dot{width:7px;height:7px;border-radius:50%;background:#7cb342;flex:none}.dot.warn{background:#e0a106}.dot.bad{background:var(--bad)}.card{background:var(--paper);border:1px solid transparent;border-radius:var(--radius-lg);box-shadow:var(--shadow)}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 24px 0;flex-wrap:wrap}.card-head h2{font-size:19px;font-weight:400;margin:0;letter-spacing:-.02em}.card-head p{margin:4px 0 0;color:var(--faint);font-size:12.5px}.card-body{padding:18px 24px 24px}.corner{width:32px;height:32px;border-radius:50%;border:0;background:var(--field);color:var(--ink);display:grid;place-items:center;cursor:pointer;flex:none;transition:background .12s ease}.corner:hover{background:var(--accent)}.corner svg{width:14px;height:14px}.chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;border-radius:var(--pill);background:var(--accent);color:var(--accent-ink);font-size:11.5px;font-weight:600;white-space:nowrap}.chip.soft{background:var(--field);color:var(--muted);font-weight:500}.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.filters #f-project{width:214px}.filters #f-comp{width:198px}.filters .more-toggle,.filters .seg button,.filters .select,.page-tools .seg button,.page-tools .select{font-size:12.5px}.filters .seg button{padding:0 11px}.more-toggle{height:38px;padding:0 14px 0 16px;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:var(--pill);background:var(--paper);color:var(--muted);cursor:pointer;font-size:13px}.more-toggle:hover{color:var(--ink)}.more-toggle svg{width:16px;height:16px;transition:transform .15s ease}.more-toggle.open svg{transform:rotate(180deg)}.filters-more{flex-basis:100%;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.field{display:grid;grid-gap:4px;gap:4px;min-width:0}.field label{font-size:11.5px;color:var(--muted)}.input,.select{height:38px;border:0;border-radius:var(--pill);background:var(--paper);padding:0 16px;color:var(--ink);min-width:0}.select{padding-right:34px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right 14px center}.select:disabled{color:var(--faint);cursor:default}.input{width:220px}.seg{display:inline-flex;gap:2px;border-radius:var(--pill);height:38px;padding:3px;background:var(--paper)}.seg button{border:0;background:transparent;padding:0 14px;border-radius:var(--pill);cursor:pointer;color:var(--muted);white-space:nowrap;font-size:13px}.seg button:hover{color:var(--ink)}.seg button.on{background:var(--olive);color:var(--on-olive)}.check{display:inline-flex;align-items:center;gap:7px;height:36px;color:var(--muted);cursor:pointer;white-space:nowrap}.check input{accent-color:var(--olive);width:15px;height:15px}.btn{height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 16px;border-radius:var(--pill);border:0;background:var(--paper);cursor:pointer;text-decoration:none;white-space:nowrap;color:var(--ink)}.btn:hover{background:var(--accent)}.btn.primary{background:var(--olive);color:var(--on-olive)}.btn.primary:hover{background:var(--olive-hover)}.btn.ghost{background:transparent;color:var(--muted)}.btn.ghost:hover{background:var(--paper);color:var(--ink)}.btn:disabled{opacity:.55;cursor:progress}.btn.sm{height:32px;padding:0 12px;font-size:13px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.kpi,.kpis{display:grid}.kpi{padding:20px 22px;grid-gap:10px;gap:10px;align-content:start}.kpi-top{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:32px}.kpi-top>span{font-size:14px;color:var(--ink)}.kpi b{font-size:36px;font-weight:700;letter-spacing:-.035em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.kpi-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--faint)}.kpi .bar{margin-top:0;height:8px}.kpi .fmt-legend{display:flex;gap:4px 10px;flex-wrap:wrap;font-size:11.5px;color:var(--faint)}.kpi .fmt-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:0}.bar{display:flex;gap:2px;height:6px;border-radius:4px;overflow:hidden;background:var(--off-bg);margin-top:4px}.bar i{display:block;height:100%}.heat-wrap{overflow-x:auto}.heat-sel{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:16px 24px 0;padding:6px 6px 6px 16px;border-radius:var(--pill);background:var(--field);font-size:13px;color:var(--muted)}.heat-sel b{color:var(--ink);font-weight:600}.heat-sel .reset-view{gap:6px;background:var(--olive);color:var(--on-olive)}.heat-sel .reset-view:hover{background:var(--olive-hover)}.heat{border-collapse:separate;border-spacing:5px 6px;width:100%;min-width:760px;font-size:12.5px}.heat th{font-weight:500;color:var(--faint);padding:2px 4px 4px;text-align:center;white-space:nowrap}.heat th button:hover{color:var(--ink)!important}.heat th.on{color:var(--ink);font-weight:700}.heat td.heat-empty{text-align:center;color:var(--muted);padding:22px 0 8px;font-size:13px}.heat td.name{text-align:left;padding:4px 12px 4px 0;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis}.heat td.name button{border:0;background:none;padding:0;cursor:pointer;text-align:left}.heat td.name button:hover b{text-decoration:underline}.heat td.name b{font-weight:500}.heat td.name small{color:var(--faint);margin-left:6px}.heat tr.group td{padding:14px 0 0;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-weight:500}.cell{height:34px;min-width:46px;border-radius:10px;border:0;width:100%;cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:12px;font-weight:500;color:var(--cell-ink);background:var(--field)}.cell:hover{outline:2px solid var(--olive);outline-offset:-2px}.cell.l0{color:transparent;cursor:default}.cell.l0:hover{outline:0}.cell.l1{background:var(--l1)}.cell.l2{background:var(--l2)}.cell.l3{background:var(--l3);color:var(--l3-ink)}.cell.l4{background:var(--l4);color:var(--l4-ink)}.cell.sel{outline:2px solid var(--ink);outline-offset:-2px}.cell .new{font-size:10px;opacity:.75;margin-left:2px}.legend{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--faint)}.legend i{width:12px;height:12px;border-radius:50%;display:inline-block}.alogo{display:inline-grid;place-items:center;flex:none;background:var(--logo-bg);border:1px solid var(--line);border-radius:8px;overflow:hidden}.alogo.md{width:164px;height:76px;padding:6px 8px}.alogo.sm{width:56px;height:30px;padding:4px 6px;border-radius:6px}.alogo.dark{background:#1d2118;border-color:#1d2118}.alogo img{max-width:100%;max-height:100%;object-fit:contain;display:block}.alogo.md img{max-width:146px;max-height:62px}.alogo.sm img{max-width:42px;max-height:20px}@media (max-width:600px){.alogo.md{width:112px;height:56px}.alogo.md img{max-width:94px;max-height:42px}.block .block-title b{white-space:normal;font-size:15px;line-height:1.25}}.alogo .ini{font-weight:700;color:#52653d;letter-spacing:.04em}.alogo.sm .ini{font-size:11px}.plats{gap:8px}.plat-i,.plats{align-items:center}.plat-i{display:inline-flex;gap:4px}.plat-i img{display:block;border-radius:5px}.plat-n{font-size:12px;color:var(--muted)}.plat-txt{display:inline-grid;place-items:center;min-width:20px;padding:0 4px;border-radius:5px;background:var(--off-bg);color:var(--muted);font-size:9.5px;font-weight:700}.blocks{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));grid-gap:16px}.blocks,.logo-blocks{display:grid;gap:16px}.logo-blocks{grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px}.logo-block{height:140px;padding:22px 26px;display:grid;place-items:center;cursor:pointer;background:var(--logo-bg);transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.logo-block:hover{transform:translateY(-2px)}.logo-block.on{border-color:var(--olive);box-shadow:0 0 0 1px var(--olive),var(--shadow)}.logo-block img{max-width:100%;max-height:92px;object-fit:contain;display:block}.logo-block .ini{font-weight:600;color:#52653d}@media (max-width:900px){.logo-blocks{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-block{height:110px}.logo-block img{max-height:74px}}.block{padding:20px 22px;display:grid;grid-gap:14px;gap:14px;align-content:start;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease;min-width:0}.block:hover{transform:translateY(-2px)}.block:hover .corner{background:var(--accent)}.block.on{border-color:var(--olive);box-shadow:0 0 0 1px var(--olive),var(--shadow)}.block.on .corner{background:var(--olive);color:var(--on-olive)}.block-head{display:flex;align-items:center;gap:14px;min-width:0}.block .alogo.md{width:96px;height:50px;padding:6px 8px;border-color:var(--hairline);border-radius:12px}.block .alogo.md img{max-width:80px;max-height:38px}.block .alogo.dark{border-color:#1d2118}.block-title{display:grid;grid-gap:1px;gap:1px;min-width:0;flex:1 1}.block-title b{font-size:14.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.block-title small{font-size:12px;color:var(--faint)}.block-num{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.block-num strong{font-size:34px;font-weight:700;letter-spacing:-.035em;line-height:1}.block-num>span:not(.chip):not(.plats){font-size:13px;color:var(--faint)}.block-num .chip{align-self:center}.block-num .plats{margin-left:auto;align-self:center}.block-count{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.block-count strong{font-size:26px;letter-spacing:-.02em;color:var(--ink);text-transform:none;margin-right:4px;font-weight:600}.block-bar{height:6px;background:var(--field);overflow:hidden}.block-bar,.block-bar i{border-radius:var(--pill)}.block-bar i{display:block;height:100%;background:var(--olive)}.block-stats{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink);align-items:center}.block-stats .fmt{text-transform:none;letter-spacing:0;color:var(--faint);margin-left:auto}.sq{display:inline-block;width:9px;height:9px;border:1.5px solid var(--olive);margin-right:4px;vertical-align:-1px}.sq.full{background:var(--olive)}.block-projects{display:flex;flex-wrap:wrap;gap:6px}.block-projects span{font-size:12px;padding:4px 10px;border-radius:999px;background:var(--field);color:var(--muted)}.block-projects span.muted{background:transparent;color:var(--faint);padding-left:2px}.block-projects em{font-style:normal;opacity:.7;margin-left:2px}.block-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.bt{position:relative;aspect-ratio:4/5;border:0;padding:0;border-radius:6px;overflow:hidden;background:var(--thumb-bg);cursor:pointer}.bt .vthumb,.bt img,.thumb .vthumb{width:100%;height:100%;object-fit:cover;display:block}.thumb .vthumb{background:#1d2118}.vthumb{pointer-events:none}.bt:hover img{transform:scale(1.03);transition:transform .2s ease}.bt .more{position:absolute;inset:0;display:grid;place-items:center;background:rgba(29,33,24,.62);color:#fff;font-size:26px;font-weight:700}.grid-head,.sel-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.grid-head{justify-content:space-between}.grid-head h2{font-size:22px;font-weight:400;margin:0;letter-spacing:-.025em}.grid-head p{margin:4px 0 0;color:var(--faint);font-size:13px}.ads{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:16px;gap:16px}.ad,.ads{display:grid}.ad{grid-template-rows:auto 1fr;overflow:hidden;cursor:pointer;text-align:left;padding:8px;transition:transform .12s ease,box-shadow .12s ease}.ad:hover{transform:translateY(-2px);box-shadow:var(--card-hover-shadow)}.thumb{position:relative;aspect-ratio:4/5;background:var(--thumb-bg);overflow:hidden;border-radius:16px}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb .empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:12px;padding:12px;text-align:center}.thumb .tl{left:10px;display:flex;gap:5px;flex-wrap:wrap}.thumb .tl,.thumb .tr{position:absolute;top:10px}.thumb .tr{right:10px}.thumb .play{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.thumb .play span{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.88);display:grid;place-items:center}.ad-meta{padding:12px 6px 4px;display:grid;grid-gap:8px;gap:8px;align-content:start}.ad-meta .who{display:flex;justify-content:space-between;gap:8px;align-items:center}.ad-meta .who b,.ad-meta .who small{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ad-meta .who small{color:var(--faint);font-size:11.5px}.ad-meta .who>.plats{flex-shrink:0}.ad-meta .alogo.sm{border-color:var(--hairline);border-radius:8px}.ad-meta .txt{color:var(--txt-strong);font-size:12.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ad-meta .when{font-size:12px;font-weight:500;display:flex;justify-content:space-between;gap:6px}.ad-meta .when,.ad-meta .when span:last-child{color:var(--faint)}.pill{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:999px;font-size:11.5px;white-space:nowrap;background:var(--paper);border:1px solid var(--line);color:var(--muted)}.pill.on{background:var(--ok-bg);border-color:#cbe5bd;color:var(--ok)}.pill.on:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.off{background:var(--off-bg);border-color:var(--line);color:var(--off)}.pill.new{background:var(--accent);border-color:var(--accent-line);color:var(--accent-ink)}.pill.warn{background:var(--warn-bg);border-color:#f0dcae;color:var(--warn)}.pill.bad{background:var(--bad-bg);border-color:#f0c7c0;color:var(--bad)}.thumb .pill{border:0;background:rgba(255,255,255,.92);color:#1a1a1a;box-shadow:0 1px 3px rgba(0,0,0,.1)}.thumb .pill.on{color:#2f7a3e}.thumb .pill.new{background:#d8eda7;color:#3f512e}.plats{display:inline-flex;gap:4px}.plat{width:20px;height:20px;border-radius:5px;display:grid;place-items:center;font-size:10px;font-weight:700;color:#fff}.plat.fb{background:#1877f2}.plat.ig{background:linear-gradient(45deg,#f58529,#dd2a7b 55%,#8134af)}.plat.ms{background:#7b61ff}.plat.an,.plat.th,.plat.wa{background:#6b7280}.pager{display:flex;justify-content:center;align-items:center;gap:10px;padding-top:6px;color:var(--muted)}.empty-state{padding:48px 20px;text-align:center;color:var(--muted);display:grid;grid-gap:8px;gap:8px;justify-items:center}.empty-state b{color:var(--ink);font-weight:500;font-size:15px}.skeleton{background:linear-gradient(90deg,var(--skel-a) 0,var(--skel-b) 50%,var(--skel-a) 100%);background-size:200% 100%;animation:sk 1.2s linear infinite}@keyframes sk{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}.ad{transition:none}}.overlay{position:fixed;inset:0;background:rgba(26,30,20,.45);display:grid;place-items:center;padding:24px;z-index:50}.modal{width:min(1100px,100%);height:min(860px,calc(100vh - 48px));background:var(--paper);border-radius:var(--radius-lg);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.25)}.viewer{background:#20241b;position:relative;grid-template-rows:minmax(0,1fr) auto}.viewer,.viewer .stage{display:grid;min-height:0}.viewer .stage{place-items:center;padding:18px}.viewer img,.viewer video{max-width:100%;max-height:calc(min(860px, 100vh - 48px) - 110px);object-fit:contain;border-radius:6px;display:block}.viewer .stage{overflow:hidden}.viewer .nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.9);cursor:pointer;display:grid;place-items:center}.viewer .nav-btn.prev{left:12px}.viewer .nav-btn.next{right:12px}.viewer .strip{display:flex;gap:6px;padding:10px 14px;overflow-x:auto;background:#191c15}.viewer .strip button{width:46px;height:56px;border-radius:4px;overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;flex:none;background:#333}.viewer .strip button.on{border-color:var(--accent)}.viewer .strip img{width:100%;height:100%;object-fit:cover}.viewer .counter{position:absolute;top:12px;left:12px;color:#fff;font-size:12px;background:rgba(0,0,0,.45);padding:3px 8px;border-radius:999px}.details{overflow-y:auto;min-height:0;padding:26px 28px 28px;display:grid;grid-gap:20px;gap:20px;align-content:start}.details-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.details-head h3{margin:0;font-size:24px;font-weight:400;letter-spacing:-.025em}.details-head p{margin:4px 0 0;color:var(--faint);font-size:13px}.x{width:36px;height:36px;border-radius:50%;border:0;background:var(--field);cursor:pointer;flex:none;display:grid;place-items:center}.x:hover{background:var(--accent)}.tags{display:flex;gap:6px;flex-wrap:wrap}.kv{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 18px;gap:12px 18px}.kv,.kv div{display:grid}.kv div{grid-gap:1px;gap:1px;min-width:0}.kv dt{font-size:11.5px;color:var(--muted)}.kv dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.dblock{display:grid;grid-gap:6px;gap:6px}.dblock h4{margin:0;font-size:11.5px;color:var(--muted);font-weight:400;text-transform:uppercase;letter-spacing:.06em}.adtext{white-space:pre-wrap;background:var(--field);border-radius:16px;padding:14px 16px;font-size:13.5px}.link{color:var(--olive);overflow-wrap:anywhere;font-size:13px}.months{display:flex;gap:5px;flex-wrap:wrap}.months span{font-size:12px;padding:4px 10px;border-radius:var(--pill);background:var(--accent);color:var(--accent-ink)}.obs{display:flex;gap:2px;align-items:flex-end;height:22px}.obs i{flex:1 1;min-width:2px;max-width:8px;height:100%;border-radius:2px;background:var(--l3)}.obs i.no{background:var(--off-bg)}.note{font-size:12px;color:var(--muted)}.assign{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tbl-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;min-width:860px}.tbl th{text-align:left;font-weight:400;font-size:12px;color:var(--faint);padding:10px 14px;white-space:nowrap}.tbl td,.tbl th{border-bottom:1px solid var(--hairline)}.tbl td{padding:14px;vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl tr.group td{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:22px 14px 8px}.tbl .input{width:100%;min-width:180px;height:34px;background:var(--field)}.tbl td a{text-decoration:none}.tbl td a:hover{text-decoration:underline}.chips{display:flex;gap:4px;flex-wrap:wrap}.chips span{font-size:12px;padding:2px 7px;border-radius:4px;background:var(--field);border:1px solid var(--line-olive)}.mono{font-family:var(--mono);font-size:12px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:8px;font-size:13px;z-index:60}.banner{display:flex;gap:10px;align-items:center;padding:10px 14px;border-radius:var(--radius-lg);background:var(--warn-bg);border:1px solid #f0dcae;color:var(--warn);font-size:13px}@media (max-width:1180px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.filters .field,.seg{max-width:100%}.seg{overflow-x:auto}.sidebar{position:static;height:auto;margin:12px 12px 0;flex-direction:row;flex-wrap:wrap;align-items:center;padding:12px 14px;gap:12px}.page-head h1{font-size:28px}.brand-row{width:100%}.grid-head h2{font-size:19px}.kpi b{font-size:30px}.client-switch,.nav-label,.sidebar-foot{display:none}.nav{display:flex;gap:4px;max-width:100%;overflow-x:auto;scrollbar-width:none}.nav a{white-space:nowrap;padding:8px 12px;font-size:13px}.filters #f-comp,.filters #f-project{width:100%}.main{padding:18px 16px 48px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.modal{grid-template-columns:1fr;grid-template-rows:auto;height:auto;max-height:calc(100vh - 48px);overflow-y:auto}.viewer img,.viewer video{max-height:55vh}.details{overflow:visible}.input{width:100%}}