
.workshop{background:var(--bg);color:var(--ink)}
.workshop h1,.workshop h2,.workshop h3,.workshop .brand-mark{font-family:"Chakra Petch","Trebuchet MS",system-ui,sans-serif;letter-spacing:-.02em}
.workshop .brand-mark{font-size:2rem;color:var(--ink);text-transform:none}
.workshop .main-nav,.workshop .sidebar{background:var(--panel)}
.workshop .btn,.workshop button,.workshop select{border:2px solid var(--line);border-radius:4px;box-shadow:inset 1px 1px var(--cream),inset -1px -1px var(--ink-soft);background-color:var(--panel);color:var(--ink);min-height:42px}
.workshop a.btn{display:inline-flex;align-items:center}.ticket>.btn,.shopfront>.btn{margin-top:12px}
.workshop .btn:active,.workshop button:active{box-shadow:inset 2px 2px var(--ink-soft)}
.workshop a:focus-visible,.workshop button:focus-visible,.workshop select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.workshop .card{box-shadow:none;border-radius:4px}
.workshop .page.active{box-shadow:none}
.workshop-index{display:grid;gap:10px;padding:12px}.workshop-index a{justify-content:flex-start}.workshop-index .nav-circle{width:auto;height:auto}
.workshop-strap{font:12px var(--mono);color:var(--ink)}
.crew-fox{--crew-color:var(--crew-fox);--crew-image:url('/assets/crew/fox.svg')}.crew-sett{--crew-color:var(--crew-sett);--crew-image:url('/assets/crew/sett.svg')}.crew-rook{--crew-color:var(--crew-rook);--crew-image:url('/assets/crew/rook.svg')}.crew-hasp{--crew-color:var(--crew-hasp);--crew-image:url('/assets/crew/hasp.svg')}.crew-kess{--crew-color:var(--crew-kess);--crew-image:url('/assets/crew/kess.svg')}.crew-cypher{--crew-color:var(--crew-cypher);--crew-image:url('/assets/crew/cypher.svg')}
.crew-emblem{display:inline-block;width:24px;height:24px;flex:none;background:var(--crew-color);mask-image:var(--crew-image);mask-size:contain;mask-repeat:no-repeat;mask-position:center}.crew-person{display:inline-flex;align-items:center;gap:6px;color:var(--crew-color);font-weight:700}.crew-portrait{width:64px;height:64px}.crew-bench{padding:18px 0;border-block:4px double var(--line);min-width:0}.crew-bench header{display:flex;gap:14px;align-items:center}.crew-bench h2{margin:0}.crew-bench h2 a{color:var(--crew-color)}.crew-bench header p{margin:5px 0;font:12px var(--mono)}.crew-role{font-weight:700}.crew-now{overflow-wrap:anywhere}.crew-tally{font:13px/1.6 var(--mono)}.crew-benches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.crew-timeline{list-style:none;padding:0}.crew-timeline>li{border-top:1px dotted var(--line);padding:12px 0;overflow-wrap:anywhere}.crew-timeline p{margin:6px 0}.crew-event-label{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font:11px var(--mono)}.crew-event-label time{flex-basis:100%}.crew-strip{border-block:4px double var(--line);padding:14px 0;margin-bottom:24px}.crew-strip ul{display:flex;flex-wrap:wrap;gap:14px 24px;list-style:none;padding:0}.crew-strip li{flex:1 1 220px;min-width:0}.crew-strip li>span{display:block;font-size:.8rem;overflow-wrap:anywhere;margin-top:6px}.crew-sources{margin-top:24px;padding:12px 0}.crew-sources summary,.crew-prompt summary{cursor:pointer}.branch-signers,.job-worker{font-size:.85rem}.crew-unattributed{margin-top:24px}
@media(max-width:900px){.crew-benches{grid-template-columns:1fr}}
.workshop-content{max-width:1160px;margin:auto;min-width:0;padding:16px}
.workshop-content h1{font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.2;margin:8px 0 28px;overflow-wrap:anywhere}
.workshop-content h2{font-size:1.45rem;margin:0 0 14px}.workshop-content h3{font-size:1.25rem;margin:0 0 12px}.workshop-content h4{margin:20px 0 8px;font-size:1rem}
.desk-label{font:12px var(--mono);text-transform:uppercase;letter-spacing:.12em}
.workshop-section{margin:28px 0;padding-top:14px;border-top:4px double var(--ink-soft)}
.workshop-machines,.workshop-sites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.bench,.shopfront,.ticket,.repo{min-width:0;background:var(--panel);padding:18px;border:2px solid var(--line);border-radius:4px;box-shadow:inset 2px 2px var(--cream),inset -2px -2px var(--line)}
.ticket{margin:0 0 14px;background:#efe3bf}.ticket h3 a,.shopfront h3 a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.workshop-jobs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.workshop-jobs .ticket{margin:0}
.gauges{margin:14px 0}.gauges>div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dotted var(--line)}
.gauges dt{font-size:.85rem;color:var(--ink-soft)}.gauges dd{font:13px var(--mono);text-align:right;margin:0;overflow-wrap:anywhere;max-width:60%}
.lamp{display:inline-flex;align-items:center;gap:7px;font:12px var(--mono);padding:4px 7px;border:1px solid var(--line);border-radius:3px;margin-bottom:4px}
.lamp:before{content:"";width:11px;height:11px;mask-image:url('/assets/lamp.svg');mask-size:contain;background:#8c8574}
.lamp-ok:before,.lamp-online:before,.lamp-working:before,.lamp-done:before{background:#357553}.lamp-alarm:before,.lamp-failed:before,.lamp-errored:before,.lamp-stuck:before{background:#ab3a27}.lamp-warn:before,.lamp-thinking:before,.lamp-waiting:before{background:#b77c24}
.since-looked{border-block:4px double var(--ink-soft);padding:16px 0}.since-looked ul{list-style:none;padding:0}.since-looked li{padding:8px 0;border-bottom:1px dotted var(--line);overflow-wrap:anywhere}.since-looked time{display:block;font:11px var(--mono)}.service-reading{padding:12px 0;border-bottom:1px dotted var(--line)}.site-stats .gauges{margin:0}
.source-note{font:11px/1.6 var(--mono);color:var(--ink-soft);overflow-wrap:anywhere;margin:12px 0 0}.source-fault{font-size:.85rem;color:#8f291b}
.last-message{font-size:.9rem;overflow-wrap:anywhere}.verdict{font:13px/1.6 var(--mono);overflow-wrap:anywhere}
.board-filter{display:flex;align-items:end;flex-wrap:wrap;gap:12px}.board-filter label{display:grid;gap:5px;font-size:.85rem;margin:0}.board-filter button{margin:0}.board-filter select{max-width:100%;padding:7px}
.workshop pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:12px/1.6 var(--mono);background:var(--bg);padding:16px;max-width:100%}
.document{margin-top:24px}.operations{margin-top:28px}.operations details{border-bottom:2px dotted var(--line);padding:12px 0}.operations summary{cursor:pointer;font-weight:bold}.branch-tip{border-top:2px dotted var(--line);padding:4px 0}.repo{margin-bottom:16px}.pager{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:.85rem}
@media(max-width:900px){.workshop-machines,.workshop-sites,.workshop-jobs{grid-template-columns:1fr}}
.control-form{display:grid;gap:12px;margin:18px 0;max-width:700px}.control-form label{display:grid;gap:5px;min-width:0}.control-form input,.control-form textarea,.control-form select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:9px;border:2px solid var(--line);color:var(--ink);background-color:var(--cream)}.control-form textarea{resize:vertical;font:13px/1.5 var(--mono)}.control-feedback:empty{display:none}.control-pane{border-bottom:2px dotted var(--line);padding:12px 0;min-width:0}.control-pane summary{cursor:pointer;font-weight:bold}.terminal-panel{margin:20px 0;border:2px solid var(--line);padding:8px;min-width:0}.terminal-screen{width:100%;min-width:0;overflow:hidden;background:#2b2417}.workshop .xterm-screen{max-width:100%}.control-form :focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.workshop .canvas{padding:22px 24px}.workshop .page.active{padding:0;background:transparent;border:0}.workshop-content{padding:8px 0 32px}
.workshop h1,.workshop h2,.workshop h3{font-family:"Chakra Petch","Trebuchet MS",system-ui,sans-serif}.workshop-content h1{font-size:clamp(1.65rem,3vw,2.4rem);margin:10px 0 24px;font-weight:700;letter-spacing:-.035em}
.workshop .btn,.workshop button{font-size:13px;text-transform:none;letter-spacing:0;min-height:44px;padding:8px 12px;border-color:var(--ink-soft);box-shadow:inset 2px 2px var(--cream),inset -2px -2px var(--line)}
.workshop select{padding:8px 38px 8px 10px;border-color:var(--ink-soft);min-height:44px}.workshop :is(input,textarea,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.workshop .nav-actions{gap:8px}.workshop .workshop-search{display:flex;gap:8px;align-items:center}.workshop-search kbd{font:12px var(--mono);border:1px solid var(--line);padding:1px 5px}
.workshop .nav-actions form{margin:0}.workshop-index a[aria-current]{background:var(--gold);color:var(--cream);box-shadow:inset 2px 2px var(--ink)}.workshop-index{gap:8px}
.desk-label{font-size:11px;letter-spacing:.06em;color:var(--ink-soft);margin:4px 0}.attention-board{padding:12px 0 16px;border-block:4px double var(--ink-soft);margin-bottom:24px}.attention-board summary{font-weight:700;cursor:pointer;font-size:1.05rem}.attention-board ul{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.attention-board li{font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.crew-strip{border:0;margin:0 0 24px;padding:0}.crew-strip ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0}.crew-strip li{border-top:1px solid var(--line);padding-top:8px}
.workshop-section{margin:24px 0}.workshop-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.service-reading{padding:10px 0}.service-reading h3{display:inline-block;margin:0 12px 0 0;font-size:1.05rem}.service-reading .source-note{margin-top:4px}
.shopfront-summary{border-top:5px solid var(--ink-soft)}.shopfront-summary header{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.shopfront-summary h3{flex:1;min-width:0;margin:0;overflow-wrap:anywhere}.shopfront-summary p{font-size:14px;line-height:1.6}.shopfront-link{display:inline-block;margin-top:12px;font-weight:700}.shopfront-summary .lamp{margin:0}
.bench,.ticket,.repo,.shopfront{box-shadow:inset 1px 1px var(--cream);border-color:var(--line)}.ticket{border-top:5px double var(--ink-soft);background:#efe3bf}.gauges dt{color:var(--ink-soft);line-height:1.4}.gauges dd{line-height:1.4}.gauges{margin:12px 0}.source-note{font-size:12px}.board-filter{margin:18px 0;align-items:end}.board-filter button{align-self:end}.board-filter select{margin:0}.board-filter label{min-width:120px}.branch-tip.selected{outline:2px solid var(--accent);outline-offset:4px}
.crew-bench{border-color:var(--ink-soft)}.crew-bench header{padding-bottom:4px}.crew-bench header p{line-height:1.5}.crew-event-label time{font-size:12px}.crew-timeline>li{padding:14px 0}.crew-now{line-height:1.5}.crew-prompt summary,.crew-sources summary{padding:8px 0}.branch-signers{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.day-date{font:14px var(--mono)}.day-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}.day-section{border-top:4px double var(--ink-soft);padding:18px 0}.day-list{list-style:none;padding:0;margin:0}.day-list li{border-top:1px dotted var(--line);padding:12px 0;overflow-wrap:anywhere}.day-list p{margin:6px 0;font-size:14px}.day-list time{font:12px var(--mono)}.day-columns .lamp{margin-left:8px}.day-date+.source-note{margin-bottom:20px}
.alert-setting{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px dotted var(--line)}.workshop button.pref-toggle{width:52px;min-height:32px;height:32px;padding:0;border-radius:16px;box-shadow:inset 1px 1px var(--ink-soft);background:var(--panel-2)}.workshop .pref-toggle:before{top:4px;left:4px}.workshop .pref-toggle.is-on{background:var(--gold)}.workshop .pref-toggle.is-on:before{left:26px;background:var(--cream)}.workshop .modal-overlay{backdrop-filter:none}.workshop .modal-window{border:2px solid var(--ink-soft);box-shadow:5px 5px var(--ink-soft)}
.workshop #cypher-search .cs-box{border:2px solid var(--ink-soft);box-shadow:5px 5px var(--ink-soft)}.workshop #cypher-search .cs-input:focus-visible{outline:3px solid var(--accent);outline-offset:-5px}.workshop #cypher-search .cs-row.sel{outline:2px solid var(--accent);outline-offset:-2px}.workshop #cypher-search .cs-row{min-width:0;overflow-wrap:anywhere}.workshop #cypher-search .cs-row>div{min-width:0}.workshop #cypher-search .cs-chip.on{color:var(--cream);background:var(--gold)}
@media(max-width:900px){.day-columns{grid-template-columns:1fr;gap:12px}}
@media(max-width:768px){.workshop .canvas{padding:18px 16px}.workshop .brand-mark{font-size:1.4rem}.workshop .nav-actions{gap:5px}.workshop .nav-actions button{padding:8px}.workshop-search kbd,.workshop-search span{display:none}.crew-strip ul{grid-template-columns:repeat(2,minmax(0,1fr))}.attention-board ul{grid-template-columns:1fr}.workshop .of-rail a[href="/machines"],.workshop .of-rail a[href="/sites"],.workshop .of-rail a[href="/branches"]{display:none}}
@media(max-width:480px){.bench,.shopfront,.ticket,.repo{padding:14px}.workshop-content h1{font-size:1.7rem}.board-filter{gap:10px}.board-filter label{flex:1;min-width:125px}.workshop-services{grid-template-columns:1fr}.shopfront-summary header{gap:8px}.shopfront-summary h3{font-size:1.15rem}.crew-portrait{width:48px;height:48px}.crew-bench header{gap:10px}.workshop #cypher-search .cs-type{display:none}}
@media(prefers-reduced-motion:reduce){.workshop *,.workshop *:before,.workshop *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.visitors-desk .band,.visitors-desk .wrap{min-width:0;max-width:100%;padding:0}
.visitors-desk .eyebrow{font:12px var(--mono);text-transform:uppercase;letter-spacing:.12em}
.visitors-desk .band-lede,.vis-note{color:var(--ink-soft);font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}
.visitors-desk .vis-h{margin:32px 0 12px;padding-top:16px;border-top:4px double var(--ink-soft)}
.vis-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.vis-tab{display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box;padding:8px 12px;border:1px solid var(--line);border-radius:3px}.vis-tab.on{background:var(--panel);font-weight:bold;text-decoration:underline}
.vis-panel{padding:14px 0}.vis-state{font:16px var(--mono)}.vis-scroll{overflow-x:auto;max-width:100%;margin:12px 0}
.vis-scroll table{border-collapse:collapse;width:100%;font-size:.85rem}.vis-scroll th,.vis-scroll td{padding:10px 8px;text-align:right;border-bottom:1px solid var(--line);vertical-align:top}.vis-scroll th:first-child,.vis-scroll td:first-child{text-align:left}.vis-scroll th{background:var(--panel)}.vis-scroll .vis-label{overflow-wrap:anywhere;max-width:300px}
.vis-figures{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:440px;font-size:.9rem}.vis-figures dt,.vis-figures dd{margin:0;padding:7px 0;border-bottom:1px dotted var(--line)}.vis-figures dd{text-align:right;font-family:var(--mono)}
.vis-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vis-filter-grid label{display:grid;gap:5px;min-width:0;font-size:.85rem}.vis-filter-grid input,.vis-filter-grid select{width:100%;min-width:0;max-width:100%;padding:8px;border:1px solid var(--line);background:var(--panel);color:var(--ink)}
.visitors-desk .cta-row{display:flex;flex-wrap:wrap;gap:10px}.visitors-desk .off{opacity:.65;cursor:default}.vis-err{color:#8f291b;overflow-wrap:anywhere}.vis-detail{white-space:pre-wrap;overflow-wrap:anywhere;font:12px var(--mono)}.vis-done{color:#1f4d3a}.vis-list{list-style:none;padding:0;overflow-wrap:anywhere}.vis-list li{padding:4px 0;border-bottom:1px dotted var(--line)}
.vis-plot{margin:18px 0}.vis-chart{display:block;width:100%;height:auto}.vis-plot figcaption{font-size:.8rem;color:var(--ink-soft)}.vis-plot summary{cursor:pointer;padding:8px 0}.visitors-strip p{font-size:.9rem;color:var(--ink-soft)}
.vis-cell-label{display:none}
@media(max-width:900px){.vis-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.vis-filter-grid{grid-template-columns:minmax(0,1fr)}.vis-scroll th,.vis-scroll td{padding:8px 6px}.vis-tabs{gap:6px}.vis-tab{padding:7px 8px}.visitors-desk .cta-row .btn{flex:1 1 auto}}
@media(max-width:768px){.vis-scroll{overflow:visible}.vis-scroll table,.vis-scroll tbody,.vis-scroll tr{display:block;width:100%}.vis-scroll thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.vis-scroll tr{padding:8px 0 16px;border-top:3px double var(--ink-soft)}.vis-scroll td{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;max-width:none!important;text-align:right!important}.vis-cell-label{display:block;text-align:left;color:var(--ink-soft)}.vis-cell-value{min-width:0;overflow-wrap:anywhere}.vis-scroll td:first-child{font-weight:bold}}

.dash{display:grid;gap:22px;min-width:0}
.dash-stamp{margin:0;font:12px var(--mono);color:var(--ink-soft)}
.dash-lights{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.dash-pill{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:2px solid var(--line);border-radius:4px;background:var(--panel);box-shadow:inset 1px 1px var(--cream),inset -1px -1px var(--ink-soft);color:var(--ink);text-decoration:none;min-height:100%}
a.dash-pill:active{box-shadow:inset 2px 2px var(--ink-soft)}
.dash-pill-label{font:600 13px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}
.dash-pill .lamp{align-self:flex-start;font-size:14px;margin:0}
.dash-section{border-top:4px double var(--ink-soft);padding-top:12px;min-width:0}
.dash-section h2{font-size:1.1rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px}
.dash-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.dash-tile,.dash-job{background:var(--panel);border:2px solid var(--line);border-radius:4px;padding:12px;min-width:0}
.dash-tile header,.dash-job header{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:space-between;margin-bottom:6px}
.dash-tile h3,.dash-job h3{margin:0;font-size:1.05rem;overflow-wrap:anywhere}
.dash-gauge p{display:flex;justify-content:space-between;gap:8px;margin:6px 0 2px;font-size:14px}.dash-gauge b{font-weight:600;text-align:right}
.dash-bar{display:block;height:9px;border:1px solid var(--line);border-radius:2px;background:var(--panel-2);overflow:hidden}
.dash-bar i{display:block;height:100%}.dash-bar i.ok{background:#357553}.dash-bar i.warn{background:#b77c24}.dash-bar i.alarm{background:#ab3a27}
.w0{width:0%}.w5{width:5%}.w10{width:10%}.w15{width:15%}.w20{width:20%}.w25{width:25%}.w30{width:30%}.w35{width:35%}.w40{width:40%}.w45{width:45%}.w50{width:50%}.w55{width:55%}.w60{width:60%}.w65{width:65%}.w70{width:70%}.w75{width:75%}.w80{width:80%}.w85{width:85%}.w90{width:90%}.w95{width:95%}.w100{width:100%}
.dash-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dash-list>li{min-width:0;overflow-wrap:anywhere}
.dash-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 10px;background:var(--panel);border:1px solid var(--line);border-radius:3px}
.dash-row>:first-child{flex:1 1 180px;min-width:0}.dash-row .lamp{margin:0}
.dash-agent{font:600 13px var(--mono);flex:0 0 auto!important}
.dash-note{color:var(--ink-soft);font-size:13px;margin:4px 0}
.dash-said{margin:8px 0 0;padding:8px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:3px;font-size:13px;max-height:6.6em;overflow:hidden}
.dash-empty{color:var(--ink-soft)}
.dash-actions{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:6px}
.workshop .dash-btn{min-height:34px;padding:4px 10px;font-size:13px}
.dash-progress{flex:1 1 200px;min-width:0}
#dash-fox .dash-list>li:not(.dash-empty){padding:8px 10px;border:2px solid #b77c24;border-radius:3px;background:var(--panel)}
@media(max-width:480px){.dash-lights{grid-template-columns:1fr 1fr}.dash-grid{grid-template-columns:1fr}}
