:root{color-scheme:light;--ink:#222320;--muted:#5d5e56;--line:#d9d8d0;--paper:#f6f5f1;--white:#fdfcf8;--wash:#eeede6;--dark:#20211e;--danger:#912e28;--good:#24523b;--wrap:1180px;--font:Arial,Helvetica,sans-serif;--serif:Georgia,"Times New Roman",serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}
a{color:inherit;text-underline-offset:.2em}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
h1,h2,h3,p{margin:0 0 .7em}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.048em;line-height:1.02}
h1{font-size:clamp(2.6rem,6.5vw,5.2rem)}
h2{font-size:clamp(2rem,4.3vw,3.6rem)}
h3{font-size:1.15rem;line-height:1.25}
p:last-child{margin-bottom:0}
:focus-visible{outline:2px solid #52575e;outline-offset:4px}
[hidden]{display:none!important}
.wrap{width:min(calc(100% - 48px),var(--wrap));margin-inline:auto}
.narrow{width:min(calc(100% - 48px),700px);margin-inline:auto}
.site-header{border-bottom:1px solid var(--line);background:var(--paper)}
.header-inner,.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:77px}
.wordmark{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-weight:800;text-decoration:none;letter-spacing:-.055em;font-size:1.37rem}
.header-inner nav,.footer-inner nav{display:flex;align-items:center;gap:clamp(12px,3vw,31px);font-size:.87rem;font-weight:700}
.header-inner nav>a,.footer-inner nav>a{text-decoration:none}
.header-inner nav>a:not(.button):hover,.footer-inner nav>a:hover{text-decoration:underline}
.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:12px;border:1px solid var(--ink);border-radius:5px;background:var(--ink);padding:11px 17px;color:white;font-weight:700;text-decoration:none;font-size:.92rem;line-height:1.25;text-align:center}
.button:hover{background:#43453c}
.button.secondary{background:transparent;color:var(--ink);border-color:#a6a69d}
.button.secondary:hover{background:var(--wash);border-color:var(--ink)}
.button.small{min-height:40px;padding:9px 12px;font-size:.83rem}
.button:disabled{cursor:not-allowed;opacity:.55}
.link-button{border:0;background:none;padding:2px;color:inherit;text-decoration:underline;text-underline-offset:.2em}
.skip{position:fixed;top:12px;left:12px;z-index:10;padding:9px 14px;background:white;transform:translateY(-180%)}
.skip:focus{transform:none}
main:focus{outline:none}
.loading{padding-block:90px}
.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:clamp(34px,6.5vw,100px);align-items:center;padding-block:clamp(52px,8.5vw,112px) clamp(48px,7vw,88px)}
.hero h1{margin-bottom:24px}
.kicker{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.73rem;font-weight:800;letter-spacing:.115em;line-height:1.35;text-transform:uppercase;margin-bottom:18px}
.kicker::before{content:"";width:8px;height:8px;background:currentColor;border-radius:50%;flex:none}
.hero .intro,.lede{color:var(--muted);max-width:53ch;font-size:clamp(1rem,1.75vw,1.15rem)}
.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:24px}
.meta{color:var(--muted);font-size:.81rem}
.hero .meta{margin-top:16px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border:solid var(--line);border-width:1px 0}
.fact{padding:23px 26px 22px}
.fact:first-child{padding-left:0}
.fact+.fact{border-left:1px solid var(--line)}
.fact strong{font-family:var(--serif);font-size:clamp(1.45rem,3vw,2.15rem);font-weight:400;display:block;line-height:1.1;margin-bottom:5px}
.section{padding-block:clamp(47px,7vw,86px)}
.section+.section{border-top:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}
.section-head h2,.section-head p:last-child{margin-bottom:0}
.section-head .meta{margin-top:10px}
.platform-grid,.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.platform,.step,.panel,.order-card{border:1px solid var(--line);border-radius:7px;background:var(--white)}
.platform,.step{padding:20px}
.platform-head{display:flex;align-items:start;justify-content:space-between;gap:8px;margin-bottom:12px}
.platform h3,.step h3{margin-bottom:4px}
.cn{font-size:.82rem;color:var(--muted);margin:0}
.price{font-family:var(--serif);font-size:1.3rem;white-space:nowrap}
.price small{font-family:var(--font);font-size:.65rem;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:14px}
.tag,.badge{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:20px;padding:3px 8px;background:var(--wash);font-size:.73rem;line-height:1.35}
.badge.good{color:var(--good);background:#edf2eb;border-color:#ccd9ce}
.badge.warn{color:var(--danger);background:#f9efeb;border-color:#e4cec8}
.platform .meta{margin-top:12px}
.platform .link-button{display:inline-block;font-size:.82rem;margin-top:12px}
.step .number{color:var(--muted);font-size:.77rem;font-weight:800;letter-spacing:.13em;margin-bottom:24px}
.callout{border-radius:8px;padding:clamp(21px,4vw,40px);background:var(--wash);display:flex;justify-content:space-between;align-items:center;gap:24px}
.callout h2{font-size:clamp(1.8rem,3vw,2.7rem);margin-bottom:8px}
.callout .button{flex:none}
.site-footer{border-top:1px solid var(--line)}
.footer-inner{padding-block:27px;align-items:start}
.footer-inner p{color:var(--muted);font-size:.84rem;margin:7px 0 0}
.footer-inner nav{flex-wrap:wrap}
.page{min-height:55vh;padding-block:clamp(35px,6vw,72px)}
.page h1{font-size:clamp(2.45rem,5.4vw,4.25rem);margin-bottom:12px}
.breadcrumb{display:inline-flex;align-items:center;gap:7px;margin-bottom:21px;font-size:.85rem}
.panel{padding:clamp(17px,3vw,26px);margin-top:16px}
.panel h2,.details h2,.form-aux h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:13px}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.field{display:block;margin-bottom:14px;min-width:0}
.field>span:first-child{display:block;font-size:.86rem;font-weight:700;margin-bottom:4px}
.field .meta{display:block;margin-top:5px}
input:not([type="checkbox"]),select,textarea{width:100%;border:1px solid #a8a99f;border-radius:5px;background:#fff;color:var(--ink);padding:10px 11px;line-height:1.35}
input[type="checkbox"]{width:18px;height:18px;margin:2px 0 0;accent-color:var(--ink);flex:none}
textarea{resize:vertical;min-height:110px}
.check{display:flex;align-items:start;gap:10px}
.form-aux{margin-top:20px;display:flex;gap:10px 18px;flex-wrap:wrap;font-size:.87rem}
.form-note{display:block;margin-top:13px}
.notice{border:1px solid var(--line);border-radius:5px;background:var(--wash);padding:10px 13px;font-size:.9rem;margin:15px 0;overflow-wrap:anywhere}
.notice.error{border-color:#ddb8af;background:#faeeeb;color:var(--danger)}
.notice.success{border-color:#cad9cb;background:#edf2eb;color:var(--good)}
#flash:not([hidden]){margin-top:12px;padding:10px 13px;background:var(--wash);border-radius:5px;font-size:.9rem}
#flash[data-kind="error"]{background:#faeeeb;color:var(--danger)}
#flash[data-kind="success"]{background:#edf2eb;color:var(--good)}
.composer{display:grid;grid-template-columns:minmax(0,1fr) minmax(225px,.37fr);gap:clamp(15px,3vw,30px);align-items:start}
.summary{position:sticky;top:18px}
.summary dl,.attributes{margin:0}
.summary dl>div,.attributes>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:8px 0}
.summary dd,.attributes dd{margin:0;text-align:right;overflow-wrap:anywhere}
.summary .total{font-weight:800}
.post-heading,.order-head,.detail-head{display:flex;justify-content:space-between;align-items:start;gap:10px;flex-wrap:wrap}
.file-list,.report-list{margin:8px 0 0;padding:0;list-style:none}
.file-list li,.report-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}
.upload-hint{min-height:1.3em}
.order-list{display:grid;gap:10px;margin-top:18px}
.order-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:15px 17px;text-decoration:none}
.order-card:hover{border-color:var(--muted)}
.order-card b,.order-card small{display:block;overflow-wrap:anywhere}
.order-card small{color:var(--muted)}
.details .body-copy{white-space:pre-wrap;overflow-wrap:anywhere}
.details .stack>*+*{margin-top:13px}
.details .muted-line{border-top:1px solid var(--line);padding-top:14px}
.prose{max-width:69ch}
.prose h2{font-size:1.85rem;margin:28px 0 10px}
.prose li{margin:6px 0}
@media(max-width:810px){
  .hero{gap:25px}
  .platform-grid,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .header-inner nav{gap:12px}
}
@media(max-width:630px){
  .wrap,.narrow{width:calc(100% - 32px)}
  .header-inner{padding-block:11px;min-height:0;flex-wrap:wrap;gap:10px}
  .header-inner nav{width:100%;justify-content:space-between;flex-wrap:wrap;font-size:.78rem}
  .header-inner nav .button{font-size:.77rem;min-height:34px}
  .hero,.composer{grid-template-columns:1fr}
  .hero{padding-top:40px}
  .facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fact{padding:14px 8px}
  .fact .meta{font-size:.73rem}
  .section-head{align-items:start;flex-direction:column;gap:12px}
  .platform-grid,.steps{grid-template-columns:1fr}
  .callout,.footer-inner{flex-direction:column;align-items:start;gap:14px}
  .summary{position:static}
}
@media(max-width:375px){.form-row{grid-template-columns:1fr;gap:0}.actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* The dispatch ticket mirrors the three real handoffs in the service. */
.dispatch{border:1px solid #3f4038;border-radius:8px;background:#23241f;color:#f5f4eb;box-shadow:0 18px 42px #23241f20;overflow:hidden}
.dispatch-top,.dispatch-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px clamp(16px,3vw,25px)}
.dispatch-top{border-bottom:1px dashed #63645b}
.dispatch-footer{border-top:1px dashed #63645b;background:#2b2d25}
.dispatch-footer strong{font:400 1.55rem/1 var(--serif)}
.dispatch-footer small,.dispatch p{color:#d4d2c8;font-size:.8rem}
.dispatch-footer .button{background:#f5f4eb;color:var(--ink);border-color:#f5f4eb}
.dispatch-footer .button:hover{background:#dfded4}
.eyebrow,.dispatch-live{font-size:.66rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800}
.dispatch-live{display:inline-flex;align-items:center;gap:6px;color:#d4d2c8}
.dispatch-live>span{width:7px;height:7px;border-radius:50%;border:1px solid currentColor}
.dispatch-main{padding:14px clamp(16px,3vw,25px);background-image:radial-gradient(#54554c 0.55px,transparent .55px);background-size:17px 17px}
.dispatch-line{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:start;padding:11px 0}
.dispatch-line+.dispatch-line::before{content:"";position:absolute;top:-12px;left:15px;height:22px;border-left:1px dotted #8d8e82}
.dispatch-line .signal{display:grid;place-items:center;width:31px;height:31px;border:1px solid #77786e;border-radius:100%;color:#deddd3;background:#282922;font:700 .71rem/1 var(--font);letter-spacing:.025em}
.dispatch-line strong,.dispatch-label{font-size:.94rem;font-weight:800;display:block}
.dispatch-line select{margin:6px 0 8px;background:#33352d;color:#faf9f3;border-color:#77786e;font-size:.87rem}
.dispatch-line .tag{color:#eeeee6;background:#363830;border-color:#6e7066}
.dispatch-line button.tag:hover,.dispatch-line button.tag[aria-pressed=true]{background:#f5f4eb;color:var(--ink)}
.dispatch-line .tags{margin-top:8px}
.dispatch-limit{margin-top:9px}
.dispatch :focus-visible{outline-color:#f5f4eb}
.catalog-grid{margin-top:20px}
.platform-fit{padding:9px 11px;border-left:2px solid var(--line);background:var(--paper);margin-bottom:15px}
.over-limit{color:var(--danger);font-weight:700}
.composer .post-draft{position:relative}
.composer .post-draft::before{content:"";position:absolute;top:0;bottom:0;left:-1px;border-left:3px solid #8c8c80;border-radius:7px 0 0 7px}
.post-heading{margin-bottom:8px}
.report-list .meta{display:block}
.detail-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}
.detail-progress>div{padding:9px;border:1px solid var(--line);border-radius:4px;font-size:.81rem;color:var(--muted)}
.detail-progress strong{display:block;color:var(--ink)}
@media(max-width:630px){.dispatch-top,.dispatch-footer{padding-block:12px}.detail-progress{gap:5px}}
.dispatch-progress{max-width:760px;margin-bottom:9px}.dispatch-progress [aria-current=step]{background:var(--wash);border-color:#9b9c91}
.check.form-note{display:flex}
.fit-board{margin-top:20px;border:1px solid #c8c9be;border-radius:6px;background:#f1f0e9;overflow:hidden}
.fit-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px dashed #b7b8ad}
.fit-overline{font-size:.64rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.fit-top h3{font-family:var(--serif);font-size:1.35rem;font-weight:400;letter-spacing:-.035em;margin:0}
.fit-live{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.69rem;text-align:right}
.fit-live::before{content:"";width:6px;height:6px;border:1px solid currentColor;border-radius:50%;flex:none}
.route-list{list-style:none;padding:0;margin:0}
.route-line{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(130px,1.25fr) 76px 79px;gap:12px;align-items:center;padding:9px 13px;border-bottom:1px solid #d6d7ca}
.route-line.current-route{background:#e7e8de;box-shadow:inset 3px 0 #828475}
.route-id strong,.route-fare strong{display:block;font-size:.88rem;line-height:1.25}
.fit-mark{display:block;font-size:.59rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.fit-mark[data-rank="0"]{color:var(--good)}
.fit-mark[data-rank="2"],.fit-mark[data-rank="3"]{color:var(--danger)}
.route-reason,.route-fare span,.fit-note{font-size:.73rem;line-height:1.4;color:var(--muted);margin:0}
.route-fare span{font-size:.62rem;display:block;margin-top:3px}
.route-choose,.route-current{font-size:.69rem;font-weight:800;text-align:center;white-space:nowrap}
.route-choose{border:1px solid #999a8c;border-radius:4px;padding:5px 6px;min-height:34px;background:var(--white);color:var(--ink)}
.route-choose:hover{background:var(--wash);border-color:var(--ink)}
.route-choose:disabled{opacity:.5;cursor:not-allowed}
.route-current{color:var(--muted)}
.fit-note{padding:9px 13px}
@media(max-width:850px){
  .route-line{grid-template-columns:minmax(0,1fr) 75px 76px;column-gap:8px;row-gap:4px}
  .route-reason{grid-column:1/-1;grid-row:2}
  .route-id,.route-fare,.route-choose,.route-current{grid-row:1}
}
@media(max-width:390px){
  .route-line{grid-template-columns:minmax(0,1fr) 58px 72px;padding-inline:9px}
  .fit-top,.fit-note{padding-inline:9px}
}
.ops-tabs{display:flex;gap:8px;margin:22px 0 17px}
.queue-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px 20px}
.queue-panel .kicker{margin-bottom:7px}
.queue-panel h2{margin-bottom:6px}
.queue-week{display:grid;grid-template-columns:minmax(150px,1fr) auto;align-items:end;gap:8px}
.queue-week .field{margin:0}
.queue-week .notice{grid-column:1/-1;margin:0}
.queue-nav{grid-column:1/-1;display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px;font-size:.85rem}
.queue-list{list-style:none;padding:0;margin:16px 0}
.queue-row{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) auto;align-items:start;gap:10px 18px;padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--white);margin-top:8px}
.queue-person{overflow-wrap:anywhere}
.queue-person .meta{display:block}
.queue-reason{margin-top:4px}
.queue-actions{display:flex;gap:7px;flex-wrap:wrap}
@media(max-width:730px){.queue-panel{grid-template-columns:minmax(0,1fr)}.queue-week{justify-self:start}.queue-row{grid-template-columns:1fr 1fr}.queue-actions{grid-column:1/-1}}
@media(max-width:460px){.queue-row{grid-template-columns:minmax(0,1fr)}.queue-week{grid-template-columns:minmax(115px,1fr) auto}}
.draft-memory{display:flex;gap:13px 24px;align-items:start;justify-content:space-between;flex-wrap:wrap;border:1px dashed #acae9f;border-radius:6px;background:var(--wash);padding:12px 14px;margin:18px 0}
.draft-memory strong{font-size:.87rem}
.draft-memory .meta{margin:3px 0 0}
.draft-memory>div{flex:1;min-width:190px}
.draft-tools{display:flex;flex-wrap:wrap;gap:6px 17px;margin-top:7px;font-size:.8rem}
.draft-memory>.link-button{font-size:.8rem;white-space:nowrap}
