:root{
  --paper:#f6f1e4;--paper-2:#ebe4cf;--paper-3:#fffaf0;--ink:#15140f;--muted:#676253;
  --olive:#6d7441;--olive-2:#9aa06a;--line:#b8b09b;--warm:#c7923d;--warm-2:#f3dfaa;
  --void:#11120f;--void-2:#23241d;--good:#376b4b;--held:#8b4c32;--shadow:0 8px 22px rgba(38,34,23,.10)
}
:root[data-theme="dark"]{
  --paper:#171813;--paper-2:#24261e;--paper-3:#1e2019;--ink:#f0eadb;--muted:#b8b09d;
  --olive:#b2ba78;--olive-2:#838a56;--line:#55584a;--warm:#d4a04b;--warm-2:#5b4926;
  --void:#090a08;--void-2:#11130f;--good:#77bc8e;--held:#dc8a69;--shadow:0 8px 24px rgba(0,0,0,.28)
}
*{box-sizing:border-box}
html{background:var(--void);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{margin:0;background:var(--paper);min-height:100vh}
button,a{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible{outline:3px solid var(--warm);outline-offset:3px}
.skip{position:absolute;left:-9999px;top:0}.skip:focus{left:1rem;top:1rem;z-index:99;background:var(--paper-3);color:var(--ink);padding:.75rem;border:2px solid var(--ink)}
.mast{display:grid;grid-template-columns:108px minmax(0,1fr) auto;gap:1.5rem;align-items:center;padding:1.4rem 2rem;background:linear-gradient(90deg,var(--paper-3),var(--paper));border-bottom:1px solid var(--line)}
.mark{width:92px;height:92px;background:var(--void);color:#fff;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.mark strong{font:700 2.5rem/.9 Georgia,serif;letter-spacing:.08em}.mark span{font-size:.58rem;letter-spacing:.14em;text-align:center;margin-top:.55rem}
.title h1{font:700 clamp(2.4rem,5vw,4.7rem)/.9 Georgia,serif;margin:0}.title h1 em{display:block;color:var(--olive);font-style:normal;font-size:.64em;font-weight:500;margin-top:.18rem}
.title p{margin:.55rem 0 0;color:var(--muted);font:1rem/1.4 Georgia,serif}
.controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.controls button,.controls a{border:1px solid var(--ink);background:var(--paper-3);color:var(--ink);padding:.6rem .8rem;text-decoration:none;border-radius:4px;font-weight:700;font-size:.82rem}
.controls .version{background:var(--void);color:#fff;border-color:var(--void)}
.thesis{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);background:var(--paper-2)}
.thesis div{padding:.85rem 1.25rem;border-right:1px solid var(--line)}.thesis div:last-child{border-right:0}
.kicker{display:block;font-size:.61rem;letter-spacing:.15em;font-weight:800;color:var(--olive);margin-bottom:.35rem;text-transform:uppercase}
.thesis b{font-size:.82rem;line-height:1.35}
main{padding:1.2rem 1.4rem 2.5rem;max-width:1680px;margin:auto}
.board{position:relative;border:1px solid var(--line);background-color:var(--paper-3);background-image:linear-gradient(rgba(109,116,65,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(109,116,65,.08) 1px,transparent 1px);background-size:22px 22px;padding:1rem;border-radius:8px;box-shadow:var(--shadow);overflow:hidden}
.top-grid{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(460px,1.55fr) minmax(300px,1fr);gap:1rem;align-items:stretch}
.panel{background:color-mix(in srgb,var(--paper-3) 94%,transparent);border:1px solid var(--line);border-radius:7px;padding:1rem;position:relative;min-width:0}
.panel h2,.band h2{font-size:1.05rem;margin:0 0 .85rem;display:flex;align-items:center;gap:.5rem}.panel h2 .icon,.band h2 .icon{color:var(--olive);font-size:1.25rem}
.stickies{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}
.sticky{border:0;background:var(--warm-2);color:#1d1a11;padding:.9rem .45rem;min-height:66px;border-radius:2px;box-shadow:0 5px 9px rgba(61,48,22,.16);font-weight:700;font-size:.8rem;transform:rotate(var(--r,0deg));transition:transform .15s,box-shadow .15s,opacity .15s}
.sticky:hover,.sticky[aria-pressed="true"]{transform:translateY(-4px) rotate(0);box-shadow:0 10px 18px rgba(61,48,22,.24)}
.sticky.dim{opacity:.25}
.fabric{padding:0;display:flex;flex-direction:column}
.fabric-head{background:var(--void);color:#fff;border-radius:6px 6px 0 0;padding:.75rem 1rem;font:700 1.25rem Georgia,serif;text-align:center;letter-spacing:.01em}
.fabric-body{display:grid;grid-template-columns:1fr minmax(170px,.9fr) 1fr;gap:.75rem;align-items:center;padding:1rem;flex:1}
.cap-col{display:grid;gap:.65rem}.cap{display:flex;align-items:center;gap:.65rem;padding:.72rem .75rem;border:1px solid var(--line);background:var(--paper-3);border-radius:6px;box-shadow:0 4px 10px rgba(40,35,22,.06);font-weight:800;font-size:.82rem;transition:.15s}
.cap .ico{font-size:1.25rem}.cap.active{border-color:var(--olive);background:color-mix(in srgb,var(--olive) 14%,var(--paper-3));transform:scale(1.03)}.cap.dim{opacity:.24}
.core{min-height:190px;border:1px solid var(--line);background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem;border-radius:8px;position:relative}
.core:before{content:"";position:absolute;inset:-30px;border:2px dashed var(--olive-2);border-radius:50%;opacity:.75;pointer-events:none}
.core strong{font-size:1.15rem;line-height:1.25}.core p{font-size:.82rem;line-height:1.35;margin:.45rem 0 0}.core .woven{font-size:2.4rem;color:var(--olive);margin-bottom:.45rem}
.job-list{display:grid;gap:.6rem}.job{display:grid;grid-template-columns:38px 1fr;gap:.7rem;align-items:center;padding:.8rem;border:1px solid var(--line);background:var(--paper);border-radius:6px;text-align:left}.job span:first-child{font-size:1.25rem;color:var(--olive)}.job b{font-size:.8rem;line-height:1.28}.job.active{border-color:var(--olive);background:color-mix(in srgb,var(--olive) 12%,var(--paper))}
.flow-arrow{position:absolute;font-size:2rem;color:var(--olive);font-weight:900;top:50%;transform:translateY(-50%);z-index:2}.flow-left{right:-1.62rem}.flow-right{left:-1.62rem}
.band{margin-top:1rem;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--paper-3) 95%,transparent);padding:1rem;position:relative}
.program-row{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr)) minmax(210px,1.1fr);gap:.7rem;align-items:stretch;position:relative}
.program-row:before{content:"";position:absolute;top:-.65rem;left:4%;right:18%;height:2px;background:var(--olive);opacity:.8}
.program{border:1px solid var(--line);background:var(--paper-3);border-radius:6px;padding:.8rem;min-height:120px;text-align:left;position:relative;transition:.15s}.program:before{content:"";position:absolute;top:-.7rem;left:50%;height:.7rem;border-left:2px solid var(--olive)}
.program b{display:block;font-size:.78rem;line-height:1.22;margin:.35rem 0 .55rem}.program small{font-size:.68rem;line-height:1.3;color:var(--muted)}.program .ico{font-size:1.2rem;color:var(--olive)}
.program.active{border:2px solid var(--olive);background:color-mix(in srgb,var(--olive) 14%,var(--paper-3));transform:translateY(-3px)}.program.dim{opacity:.22}
.dashboard{border:2px dashed var(--warm);background:color-mix(in srgb,var(--warm-2) 65%,var(--paper-3));border-radius:10px;padding:1rem;text-align:left;position:relative;box-shadow:0 6px 14px rgba(93,60,15,.12)}
.dashboard:before{content:"→";position:absolute;left:-1.35rem;top:44%;font-size:1.65rem;color:var(--olive);font-weight:900}.dashboard b{display:block;font-size:1rem}.dashboard small{display:block;margin:.3rem 0 .7rem;color:var(--muted)}.dashboard em{font:italic .79rem/1.35 Georgia,serif}.dashboard.active{box-shadow:0 0 0 4px color-mix(in srgb,var(--warm) 30%,transparent),0 10px 20px rgba(93,60,15,.18)}
.rules{display:grid;grid-template-columns:repeat(5,1fr);gap:.65rem}.rule{display:grid;grid-template-columns:42px 1fr;gap:.65rem;align-items:start;border:1px solid var(--line);background:var(--paper);padding:.85rem;border-radius:5px}.rule .ico{font-size:1.5rem;color:var(--olive)}.rule b{font-size:.78rem}.rule p{font-size:.68rem;line-height:1.35;margin:.25rem 0 0;color:var(--muted)}
.proof{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.receipt{border:1px solid var(--line);background:var(--paper-3);padding:.85rem;border-radius:5px;display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;text-decoration:none;color:var(--ink)}.receipt .state{font-size:.55rem;letter-spacing:.12em;padding:.25rem .38rem;border:1px solid currentColor;color:var(--good);font-weight:900}.receipt .state.local{color:var(--held)}.receipt b{font-size:.76rem}.receipt p{font-size:.67rem;line-height:1.3;margin:.22rem 0 0;color:var(--muted)}
.detail{margin-top:1rem;border:1px solid var(--line);border-left:6px solid var(--olive);background:var(--paper);padding:1rem 1.1rem;display:grid;grid-template-columns:minmax(180px,.65fr) 1.35fr;gap:1rem;min-height:150px;border-radius:5px}.detail h2{font:700 1.45rem Georgia,serif;margin:.2rem 0}.detail p{font-size:.82rem;line-height:1.5;margin:.35rem 0}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.detail-card{border-left:1px solid var(--line);padding-left:.75rem}.detail-card span{font-size:.57rem;letter-spacing:.14em;font-weight:800;color:var(--olive)}.detail-card b{display:block;font-size:.74rem;line-height:1.35;margin-top:.35rem}
.footer-note{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem 0 .1rem;font-weight:800;font-size:.78rem}.footer-note span{color:var(--olive);font-size:1.3rem}
.hidden{display:none!important}
@media(max-width:1180px){.top-grid{grid-template-columns:1fr 1.35fr}.jobs{grid-column:1/-1}.job-list{grid-template-columns:repeat(4,1fr)}.program-row{grid-template-columns:repeat(4,1fr)}.dashboard{grid-column:span 2}.rules{grid-template-columns:repeat(3,1fr)}.proof{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.mast{grid-template-columns:72px 1fr;padding:1rem}.mark{width:64px;height:64px}.mark strong{font-size:1.75rem}.mark span{display:none}.controls{grid-column:1/-1;justify-content:flex-start}.thesis{grid-template-columns:1fr}.thesis div{border-right:0;border-bottom:1px solid var(--line)}main{padding:.75rem}.top-grid{grid-template-columns:1fr}.fabric-body{grid-template-columns:1fr}.cap-col{grid-template-columns:repeat(2,1fr)}.core{order:-1;min-height:150px}.core:before{display:none}.jobs{grid-column:auto}.job-list{grid-template-columns:1fr}.flow-arrow{display:none}.stickies{grid-template-columns:repeat(3,1fr)}.program-row{grid-template-columns:repeat(2,1fr)}.program-row:before,.program:before{display:none}.dashboard{grid-column:1/-1}.rules{grid-template-columns:1fr}.proof{grid-template-columns:1fr}.detail{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.title h1{font-size:2.4rem}}
@media(max-width:390px){.stickies{grid-template-columns:repeat(2,1fr)}.program-row{grid-template-columns:1fr}.cap-col{grid-template-columns:1fr}}
@media(max-width:420px){
  *{min-width:0}
  body{overflow-x:hidden}
  .mast{grid-template-columns:1fr;gap:8px;padding:8px}
  .mark{width:58px;height:58px}.mark strong{font-size:24px}.mark span{display:none}
  .title{width:100%;overflow-wrap:anywhere}.title h1{font-size:12vw;line-height:.95;overflow-wrap:anywhere}.title h1 em{font-size:.7em}.title p{font-size:15px;line-height:1.35;overflow-wrap:anywhere}
  .controls{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:6px}.controls button,.controls a{width:100%;padding:8px 6px;font-size:13px;white-space:normal;overflow-wrap:anywhere}
  .controls .version{grid-column:1/-1}
  .thesis div{padding:8px}.thesis b{font-size:13px}.kicker{font-size:10px}
  main{padding:4px}.board{padding:4px;border-radius:3px;background-size:16px 16px}.top-grid{gap:6px}.panel,.band{padding:8px;border-radius:4px}.panel h2,.band h2{font-size:16px;line-height:1.2;overflow-wrap:anywhere}
  .stickies{grid-template-columns:1fr;gap:6px}.sticky{width:100%;min-height:48px;padding:8px 5px;font-size:14px;white-space:normal;overflow-wrap:anywhere;transform:none!important}
  .fabric-head{font-size:18px;padding:8px}.fabric-body{padding:8px;gap:6px}.cap-col{grid-template-columns:1fr;gap:6px}.cap{width:100%;padding:8px;font-size:14px;white-space:normal;overflow-wrap:anywhere}.core{width:100%;min-height:130px;padding:8px}.core strong{font-size:17px}.core p{font-size:13px}.core .woven{font-size:30px}
  .job-list{grid-template-columns:1fr;gap:6px}.job{width:100%;grid-template-columns:30px 1fr;padding:8px}.job b{font-size:13px;overflow-wrap:anywhere}
  .program-row{grid-template-columns:1fr;gap:6px}.program{width:100%;min-height:90px;padding:8px}.program b{font-size:13px}.program small{font-size:12px}.dashboard{grid-column:auto;width:100%;padding:10px}.dashboard:before{display:none}.dashboard b{font-size:16px}.dashboard small,.dashboard em{font-size:12px}
  .rules{grid-template-columns:1fr;gap:6px}.rule{grid-template-columns:30px 1fr;width:100%;padding:8px}.rule b{font-size:13px}.rule p{font-size:12px;overflow-wrap:anywhere}
  .proof{grid-template-columns:1fr;gap:6px}.receipt{grid-template-columns:1fr;width:100%;padding:8px}.receipt b{font-size:13px}.receipt p{font-size:12px;overflow-wrap:anywhere}.receipt .state{width:max-content}
  .detail{grid-template-columns:1fr;padding:8px;gap:8px}.detail h2{font-size:21px;overflow-wrap:anywhere}.detail p{font-size:13px}.detail-grid{grid-template-columns:1fr}.detail-card{padding-left:8px}.detail-card b{font-size:12px;overflow-wrap:anywhere}
  .footer-note{font-size:12px;line-height:1.3;text-align:center;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.controls{display:none}.board{box-shadow:none}.detail{break-inside:avoid}.panel,.band{break-inside:avoid}body{background:#fff}.mast{background:#fff;color:#000}.mark{background:#000;color:#fff}}
