.planner-app{--bg: #fafafa;--surface: #ffffff;--surface-2: #f6f7f9;--surface-3: #f0f2f5;--border: #e6e8ec;--border-strong: #d4d7dd;--text: #15181d;--text-2: #5b6573;--text-3: #8a93a1;--accent: #2a6df4;--accent-bg: #eaf1fe;--accent-text: #0b3a99;--teal: #0a9b7a;--teal-bg: #e3f7f0;--teal-text: #064e3d;--warn-bg: #fff7e0;--warn-text: #7a5a00;--warn-border: #f0d27a;--danger: #b42318;--danger-bg: #fde8e6;--purple: #5b50e0;--purple-bg: #eeecfd;--purple-text: #2e2683;--radius: 10px;--radius-sm: 6px;--shadow-sm: 0 1px 2px rgba(15,23,42,.04), 0 1px 1px rgba(15,23,42,.03);--shadow-md: 0 4px 14px -6px rgba(15,23,42,.08), 0 2px 4px rgba(15,23,42,.04);font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);padding:2rem 1.25rem 4rem;min-height:100vh;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased}.planner-app *{box-sizing:border-box}.planner-app .topbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.planner-app .ttl{font-size:22px;font-weight:600;letter-spacing:-.01em}.planner-app .sub{font-size:13px;color:var(--text-2);margin-top:4px}.planner-app .tabs{display:flex;gap:4px;background:var(--surface-2);padding:4px;border-radius:var(--radius-sm);margin-bottom:1.5rem;width:fit-content}.planner-app .tab{font-size:13px;padding:7px 16px;cursor:pointer;color:var(--text-2);border-radius:5px;white-space:nowrap;font-weight:500;transition:all .15s}.planner-app .tab:hover{color:var(--text)}.planner-app .tab.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.planner-app .month-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:1.5rem}.planner-app .mchip{padding:9px 4px;text-align:center;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:12px;color:var(--text-2);background:var(--surface);-webkit-user-select:none;user-select:none;transition:all .12s;font-weight:500}.planner-app .mchip:hover{border-color:var(--border-strong)}.planner-app .mchip.active{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-text)}.planner-app .mchip.hot{border-top:2px solid #f0c020}.planner-app .mdots{display:flex;justify-content:center;gap:2px;margin-top:4px;min-height:6px}.planner-app .mdot{width:5px;height:5px;border-radius:50%}.planner-app .season-empty{text-align:center;padding:1.75rem;font-size:13px;color:var(--text-2);border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface)}.planner-app .season-events{display:flex;flex-direction:column;gap:8px;margin-bottom:1rem}.planner-app .ev-card{border-radius:var(--radius-sm);padding:11px 14px;border:1px solid}.planner-app .ev-title{font-size:13px;font-weight:600;margin-bottom:2px}.planner-app .ev-sub{font-size:12px;opacity:.85}.planner-app .ev-urgency{font-size:11px;font-weight:600;margin-top:7px;padding:2px 8px;border-radius:3px;display:inline-block}.planner-app .moment-card{border-radius:var(--radius);padding:16px 18px;border:1px solid;display:flex;flex-direction:column;gap:12px}.planner-app .moment-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.planner-app .moment-title{font-size:15px;font-weight:700;letter-spacing:-.01em}.planner-app .moment-sub{font-size:12.5px;opacity:.85;margin-top:2px}.planner-app .moment-urgency{font-size:11px;font-weight:600;padding:4px 10px;border-radius:5px;white-space:nowrap}.planner-app .moment-cats{display:flex;flex-wrap:wrap;gap:5px}.planner-app .moment-pill{font-size:11.5px;padding:3px 10px;border-radius:14px;font-weight:600;border:1px solid;white-space:nowrap;display:inline-flex;align-items:center}.planner-app .moment-cta{padding:9px 14px;border:1.5px solid;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;text-align:center;transition:all .15s;font-family:inherit}.planner-app .moment-cta:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.planner-app .moment-cta.active{font-weight:600}.planner-app .moment-cta.partial{background:#ffffff80!important}.planner-app .cat-recs{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:10px;box-shadow:var(--shadow-sm)}.planner-app .cat-recs-title{font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.planner-app .cat-rec-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.planner-app .cat-rec-row:last-child{border-bottom:none}.planner-app .cat-rec-name{font-size:13px;font-weight:600;min-width:160px}.planner-app .cat-rec-tags{display:flex;flex-wrap:wrap;gap:4px;flex:1}.planner-app .tag{font-size:10px;padding:2px 7px;border-radius:3px}.planner-app .tag-event{background:var(--warn-bg);color:var(--warn-text);border:1px solid var(--warn-border)}.planner-app .tag-reason{background:var(--surface-2);color:var(--text-2);border:1px solid var(--border)}.planner-app .tag-prio-alta{font-size:10px;padding:2px 7px;border-radius:3px;font-weight:600;background:var(--danger-bg);color:var(--danger)}.planner-app .tag-prio-media{font-size:10px;padding:2px 7px;border-radius:3px;font-weight:600;background:var(--warn-bg);color:var(--warn-text)}.planner-app .add-cat-btn{font-size:12px;padding:5px 12px;border-radius:5px;cursor:pointer;white-space:nowrap;font-weight:500;transition:all .12s}.planner-app .add-cat-btn.off{border:1px solid var(--accent);background:var(--accent-bg);color:var(--accent-text)}.planner-app .add-cat-btn.on{border:1px solid var(--teal);background:var(--teal-bg);color:var(--teal-text)}.planner-app .psb{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:12px;background:var(--surface);box-shadow:var(--shadow-sm)}.planner-app .psb-grid{display:grid;grid-template-columns:repeat(4,1fr)}.planner-app .psb-cell{padding:12px;border-right:1px solid var(--border);text-align:center}.planner-app .psb-cell:last-child{border-right:none}.planner-app .psb-lbl{font-size:10px;color:var(--text-3);margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.planner-app .psb-val{font-size:20px;font-weight:600;letter-spacing:-.01em}.planner-app .psb-sub{font-size:10px;color:var(--text-3);margin-top:2px}.planner-app .psb-bottom{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--surface-2);border-top:1px solid var(--border)}.planner-app .psb-price{font-size:22px;font-weight:600;letter-spacing:-.02em}.planner-app .psb-price.has-value{color:var(--teal-text)}.planner-app .go-btn{width:100%;padding:11px;font-size:13px;cursor:pointer;background:var(--text);color:#fff;border:none;border-radius:var(--radius-sm);margin-top:6px;font-weight:500;letter-spacing:.01em}.planner-app .go-btn:hover{background:#000}.planner-app .cfg-link{font-size:12px;color:var(--text-2);cursor:pointer;margin-bottom:1rem;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--border);border-radius:5px;background:var(--surface);font-weight:500}.planner-app .cfg-link:hover{border-color:var(--border-strong);color:var(--text)}.planner-app .cfgpanel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;margin-bottom:1.25rem;box-shadow:var(--shadow-sm)}.planner-app .cfgrow{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;color:var(--text-2)}.planner-app .cfgrow:last-child{margin-bottom:0}.planner-app .cfglbl{flex:1}.planner-app .cfgrow input[type=number]{width:80px;text-align:right;padding:5px 8px;border:1px solid var(--border);border-radius:5px;background:var(--surface);font-size:13px}.planner-app .cfgrow input[type=number]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.planner-app .cfg-divider{border-top:1px solid var(--border);margin:14px 0 10px}.planner-app .cfg-section{font-size:10px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.planner-app .cfg-note{font-size:11px;color:var(--text-3);margin-bottom:8px;line-height:1.5}.planner-app .slbl{font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px}.planner-app .chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:1.75rem}.planner-app .chip{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;background:var(--surface);-webkit-user-select:none;user-select:none;transition:all .12s;font-weight:500}.planner-app .chip:hover{border-color:var(--border-strong)}.planner-app .chip.on{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-text)}.planner-app .chip.season-hint{box-shadow:inset 3px 0 #f0c020}.planner-app .chip.brand.on{border-color:var(--purple);background:var(--purple-bg);color:var(--purple-text)}.planner-app .dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;opacity:.6}.planner-app .cards{display:flex;flex-direction:column;gap:14px;margin-bottom:1.5rem}.planner-app .empty{text-align:center;padding:2.5rem 1rem;font-size:13px;color:var(--text-2);border:1px dashed var(--border);border-radius:var(--radius);margin-bottom:1.5rem;background:var(--surface)}.planner-app .ccard{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm)}.planner-app .chead{padding:14px 18px;background:#1a2942;color:#fff;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;border-bottom:1px solid #1A2942}.planner-app .cname{font-size:15px;font-weight:600;letter-spacing:-.01em;color:#fff}.planner-app .cbadges{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.planner-app .badge{font-size:11px;padding:3px 9px;border-radius:4px;font-weight:600}.planner-app .b-blue{background:var(--accent-bg);color:var(--accent-text)}.planner-app .b-teal{background:var(--teal-bg);color:var(--teal-text)}.planner-app .b-gray{background:var(--surface-2);color:var(--text-2);border:1px solid var(--border)}.planner-app .cbody{display:flex;flex-direction:column}.planner-app .csec{padding:16px 18px;border-bottom:1px solid var(--border)}.planner-app .csec:last-child{border-bottom:none}.planner-app .csec+.csec{border-left:none}.planner-app .sectitle{font-size:11px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;display:flex;align-items:center;gap:8px}.planner-app .sectitle:before{content:"";width:3px;height:12px;background:var(--accent);border-radius:2px}.planner-app .csec.brandformance .sectitle:before{background:var(--purple)}.planner-app .csec.videos-section .sectitle:before{background:var(--teal)}.planner-app .atable{width:100%;border-collapse:collapse;font-size:12.5px}.planner-app .atable th{font-size:10px;font-weight:600;color:var(--text-3);text-align:left;padding:6px 4px;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.05em}.planner-app .atable td{padding:7px 4px;border-bottom:1px solid var(--border);vertical-align:middle}.planner-app .atable tr:last-child td{border-bottom:none}.planner-app .atable tbody tr:hover{background:var(--surface-2)}.planner-app .td-name{color:var(--text);font-size:12.5px}.planner-app .td-name.off{color:var(--text-3)}.planner-app .fp{font-size:10px;padding:2px 6px;border-radius:3px;white-space:nowrap;background:var(--accent-bg);color:var(--accent-text);font-weight:600}.planner-app .td-total{text-align:right;font-weight:600;font-size:12.5px}.planner-app .td-total.off{color:var(--text-3)}.planner-app .tfoot-row td{border-top:1px solid var(--border-strong)!important;padding-top:9px!important;font-weight:700;font-size:12.5px;background:var(--surface-2)}.planner-app .pvid{padding:0;border-left:none}.planner-app .vsublabel{font-size:10px;font-weight:700;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;padding:14px 0 8px;display:block;margin-top:8px;border-top:1px dashed var(--border)}.planner-app .vsublabel:first-child{border-top:none;padding-top:0;margin-top:0}.planner-app .item-card{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:6px;overflow:hidden;background:var(--surface)}.planner-app .item-head{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface-2)}.planner-app .item-head input[type=text]{flex:1;font-size:12.5px;padding:4px 7px;border:1px solid var(--border);border-radius:4px;background:var(--surface)}.planner-app .item-head input[type=text]:focus{outline:none;border-color:var(--accent)}.planner-app .item-chk{width:14px;height:14px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.planner-app .item-del{font-size:14px;color:var(--text-3);cursor:pointer;background:none;border:none;line-height:1;padding:2px 5px;border-radius:3px}.planner-app .item-del:hover{background:var(--danger-bg);color:var(--danger)}.planner-app .item-vid{font-size:11px;color:var(--text-2);white-space:nowrap;font-weight:500}.planner-app .prod-styles{padding:8px 10px;display:flex;flex-direction:column;gap:5px}.planner-app .style-row{display:flex;align-items:center;gap:7px}.planner-app .style-row input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.planner-app .style-lbl{flex:1;font-size:12.5px;cursor:pointer}.planner-app .style-lbl.off{color:var(--text-3)}.planner-app .rec-badge{font-size:9px;padding:2px 6px;border-radius:3px;background:var(--warn-bg);color:var(--warn-text);border:1px solid var(--warn-border);white-space:nowrap;font-weight:600}.planner-app .add-item-btn{font-size:12px;padding:6px 10px;cursor:pointer;border:1px dashed var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-2);width:100%;text-align:center;margin-top:4px;font-weight:500}.planner-app .add-item-btn:hover{border-color:var(--accent);color:var(--accent-text);background:var(--accent-bg)}.planner-app .vtot{display:flex;justify-content:space-between;font-size:13px;font-weight:700;border-top:1px solid var(--border-strong);padding-top:9px;margin-top:8px}.planner-app .vdest-note{font-size:10px;color:var(--text-3);margin-top:6px;font-style:italic}.planner-app .prod-client{display:flex;align-items:flex-start;gap:8px;padding:5px 8px;background:var(--surface-2);border-radius:4px;margin-bottom:4px}.planner-app .prod-client-name{font-size:12.5px;font-weight:600;min-width:80px}.planner-app .prod-client-styles{display:flex;flex-wrap:wrap;gap:3px;flex:1}.planner-app .prod-client-vids{font-size:11px;color:var(--text-2);white-space:nowrap;align-self:center}.planner-app .cat-cost-box{background:var(--surface-2);border-top:1px solid var(--border);padding:12px 18px}.planner-app .cat-cost-row{display:flex;justify-content:space-between;font-size:12px;color:var(--text-2);padding:3px 0}.planner-app .cat-cost-total{display:flex;justify-content:space-between;font-size:13px;font-weight:700;border-top:1px solid var(--border-strong);padding-top:7px;margin-top:5px;color:var(--text)}.planner-app .csec.brandformance{background:linear-gradient(180deg,#fbfaff 0%,var(--surface) 100%)}.planner-app .bf-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.planner-app .bf-header .sectitle{margin-bottom:0}.planner-app .bf-toggle{font-size:11px;color:var(--text-2)}.planner-app .andromeda-alert{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius-sm);padding:10px 14px;margin-bottom:12px;font-size:12.5px;color:var(--warn-text);display:flex;align-items:center;gap:8px}.planner-app .scard{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:12px;background:var(--surface);box-shadow:var(--shadow-sm)}.planner-app .metgrid{display:grid;grid-template-columns:repeat(4,1fr)}.planner-app .met{padding:14px;border-right:1px solid var(--border)}.planner-app .met:last-child{border-right:none}.planner-app .mlbl{font-size:10px;color:var(--text-3);margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.planner-app .mval{font-size:22px;font-weight:600;letter-spacing:-.01em}.planner-app .msub{font-size:11px;color:var(--text-3);margin-top:3px}.planner-app .global-cost-box{padding:14px 18px;border-top:1px solid var(--border);background:var(--surface-2)}.planner-app .global-cost-title{font-size:10px;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.planner-app .global-cost-row{display:flex;justify-content:space-between;font-size:12px;color:var(--text-2);padding:3px 0}.planner-app .global-cost-row.fee{color:var(--teal-text);font-weight:600;font-size:13px}.planner-app .pbar{border-top:1px solid var(--border-strong);padding:16px 18px;display:flex;justify-content:space-between;align-items:center;background:var(--surface)}.planner-app .plbl{font-size:13px;color:var(--text-2);font-weight:500}.planner-app .pval{font-size:26px;font-weight:700;letter-spacing:-.02em}.planner-app .pval.green{color:var(--teal-text)}.planner-app .wdist{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:12px;background:var(--surface);box-shadow:var(--shadow-sm)}.planner-app .wdhead{padding:11px 16px;background:var(--surface-2);font-size:13px;font-weight:600;border-bottom:1px solid var(--border)}.planner-app .wdgrid{display:grid;grid-template-columns:repeat(4,1fr)}.planner-app .wdwk{padding:12px;border-right:1px solid var(--border)}.planner-app .wdwk:last-child{border-right:none}.planner-app .wdnum{font-size:10px;font-weight:700;color:var(--text-3);margin-bottom:5px;text-transform:uppercase;letter-spacing:.06em}.planner-app .wdcat{font-size:12.5px;padding:2px 0}.planner-app .genbtn{width:100%;padding:11px;font-size:13px;cursor:pointer;margin-top:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-weight:500}.planner-app .genbtn:hover{border-color:var(--border-strong);background:var(--surface-2)}.planner-app .reason-note{font-size:11px;color:var(--warn-text);background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:5px;padding:6px 10px;margin-bottom:10px;display:flex;align-items:center;gap:6px}.planner-app .login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--surface-2)}.planner-app .login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;width:100%;max-width:360px;box-shadow:var(--shadow-md)}.planner-app .login-card h1{font-size:20px;font-weight:600;margin-bottom:4px;letter-spacing:-.01em}.planner-app .login-card p{font-size:13px;color:var(--text-2);margin-bottom:20px}.planner-app .login-card label{display:block;font-size:11px;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;margin-top:12px;font-weight:600}.planner-app .login-card input{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;background:var(--surface)}.planner-app .login-card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.planner-app .login-card button{width:100%;margin-top:20px;padding:11px;background:var(--text);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;cursor:pointer;font-weight:500}.planner-app .login-err{font-size:12px;color:var(--danger);margin-top:10px}@media(max-width:720px){.planner-app{padding:1.25rem .9rem 3rem}.planner-app .month-grid{grid-template-columns:repeat(4,1fr)}.planner-app .psb-grid,.planner-app .metgrid{grid-template-columns:repeat(2,1fr)}.planner-app .psb-cell:nth-child(2),.planner-app .met:nth-child(2){border-right:none}.planner-app .wdgrid{grid-template-columns:repeat(2,1fr)}.planner-app .wdwk:nth-child(2){border-right:none}}.reset-btn{background:#fff;border:1px solid #E2E8F0;color:#4a5568;font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;cursor:pointer;text-transform:none;letter-spacing:0;transition:all .15s ease}.reset-btn:hover{background:#fed7d7;border-color:#fc8181;color:#c53030}.moment-hint{font-size:11px;font-weight:500;margin:4px 0 6px;letter-spacing:.01em}button.moment-pill{font-family:inherit;cursor:pointer;border-style:solid;border-width:1px;transition:transform .12s ease,box-shadow .12s ease,background .15s ease}button.moment-pill:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000014}button.moment-pill:active{transform:translateY(0)}.back-btn{background:transparent;border:1px solid #E2E8F0;color:#4a5568;font-size:12px;font-weight:500;padding:6px 12px;border-radius:6px;cursor:pointer;margin-bottom:12px;transition:all .15s ease}.back-btn:hover{background:#f7fafc;border-color:#cbd5e0;color:#2d3748}
