.project-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.project-body.project-view-board,.project-body.project-view-hierarchy{max-width:none}
.project-board-options{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.project-board-options label{font-size:13px;color:var(--muted)}
.project-board-options select{width:auto;min-width:140px}
.project-board .board-content{padding:0}
.project-board .board-lane-heading{display:flex;align-items:center;gap:8px}
.project-board .board-lane-heading h2{font-size:18px;min-width:0}
.project-board .board-lane-title{overflow-wrap:anywhere}
.project-board .board-lane-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;padding:0;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:5px}
.project-board .board-lane-toggle:hover{background:var(--hover);filter:none}
.project-board .board-lane-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.project-board .board-lane-toggle[hidden],.project-board [data-board-lane-body][hidden]{display:none}
/* The board owns scrolling; its height follows the space left by the project controls. */
.board-viewport{height:100dvh;overflow:hidden}
.board-viewport .workspace{display:flex;height:100%;min-height:0;overflow:hidden}
.board-viewport .workspace>.content{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.board-viewport .page-header{flex-shrink:0}
.board-viewport .project-view-board{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
.board-viewport .project-toolbar,.board-viewport .project-board-options{flex-shrink:0}
.board-viewport .project-board,.board-viewport .board-content{display:flex;flex-direction:column;flex:1;min-height:0}
.board-viewport .board-scroll{flex:1;min-height:0;max-height:none;overscroll-behavior:contain}
@media(min-width:901px){.board-viewport .app-navigation{min-height:0;overflow-y:auto;overscroll-behavior:contain}}
.board-card.is-drop-before{box-shadow:0 -3px 0 var(--accent)}
.board-card.is-drop-after{box-shadow:0 3px 0 var(--accent)}
.board-show-all{display:block;width:100%;padding:7px 4px;background:transparent;color:var(--muted);text-align:left;font-size:12px;font-weight:400}
.board-show-all:hover{color:var(--accent);background:var(--hover);filter:none}
.board-show-all[hidden],.board-card[hidden]{display:none}
.project-view-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.project-view-tab{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:5px;color:var(--muted);text-decoration:none;min-height:36px}
.project-view-tab[aria-current="page"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0002}
.project-view-tab:hover{color:var(--ink)}
.project-view-tab:focus-visible,.hierarchy-select:focus-visible,.hierarchy-breadcrumbs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
details[data-project-menu]{position:relative;margin-left:auto}
details[data-project-menu]>summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;padding:9px 12px;border:1px solid var(--line);border-radius:6px}
details[data-project-menu]>summary::-webkit-details-marker{display:none}
details[data-project-menu]>div{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:180px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 8px 25px #0003}
details[data-project-menu]>div>a{display:flex;align-items:center;gap:9px;padding:9px;border-radius:4px;color:var(--ink);text-decoration:none}
details[data-project-menu]>div>a:hover{background:var(--surface)}
.project-hierarchy [hidden]{display:none!important}
.hierarchy-breadcrumbs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.hierarchy-breadcrumbs button{padding:6px 10px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:5px}
.hierarchy-breadcrumbs button[aria-current]{color:var(--ink)}
.hierarchy-columns{display:flex;gap:16px;overflow-x:auto;align-items:flex-start;padding:3px 3px 16px;scrollbar-width:thin}
.hierarchy-column{flex:0 0 310px;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:12px}
.hierarchy-column-title{font-size:14px;margin:0 0 12px;overflow-wrap:anywhere;color:var(--muted);font-weight:600}
.hierarchy-card{display:flex;align-items:center;gap:6px;margin-top:8px;border:1px solid var(--line);border-radius:6px;background:transparent}
.hierarchy-card.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent)}
.hierarchy-select{min-width:0;flex:1;display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left;background:transparent;color:var(--ink);padding:12px;border:0;border-radius:5px;font:inherit}
.hierarchy-select:hover{filter:none;background:color-mix(in srgb,var(--ink) 3%,transparent)}
.hierarchy-select:disabled{opacity:1;cursor:default}
.hierarchy-title{overflow-wrap:anywhere;font-weight:400}
.hierarchy-metadata{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--muted);font-size:11px}
.hierarchy-metadata .status{font-size:11px}
.hierarchy-open{flex-shrink:0;margin-right:8px;display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px}
.hierarchy-source .hierarchy-card{max-width:650px}
@media(max-width:900px){
 .project-board .board-lane-toggle{width:44px;height:44px}
 .project-board-options select{min-height:44px;font-size:16px}
 .project-view-tab{min-height:44px;padding:8px 10px}
 .hierarchy-columns{display:block;overflow:visible;padding:3px}
 .hierarchy-column{display:none;width:100%}
 .hierarchy-column.is-current{display:block}
 .hierarchy-select{min-height:64px;font-size:16px}
 .hierarchy-open{min-width:44px;min-height:44px}
 .hierarchy-breadcrumbs button{min-height:44px}
}
