/* 只添加分支入口与展开层；原道路和版式由未改动的 module.css 负责。 */
.m-future .fu-open-branch{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 0;border:0;background:none;color:var(--gold-lit);font:500 11px/1 var(--mono);cursor:pointer;white-space:nowrap}
.m-future .fu-open-branch:focus-visible{outline:2px solid var(--gold-lit);outline-offset:4px}
html:has(.fu-branch-dialog[open]){overflow:hidden;scroll-snap-type:none!important}
.fu-branch-dialog{font:400 15px/1.8 var(--sans);box-sizing:border-box}
.fu-branch-dialog *{box-sizing:border-box}.fu-branch-dialog button{font:inherit;color:inherit;background:none;cursor:pointer;min-height:44px;border:1px solid var(--hairline)}
.fu-branch-dialog button:hover{color:var(--gold-lit)}.fu-branch-dialog button:focus-visible,.fu-branch-dialog a:focus-visible{outline:2px solid var(--gold-lit);outline-offset:3px}.fu-branch-dialog button:disabled{opacity:.3;cursor:default}.fu-branch-dialog h2,.fu-branch-dialog h3,.fu-branch-dialog p{margin:0}.fu-branch-dialog a{color:inherit;text-decoration:none}
.fu-branch-dialog .eyeline{font:11px var(--mono);color:var(--gold-lit);letter-spacing:.08em}
.fu-branch-dialog .filter{display:flex;gap:18px}.fu-branch-dialog .filter button{border:0;border-bottom:2px solid transparent;font-size:12px;padding:5px 0;color:var(--dim)}.fu-branch-dialog .filter button[aria-pressed=true]{border-bottom-color:var(--rust-lit);color:var(--text)}
.fu-domain-nav{display:flex;flex-wrap:wrap;gap:5px 18px;border-bottom:1px solid var(--hairline);margin-bottom:24px;padding-bottom:14px}.fu-domain-nav button{border:0;font-size:12px;padding:2px 0;color:var(--dim)}.fu-domain-nav button[aria-pressed=true]{color:var(--gold-lit)}
.fu-branch-dialog{color:var(--text);background:var(--bg);border:1px solid var(--hairline);padding:0;max-height:92svh}.fu-branch-dialog::backdrop{background:color-mix(in srgb,var(--deep) 85%,transparent);backdrop-filter:blur(9px)}body:has(.fu-branch-dialog[open]){overflow:hidden}#branch{width:min(1220px,94vw);max-width:94vw;border-radius:8px}.dialog-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--hairline);padding:14px 32px;font-size:11px;color:var(--dim);gap:15px}.dialog-top button{border:0;padding:0;color:var(--gold-lit);font-size:12px}#branch-body{padding:30px 42px 34px}.branch-heading{display:flex;justify-content:space-between;gap:36px;align-items:end}.branch-heading h2{font:600 clamp(27px,3vw,42px)/1.4 var(--serif-cn);margin-top:8px}.branch-heading p{color:var(--dim);font-size:13px;max-width:470px;margin-top:14px}.branch-heading .filter{flex-shrink:0;margin:0}.timeline-hint{font-size:11px;color:var(--dim);margin:24px 0 12px}.lane{display:grid;grid-template-columns:100px minmax(0,1fr);border-top:1px solid var(--hairline);padding:20px 0;gap:18px}.lane h3{font-size:12px;font-weight:400;color:var(--dim);padding-top:12px}.lane.is-mine h3{color:var(--rust-lit)}.lane-track{display:flex;gap:15px;overflow-x:auto;scrollbar-color:var(--gold) var(--bg);padding:5px 4px 14px;align-items:stretch}.event{flex:0 0 210px;position:relative;text-align:left;padding:15px 16px;border-radius:3px;border-color:color-mix(in srgb,var(--gold) 30%,transparent);background:linear-gradient(130deg,color-mix(in srgb,var(--gold) 5%,var(--bg)),var(--bg));transition:transform .2s}.event:hover{transform:translateY(-3px);border-color:var(--gold)}.event.personal{border-color:color-mix(in srgb,var(--rust-lit) 45%,transparent)}.event small{display:block;color:var(--dim);font:10px/1.5 var(--mono)}.event strong{display:block;font-size:15px;font-weight:500;line-height:1.7;margin:12px 0 20px}.event span{font-size:11px;color:var(--gold-lit)}.event.personal span{color:var(--rust-lit)}.branch-foot{border-top:1px solid var(--hairline);padding-top:17px;font-size:11px;color:var(--dim)}#detail{width:510px;max-width:calc(100vw - 24px);margin:4svh 3vw 4svh auto;max-height:92svh;border-radius:6px}.close{position:absolute;right:17px;top:12px;width:44px;border:0;font-size:28px;color:var(--dim)}#detail-body{padding:55px 34px 35px}#detail h2{font:600 30px/1.5 var(--serif-cn);margin:16px 0 24px}#detail h3{font-size:12px;color:var(--gold-lit);margin:25px 0 10px}#detail p{color:var(--dim);font-size:14px}#detail .source{display:block;border-top:1px solid var(--hairline);margin-top:30px;padding-top:15px;font-size:12px;color:var(--gold-lit)}.record-status{display:inline-block;font-size:11px;color:var(--rust-lit);border:1px solid var(--hairline);padding:3px 9px;margin-top:25px}.pending-list{padding-left:20px;font-size:14px;line-height:2.3;color:var(--dim)}.empty{color:var(--dim);padding:16px}.branch-nav{display:flex;gap:10px;margin-top:23px}.branch-nav button{font-size:12px;padding:6px 14px}
@media(max-width:950px){.branch-heading{display:block}.branch-heading .filter{margin-top:14px}}
@media(max-width:680px){.m-future .fu-walk{gap:12px}.m-future .fu-open-branch{font-size:10px;padding:3px 0;min-height:32px}.dialog-top{padding:10px 18px}.dialog-top>span{display:none}#branch-body{padding:24px 18px}#branch{max-height:94svh;width:96vw;max-width:96vw}.lane{display:block;padding:12px 0}.lane h3{padding:0 0 7px}.event{flex-basis:210px}.branch-heading h2{font-size:26px}.timeline-hint{margin-top:14px}#detail{margin:3svh auto;max-height:94svh}#detail-body{padding:55px 24px 28px}}
@media(prefers-reduced-motion:reduce){.fu-branch-dialog *{transition:none!important}}
