@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");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-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");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-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");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-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");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-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_7b064e0d-module__MOT0tq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_7b064e0d-module__MOT0tq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--canvas:#f6f8f7;--surface:#fff;--surface-soft:#f8faf9;--ink:#15201d;--muted:#70807a;--muted-light:#9ca9a4;--line:#e2e9e5;--line-strong:#cbd8d2;--teal:#07979a;--teal-dark:#087376;--teal-soft:#dff5f3;--orange:#ff681f;--orange-soft:#fff0e7;--blue:#2d7ff9;--blue-soft:#e9f1ff;--pink:#ec4f94;--pink-soft:#fdeaf3;--violet:#7758d6;--violet-soft:#eee9ff;--danger:#c84141;--danger-soft:#fff0ef;--shadow-sm:0 1px 2px #121b1808, 0 8px 22px #121b1808;--shadow-md:0 22px 60px #121b181c;--radius-sm:9px;--radius-md:15px;--radius-lg:20px;--content-width:min(1480px, calc(100% - clamp(32px, 6.4vw, 112px)));--font-body:var(--font-inter), Arial, sans-serif;--font-display:var(--font-inter), Arial, sans-serif;--weight-regular:400;--weight-medium:500}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 7% -4%, #00a1a612, transparent 25rem), linear-gradient(180deg, #f9fbfa 0, var(--canvas) 24rem);min-height:100vh;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline-offset:3px;outline:3px solid #039a9e52}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong,b,th{font-weight:var(--weight-medium)}h1,h2,h3{line-height:1.15}::selection{background:var(--teal-soft);color:var(--teal-dark)}.app-frame{min-height:100vh}.topbar{z-index:50;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f9fbfadb;border-bottom:1px solid #cfddd6b8;min-height:76px;position:sticky;top:0}.topbar-container{width:var(--content-width);grid-template-columns:minmax(320px,1fr) auto minmax(190px,1fr);align-items:center;min-height:76px;margin:0 auto;padding:12px 0;display:grid}.topbar-identity{justify-self:start;align-items:center;gap:14px;display:flex}.identity-divider{background:var(--line);width:1px;height:26px}.workspace-context{gap:2px;display:grid}.workspace-context span{color:var(--muted-light);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.8px;text-transform:uppercase}.workspace-context strong{color:#43524c;font-size:11px;font-weight:var(--weight-medium)}.topbar-brand{justify-self:start}.brand-lockup{align-items:center;gap:11px;display:inline-flex}.brand-mark{border:2px solid var(--orange);background:var(--orange);border-radius:10px;place-items:center;width:34px;height:34px;display:grid;transform:rotate(-4deg);box-shadow:inset 0 0 0 3px #fff,0 4px 12px #ff681f2e}.brand-mark span{color:#fff;font-family:var(--font-display);font-size:18px;font-weight:var(--weight-medium);line-height:1}.brand-wordmark{font-family:var(--font-display);letter-spacing:-.6px;font-size:17px;font-weight:700}.main-nav{border:1px solid var(--line);background:#ffffffbd;border-radius:13px;justify-content:center;gap:3px;padding:4px;display:flex;box-shadow:0 1px 2px #121b1805}.nav-link{color:#697671;font-size:12px;font-weight:var(--weight-medium);border-radius:10px;align-items:center;gap:8px;padding:9px 15px;transition:background .16s,color .16s,box-shadow .16s;display:inline-flex}.nav-link:hover{color:var(--ink);background:#fff}.nav-link.active{color:#fff;background:#20302a;box-shadow:0 5px 14px #10141333}.topbar-actions{justify-self:end;align-items:center;gap:10px;display:flex}.data-mode{border:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:var(--weight-medium);background:#ffffffc2;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;display:inline-flex}.data-mode svg{color:var(--teal)}.menu-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;place-items:center;width:42px;height:42px;display:none}.page-container{width:var(--content-width);margin:0 auto;padding:48px 0 80px}.page-heading,.planner-heading,.planner-toolbar{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.page-heading{margin-bottom:30px}.page-heading h1,.planner-heading .title-input{font-family:var(--font-display);font-size:clamp(38px,4.5vw,58px);font-weight:var(--weight-medium);letter-spacing:-2.8px;margin:5px 0 8px;line-height:1.04}.page-heading p,.planner-heading p{max-width:680px;color:var(--muted);margin-bottom:0;font-size:14px;line-height:1.55}.eyebrow{color:var(--teal-dark);font-size:11px;font-weight:var(--weight-medium);letter-spacing:1.05px;text-transform:uppercase;line-height:1.3;display:block}.button{min-height:44px;font-size:13px;font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{opacity:.62;cursor:wait}.button.primary{color:#fff;background:#20302a;box-shadow:0 8px 20px #14181721}.button.primary:hover:not(:disabled){background:#14211c;box-shadow:0 11px 24px #1418172e}.button.secondary{border-color:var(--line);background:#fff}.button.secondary:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-soft)}.button.accent{color:#fff;background:var(--orange);box-shadow:0 8px 18px #ff681f2e}.button.danger{color:#fff;background:var(--danger);box-shadow:0 8px 18px #c841412e}.button.danger:hover:not(:disabled){background:#ae3434;box-shadow:0 11px 24px #c841413d}.button.compact{min-height:38px;padding-inline:13px;font-size:12px}.icon-button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:40px;height:40px;transition:border .15s,background .15s,color .15s;display:inline-grid}.icon-button:hover{border-color:var(--line-strong);background:var(--surface-soft)}.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);padding:clamp(21px,2.1vw,28px)}.panel-heading>div:first-child{min-width:0}.panel-heading{justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:22px;display:flex}.panel-heading h2{font-family:var(--font-display);font-size:clamp(18px,2vw,22px);font-weight:var(--weight-medium);letter-spacing:-.55px;align-items:center;gap:9px;margin:5px 0 0;display:flex}.panel-heading h2 svg{color:var(--teal)}.panel-heading p{color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.5}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.metric-card{border:1px solid var(--line);background:linear-gradient(135deg, #fffffffa, #f9fcfaeb), var(--surface);isolation:isolate;border-radius:18px;flex-direction:column;justify-content:space-between;min-height:174px;padding:21px 21px 18px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #121b1808,0 14px 30px #121b180a}.metric-card:after{background:var(--metric-soft);content:"";filter:blur(28px);opacity:.72;pointer-events:none;z-index:-1;border-radius:50%;width:138px;height:92px;position:absolute;bottom:-40px;right:0}.metric-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.metric-card-label{min-width:0;color:var(--muted);font-size:11px;font-weight:var(--weight-medium);align-items:center;gap:8px;padding-top:3px;display:inline-flex}.metric-card-label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metric-status-dot{background:var(--metric-color);width:6px;height:6px;box-shadow:0 0 0 4px var(--metric-soft);border-radius:50%;flex:none;display:block}.metric-icon{border:1px solid color-mix(in srgb, var(--metric-color) 12%, transparent);width:40px;height:40px;color:var(--metric-color);background:color-mix(in srgb, var(--metric-soft) 78%, #fff);box-shadow:0 5px 12px color-mix(in srgb, var(--metric-color) 9%, transparent);border-radius:12px;flex:none;place-items:center;display:grid}.metric-card strong{z-index:1;max-width:100%;font-family:var(--font-display);font-size:clamp(25px,2.65vw,35px);font-weight:var(--weight-medium);letter-spacing:-1.4px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:12px 0 13px;line-height:1.1;display:block;position:relative;overflow:hidden}.metric-card-footer{z-index:1;justify-content:space-between;align-items:flex-end;gap:10px;display:flex;position:relative}.metric-card small{min-width:0;color:var(--muted-light);text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.metric-sparkline{flex:none;align-items:flex-end;gap:3px;height:25px;padding-bottom:1px;display:flex}.metric-sparkline i{background:var(--metric-color);opacity:.22;border-radius:999px;width:3px;min-height:5px;display:block}.metric-sparkline i:first-child{height:8px}.metric-sparkline i:nth-child(2){opacity:.3;height:13px}.metric-sparkline i:nth-child(3){opacity:.36;height:10px}.metric-sparkline i:nth-child(4){opacity:.48;height:18px}.metric-sparkline i:nth-child(5){opacity:.56;height:14px}.metric-sparkline i:nth-child(6){opacity:.7;height:21px}.metric-sparkline i:nth-child(7){opacity:.95;height:24px}.tone-teal{--metric-color:var(--teal-dark);--metric-soft:var(--teal-soft)}.tone-orange{--metric-color:var(--orange);--metric-soft:var(--orange-soft)}.tone-blue{--metric-color:var(--blue);--metric-soft:var(--blue-soft)}.tone-pink{--metric-color:var(--pink);--metric-soft:var(--pink-soft)}.overview-grid{grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr);gap:16px;margin-bottom:16px;display:grid}.portfolio-panel{min-height:404px}.portfolio-total{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:22px;display:flex}.portfolio-total span:first-child{color:var(--muted);font-size:13px;display:block}.portfolio-total strong{font-family:var(--font-display);font-size:clamp(36px,4.2vw,58px);font-weight:var(--weight-medium);letter-spacing:-2.6px;font-variant-numeric:tabular-nums;margin-top:5px;line-height:1.02;display:block}.trend-pill,.check-badge{color:var(--teal-dark);font-size:11px;font-weight:var(--weight-medium);background:#edf9f7;border:1px solid #bfe2dc;border-radius:999px;align-items:center;gap:5px;padding:7px 10px;display:inline-flex}.portfolio-chart{border-bottom:1px solid var(--line);background:repeating-linear-gradient(#0000 0 47px,#edf0ee 48px);align-items:end;gap:clamp(8px,2vw,22px);min-height:196px;padding:32px 6px 0;display:flex}.portfolio-column{text-align:center;flex-direction:column;flex:1;justify-content:flex-end;gap:8px;min-width:26px;height:188px;display:flex}.chart-bar{background-image:repeating-linear-gradient(-45deg,#ffffff61 0 2px,#0000 2px 6px);border-radius:8px 8px 3px 3px;width:min(100%,48px);min-height:18px;margin:0 auto;animation:.5s both chartGrow;display:block}.chart-bar.teal{background-color:var(--teal)}.chart-bar.orange{background-color:var(--orange)}@keyframes chartGrow{0%{opacity:0;height:0}}.portfolio-column small{color:var(--muted);text-transform:uppercase;font-size:10px}.chart-placeholder{width:100%;color:var(--muted-light);text-align:center;align-self:center;font-size:13px}.insight-card{border-radius:var(--radius-lg);color:#fff;min-height:404px;box-shadow:var(--shadow-md);background:linear-gradient(145deg,#f87940 0%,#087f8d 55%,#17294e 100%);border:1px solid #ffffff52;padding:clamp(24px,2.6vw,34px);display:flex;position:relative;overflow:hidden}.insight-card:after{content:"";border:1px solid #ffffff2e;border-radius:50%;width:290px;height:290px;position:absolute;bottom:-100px;right:-92px;box-shadow:0 0 0 26px #ffffff0d,0 0 0 52px #ffffff08}.insight-content{z-index:1;flex-direction:column;justify-content:space-between;gap:26px;width:100%;display:flex;position:relative}.insight-topline,.insight-bottom{justify-content:space-between;align-items:center;gap:14px;display:flex}.insight-label{width:fit-content;font-size:12px;font-weight:var(--weight-medium);letter-spacing:.1px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff29;border:1px solid #ffffff8f;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;display:inline-flex;box-shadow:inset 0 1px #fff3}.insight-status{color:#ffffffb8;font-size:10px;font-weight:var(--weight-medium);letter-spacing:.8px;text-transform:uppercase;align-items:center;gap:6px;display:inline-flex}.insight-status-dot{background:#c9ffb7;border:1px solid #fffc;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #c9ffb729,0 0 12px #c9ffb7cc}.insight-main{max-width:420px}.insight-kicker{color:#ffffffb3;font-size:10px;font-weight:var(--weight-medium);letter-spacing:1.4px;text-transform:uppercase;margin-bottom:9px;display:block}.insight-card strong{font-family:var(--font-display);font-size:clamp(54px,5vw,72px);font-weight:var(--weight-medium);letter-spacing:-4px;font-variant-numeric:tabular-nums;text-shadow:0 4px 22px #0a2d3a33;margin-bottom:14px;line-height:.94;display:block}.insight-card h2{max-width:370px;font-family:var(--font-display);font-size:clamp(20px,2.1vw,27px);font-weight:var(--weight-medium);letter-spacing:-.9px;margin-bottom:11px;line-height:1.18}.insight-card p{color:#ffffffc7;max-width:420px;margin-bottom:0;font-size:13px;line-height:1.58}.insight-bottom{border-top:1px solid #ffffff5c;align-items:flex-end;padding-top:17px}.insight-meta{color:#ffffff9e;font-size:10px;font-weight:var(--weight-medium);letter-spacing:.65px;text-transform:uppercase}.insight-link{color:#fff;font-size:13px;font-weight:var(--weight-medium);cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:0;transition:gap .16s;display:inline-flex}.insight-link:hover{gap:15px}.insight-arrow{background:#ffffff21;border:1px solid #ffffff73;border-radius:50%;place-items:center;width:30px;height:30px;transition:background .16s,transform .16s;display:inline-grid}.insight-link:hover .insight-arrow{background:#ffffff40;transform:rotate(8deg)}.brands-panel{scroll-margin-top:110px}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.brand-card{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(180deg, #fff 0, var(--surface-soft) 100%);min-width:0;padding:20px;transition:transform .16s,border .16s,box-shadow .16s}.brand-card:hover{border-color:#cbd8d4;transform:translateY(-2px);box-shadow:0 12px 28px #132c2412}.brand-card:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #039a9e1a}.brand-card-top,.brand-card-footer,.brand-budget,.allocation-legend{justify-content:space-between;align-items:center;gap:12px;display:flex}.brand-avatar{width:43px;height:43px;color:var(--teal-dark);background:var(--teal-soft);font-family:var(--font-display);font-size:13px;font-weight:var(--weight-medium);border-radius:13px;place-items:center;display:grid}.delete-action.confirm{color:var(--danger);background:var(--danger-soft);border-color:#f2bbbb}.brand-card-title{margin:17px 0 20px}.brand-card-title h3{font-family:var(--font-display);font-size:20px;font-weight:var(--weight-medium);letter-spacing:-.45px;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;overflow:hidden}.brand-card-title p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-bottom:0;font-size:12px;overflow:hidden}.brand-budget span{color:var(--muted);font-size:11px}.brand-budget strong{font-family:var(--font-display);letter-spacing:-.5px;font-size:18px}.allocation-bar{background:#e7eae8;border-radius:999px;width:100%;height:8px;margin:12px 0 9px;display:flex;overflow:hidden}.allocation-bar span:first-child{border-radius:999px 0 0 999px}.allocation-bar span:last-child{border-radius:0 999px 999px 0}.bar-tiktok{background:var(--teal)}.bar-shopee{background:var(--orange)}.allocation-legend{color:var(--muted);justify-content:flex-start;font-size:10px}.allocation-legend span{align-items:center;gap:5px;display:inline-flex}.dot{border-radius:50%;width:6px;height:6px;display:inline-block}.dot.tiktok{background:var(--teal)}.dot.shopee{background:var(--orange)}.brand-card-footer{border-top:1px solid var(--line);color:var(--muted-light);margin-top:19px;padding-top:15px;font-size:10px}.brand-card-footer a{color:var(--ink);font-size:11px;font-weight:var(--weight-medium);align-items:center;gap:4px;display:inline-flex}.brand-card-footer a:hover{color:var(--teal-dark)}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius-md);text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;min-height:280px;padding:36px;display:flex}.empty-state.standalone{border:0;min-height:calc(100vh - 240px)}.empty-icon{width:58px;height:58px;color:var(--teal-dark);background:var(--teal-soft);border-radius:17px;place-items:center;margin-bottom:16px;display:grid}.empty-state h1,.empty-state h3{font-family:var(--font-display);letter-spacing:-.7px;margin-bottom:7px}.empty-state p{max-width:440px;color:var(--muted);margin-bottom:18px;font-size:13px}.loading-state{min-height:260px;color:var(--muted);grid-column:1/-1;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.loading-state-full-page{min-height:max(260px,100vh - 172px)}.spinner{border:2px solid var(--line);border-top-color:var(--teal);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.alert{border:1px solid;border-radius:11px;margin:-10px 0 20px;padding:12px 15px;font-size:12px}.alert.error,.form-error{color:var(--danger);background:var(--danger-soft);border-color:#f1c4c0}.brand-dialog{border:1px solid var(--line);background:var(--surface);border-radius:22px;width:min(510px,100% - 28px);padding:0;box-shadow:0 28px 90px #0e191638}.brand-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f16147a}.brand-dialog form{gap:18px;padding:28px;display:grid}.delete-dialog{border:1px solid var(--line);background:var(--surface);z-index:60;border-radius:22px;width:min(430px,100% - 28px);max-width:none;padding:20px;box-shadow:0 28px 90px #0e191638}.delete-dialog-card{padding:8px}.delete-dialog-heading-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.delete-dialog-icon{width:46px;height:46px;color:var(--danger);background:var(--danger-soft);border:1px solid #f2bbbb;border-radius:14px;place-items:center;margin-bottom:19px;display:grid}.delete-dialog-heading h2{font-family:var(--font-display);letter-spacing:-.8px;margin:6px 0 9px;font-size:24px}.delete-dialog-heading p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.6}.delete-dialog .dialog-actions{margin-top:27px}.delete-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f16147a}.dialog-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:4px;display:flex}.dialog-heading h2{font-family:var(--font-display);font-size:26px;font-weight:var(--weight-medium);letter-spacing:-.8px;margin:5px 0}.dialog-heading p{color:var(--muted);margin:0;font-size:13px}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.form-error{border:1px solid;border-radius:9px;margin:-6px 0 0;padding:9px 11px;font-size:11px}main.page-container:has(.planner-toolbar){padding-bottom:128px}.planner-toolbar{align-items:center;margin-bottom:28px;position:relative}.back-link{color:var(--muted);font-size:13px;font-weight:var(--weight-medium);align-items:center;gap:7px;display:inline-flex}.back-link:hover{color:var(--ink)}.save-cluster{z-index:60;bottom:max(20px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f3f5f4f0;border:1px solid #dee3e0eb;border-radius:999px;align-items:center;gap:4px;padding:5px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #14282024}.save-status{min-height:42px;color:var(--muted);font-size:11px;font-weight:var(--weight-medium);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:7px;padding:0 13px;display:inline-flex}.save-status:before{background:var(--muted-light);content:"";border-radius:50%;width:7px;height:7px}.save-status.is-dirty:before{background:var(--orange)}.save-status.is-saved{color:var(--teal-dark)}.save-status.is-saved:before{background:var(--teal)}.save-status.is-saving{color:var(--muted)}.save-status.is-saving:before{background:var(--orange);animation:1.1s ease-in-out infinite save-pulse}.save-status.is-error{color:var(--danger)}.save-status.is-error:before{background:var(--danger)}.save-button{min-height:42px;color:var(--ink);background:#fff;border-color:#0000;border-radius:999px;padding-inline:16px;box-shadow:0 3px 10px #14282014}.save-button:hover:not(:disabled){color:var(--ink);background:#fff;box-shadow:0 5px 14px #14282021}.save-button.is-saved{color:var(--teal-dark);background:#fff;box-shadow:0 3px 10px #166b671f}.save-button.is-saved:hover:not(:disabled){color:var(--teal-dark);background:#fff;box-shadow:0 5px 14px #166b672e}@keyframes save-pulse{0%,to{opacity:1}50%{opacity:.4}}.planner-heading{align-items:flex-end;margin-bottom:26px}.planner-title-fields{min-width:0}.title-input,.subtitle-input{width:min(760px,72vw);color:var(--ink);background:0 0;border:0;outline:0;padding:0;display:block}.planner-heading .title-input{margin:3px 0 4px}.subtitle-input{color:var(--muted);font-size:15px}.title-input:focus,.subtitle-input:focus{box-shadow:0 2px 0 var(--teal)}.period-chip{border:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:var(--weight-medium);white-space:nowrap;background:#ffffffd1;border-radius:12px;align-items:center;gap:8px;padding:10px 13px;display:inline-flex}.planner-metrics{margin-bottom:18px}.planner-layout{grid-template-columns:minmax(0,1.65fr) minmax(310px,.65fr);align-items:start;gap:16px;display:grid}.planner-main{gap:16px;min-width:0;display:grid}.planner-aside{min-width:0}.sticky-summary{position:sticky;top:108px}.form-grid{gap:16px;display:grid}.form-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.field-control{gap:6px;min-width:0;display:grid}.field-label{color:#56615e;font-size:11px;font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.input-shell{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;align-items:center;min-height:44px;transition:border .15s,box-shadow .15s,background .15s;display:flex;overflow:hidden}.input-shell:focus-within{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px #039a9e1a}.input-shell input{width:100%;min-width:0;color:var(--ink);font-size:13px;font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;padding:11px 12px}.input-shell input::placeholder{color:#aab1af;font-weight:var(--weight-regular)}.input-affix{color:var(--muted-light);font-size:10px;font-weight:var(--weight-medium);white-space:nowrap;flex:none;padding:0 11px}.input-affix.prefix{padding-right:0}.field-hint{color:var(--muted-light);font-size:10px}.panel-note{color:var(--teal-dark);background:var(--teal-soft);border-radius:10px;margin:18px 0 0;padding:11px 13px;font-size:11px;line-height:1.5}.scroll-target{scroll-margin-top:115px}.solver-preview{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:9px;margin-top:18px;padding-top:16px;display:flex}.solver-preview>span{color:var(--muted);background:var(--surface-soft);border-radius:9px;align-items:center;gap:6px;padding:7px 9px;font-size:10px;display:inline-flex}.solver-preview i{background:var(--teal);border-radius:50%;width:6px;height:6px}.solver-preview b{color:var(--ink)}.solver-preview .solver-match{color:var(--teal-dark);background:var(--teal-soft);font-weight:var(--weight-medium);margin-left:auto}.summary-hero{color:#fff;background:radial-gradient(circle at 100% 0, #fff3, transparent 45%), linear-gradient(135deg, var(--teal), var(--teal-dark));border-radius:15px;padding:19px;box-shadow:inset 0 1px #ffffff3d}.summary-hero span,.summary-hero small{color:#ffffffbd;font-size:10px;display:block}.summary-hero strong{font-family:var(--font-display);font-size:clamp(25px,2.6vw,36px);font-weight:var(--weight-medium);letter-spacing:-1.4px;font-variant-numeric:tabular-nums;margin:7px 0 8px;line-height:1;display:block}.allocation-list{gap:15px;margin:22px 0;display:grid}.allocation-row>div{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;font-size:10px;display:flex}.allocation-row span{color:var(--muted)}.allocation-row b{font-size:10px}.mini-track{background:#edf0ee;border-radius:999px;height:6px;display:block;overflow:hidden}.mini-track i{border-radius:inherit;min-width:2px;height:100%;display:block}.fill-teal{background:var(--teal)}.fill-orange{background:var(--orange)}.fill-blue{background:var(--blue)}.fill-pink{background:var(--pink)}.fill-violet{background:var(--violet)}.summary-kpi{border-top:1px solid var(--line);align-items:center;gap:11px;padding-top:17px;display:flex}.summary-kpi>svg{color:var(--orange)}.summary-kpi div{flex:1}.summary-kpi span{color:var(--muted);font-size:9px;display:block}.summary-kpi strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;margin-top:2px;font-size:19px;display:block}.summary-kpi .check-badge{color:var(--teal-dark);font-size:9px;display:inline-flex}.warning-list{gap:7px;margin-top:15px;display:grid}.warning-list p{color:#a54828;background:var(--orange-soft);border-radius:8px;gap:7px;margin:0;padding:8px 9px;font-size:9px;line-height:1.4;display:flex}.warning-list svg{flex:none}.history-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.history-card{--history-color:var(--teal);border:1px solid var(--line);background:linear-gradient(145deg, #fffffffa 0%, #f9fcfaf0 100%), var(--surface-soft);border-radius:17px;min-width:0;padding:20px;transition:border-color .18s,box-shadow .18s,transform .18s;position:relative;overflow:hidden;box-shadow:0 1px 2px #121b1808,0 10px 22px #121b1808}.history-card:after{background:var(--history-color);content:"";filter:blur(38px);opacity:.07;pointer-events:none;border-radius:50%;width:150px;height:125px;position:absolute;bottom:-75px;right:-58px}.history-card.accent-orange{--history-color:var(--orange)}.history-card.accent-blue{--history-color:var(--blue)}.history-card.accent-pink{--history-color:var(--pink)}.history-card.accent-violet{--history-color:var(--violet)}.history-card-heading{z-index:1;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex;position:relative}.history-card-identity{align-items:center;gap:10px;min-width:0;display:flex}.history-platform-icon{border:1px solid color-mix(in srgb, var(--history-color) 14%, transparent);width:38px;height:38px;color:var(--history-color);background:color-mix(in srgb, var(--history-color) 9%, #fff);border-radius:12px;flex:none;place-items:center;display:grid}.history-card-identity>div{min-width:0}.history-card-kicker,.history-card-metric span{color:var(--muted-light);font-size:8px;font-weight:var(--weight-medium);letter-spacing:.75px;text-transform:uppercase;line-height:1.25;display:block}.history-card-heading h3{font-family:var(--font-display);font-size:16px;font-weight:var(--weight-medium);letter-spacing:-.35px;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;overflow:hidden}.history-card-metric{text-align:right;flex:none}.history-card-metric strong{color:var(--history-color);font-family:var(--font-display);font-size:17px;font-weight:var(--weight-medium);letter-spacing:-.45px;margin-top:4px;line-height:1;display:block}.history-card-metric strong.is-empty{color:var(--muted-light)}.history-card-body{z-index:1;position:relative}.history-card-hint{color:var(--muted-light);margin-top:11px;font-size:9px;display:block}.history-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.history-card:has(.history-fields>:nth-child(3)) .history-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.history-card .input-shell{background:#fff;min-height:42px}.history-card .input-shell input{padding:10px;font-size:11px}.history-card .input-affix{padding:0 8px;font-size:8px}.recommendation-box{background:radial-gradient(circle at 100% 0, #ffffffd1, transparent 38%), linear-gradient(120deg, #fffaf6, var(--orange-soft));border:1px solid #ffd2b4;border-radius:17px;margin-top:18px;padding:20px;position:relative;overflow:hidden}.recommendation-box:after{background:var(--orange);content:"";filter:blur(40px);opacity:.08;pointer-events:none;border-radius:50%;width:150px;height:115px;position:absolute;bottom:-45px;right:0}.recommendation-heading,.recommendation-content{z-index:1;justify-content:space-between;align-items:center;gap:14px;display:flex;position:relative}.recommendation-heading{justify-content:flex-start}.recommendation-icon{width:44px;height:44px;color:var(--orange);background:#fff;border:1px solid #ff681f1f;border-radius:13px;flex:none;place-items:center;display:grid;box-shadow:0 7px 15px #ff681f1a}.recommendation-heading-copy{min-width:0}.recommendation-title-row{align-items:center;gap:9px;display:flex}.recommendation-heading h3{font-family:var(--font-display);letter-spacing:-.35px;margin:0;font-size:17px}.recommendation-status{color:#c75b2b;font-size:8px;font-weight:var(--weight-medium);letter-spacing:.45px;text-transform:uppercase;white-space:nowrap;background:#ffffffad;border:1px solid #ffd4bd;border-radius:999px;padding:4px 7px}.recommendation-heading p,.recommendation-empty{color:var(--muted);margin:4px 0 0;font-size:10px}.recommendation-content{border-top:1px solid #ffdcc6;margin-top:18px;padding-top:17px}.recommendation-stats{flex-wrap:wrap;gap:8px;display:flex}.recommendation-stats span{color:var(--muted);background:#ffffffb8;border:1px solid #ffe0cd;border-radius:9px;padding:7px 9px;font-size:10px}.recommendation-stats b{color:var(--ink)}.recommendation-empty{margin-top:14px}.results-panel{margin-top:18px}.plan-groups,.plan-group{gap:14px;display:grid}.plan-group+.plan-group{margin-top:12px}.group-divider{color:var(--muted);font-size:10px;font-weight:var(--weight-medium);letter-spacing:1px;text-transform:uppercase;align-items:center;gap:12px;display:flex}.group-divider i{background:var(--teal);width:8px;height:8px;box-shadow:0 0 0 5px var(--teal-soft);border-radius:50%;flex:none;display:block}.group-tiktok i{background:var(--blue);box-shadow:0 0 0 5px var(--blue-soft)}.group-divider small{color:var(--muted-light);font-size:9px;font-weight:var(--weight-regular);letter-spacing:.2px;text-transform:none}.group-divider:after{background:var(--line);content:"";flex:1;height:1px}.plan-card{--plan-color:var(--teal);border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--surface-soft));border-top:0;border-radius:17px;overflow:hidden;box-shadow:0 1px 2px #121b1805,0 10px 24px #121b1808}.plan-cpas{--plan-color:var(--orange)}.plan-meta{--plan-color:var(--pink)}.plan-tiktok{--plan-color:var(--blue)}.plan-tiktokAds{--plan-color:var(--violet)}.plan-heading{border-left:0;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.plan-heading-main{align-items:center;gap:11px;min-width:0;display:flex}.plan-platform-icon{border:1px solid color-mix(in srgb, var(--plan-color) 15%, transparent);width:38px;height:38px;color:var(--plan-color);background:color-mix(in srgb, var(--plan-color) 9%, #fff);border-radius:12px;flex:none;place-items:center;display:grid}.plan-heading-main>div{min-width:0}.plan-heading-kicker,.plan-budget-label{color:var(--muted-light);font-size:8px;font-weight:var(--weight-medium);letter-spacing:.7px;text-transform:uppercase;display:block}.plan-heading h3{font-family:var(--font-display);letter-spacing:-.3px;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:17px;overflow:hidden}.plan-budget{text-align:right;flex:none}.plan-budget strong{font-family:var(--font-display);letter-spacing:-.5px;margin-top:3px;font-size:19px;line-height:1;display:block}.plan-metric{color:var(--plan-color);font-size:9px;font-weight:var(--weight-medium);white-space:nowrap;align-items:center;gap:5px;margin-top:7px;display:inline-flex}.plan-metric i{background:currentColor;border-radius:50%;width:5px;height:5px;display:block}.table-scroll{overflow-x:auto}.plan-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:650px;font-size:11px}.plan-table th,.plan-table td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:13px 20px}.plan-table th{color:var(--muted-light);font-size:9px;font-weight:var(--weight-medium);background:#f8faf9b3}.period-label{align-items:center;gap:7px;display:inline-flex}.period-label:before{background:var(--muted-light);content:"";border-radius:50%;width:6px;height:6px;display:block}.period-label.peak:before{background:var(--orange);box-shadow:0 0 0 3px var(--orange-soft)}.period-label.total{font-weight:var(--weight-medium)}.period-label.total:before{background:var(--plan-color)}.plan-table .total-row{color:var(--ink);background:color-mix(in srgb, var(--plan-color) 7%, #fff);font-weight:var(--weight-medium)}.plan-table .total-row td{border-top:1px solid color-mix(in srgb, var(--plan-color) 18%, var(--line));border-bottom:0;padding-top:15px;padding-bottom:15px}.plan-table .total-row td:not(:first-child){color:color-mix(in srgb, var(--plan-color) 72%, var(--ink));font-weight:var(--weight-medium)}.plan-table .total-row .period-label{background:color-mix(in srgb, var(--plan-color) 12%, #fff);border-radius:7px;padding:5px 9px 5px 7px}.plan-table th:first-child,.plan-table td:first-child{text-align:left}.plan-table tbody tr:last-child td{border-bottom:0}@media (max-width:1180px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr)}.form-grid.three-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.history-grid{grid-template-columns:1fr}.metric-card strong{font-size:27px}}@media (max-width:920px){.topbar{min-height:76px}.topbar-container{grid-template-columns:1fr auto;min-height:76px}.topbar-identity{min-width:0}.main-nav{width:210px;box-shadow:var(--shadow-md);background:#fff;border-radius:15px;flex-direction:column;padding:8px;display:none;position:absolute;top:calc(100% + 8px);right:20px}.main-nav.is-open{display:flex}.nav-link{justify-content:flex-start}.menu-button{display:grid}.data-mode{display:none}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid{grid-template-columns:1fr}.portfolio-panel,.insight-card{min-height:360px}.planner-layout{grid-template-columns:1fr}.sticky-summary{position:static}.planner-aside{grid-row:1}.allocation-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.topbar{min-height:76px}.topbar-container{--content-width:calc(100% - 28px)}.brand-wordmark{font-size:16px}.identity-divider,.workspace-context{display:none}.page-container{--content-width:calc(100% - 28px);padding:28px 0 48px}.page-heading,.planner-heading{flex-direction:column;align-items:flex-start}.page-heading .button{width:100%}.page-heading h1,.planner-heading .title-input{letter-spacing:-2.6px;font-size:42px}.title-input,.subtitle-input,.planner-title-fields{width:100%}.period-chip{align-self:flex-start}.panel{border-radius:18px;padding:19px}.panel-heading{flex-direction:column;align-items:flex-start;margin-bottom:19px}.panel-action,.panel-action .button{width:100%}.metrics-grid{grid-template-columns:1fr 1fr;gap:10px}.metric-card{min-height:135px;padding:16px}.metric-icon{width:32px;height:32px;top:14px;right:14px}.metric-card>span{margin-bottom:18px;margin-right:35px;font-size:10px}.metric-card strong{letter-spacing:-.8px;max-width:100%;font-size:21px}.portfolio-panel{min-height:370px}.portfolio-total{flex-direction:column;align-items:flex-start}.portfolio-total strong{letter-spacing:-2px;font-size:39px}.portfolio-chart{gap:7px;min-height:185px;padding-inline:0}.portfolio-column{min-width:15px;height:160px}.insight-card{min-height:390px;padding:24px}.brand-grid{grid-template-columns:1fr}.planner-toolbar{margin-bottom:26px}.back-link{font-size:0}.back-link svg{width:20px;height:20px}.save-status{min-height:38px;padding-inline:10px;font-size:10px}.save-button{min-height:38px;padding-inline:13px}.form-grid.three-columns,.history-grid,.history-fields{grid-template-columns:1fr}.history-card:has(.history-fields>:nth-child(3)) .history-fields{grid-template-columns:1fr}.allocation-list{grid-template-columns:1fr}.solver-preview .solver-match{justify-content:center;width:100%;margin-left:0}.recommendation-content{flex-direction:column;align-items:stretch}.recommendation-content .button{width:100%}.plan-heading{flex-direction:column;align-items:flex-start}.plan-budget{text-align:left}.dialog-actions{flex-direction:column-reverse}.dialog-actions .button{width:100%}}@media (max-width:340px){.metrics-grid{grid-template-columns:1fr}.metric-card{min-height:124px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
