:root{--bg: #f5f7fb;--surface: #ffffff;--surface-2: #f7f9fd;--hover: #f2f6fc;--text: #172b4d;--muted: #7a889e;--line: #e4eaf3;--track: #e9eef6;--primary: #2865e8;--primary-soft: #eaf1ff;--danger: #d64553;--danger-soft: #fff0f1;--green: #13a879;--green-soft: #e8f8f2;--orange: #e8901f;--orange-soft: #fff4e4;--purple: #8166e7;--shadow: 0 4px 16px rgb(37 62 99 / .04);--radius: 14px;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;color:var(--text);background:var(--bg);color-scheme:light}:root[data-theme=dark]{--bg: #0e1520;--surface: #162131;--surface-2: #1b2839;--hover: #1e2c3f;--text: #e4ebf5;--muted: #8f9eb4;--line: #263548;--track: #263449;--primary: #5b8ff5;--primary-soft: #1d3157;--danger: #f07c87;--danger-soft: #3d1f25;--green: #3cc99b;--green-soft: #143a31;--orange: #f5ad55;--orange-soft: #3a2c17;--purple: #a08cf2;--shadow: 0 4px 16px rgb(0 0 0 / .25);color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg)}h1{font-size:20px;margin:0 0 12px}h2{font-size:15px;margin:0 0 10px}a{color:var(--primary)}button{font:inherit;border:1px solid var(--primary);background:var(--primary);color:#fff;border-radius:8px;padding:7px 14px;cursor:pointer}button:disabled{opacity:.6;cursor:default}button.ghost{background:transparent;color:var(--text);border-color:var(--line)}input,select{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 10px}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--danger)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;margin-bottom:16px}.center-page{min-height:100vh;display:grid;place-items:center;padding:16px}.login,.notice{width:100%;max-width:360px;display:flex;flex-direction:column;gap:12px;text-align:center}.login label{display:flex;flex-direction:column;gap:4px;text-align:left}.notice-logo{height:96px;object-fit:contain;align-self:center}.layout{display:flex;min-height:100vh}.sidebar{width:236px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:16px 12px;position:sticky;top:0;height:100vh;overflow-y:auto;transition:width .15s}.brand{display:flex;align-items:center;gap:8px;font-weight:700;padding:2px 6px 14px}.brand img{height:38px;max-width:110px;object-fit:contain}.brand .collapse-btn{margin-left:auto}.nav-group{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.nav-label{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin:12px 10px 6px}.sidebar nav a{display:flex;align-items:center;gap:11px;color:var(--muted);text-decoration:none;padding:9px 11px;border-radius:10px;font-weight:600}.sidebar nav a:hover{background:var(--hover);color:var(--text)}.sidebar nav a.active{background:var(--primary-soft);color:var(--primary)}.nav-badge{margin-left:auto;min-width:20px;text-align:center;font-size:11px;font-weight:700;color:var(--danger);background:var(--danger-soft);border-radius:20px;padding:0 6px}.sidebar-foot{margin-top:auto;display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);padding:14px 4px 0}.avatar{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;background:var(--primary-soft);color:var(--primary)}.who{display:flex;flex-direction:column;min-width:0;font-size:12px;overflow-wrap:anywhere}.foot-actions{margin-left:auto;display:flex;gap:4px}.icon-button{display:grid;place-items:center;width:32px;height:32px;padding:0;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted)}.icon-button:hover{color:var(--primary);border-color:var(--primary)}.layout.mini .sidebar{width:68px;padding:16px 8px}.layout.mini .brand{flex-direction:column;padding:2px 0 10px}.layout.mini .brand img{height:26px;max-width:48px}.layout.mini .brand-name,.layout.mini .nav-text,.layout.mini .nav-label,.layout.mini .who{display:none}.layout.mini .brand .collapse-btn{margin:0}.layout.mini .sidebar nav a{justify-content:center;position:relative;padding:10px 0}.layout.mini .nav-badge{position:absolute;top:2px;right:2px;min-width:16px;font-size:10px;padding:0 4px}.layout.mini .sidebar-foot{flex-direction:column}.layout.mini .foot-actions{margin:0;flex-direction:column}.content{flex:1;min-width:0;padding:24px 28px 56px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-bottom:14px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.kpi strong{font-size:20px}.table-wrap{overflow:auto;max-height:460px}table{width:100%;border-collapse:collapse}th,td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{position:sticky;top:0;background:var(--surface);font-weight:600;color:var(--muted);white-space:nowrap}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}@media (max-width: 1050px){.layout:not(.mini) .sidebar{width:68px;padding:16px 8px}.layout .brand{flex-direction:column;padding:2px 0 10px}.layout .brand img{height:26px;max-width:48px}.layout .brand-name,.layout .nav-text,.layout .nav-label,.layout .who,.layout .collapse-btn{display:none}.layout .sidebar nav a{justify-content:center;position:relative;padding:10px 0}.layout .nav-badge{position:absolute;top:2px;right:2px;min-width:16px;font-size:10px;padding:0 4px}.layout .sidebar-foot{flex-direction:column}.layout .foot-actions{margin:0;flex-direction:column}.content{padding:20px}}@media (max-width: 700px){.layout,.layout.mini{flex-direction:column}.layout .sidebar,.layout.mini .sidebar,.layout:not(.mini) .sidebar{width:auto;height:auto;position:static;flex-direction:row;align-items:center;gap:6px;padding:8px 10px;border-right:0;border-bottom:1px solid var(--line);overflow:visible}.layout .brand{padding:0}.sidebar nav{display:flex;flex:1;min-width:0;overflow-x:auto;gap:2px}.nav-group{flex-direction:row;margin:0}.layout .sidebar nav a{padding:9px}.layout .sidebar-foot{margin:0;border:0;padding:0;flex-direction:row}.layout .sidebar-foot .avatar{display:none}.layout .foot-actions{flex-direction:row}.content{padding:16px}}.charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}.chart svg{width:100%;height:auto;display:block}.chart-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-height:22px}.chart-value{font-size:12px;color:var(--muted)}.chart-value strong{color:var(--text)}.chart .grid{stroke:var(--line);stroke-width:1}.chart .axis{fill:var(--muted);font-size:13px}.chart .line{fill:none;stroke:var(--primary);stroke-width:2;stroke-linejoin:round}.chart .cross{stroke:var(--muted);stroke-dasharray:3 3}.chart .dot{fill:var(--primary);stroke:var(--surface);stroke-width:2}.tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:12px}.tab,button.tab{font:inherit;background:transparent;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:6px 12px;text-decoration:none;cursor:pointer}.tab.active,button.tab.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary);font-weight:600}.add-form{margin-bottom:10px}.add-form input:first-child{flex:1;min-width:200px}button.icon{background:transparent;color:var(--muted);border:1px solid var(--line);padding:2px 7px;font-size:11px}td.order{white-space:nowrap;width:1%}td.order button+button{margin-left:4px}td.actions{white-space:nowrap;text-align:right}td.actions button+button{margin-left:6px}tr.inactive td{color:var(--muted)}.dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid;flex-shrink:0}.pill{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:1px 8px;color:var(--muted)}input[type=color]{width:36px;height:28px;padding:2px;cursor:pointer}button.ghost.danger{color:var(--danger)}td.actions>*+*{margin-left:6px}a.button{display:inline-block;background:var(--primary);color:#fff;border-radius:8px;padding:7px 14px;text-decoration:none}.filters-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filters-bar input[type=search]{flex:1;min-width:200px}.chips{margin-bottom:10px}.chip{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:999px;padding:3px 10px}button.chip{cursor:pointer}.tag{display:inline-block;font-size:12px;border:1px solid;border-radius:6px;padding:1px 7px;white-space:nowrap}.danger-text{color:var(--danger);font-weight:600}.nowrap{white-space:nowrap}.table-wrap.tall{max-height:calc(100vh - 260px)}table.clickable tbody tr{cursor:pointer}table.clickable tbody tr:hover td{background:var(--primary-soft)}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.title-cell{min-width:220px}.title-cell a{color:var(--text);text-decoration:none;font-weight:500}.sticky-head{position:sticky;top:0;z-index:2;background:var(--bg);padding:8px 0;margin-bottom:8px}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.field.wide{grid-column:1 / -1}.field input,.field select,.field textarea{color:var(--text)}textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 10px;resize:vertical}input:disabled,select:disabled,textarea:disabled{opacity:.75}.history{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.history ul{margin:4px 0 0;padding-left:18px}.content-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:4px}.content-card[draggable=true]{cursor:grab}.content-card.overdue{border-left:3px solid var(--danger)}.content-card.slot{border-style:dashed}.card-title{color:var(--text);text-decoration:none;font-weight:500}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.kanban{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}.kanban-col{flex:0 0 250px;background:var(--primary-soft);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:8px;min-height:120px;max-height:calc(100vh - 240px);overflow-y:auto}.kanban-col.over{outline:2px dashed var(--primary)}.kanban-head{display:flex;align-items:center;gap:6px;position:sticky;top:0}.calendar-bar{margin-bottom:10px}.spacer{flex:1}.tabs.compact{margin:0}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--line);gap:1px}.cal-head{background:var(--surface);padding:6px;font-size:12px;color:var(--muted);text-align:center}.cal-day{background:var(--surface);min-height:96px;padding:4px;display:flex;flex-direction:column;gap:2px;min-width:0}.calendar.week .cal-day{min-height:360px}.cal-day.other{opacity:.5}.cal-day.today .cal-date{background:var(--primary);color:#fff;border-radius:999px;padding:0 6px;align-self:flex-start}.cal-date{font-size:12px;color:var(--muted)}.cal-item{display:block;font-size:11px;color:var(--text);text-decoration:none;border-left:3px solid;padding:1px 4px;background:var(--bg);border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-item.overdue{color:var(--danger)}.progress{display:flex;flex-direction:column;gap:3px;min-width:160px}.progress .bar{display:flex;height:6px;border-radius:999px;background:var(--line);overflow:hidden}.progress .posted{background:#2e7d32}.progress .planned{background:var(--primary)}tr.draggable{cursor:grab}tr.drop-target td{border-top:2px solid var(--primary)}tr.clickable-row{cursor:pointer}.apply-box{margin-top:10px;padding:8px 10px;background:var(--primary-soft);border-radius:8px}.title-cell .pill{margin-left:6px}.forecast{background:var(--primary-soft);border-radius:12px;padding:10px 14px;margin-bottom:14px}.forecast p{margin:4px 0}tr.sub-row td{font-size:13px}tr.total-row td{font-weight:600;border-top:2px solid var(--line)}.num-input{width:80px;text-align:right}button.small{font-size:12px;padding:3px 8px}.notice-ok{background:#e8f5e9;color:#1b5e20;border-radius:8px;padding:8px 12px}:root[data-theme=dark] .notice-ok{background:#1b3a1f;color:#a5d6a7}a.ghost-link{background:transparent;color:var(--primary);border:1px solid var(--primary)}.steps{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.steps a{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:2px 10px 2px 3px}.steps a span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--line);color:var(--text);font-weight:600}.steps a.done{color:#2e7d32;border-color:#2e7d32}.steps a.done span{background:#2e7d32;color:#fff}.card[id]{scroll-margin-top:110px}.checks{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0}.idea-model{display:grid;grid-template-columns:1fr auto 1.4fr auto 1fr;gap:10px;align-items:start}.idea-middle{display:flex;flex-direction:column;gap:8px;border-left:2px solid var(--primary);border-right:2px solid var(--primary);padding:0 12px}.idea-arrow{align-self:center;font-size:28px;color:var(--primary)}.idea-down,.idea-plus{text-align:center;color:var(--primary);font-weight:700;font-size:18px}.idea-start textarea,.idea-end textarea{min-height:220px}h3{font-size:14px;margin:16px 0 8px}table.shots textarea{width:100%;min-width:140px}.num-input.sec{width:64px}@media (max-width: 1000px){.idea-model{grid-template-columns:1fr}.idea-arrow{transform:rotate(90deg);justify-self:center}.idea-middle{border:0;border-top:2px solid var(--primary);border-bottom:2px solid var(--primary);padding:10px 0}}.grade{display:inline-block;font-size:12px;font-weight:600;border-radius:6px;padding:1px 8px;white-space:nowrap}.grade-a{background:#e8f5e9;color:#1b5e20}.grade-b{background:#e3f2fd;color:#0d47a1}.grade-c{background:#fff3e0;color:#e65100}.grade-d{background:#ffebee;color:#b71c1c}:root[data-theme=dark] .grade-a{background:#1b3a1f;color:#a5d6a7}:root[data-theme=dark] .grade-b{background:#102a43;color:#90caf9}:root[data-theme=dark] .grade-c{background:#3e2a10;color:#ffcc80}:root[data-theme=dark] .grade-d{background:#3e1414;color:#ef9a9a}.score-big{font-size:22px;font-weight:700}.score-big small{font-size:12px;color:var(--muted);font-weight:400}.score-big.small{font-size:16px}.viral-table td textarea{width:100%;min-width:160px}.viral-table tr.passed td{background:#e8f5e940}tr.group-row td{font-weight:600;color:var(--primary);background:var(--primary-soft)}.wide-input input{width:100%;min-width:300px}.num-input.money{width:120px}.entry-table .num-input{width:84px}.code-input{width:80px}.home-link{display:flex;flex-direction:column;gap:4px;margin:0;color:var(--text);text-decoration:none}.home-link:hover{border-color:var(--primary)}.field.invalid{color:var(--danger)}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}table.inline-edit td{padding-top:4px;padding-bottom:4px}.cell-select,.cell-input{font:inherit;font-size:13px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-left-width:3px;border-radius:6px;padding:3px 4px;max-width:170px}.cell-input{border-left-width:1px}.cell-select:disabled,.cell-input:disabled{opacity:.7}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:#00000073}.dialog{width:min(480px,100%);display:flex;flex-direction:column;gap:10px}.dialog h2{margin:0;font-size:16px}.page-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}.page-header h1{margin:2px 0 0;font-size:24px;letter-spacing:-.5px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--primary)}.subtitle{color:var(--muted);font-size:13px}.page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.metric-card{position:relative;margin:0;min-height:128px;text-align:left;font:inherit;color:var(--text);display:block;width:100%}.clickable-card{cursor:pointer;transition:border-color .15s,transform .15s}.clickable-card:hover{border-color:var(--primary);transform:translateY(-1px)}.metric-label{font-size:12px;font-weight:600;color:var(--muted)}.metric-icon{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--primary-soft);color:var(--primary)}.metric-icon.red{background:var(--danger-soft);color:var(--danger)}.metric-icon.green{background:var(--green-soft);color:var(--green)}.metric-icon.orange{background:var(--orange-soft);color:var(--orange)}.metric-value{font-size:30px;font-weight:800;letter-spacing:-1px;margin:8px 0 2px}.metric-value.blue{color:var(--primary)}.metric-value.red{color:var(--danger)}.metric-value.green{color:var(--green)}.metric-of{font-size:13px;font-weight:600;letter-spacing:0;color:var(--muted)}.metric-note{font-size:12px;color:var(--muted)}.ring{position:relative;flex:0 0 auto}.ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.ring-center b{font-size:26px}.ring-center small{font-size:11px;color:var(--muted)}.track{height:9px;background:var(--track);border-radius:20px;overflow:hidden}.fill{height:100%;border-radius:20px;background:var(--primary);transition:width .3s}.fill.green{background:var(--green)}.fill.red{background:var(--danger)}.fill.orange{background:var(--orange)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px;padding:28px 12px}.empty-state strong{color:var(--text);font-size:13px}.error-state{display:flex;align-items:center;gap:10px;color:var(--danger);background:var(--danger-soft);border-radius:12px;padding:12px 14px;margin-bottom:14px}.skeleton{border-radius:8px;background:linear-gradient(90deg,var(--track) 0%,var(--surface-2) 50%,var(--track) 100%);background-size:200% 100%;animation:skeleton 1.2s ease-in-out infinite}@keyframes skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skeleton,.fill,.clickable-card,.sidebar{animation:none;transition:none}}@media (max-width: 1050px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.panel-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.panel-grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-grid>.card{margin:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.panel-head h2{margin:0}.panel-head.spaced{margin-top:24px}.section-title{margin:8px 0 12px}.link-small{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;text-decoration:none}.dot{display:inline-block;width:9px;height:9px;flex:0 0 9px;border-radius:50%;margin-right:7px;vertical-align:middle}.green-text{color:var(--green)}.blue-text{color:var(--primary)}.split{display:flex;gap:24px;align-items:center}.bars{flex:1;min-width:0}.bar-row{margin:12px 0}.bar-label{display:flex;justify-content:space-between;gap:8px;font-size:12px;font-weight:650;margin-bottom:6px}.warn-box{display:flex;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;border-radius:12px;background:var(--orange-soft);color:var(--text);font-size:13px}.warn-box svg{color:var(--orange);flex:0 0 auto}.warn-cta{margin-left:auto;white-space:nowrap;font-size:12px;font-weight:700;padding:6px 12px;border-radius:8px;text-decoration:none;color:#fff;background:var(--primary);border:0}.workflow{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.stage{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font:inherit;cursor:pointer}.stage:hover{border-color:var(--primary)}.stage .dot{margin:0}.stage b{font-size:22px}.stage small{font-size:11px;color:var(--muted);text-align:center}.task-list{list-style:none;margin:0;padding:0}.task{display:flex;align-items:center;gap:12px;padding:11px 4px;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none;border-radius:8px}.task-list li:last-child .task{border-bottom:0}.task:hover{background:var(--hover)}.task .dot{margin:0;background:var(--orange)}.task .dot.bad{background:var(--danger)}.task div{min-width:0}.task b{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task small{color:var(--muted);font-size:11px}.task .time{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap}.channel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.channel-tile{background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:14px}.channel-tile .topline{display:flex;justify-content:space-between;gap:8px;font-size:12px;font-weight:800}.channel-tile .big{font-size:24px;font-weight:800;margin-top:8px}.channel-tile .big span{font-size:12px;font-weight:500;color:var(--muted)}.channel-tile .sub{font-size:12px;color:var(--muted);margin-bottom:10px}.kanban-col{flex:0 0 260px;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:10px}.kanban-head{padding:4px 4px 8px;background:var(--surface-2);font-size:13px}.kanban-head .dot{margin:0}.lane-count{margin-left:auto;font-size:11px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:0 8px}.lane-empty{text-align:center;font-size:12px;color:var(--muted);border:1px dashed var(--line);border-radius:10px;padding:22px 8px}.content-card{border-radius:12px;padding:12px;gap:6px;box-shadow:var(--shadow);transition:border-color .15s}.content-card:hover{border-color:var(--primary)}.card-tags{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.code-tag{font-size:11px;font-weight:700;color:var(--muted);background:var(--surface-2);border-radius:6px;padding:1px 6px}.card-title{font-weight:700;font-size:13px;line-height:1.4}.card-bottom{display:flex;align-items:center;gap:6px;margin-top:4px;min-width:0}.card-bottom .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar.sm{width:24px;height:24px;flex:0 0 24px;font-size:10px}.avatar.empty{background:var(--surface-2);color:var(--muted)}.card-due{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap}.coverage{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.rings{display:flex;gap:16px}.legend-grid{flex:1;min-width:200px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.legend-grid small{display:block;color:var(--muted);font-size:12px}.legend-grid b{font-size:22px}.legend-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px}.gap-row{display:grid;grid-template-columns:minmax(110px,160px) minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.gap-num{font-weight:800;white-space:nowrap}.gap-short{white-space:nowrap;min-width:70px;text-align:right}.track.stack{display:flex}.track.stack .fill{border-radius:0}.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.week{display:flex;flex-direction:column;gap:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px}.week.current{border-color:var(--primary);background:var(--primary-soft)}.week-head{display:flex;justify-content:space-between;align-items:center;gap:6px}.week-figs{display:flex;flex-wrap:wrap;gap:4px 10px}@media (max-width: 1050px){.panel-grid,.panel-grid.equal{grid-template-columns:1fr}}@media (max-width: 650px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-value{font-size:24px}.split{flex-direction:column}.gap-row{grid-template-columns:1fr auto}.gap-row .track{grid-column:1 / -1;order:3}.page-header h1{font-size:20px}}.figures-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
