:root{--bc-primary:#4f46e5;--bc-primary-strong:#4338ca;--bc-primary-soft:#a5b4fc;--bc-primary-dim:#eef0ff;--bc-toc:#0ea5e9;--bc-tob:#7c3aed;--bc-ok:#16a34a;--bc-warn:#d97706;--bc-crit:#dc2626;--bc-bg:#f7f8fa;--bc-card:#ffffff;--bc-hover:#f1f3f4;--bc-border:#e5e7eb;--bc-text:#111827;--bc-muted:#6b7280;--bc-toc-text:#0369a1;--bc-ok-text:#15803d;--bc-warn-text:#b45309;--bc-crit-text:#b91c1c;--bc-muted-text:#4b5563;--bc-r:12px;--bc-r-sm:8px;--bc-shadow:0 1px 2px rgba(16,24,40,0.04),0 2px 8px rgba(16,24,40,0.05);--bc-shadow-lg:0 4px 16px rgba(16,24,40,0.1),0 2px 6px rgba(16,24,40,0.06)}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--bc-primary);outline-offset:2px}body,html{padding:0;margin:0;overflow-x:hidden;scroll-padding-top:64px}body{background:var(--bc-bg);color:var(--bc-text);font-family:var(--font-noto-sans-jp),"Hiragino Sans","Yu Gothic",sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;touch-action:manipulation}h1,h2,h3,ol,p,ul{margin:0;padding:0}ol,ul{list-style:none}.page{max-width:1080px;margin:0 auto;padding:26px 30px 48px}.shell{min-height:100vh}.shell-mobile-header{display:none}.shell-sidebar{position:fixed;top:0;left:0;bottom:0;width:240px;background:var(--bc-card);border-right:1px solid var(--bc-border);padding:18px 14px;display:flex;flex-direction:column;gap:4px;z-index:40;overflow-y:auto;overscroll-behavior:contain}.shell-brand{font-size:16px;font-weight:900;color:var(--bc-primary);padding:8px 10px 18px;letter-spacing:.01em}.shell-nav{display:flex;flex-direction:column;gap:2px}.shell-nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--bc-r-sm);color:var(--bc-text);font-size:14px;font-weight:700;text-decoration:none}.shell-nav-item:hover{background:var(--bc-hover)}.shell-nav-item.active{background:var(--bc-primary);color:#ffffff}.shell-nav-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.shell-sidebar-footer{margin-top:auto;padding:10px;border-top:1px solid var(--bc-border)}.shell-main{margin-left:240px}.shell-overlay{display:none}.page-heading{font-size:20px;font-weight:900;color:var(--bc-text)}@media (max-width:1023px){.shell-mobile-header{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bc-card);border-bottom:1px solid var(--bc-border);position:-webkit-sticky;position:sticky;top:0;z-index:30}.shell-hamburger{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;line-height:1;color:var(--bc-text);cursor:pointer;padding:4px 6px}.shell-mobile-brand{font-size:15px;font-weight:900;color:var(--bc-primary)}.shell-sidebar{transform:translateX(-100%);transition:transform .2s ease;box-shadow:4px 0 16px rgba(0,0,0,.12)}.shell-sidebar.open{transform:translateX(0)}.shell-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:35;touch-action:none}.shell-main{margin-left:0}}.header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:24px 0;border-bottom:1px solid var(--bc-border);margin-bottom:24px}.header-logo{font-size:20px;font-weight:900;color:var(--bc-primary);letter-spacing:.01em}.header-logo-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.back-link,.board-link{font-size:13px;font-weight:700;color:var(--bc-primary-strong);text-decoration:none}.back-link:hover,.board-link:hover{text-decoration:underline}.header-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.header-date{color:var(--bc-muted-text);font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card{background:var(--bc-card);border:1px solid var(--bc-border);border-radius:var(--bc-r);box-shadow:var(--bc-shadow);padding:20px}.main{display:flex;flex-direction:column;gap:28px}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.section-title{font-size:16px;font-weight:700;color:var(--bc-text)}.section-sub{font-size:13px;color:var(--bc-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.badge-primary{background:rgba(79,70,229,.12);color:var(--bc-primary-strong)}.badge-crit{background:rgba(220,38,38,.12);color:var(--bc-crit-text)}.badge-warn{background:rgba(217,119,6,.12);color:var(--bc-warn-text)}.badge-muted{background:rgba(107,114,128,.12);color:var(--bc-muted-text)}.pillar-badge.pillar-toc{background:rgba(14,165,233,.12);color:var(--bc-toc-text)}.pillar-badge.pillar-tob{background:rgba(124,58,237,.12);color:var(--bc-tob)}.pillar-badge.pillar-common{background:rgba(107,114,128,.12);color:var(--bc-muted-text)}.one-thing-card{background:linear-gradient(180deg,var(--bc-primary-dim) 0,var(--bc-card) 55%);border:1px solid var(--bc-primary-soft);padding:28px}.one-thing-eyebrow{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.one-thing-title-label{font-size:13px;font-weight:700;color:var(--bc-primary-strong);letter-spacing:.04em}.one-thing-bottleneck{font-size:30px;font-weight:900;color:var(--bc-text);line-height:1.35;margin-bottom:8px}.one-thing-why{font-size:14px;color:var(--bc-muted);margin-bottom:18px}.one-thing-action{display:flex;align-items:center;gap:12px;background:var(--bc-primary);color:#ffffff;border-radius:var(--bc-r-sm);padding:14px 18px}.one-thing-action-label{font-size:12px;font-weight:700;background:rgba(255,255,255,.2);padding:4px 10px;border-radius:999px;flex-shrink:0}.one-thing-action-text{font-size:16px;font-weight:700}.progress-track{width:100%;height:8px;border-radius:999px;background:var(--bc-hover);overflow:hidden;margin-bottom:20px}.progress-fill{height:100%;width:100%;transform-origin:left;background:var(--bc-primary);border-radius:999px;transition:transform .3s ease}.milestone-track{display:flex;flex-wrap:wrap;gap:16px}.milestone-node{flex:1 1 160px;min-width:150px;display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:var(--bc-r-sm);border:1px solid var(--bc-border);background:var(--bc-bg);position:relative}.milestone-dot{width:10px;height:10px;border-radius:50%;background:var(--bc-muted)}.milestone-done .milestone-dot{background:var(--bc-ok)}.milestone-doing .milestone-dot{background:var(--bc-primary)}.milestone-late .milestone-dot{background:var(--bc-crit)}.milestone-todo .milestone-dot{background:var(--bc-muted)}.milestone-label{font-size:14px;font-weight:700;color:var(--bc-text)}.milestone-date{font-size:12px;color:var(--bc-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.milestone-badge{align-self:flex-start;margin-top:2px}.milestone-badge-done{background:rgba(22,163,74,.12);color:var(--bc-ok-text)}.milestone-badge-doing{background:rgba(79,70,229,.12);color:var(--bc-primary-strong)}.milestone-badge-late{background:rgba(220,38,38,.12);color:var(--bc-crit-text)}.milestone-badge-todo{background:rgba(107,114,128,.12);color:var(--bc-muted-text)}.milestone-node-top{display:flex;align-items:center;gap:6px;min-height:16px}.milestone-check{color:var(--bc-ok);flex-shrink:0}.milestone-done{opacity:.55}.milestone-next{border-color:var(--bc-primary);border-width:1.5px;background:var(--bc-primary-dim)}.milestone-next-tag{font-size:10px;font-weight:800;color:#ffffff;background:var(--bc-primary);padding:1px 7px;border-radius:999px;line-height:1.5}.pillar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.pillar-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px;flex-wrap:wrap}.pillar-name{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700}.signal-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}.signal-dot-green{background:var(--bc-ok)}.signal-dot-yellow{background:var(--bc-warn)}.signal-dot-red{background:var(--bc-crit)}.signal-badge.signal-green{background:rgba(22,163,74,.12);color:var(--bc-ok-text)}.signal-badge.signal-yellow{background:rgba(217,119,6,.12);color:var(--bc-warn-text)}.signal-badge.signal-red{background:rgba(220,38,38,.12);color:var(--bc-crit-text)}.pillar-metrics{display:flex;flex-direction:column;gap:8px}.pillar-metric-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;padding:6px 0;border-bottom:1px dashed var(--bc-border)}.pillar-metric-row:last-child{border-bottom:none}.pillar-metric-label{color:var(--bc-muted)}.pillar-metric-value{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pillar-metric-plan,.pillar-metric-slash{color:var(--bc-muted);font-weight:400}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.kpi-tile{display:flex;flex-direction:column;gap:8px}.kpi-label{font-size:13px;color:var(--bc-muted);font-weight:500}.kpi-value{font-size:26px;font-weight:900;color:var(--bc-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi-unit{font-size:15px;font-weight:700;color:var(--bc-muted);margin-left:4px}.blocker-list{display:flex;flex-direction:column;gap:10px}.blocker-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--bc-r-sm);background:var(--bc-bg)}.blocker-label{font-size:14px;font-weight:500}.blocker-empty{display:inline-flex;align-items:center;gap:6px;color:var(--bc-ok-text);font-weight:700;font-size:14px}.blocker-empty svg{color:var(--bc-ok)}.growth-next-hint{display:flex;align-items:center;gap:6px;margin:4px 4px 0;padding:6px 4px;font-size:12px;color:var(--bc-muted)}.growth-next-hint-icon{display:inline-flex;align-items:center;color:var(--bc-primary)}.board-title-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.board-title{font-size:22px;font-weight:900;color:var(--bc-text)}.board-kpi-row{display:flex;gap:8px;flex-wrap:wrap}.board-kpi{font-size:13px;padding:4px 11px;min-height:26px}.board-kpi-doing{background:rgba(79,70,229,.06);color:var(--bc-primary-strong)}.board-kpi-soon{background:rgba(217,119,6,.06);color:var(--bc-warn-text)}.board-kpi-overdue{background:rgba(220,38,38,.06);color:var(--bc-crit-text)}.board-kpi-done{background:rgba(22,163,74,.06);color:var(--bc-ok-text)}.board-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.view-switch-wrap{position:relative;min-width:0;max-width:100%}.view-switch-wrap:after{content:"";position:absolute;top:3px;bottom:3px;right:0;width:28px;border-radius:0 10px 10px 0;background:linear-gradient(to right,transparent,var(--bc-hover) 65%);pointer-events:none;display:none}.view-switch-wrap.has-overflow:after{display:block}.view-switch{display:inline-flex;background:var(--bc-hover);border-radius:10px;padding:3px;gap:2px;min-width:0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}.view-switch::-webkit-scrollbar{display:none}.view-switch-btn{border:none;background:transparent;color:var(--bc-muted-text);font-size:14px;font-weight:700;padding:7px 15px;border-radius:8px;cursor:pointer;white-space:nowrap;flex-shrink:0;scroll-snap-align:start;transition:background .18s ease-out,color .18s ease-out}.view-switch-btn:hover{color:var(--bc-text)}.view-switch-btn.active{background:var(--bc-card);box-shadow:0 1px 2px rgba(16,24,40,.06),0 1px 1px rgba(16,24,40,.04)}.view-switch-btn.active,.view-switch-btn.active:hover{color:var(--bc-primary-strong)}.fab-add-btn,.view-select{display:none}.toolbar-add-btn{display:inline-flex;align-items:center;gap:6px}.btn-danger,.btn-primary,.btn-secondary{border:none;border-radius:var(--bc-r-sm);padding:10px 18px;font-size:14px;font-weight:700;cursor:pointer}.btn-primary{background:var(--bc-primary);color:#ffffff}.btn-primary:hover{background:var(--bc-primary-strong)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-secondary{background:var(--bc-hover);color:var(--bc-text)}.btn-danger{background:rgba(220,38,38,.1);color:var(--bc-crit-text)}.btn-danger:hover{background:rgba(220,38,38,.18)}.filter-row{align-items:center;justify-content:space-between;gap:12px}.filter-row,.pillar-chips{display:flex;flex-wrap:wrap}.pillar-chips{gap:8px}.pillar-chip{display:inline-flex;align-items:center;gap:6px;height:32px;border:1px solid var(--bc-border);background:var(--bc-card);font-size:14px;font-weight:700;padding:0 12px;cursor:pointer;transition:background .15s ease-out,border-color .15s ease-out}.pillar-chip,.pillar-chip .chip-count{color:var(--bc-muted-text);border-radius:999px}.pillar-chip .chip-count{background:var(--bc-hover);padding:1px 7px;font-size:12px}.pillar-chip.active{border-color:transparent;color:#ffffff}.pillar-chip.active .chip-count{background:rgba(255,255,255,.25);color:#ffffff}.pillar-chip-all.active{background:var(--bc-primary)}.pillar-chip-toc.active{background:var(--bc-toc)}.pillar-chip-tob.active{background:var(--bc-tob)}.pillar-chip-common.active{background:var(--bc-muted)}.toggle-done{display:inline-flex;align-items:center;min-height:32px;gap:6px;font-size:14px;color:var(--bc-muted-text);cursor:pointer}.filter-row-right{display:flex;align-items:center;gap:12px}.board-search{position:relative;display:inline-flex;align-items:center}.board-search-pc{width:220px}.board-search-mobile{display:none}.board-search-icon{position:absolute;left:11px;color:var(--bc-muted);pointer-events:none}.board-search-input{width:100%;height:32px;border:1px solid var(--bc-border);border-radius:999px;background:var(--bc-card);color:var(--bc-text);font-size:13px;font-family:inherit;padding:0 30px 0 34px}.board-search-input:focus{outline:none;border-color:var(--bc-primary);box-shadow:0 0 0 3px var(--bc-primary-dim)}.board-search-input::placeholder{color:var(--bc-muted)}.board-search-clear{position:absolute;right:6px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;color:var(--bc-muted);border-radius:999px;cursor:pointer}.board-search-clear:hover{background:var(--bc-hover);color:var(--bc-text)}.quick-add-overlay{position:fixed;inset:0;background:rgba(17,24,39,.4);display:flex;justify-content:center;align-items:flex-start;padding-top:14vh;z-index:55}.quick-add-panel{width:460px;max-width:calc(100% - 24px);background:var(--bc-card);border:1px solid var(--bc-border);border-radius:var(--bc-r);box-shadow:var(--bc-shadow-lg);padding:18px;display:flex;flex-direction:column;gap:14px;animation:quick-add-in .18s ease-out}@keyframes quick-add-in{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.quick-add-input{width:100%;border:1px solid var(--bc-border);border-radius:var(--bc-r-sm);padding:11px 12px;font-size:15px;font-family:inherit;color:var(--bc-text);background:var(--bc-card)}.quick-add-input:focus{outline:none;border-color:var(--bc-primary);box-shadow:0 0 0 3px var(--bc-primary-dim)}.quick-add-pills{display:flex;gap:8px}.quick-add-pill{flex:1 1;height:34px;border:1px solid var(--bc-border);background:var(--bc-card);color:var(--bc-muted);font-size:13px;font-weight:700;border-radius:999px;cursor:pointer;transition:background .15s ease-out,border-color .15s ease-out,color .15s ease-out}.quick-add-pill.active{border-color:transparent;color:#ffffff}.quick-add-pill-toc.active{background:var(--bc-toc)}.quick-add-pill-tob.active{background:var(--bc-tob)}.quick-add-pill-common.active{background:var(--bc-muted)}.quick-add-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.quick-add-details-btn{border:none;background:transparent;color:var(--bc-primary-strong);font-size:13px;font-weight:700;font-family:inherit;padding:6px 4px;cursor:pointer}.quick-add-details-btn:hover{text-decoration:underline}.quick-add-submit{padding:9px 22px}.board-empty,.board-loading{color:var(--bc-muted);font-size:14px;padding:32px 0;text-align:center}.skeleton-group{display:flex;flex-direction:column;gap:12px}.skeleton-line{display:block;border-radius:var(--bc-r-sm);background:linear-gradient(90deg,var(--bc-hover) 25%,var(--bc-border) 37%,var(--bc-hover) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}.skeleton-line-eyebrow{width:120px;height:13px}.skeleton-line-title{width:70%;height:30px}.skeleton-line-text{width:45%;height:14px}.skeleton-line-action{width:100%;height:46px;border-radius:var(--bc-r-sm)}.skeleton-line-progress{width:100%;height:8px;border-radius:999px;margin-bottom:8px}.skeleton-milestone-row{display:flex;flex-wrap:wrap;gap:16px}.skeleton-line-milestone{flex:1 1 160px;min-width:150px;height:68px}.skeleton-line-blocker{width:100%;height:38px}.growth-next-hint-skeleton{align-items:stretch}.skeleton-line-inline{width:220px;height:12px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.pillar-bg-toc,.pillar-dot-toc{background:var(--bc-toc)}.pillar-bg-tob,.pillar-dot-tob{background:var(--bc-tob)}.pillar-bg-common,.pillar-dot-common{background:var(--bc-muted)}.task-row-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.priority-high{background:rgba(220,38,38,.12);color:var(--bc-crit-text)}.priority-mid{background:rgba(217,119,6,.12);color:var(--bc-warn-text)}.priority-low{background:rgba(107,114,128,.12);color:var(--bc-muted-text)}.badge-hearing{background:rgba(124,58,237,.12);color:var(--bc-tob)}.status-badge.status-todo{background:rgba(107,114,128,.12);color:var(--bc-muted-text)}.status-badge.status-doing{background:rgba(79,70,229,.12);color:var(--bc-primary-strong)}.status-badge.status-done{background:rgba(22,163,74,.12);color:var(--bc-ok-text)}.initiative-view{gap:16px}.initiative-card,.initiative-view{display:flex;flex-direction:column}.initiative-card{gap:14px;border-top:3px solid var(--bc-primary)}.initiative-card-others{border-style:dashed}.initiative-head{justify-content:space-between;gap:10px;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}.initiative-head,.initiative-head-main{display:flex;align-items:center;flex-wrap:wrap}.initiative-head-main{gap:8px}.initiative-head-clickable{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.initiative-title{font-size:17px;font-weight:900;color:var(--bc-primary-strong)}.initiative-head-meta{display:flex;align-items:center;gap:12px;flex-shrink:0}.initiative-head-meta-text{display:flex;align-items:center;gap:12px;cursor:pointer}.initiative-add-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--bc-border);border-radius:var(--bc-r-sm);background:var(--bc-card);color:var(--bc-primary);font-size:16px;font-weight:700;line-height:1;cursor:pointer}.initiative-add-btn:hover{background:var(--bc-primary-dim);border-color:var(--bc-primary-soft)}.drop-target{outline:2px solid var(--bc-primary);outline-offset:-2px;background:var(--bc-primary-dim)}.initiative-drop-hint{margin:0;padding:8px 4px;color:var(--bc-muted);font-size:13px}.drag-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:#4b5563;font-size:18px;line-height:1;border-radius:var(--bc-r-sm);touch-action:none;-webkit-tap-highlight-color:transparent}.initiative-head:hover .drag-handle,.task-row:hover .drag-handle{color:var(--bc-primary-strong)}.drag-handle-sm{font-size:16px;min-width:44px;min-height:44px}.task-check{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:2px solid var(--bc-border);background:var(--bc-card);color:#ffffff;font-size:12px;font-weight:900;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.task-check:hover{border-color:var(--bc-primary)}.task-check-done{background:var(--bc-ok);border-color:var(--bc-ok)}.task-row-body{display:flex;align-items:center;gap:10px;flex:1 1 auto;flex-wrap:wrap;min-width:0}.task-row-done .task-row-title{text-decoration:line-through;color:var(--bc-muted)}.task-row-done{opacity:.65}.initiative-period{font-size:13px;color:var(--bc-muted-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.initiative-progress-label{font-size:13px;font-weight:700;color:var(--bc-primary-strong);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.initiative-progress-track{width:100%;height:6px;border-radius:999px;background:var(--bc-hover);overflow:hidden}.initiative-progress-fill{height:100%;width:100%;transform-origin:left;background:var(--bc-primary);border-radius:999px;transition:transform .3s ease}@media (prefers-reduced-motion:reduce){.initiative-progress-fill,.pillar-chip,.progress-fill,.view-switch-btn{transition:none}.flow-box,.reverse-row,.task-row{transition:background .15s ease-out}.flow-box:hover,.reverse-row:hover,.task-row:hover{transform:none}.task-check-done .task-check-icon path{animation:none;stroke-dasharray:none}.drawer-panel,.toast{animation:none}}.initiative-children{padding-left:2px}.tree-toggle{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:transparent;color:var(--bc-muted);font-size:13px;line-height:1;cursor:pointer;border-radius:var(--bc-r-sm);transition:transform .15s ease;touch-action:none}.tree-toggle-open{transform:rotate(90deg)}.tree-toggle:hover{color:var(--bc-primary-strong);background:var(--bc-hover)}.group-block{list-style:none;display:flex;flex-direction:column;gap:6px;border:1px solid var(--bc-border);border-left:3px solid var(--bc-primary-soft);border-radius:var(--bc-r-sm);background:var(--bc-primary-dim);padding:8px 10px}.group-head{flex-wrap:wrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}.group-head,.group-head-body{display:flex;align-items:center;gap:8px}.group-head-body{flex:1 1 auto;flex-wrap:wrap;min-width:0;cursor:pointer}.group-title{font-size:15px;font-weight:800;color:var(--bc-text)}.group-add-btn{flex-shrink:0;margin-left:auto;display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--bc-border);border-radius:var(--bc-r-sm);background:var(--bc-card);color:var(--bc-primary);font-size:15px;font-weight:700;line-height:1;cursor:pointer}.group-add-btn:hover{background:var(--bc-primary-dim);border-color:var(--bc-primary-soft)}.group-children{margin-left:12px;padding-left:10px;border-left:2px solid var(--bc-primary-soft)}.task-kind-tag-group{color:var(--bc-tob);background:rgba(124,58,237,.12)}.task-list{display:flex;flex-direction:column;gap:8px}.task-row{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--bc-border);border-radius:var(--bc-r-sm);background:var(--bc-card);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;flex-wrap:wrap;transition:background .15s ease-out,box-shadow .18s ease-out,transform .18s ease-out}.task-row:hover{background:var(--bc-hover);box-shadow:var(--bc-shadow-lg);transform:translateY(-1px)}.drag-overlay-card,.drag-overlay-row{cursor:-webkit-grabbing;cursor:grabbing;opacity:.95;transform:scale(1.02);box-shadow:0 8px 24px rgba(17,24,39,.18),0 2px 8px rgba(17,24,39,.12);pointer-events:none}.drag-overlay-card{background:var(--bc-card)}.task-category{flex-shrink:0}.task-row-title{flex:1 1 200px;font-size:15px;font-weight:700;color:var(--bc-text)}.task-kind-tag{display:inline-block;font-size:11px;font-weight:700;color:var(--bc-primary-strong);background:var(--bc-primary-dim);border-radius:4px;padding:1px 5px;margin-right:6px}.task-due{font-size:13px;color:var(--bc-muted-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.task-due,.task-due-badge{flex-shrink:0}.task-due-badge-soon{background:transparent;border:1px solid rgba(217,119,6,.35);color:var(--bc-warn-text)}.scroll-fade-wrap{position:relative}.scroll-fade-wrap:after{content:"";position:absolute;top:0;bottom:8px;right:0;width:32px;background:linear-gradient(to right,transparent,var(--bc-bg) 70%);pointer-events:none}.tl-wrap{display:flex;flex-direction:column;gap:4px;overflow-x:auto}.tl-axis{display:flex;align-items:flex-end;gap:14px;min-width:900px;padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid var(--bc-border)}.tl-axis-spacer{flex:0 0 220px}.tl-axis-track{flex:1 1 auto;position:relative;display:grid;grid-template-columns:repeat(13,1fr)}.tl-tick{border-left:1px solid var(--bc-border);padding-left:4px}.tl-tick-label{font-size:10px;color:var(--bc-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tl-today{position:absolute;top:-16px;bottom:-8px;width:2px;background:var(--bc-crit);opacity:.55;pointer-events:none}.tl-today-label{position:absolute;top:-14px;left:0;transform:translateX(-50%);font-size:10px;font-weight:800;color:var(--bc-crit);white-space:nowrap}.tl-body{display:flex;flex-direction:column;min-width:900px}.tl-lane{padding:12px 0;border-bottom:1px dashed var(--bc-border)}.tl-lane:last-child{border-bottom:none}.tl-lane-main{flex-wrap:wrap;gap:14px}.tl-lane-h,.tl-lane-main{display:flex;align-items:flex-start}.tl-lane-h{flex:0 0 220px;gap:8px;padding-top:5px;cursor:pointer;min-width:0}.tl-lane-dot{width:10px;height:10px;border-radius:50%;margin-top:4px;flex-shrink:0}.tl-lane-dot-muted{background:var(--bc-muted)}.tl-lane-h-text{display:flex;flex-direction:column;gap:2px;min-width:0}.tl-lane-title{font-size:13px;font-weight:800;color:var(--bc-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-lane-period{font-size:11px;color:var(--bc-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tl-track{flex:1 1 320px;position:relative;height:28px;border-radius:var(--bc-r-sm)}.tl-grid{background-image:repeating-linear-gradient(to right,var(--bc-border) 0,var(--bc-border) 1px,transparent 1px,transparent calc(100% / 13))}.tl-bar{position:absolute;top:6px;height:16px;border-radius:999px;opacity:.88;display:flex;align-items:center;padding:0 10px;overflow:hidden;cursor:pointer}.tl-bar-label{font-size:10px;font-weight:700;color:#ffffff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-bar.pillar-bg-toc{background:var(--bc-toc-text)}.tl-chip{position:absolute;top:8px;width:12px;height:12px;border-radius:50%;transform:translateX(-50%);border:2px solid var(--bc-card);cursor:pointer}.tl-chip-done{opacity:.4}.tl-today-line{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--bc-crit);opacity:.5;pointer-events:none}.tl-lane-tasks{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-left:234px}.tl-lane-task-chip{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--bc-text);background:var(--bc-bg);border:1px solid var(--bc-border);border-radius:999px;padding:4px 10px;cursor:pointer}.tl-lane-task-chip:hover{background:var(--bc-hover)}.tl-lane-task-chip.status-done{opacity:.55;text-decoration:line-through}.tl-lane-task-chip-due{color:var(--bc-muted);font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.history-period-filter{display:flex;gap:8px;margin-bottom:14px}.period-btn{border:1px solid var(--bc-border);background:var(--bc-card);color:var(--bc-muted);font-size:12px;font-weight:700;padding:6px 14px;border-radius:999px;cursor:pointer}.period-btn.active{background:var(--bc-primary);border-color:var(--bc-primary);color:#ffffff}.reverse-anchor{font-size:13px;font-weight:700;color:var(--bc-primary-strong);background:var(--bc-primary-dim);border-radius:var(--bc-r-sm);padding:10px 14px;margin-bottom:14px;display:inline-block}.reverse-list{display:flex;flex-direction:column;gap:8px}.reverse-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--bc-border);border-radius:var(--bc-r-sm);background:var(--bc-card);cursor:pointer;flex-wrap:wrap;transition:background .15s ease-out,box-shadow .18s ease-out,transform .18s ease-out}.reverse-row:hover{background:var(--bc-hover);box-shadow:var(--bc-shadow-lg);transform:translateY(-1px)}.reverse-row-main{flex:1 1 220px;display:flex;align-items:center;gap:10px}.reverse-days-left{font-size:13px;font-weight:700;color:var(--bc-primary-strong);flex-shrink:0}.drawer-overlay{position:fixed;inset:0;background:rgba(17,24,39,.4);display:flex;justify-content:flex-end;z-index:50}.drawer-panel{width:420px;max-width:100%;background:var(--bc-card);height:100%;display:flex;flex-direction:column;box-shadow:-4px 0 16px rgba(0,0,0,.12);animation:drawer-in .22s ease-out}@keyframes drawer-in{0%{transform:translateX(24px);opacity:0}to{transform:translateX(0);opacity:1}}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--bc-border)}.drawer-header h2{font-size:16px;font-weight:900}.drawer-close{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;line-height:1;color:var(--bc-muted);cursor:pointer;border-radius:var(--bc-r-sm);padding:2px}.drawer-close:hover{color:var(--bc-text)}.drawer-body{flex:1 1 auto;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px;overscroll-behavior:contain}.form-row{display:flex;gap:12px}.form-row .form-group{flex:1 1}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:12px;font-weight:700;color:var(--bc-muted)}.form-group input[type=date],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid var(--bc-border);border-radius:var(--bc-r-sm);padding:9px 10px;font-size:14px;font-family:inherit;color:var(--bc-text);background:var(--bc-card)}.form-group textarea{resize:vertical}.form-checkbox{gap:6px;font-size:13px;color:var(--bc-text);flex:1 1}.drawer-footer,.form-checkbox{display:flex;align-items:center}.drawer-footer{justify-content:space-between;gap:12px;padding:16px 20px;border-top:1px solid var(--bc-border)}.drawer-footer-right{display:flex;gap:10px;margin-left:auto}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bc-bg);padding:20px}.login-card{width:100%;max-width:360px;background:var(--bc-card);border:1px solid var(--bc-primary-soft);border-radius:var(--bc-r);box-shadow:var(--bc-shadow-lg);padding:32px 28px;display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,var(--bc-primary-dim) 0,var(--bc-card) 45%)}.login-logo{font-size:18px;font-weight:900;color:var(--bc-primary);text-align:center}.login-sub{font-size:13px;color:var(--bc-muted);text-align:center;margin-bottom:4px}.login-error{font-size:13px;font-weight:700;color:var(--bc-crit)}.login-submit{width:100%}.logout-link{border:none;background:transparent;color:var(--bc-muted);font-size:13px;font-weight:700;cursor:pointer;padding:0}.logout-link:hover{color:var(--bc-primary-strong);text-decoration:underline}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:14px;background:var(--bc-text);color:#ffffff;font-size:13px;font-weight:700;padding:10px 12px 10px 20px;border-radius:999px;box-shadow:var(--bc-shadow-lg);z-index:60;animation:toast-in .2s ease-out}@keyframes toast-in{0%{transform:translate(-50%,12px);opacity:0}to{transform:translate(-50%);opacity:1}}.task-check-icon{display:block}@keyframes check-draw{0%{stroke-dashoffset:26}to{stroke-dashoffset:0}}.task-check-done .task-check-icon path{stroke-dasharray:26;animation:check-draw .2s ease-out}.toast-undo{display:inline-flex;align-items:center;gap:5px;border:none;background:rgba(255,255,255,.18);color:#ffffff;font-family:inherit;font-size:13px;font-weight:700;padding:5px 14px;border-radius:999px;cursor:pointer}.toast-undo:hover{background:rgba(255,255,255,.28)}.board-empty-hint{display:block;margin-top:6px;font-size:13px;color:var(--bc-muted)}.board-error{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:32px 0}.board-error .board-empty{padding:0}.board-error-icon{color:var(--bc-muted)}@media (max-width:720px){.page{padding:0 12px calc(84px + env(safe-area-inset-bottom))}.header{padding:8px 0;margin-bottom:8px}.main{gap:8px}.card{padding:12px}.section-head{margin-bottom:6px}.one-thing-card{padding:12px}.one-thing-eyebrow{margin-bottom:6px}.one-thing-bottleneck{font-size:19px;margin-bottom:4px}.one-thing-why{margin-bottom:10px}.one-thing-action{padding:10px 12px}.progress-track{margin-bottom:10px}.kpi-grid,.pillar-grid{grid-template-columns:1fr;gap:8px}.milestone-track{flex-direction:column;gap:8px}.milestone-node{min-width:0;flex:0 0 auto}.board-title-row{gap:6px}.board-toolbar{flex-direction:column;align-items:stretch;gap:8px}.view-switch-wrap{display:none}.view-select{display:block;width:100%;padding:10px 36px 10px 14px;border:1px solid var(--bc-border);border-radius:999px;background:var(--bc-hover) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%236b7280' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat right 14px center;color:var(--bc-primary-strong);font-size:15px;font-weight:700;font-family:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none}.board-search-pc,.toolbar-add-btn{display:none}.board-search-mobile{display:flex;width:100%}.quick-add-overlay{align-items:flex-end;padding-top:0}.quick-add-panel{width:100%;max-width:100%;border-radius:var(--bc-r) var(--bc-r) 0 0;padding:16px 14px calc(18px + env(safe-area-inset-bottom))}.fab-add-btn{display:flex;align-items:center;justify-content:center;position:fixed;right:18px;bottom:max(18px,env(safe-area-inset-bottom));width:52px;height:52px;border-radius:50%;border:none;background:var(--bc-primary);color:#ffffff;font-size:26px;font-weight:400;line-height:1;box-shadow:0 4px 14px rgba(79,70,229,.4);z-index:45;cursor:pointer}.fab-add-btn:active{background:var(--bc-primary-strong)}.filter-row{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:2px}.pillar-chips{flex-wrap:nowrap;flex-shrink:0}.toggle-done{flex-shrink:0;white-space:nowrap}.badge{padding:3px 10px}.board-kpi{font-size:12px;padding:3px 9px;min-height:24px}.form-group input[type=date],.form-group input[type=text],.form-group select,.form-group textarea{font-size:16px}.initiative-view{gap:6px}.initiative-card{gap:8px}.task-list{gap:4px}.task-row{flex-wrap:nowrap;padding:8px 8px 8px 6px;gap:5px;box-shadow:none;border-color:var(--bc-border)}.task-row-body{row-gap:1px;column-gap:8px}.badge-hearing,.task-category,.task-priority{display:none}.task-row-title{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}.status-badge{order:3;font-size:12px;padding:2px 8px}.task-due,.task-due-badge{order:4;font-size:12px;padding:2px 8px}.group-block,.initiative-card{box-shadow:none}.group-children,.initiative-children{margin-left:4px;padding-left:5px}.group-block{padding:6px 8px 6px 6px}.initiative-head-main{gap:4px}.initiative-head{padding-left:0}.drag-handle{position:relative;min-width:26px;min-height:26px;width:26px}.drag-handle:before{content:"";position:absolute;inset:-9px}.initiative-head{gap:6px;flex-wrap:nowrap}.initiative-head-clickable,.initiative-head-main{flex-wrap:nowrap;flex:1 1;min-width:0}.initiative-title{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}.initiative-period{display:none}.initiative-head-meta{gap:6px;flex-shrink:0}.initiative-progress-label{font-size:12px;white-space:nowrap;flex-shrink:0}.initiative-progress-track{height:3px;margin-top:2px}.group-head{flex-wrap:nowrap;gap:4px}.task-kind-tag{padding:0 4px;margin-right:3px}.group-head-body{flex-wrap:wrap;row-gap:1px;column-gap:6px;min-width:0}.group-head-body .task-priority{display:none}.group-title{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.group-head-body .initiative-progress-label{order:2;flex-shrink:0;white-space:nowrap}.group-head-body .status-badge{order:3}.group-head-body .task-due,.group-head-body .task-due-badge{order:4}.btn-danger,.btn-primary,.btn-secondary{padding:8px 14px}.drawer-panel{width:100%}.drawer-body{padding:12px;gap:8px}.drawer-footer,.drawer-header{padding:10px 12px}.form-row{flex-direction:column;gap:10px}}@media (hover:none) and (pointer:coarse){.task-check{width:24px;height:24px}.tree-toggle{position:relative;width:20px;height:20px}.tree-toggle:before{content:"";position:absolute;inset:-10px}.initiative-add-btn{width:28px;height:28px}.group-add-btn{width:26px;height:26px}}.flow-wrap{overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.flow-col-group,.flow-wrap{display:flex;align-items:flex-start;gap:0}.flow-arrow{flex-shrink:0;align-self:center;color:var(--bc-primary-soft);font-size:22px;font-weight:900;padding:0 8px;line-height:1}.flow-col{gap:12px;min-width:240px;width:240px;scroll-snap-align:start}.flow-box,.flow-col{display:flex;flex-direction:column}.flow-box{gap:8px;text-align:left;width:100%;background:var(--bc-card);border:1px solid var(--bc-border);border-left-width:4px;border-radius:var(--bc-r-sm);box-shadow:var(--bc-shadow);padding:14px 14px 14px 12px;cursor:pointer;font:inherit;color:inherit;transition:background .15s ease-out,box-shadow .18s ease-out,transform .18s ease-out}.flow-box:hover{background:var(--bc-hover);box-shadow:var(--bc-shadow-lg);transform:translateY(-1px)}.pillar-border-toc{border-left-color:var(--bc-toc)}.pillar-border-tob{border-left-color:var(--bc-tob)}.pillar-border-common{border-left-color:var(--bc-muted)}.flow-box-title{font-size:14px;font-weight:900;color:var(--bc-text)}.flow-box-period{font-size:12px;color:var(--bc-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.flow-box-progress-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.flow-box-tasks{display:flex;flex-direction:column;gap:4px;margin-top:2px}.flow-box-task{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--bc-text)}.flow-box-task-done{text-decoration:line-through;color:var(--bc-muted)}.flow-box-more{font-size:12px;color:var(--bc-muted);font-weight:700}.cal-hero{display:flex;flex-direction:column;gap:14px}.cal-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.cal-hero-eyebrow{font-size:12px;font-weight:900;color:var(--bc-primary);letter-spacing:.04em}.cal-hero-date{font-size:22px;font-weight:900;color:var(--bc-text);margin-top:2px}.cal-overdue-warn{flex-shrink:0}.cal-hero-tasks{display:flex;flex-wrap:wrap;gap:8px}.cal-hero-empty{font-size:13px;color:var(--bc-muted)}.cal-hero-sub{border-top:1px solid var(--bc-border);padding-top:12px;display:flex;flex-direction:column;gap:8px}.cal-hero-sub-head{display:flex;align-items:center;gap:8px}.cal-hero-sub-label{font-size:12px;font-weight:700;color:var(--bc-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-hero-sub-tasks{display:flex;flex-wrap:wrap;gap:6px}.cal-theme{display:block;text-align:left;border:none;background:transparent;color:var(--bc-text);font:inherit;cursor:pointer;border-radius:var(--bc-r-sm);padding:4px 8px;width:100%}.cal-theme:hover{background:var(--bc-hover)}.cal-theme-empty{color:var(--bc-muted);font-style:italic}.cal-theme-hero{font-size:15px;font-weight:700;background:var(--bc-primary-dim);color:var(--bc-primary-strong);padding:10px 12px}.cal-theme-hero.cal-theme-empty{background:transparent;border:1px dashed var(--bc-border);color:var(--bc-muted);font-weight:400}.cal-theme-sub,.cal-theme-week{font-size:13px;font-weight:700}.cal-theme-week{color:var(--bc-primary-strong);width:auto;flex:1 1 auto}.cal-theme-day{font-size:11px;font-weight:700;padding:2px 4px;line-height:1.3}.cal-theme-input{width:100%;border:1px solid var(--bc-primary);border-radius:var(--bc-r-sm);padding:6px 8px;font:inherit;color:var(--bc-text);background:var(--bc-card);outline:none}.cal-theme-input-hero{font-size:15px;font-weight:700;padding:10px 12px}.cal-theme-input-day{font-size:11px;padding:3px 5px}.cal-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;border:1px solid var(--bc-border);border-radius:999px;background:var(--bc-card);color:var(--bc-text);font-size:12px;font-weight:700;padding:4px 10px;cursor:pointer}.cal-chip:hover{background:var(--bc-hover)}.cal-chip-sm{padding:2px 8px;font-size:11px;border-radius:999px}.cal-chip-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-chip-done{opacity:.6}.cal-chip-done .cal-chip-title{text-decoration:line-through;color:var(--bc-muted)}.cal-weeks{gap:16px}.cal-week,.cal-weeks{display:flex;flex-direction:column}.cal-week{gap:12px}.cal-week-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cal-week-range{font-size:14px;font-weight:900;color:var(--bc-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0}.cal-days{gap:6px}.cal-day,.cal-days{display:flex;flex-direction:column}.cal-day{gap:5px;border:1px solid var(--bc-border);border-radius:var(--bc-r-sm);padding:8px 10px;background:var(--bc-card)}.cal-day-empty{padding:5px 10px;background:var(--bc-bg)}.cal-day-past{opacity:.55}.cal-day-today{border-color:var(--bc-primary);background:var(--bc-primary-dim);box-shadow:0 0 0 2px var(--bc-primary-soft);opacity:1}.cal-day-head{display:flex;align-items:baseline;gap:6px}.cal-day-num{font-size:14px;font-weight:900;color:var(--bc-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-day-today .cal-day-num{color:var(--bc-primary-strong)}.cal-day-wd{font-size:11px;color:var(--bc-muted)}.cal-band-marker{display:inline-flex;align-items:center;gap:4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}.pillar-band-toc{background:rgba(14,165,233,.14);color:var(--bc-toc-text)}.pillar-band-tob{background:rgba(124,58,237,.14);color:var(--bc-tob)}.pillar-band-common{background:rgba(107,114,128,.14);color:var(--bc-muted-text)}.cal-week-band{border:none;cursor:pointer;font-family:inherit}.cal-week-band-done{text-decoration:line-through;opacity:.55}@media (min-width:768px){.cal-days{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.cal-day,.cal-day-empty{min-height:96px}.cal-day-empty{padding:8px 10px}.cal-chip-title{max-width:100%}}