.board-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,2fr);gap:24px;align-items:start;max-width:1600px;margin:auto}
.board-library{display:grid;gap:12px;align-content:start;position:sticky;top:0;max-height:75dvh;overflow:auto;padding:2px 8px 12px 2px}
.board-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;text-align:left;width:100%;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color .2s,background-color .2s}
.board-card:hover,.board-card.selected{border-color:var(--gold);background:var(--soft)}.board-card:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.board-card>span:last-child{display:grid;gap:5px;min-width:0}.board-card strong{font-size:1.05rem;overflow-wrap:break-word}.board-card small,.board-step small{color:var(--muted);line-height:1.45}
.board-thumb{width:76px;height:90px;object-fit:cover;border-radius:9px}.board-placeholder{display:grid;place-items:center;color:var(--gold);font-size:30px;background:color-mix(in srgb,var(--gold) 10%,transparent)}
.board-detail{min-width:0;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--surface)}
.board-cover{min-height:270px;position:relative;isolation:isolate;background:var(--soft);display:flex;align-items:end}.board-cover:has(img){color:#fff;background:#161820}.board-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.board-cover:has(img):after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#090d1308,#090d13eb);z-index:-1}.board-cover-copy{padding:30px;width:100%;min-width:0}.board-cover-copy h2{font-size:clamp(26px,3vw,40px);margin:8px 0 20px;overflow-wrap:break-word}.board-cover:has(img) .eyebrow{color:#e9d4ad}.board-cover:has(img) .btn.ghost{background:#1e2330e8;color:#fff;border-color:#ffffff60}
.board-copy,.board-records,.board-section,.board-secrets{padding:24px 30px;border-bottom:1px solid var(--line)}.board-copy p{font-size:1.1rem;line-height:1.8;margin-bottom:0}.board-records>.row{margin-top:14px}.board-secrets summary{cursor:pointer;font-weight:600;min-height:28px}.board-secrets h3{margin-top:20px}.board-section h3{margin:0 0 10px}.board-step{display:flex;gap:18px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:16px 0}.board-step>div:first-child{min-width:0;display:grid;gap:6px}.board-step p{margin:0}.board-step strong{overflow-wrap:break-word}.board-step .btn{flex-shrink:0}.board-footer{padding:18px 30px;display:flex;justify-content:end}.board-live{border-left:3px solid var(--gold)}.board-live h3{margin-top:12px}.board-empty{padding:60px 30px;text-align:center;min-height:430px;display:grid;place-content:center;justify-items:center}.board-empty>span{font-size:50px;color:var(--gold)}.board-empty p{max-width:45ch;line-height:1.7}
.board-edit-section{border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;gap:14px}.board-edit-section>summary{cursor:pointer;font-weight:600}.board-edit-section .row+label>span{display:none}.board-link-edit{display:grid;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.board-edit-section textarea{width:100%;min-height:130px}.board-edit-section input[type=file]{max-width:100%}.board-edit-section .info-box{display:grid;gap:12px}.board-edit-section [data-board-proposal]:empty{display:none}
.board-preview{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:var(--paper);color:var(--ink);overflow:auto;isolation:isolate}.board-preview:has(img){color:#fff;background:#101319}.board-preview-image,.board-preview-shade{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.board-preview-shade{z-index:-1;background:linear-gradient(90deg,#0d1118e8,#0d111870),linear-gradient(0deg,#0d1118d9,transparent)}.board-preview:not(:has(img)) .board-preview-shade{display:none}.board-preview-copy{width:min(760px,100%);padding:130px clamp(24px,6vw,90px) 80px;min-height:100%;display:flex;flex-direction:column;justify-content:center}.board-preview-copy h1{font-size:clamp(32px,5vw,64px);line-height:1.12;margin:20px 0 30px}.board-preview-copy .note-body{font-size:clamp(18px,1.6vw,24px);line-height:1.85;white-space:pre-wrap}.board-preview:has(img) .eyebrow,.board-preview:has(img) .field-note{color:#e1d4bc}.board-preview-close{position:fixed;right:20px;top:20px;z-index:2;background:var(--surface)!important;color:var(--ink)!important;max-width:calc(100% - 40px)}
.human-table:has(.board-table-image){position:relative;isolation:isolate}.board-table-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.2;pointer-events:none}.board-table-title{display:block;font-size:.9rem;color:var(--muted);max-width:34ch;overflow-wrap:break-word}.board-table-image~.human-timeline{background:color-mix(in srgb,var(--paper) 50%,transparent)}
@media(max-width:1000px){.board-layout{grid-template-columns:minmax(210px,.7fr) minmax(0,1.5fr);gap:16px}.board-card{grid-template-columns:56px minmax(0,1fr);gap:10px}.board-thumb{width:56px;height:76px}.board-copy,.board-records,.board-section,.board-secrets,.board-cover-copy{padding:22px}.board-step{flex-wrap:wrap}}
@media(max-width:760px){.board-layout{display:block}.board-library{position:static;display:flex;overflow-x:auto;max-height:none;padding:4px 2px 18px;margin-bottom:8px;scroll-snap-type:x proximity}.board-card{min-width:230px;max-width:270px;scroll-snap-align:start}.board-detail{border-radius:16px}.board-cover{min-height:230px}.board-copy,.board-records,.board-section,.board-secrets,.board-cover-copy{padding:18px}.board-step .row{width:100%}.board-edit-section{padding:14px}.board-preview-copy{padding-top:105px}.board-table-title{max-width:100%;font-size:.8rem}.board-cover .btn{font-size:15px;min-height:44px}.board-footer{padding:18px}.board-empty{min-height:300px;padding:30px 18px}}
@media(prefers-reduced-motion:no-preference){.board-detail{animation:board-appear .25s ease-out}.board-preview-copy{animation:board-appear .5s ease-out}@keyframes board-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
