/* The existing CM shell and navigation remain in place. This stylesheet owns the weekly plan. */
.app-layout .main{min-width:0}
/* The shared reference stylesheet gives the old plan a two-column #content grid. */
body:has(.app-nav-link.active[href="/plan.html"]) #content{display:block!important;width:100%;min-width:0}
body:has(.app-nav-link.active[href="/plan.html"]) #content .weekly-hero .plan-progress-ring{width:104px!important;height:104px!important;flex:0 0 104px!important;grid-area:auto!important;border-radius:50%!important}
body:has(.app-nav-link.active[href="/plan.html"]) #content .weekly-hero .plan-progress-ring::before{content:none!important}
body:has(.app-nav-link.active[href="/plan.html"]) #content .weekly-hero .plan-progress-ring-inner{width:84px!important;height:84px!important;border-radius:50%;background:var(--cm-surface,#fff)!important}
body:has(.app-nav-link.active[href="/plan.html"]) #content .weekly-hero .plan-progress-ring strong{font-size:24px!important}
.app-layout .top{margin-bottom:22px}
.app-layout .top h1{font-size:24px}
.app-layout .top p{display:none}
.weekly-hero,.weekly-week,.weekly-row,.weekly-side-card,.weekly-milestone,.weekly-finish,.weekly-empty-plan{border:1px solid var(--cm-line,#ddd);background:var(--cm-surface,#fff);color:var(--cm-text,#17162b);border-radius:0;box-shadow:none}
.weekly-hero{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:26px;margin-bottom:24px}
.weekly-eyebrow,.weekly-kicker{display:block;font-size:11px;letter-spacing:.08em;font-weight:800;color:var(--cm-muted,#555088)}
.weekly-hero h2{font-size:clamp(27px,3vw,38px);line-height:1.12;margin:9px 0 5px;color:inherit}
.weekly-hero p{font-size:13px;color:var(--cm-muted,#5e5c70);margin:0}
.weekly-hero-progress{display:flex;align-items:center;gap:20px;min-width:min(100%,400px)}
.weekly-progress-info{flex:1;min-width:180px}
.weekly-progress-numbers{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;font-size:12px;margin-bottom:10px}
.weekly-progress-numbers span{color:var(--cm-muted,#5e5c70)}
.plan-progress-ring{--progress:0%;width:72px;height:72px;flex:0 0 72px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--p,#555088) var(--progress),var(--cm-line,#e3e1da) var(--progress))}
.plan-progress-ring-inner{width:59px;height:59px;border-radius:50%;background:var(--cm-surface,#fff);display:grid;align-content:center;justify-items:center;text-align:center;color:var(--cm-text,#17162b)}
.plan-progress-ring strong{font-size:16px;line-height:1}.plan-progress-ring span{font-size:9px}
.weekly-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.weekly-segments>div{min-width:0}.weekly-segments small{display:block;color:var(--cm-muted,#5e5c70);font-size:10px;margin-top:6px}
.weekly-segment,.weekly-goal-track{height:6px;background:var(--cm-line,#e3e1da);overflow:hidden}.weekly-segment span,.weekly-goal-track span{display:block;height:100%;background:var(--p,#555088)}
.weekly-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,360px);gap:30px;align-items:start}
.weekly-path{list-style:none;margin:0;padding:0 0 0 46px;position:relative}.weekly-path:before{content:"";position:absolute;left:13px;top:14px;bottom:26px;width:2px;background:var(--cm-line,#e3e1da)}
.weekly-node{position:relative;margin:0 0 12px;min-width:0}.weekly-node-mark{position:absolute;left:-46px;top:14px;width:28px;height:28px;display:grid;place-items:center;border:2px solid var(--p,#555088);background:var(--cm-surface,#fff);color:var(--p,#555088);border-radius:50%;font-size:11px;font-weight:800;z-index:1}
.weekly-node.now .weekly-node-mark{background:var(--p,#555088);color:#fff;outline:5px solid color-mix(in srgb,var(--p,#555088) 16%,transparent)}
.weekly-node.complete .weekly-node-mark{background:var(--p,#555088);color:#fff}
.weekly-node.future .weekly-node-mark{font-size:9px;background:var(--cm-surface,#fff)}
.weekly-week{padding:22px}.weekly-week-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:16px}.weekly-week h3{font-size:21px;margin:6px 0 0;line-height:1.25}.weekly-count{white-space:nowrap;color:var(--cm-muted,#5e5c70);font-size:12px}.weekly-node.now .weekly-kicker{color:var(--b,#885068)}
.weekly-tasks{display:grid;gap:8px}.weekly-task{border:1px solid var(--cm-line,#e3e1da);padding:12px 14px}.weekly-task-main{display:flex;align-items:start;gap:13px;min-height:44px}.weekly-task input[type=checkbox]{width:20px;height:20px;min-width:20px;margin:2px 0 0;accent-color:var(--p,#555088);cursor:pointer}.weekly-task-copy{flex:1;min-width:0}.weekly-task-copy label{display:block;font-weight:700;font-size:14px;line-height:1.35;cursor:pointer}.weekly-task-copy p{font-size:12px;line-height:1.42;color:var(--cm-muted,#5e5c70);margin:4px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.weekly-task.is-done .weekly-task-copy label{text-decoration:line-through;color:var(--cm-muted,#5e5c70)}.weekly-task-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--cm-muted,#5e5c70);margin-top:5px}.weekly-carried{font-weight:800;color:var(--b,#885068)}
.weekly-tag{font-size:10px;font-weight:800;letter-spacing:.03em;padding:5px 7px;white-space:nowrap}.weekly-tag.sales{background:var(--cm-plan-tag-sales-bg,#e9e8f4);color:var(--cm-plan-tag-sales,#383280)}.weekly-tag.marketing{background:var(--cm-plan-tag-market-bg,#fbe9d8);color:var(--cm-plan-tag-market,#6e3905)}.weekly-tag.channel{background:var(--cm-plan-tag-channel-bg,#e4efe9);color:var(--cm-plan-tag-channel,#1f5a43)}.weekly-tag.other{background:var(--cm-line,#eee);color:var(--cm-text,#17162b)}
.weekly-guidance-toggle{border:0;background:transparent;padding:10px 0 2px;color:var(--p,#555088);font-size:11px;font-weight:700;cursor:pointer;min-height:44px;text-align:left}.weekly-guidance{border-top:1px solid var(--cm-line,#ddd);padding:10px 0;font-size:12px;line-height:1.5}.weekly-guidance ul{margin:0;padding-left:18px}.weekly-guidance p{margin:0}.weekly-guidance a{color:var(--p,#555088)}
.weekly-week-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}.weekly-primary,.weekly-secondary,.weekly-refresh{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:9px 16px;border:1px solid var(--p,#555088);font-size:12px;font-weight:700;text-decoration:none;cursor:pointer;border-radius:0}.weekly-primary{background:var(--p,#555088);color:#fff}.weekly-secondary,.weekly-refresh{background:var(--cm-surface,#fff);color:var(--p,#555088)}.weekly-primary:disabled,.weekly-secondary:disabled{opacity:.5;cursor:default}.weekly-owner{margin-left:auto;color:var(--cm-muted,#5e5c70);font-size:11px}.weekly-row{width:100%;min-height:55px;padding:11px 16px;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;cursor:pointer;font:inherit;font-size:13px}.weekly-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-row small{white-space:nowrap;color:var(--cm-muted,#5e5c70);font-size:11px}.weekly-node.future .weekly-row{border-style:dashed}.weekly-node.future .weekly-row:not(:hover){color:var(--cm-muted,#5e5c70)}
.weekly-node.milestone .weekly-node-mark{width:18px;height:18px;left:-41px;top:16px;transform:rotate(45deg);border:0;border-radius:0;background:var(--p,#555088)}.weekly-milestone{background:var(--p,#555088);color:#fff;display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 17px;font-size:12px}.weekly-milestone span{opacity:.9}.weekly-node.finish .weekly-node-mark{background:var(--p,#555088);color:#fff}.weekly-finish{padding:16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12px}.weekly-finish span{color:var(--cm-muted,#5e5c70)}.weekly-finish a{margin-left:auto;color:var(--p,#555088);font-weight:700}.weekly-refresh{margin:8px 0 24px}
.weekly-sidebar{display:grid;gap:14px}.weekly-side-card{padding:20px}.weekly-side-card h2{font-size:17px;margin:0 0 12px}.weekly-side-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.weekly-side-head a{font-size:11px;color:var(--p,#555088);font-weight:700;white-space:nowrap}.weekly-channel{border-top:1px solid var(--cm-line,#ddd);padding:12px 0}.weekly-channel:first-of-type{border-top:0}.weekly-channel>strong{display:block;font-size:13px;margin-bottom:8px}.weekly-goal+.weekly-goal{margin-top:13px}.weekly-goal-values{display:flex;justify-content:space-between;gap:8px;font-size:11px;margin:0 0 5px}.weekly-goal-values span{color:var(--cm-muted,#5e5c70)}.weekly-goal-track{height:5px}.weekly-goal small{display:block;margin-top:5px;color:var(--cm-muted,#5e5c70);font-size:10px}.weekly-done{list-style:none;margin:0;padding:0;display:grid;gap:12px}.weekly-done li{font-size:12px;display:flex;gap:10px;line-height:1.4}.weekly-done span{color:var(--p,#555088);font-weight:800}.weekly-crm p,.weekly-aside-empty{font-size:12px;line-height:1.5;color:var(--cm-muted,#5e5c70)}.weekly-crm .weekly-secondary{width:100%}.weekly-empty{font-size:12px;color:var(--cm-muted,#5e5c70)}.weekly-empty-plan{padding:28px}.weekly-empty-plan h2{margin-top:0}.weekly-empty-plan p{font-size:14px;color:var(--cm-muted,#5e5c70)}
.weekly-row:hover,.weekly-task:hover{border-color:var(--p,#555088)}.weekly-path button:focus-visible,.weekly-sidebar a:focus-visible,.weekly-task input:focus-visible{outline:3px solid var(--t,#55b8d9);outline-offset:2px}
html[data-cm-theme=dark] .weekly-hero,html[data-cm-theme=dark] .weekly-week,html[data-cm-theme=dark] .weekly-row,html[data-cm-theme=dark] .weekly-side-card,html[data-cm-theme=dark] .weekly-finish,html[data-cm-theme=dark] .weekly-empty-plan{background:var(--cm-surface,#181724);color:var(--cm-text,#fff)}
html[data-cm-theme=dark] .app-layout{--cm-surface:#181724;--cm-line:#3a3949;--cm-text:#f5f4fa;--cm-muted:#c1bfd0}
html[data-cm-theme=dark] .weekly-tag.sales{--cm-plan-tag-sales-bg:#252244;--cm-plan-tag-sales:#d3d0ff}html[data-cm-theme=dark] .weekly-tag.marketing{--cm-plan-tag-market-bg:#3d2b1b;--cm-plan-tag-market:#ffd6a6}html[data-cm-theme=dark] .weekly-tag.channel{--cm-plan-tag-channel-bg:#19382e;--cm-plan-tag-channel:#bdebd3}
@media(max-width:1100px){.weekly-layout{grid-template-columns:minmax(0,1fr) minmax(255px,300px);gap:18px}.weekly-hero{align-items:flex-start}.weekly-hero-progress{min-width:300px}}
@media(max-width:900px){.weekly-layout{grid-template-columns:1fr}.weekly-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-crm{grid-column:1/-1}}
@media(max-width:650px){.weekly-hero{display:block;padding:18px}.weekly-hero-progress{margin-top:16px;min-width:0}.weekly-sidebar{grid-template-columns:1fr}.weekly-crm{grid-column:auto}.weekly-path{padding-left:36px}.weekly-path:before{left:11px}.weekly-node-mark{left:-36px;width:24px;height:24px}.weekly-node.milestone .weekly-node-mark{left:-33px}.weekly-node.future .weekly-node-mark{font-size:8px}.weekly-week{padding:15px}.weekly-week-head{display:block}.weekly-count{display:block;margin-top:7px}.weekly-task{padding:10px}.weekly-task-main{gap:8px}.weekly-tag{font-size:9px}.weekly-row{display:block}.weekly-row span,.weekly-row small{display:block;white-space:normal}.weekly-row small{margin-top:5px}.weekly-milestone{display:block}.weekly-milestone span{display:block;margin-top:5px}.weekly-owner{margin-left:0;width:100%}}
