body.login-page,body:has(.gatehouse){padding:0;min-height:100vh;display:flex}.gatehouse{flex:1;display:grid;align-content:start;grid-template-columns:minmax(0,1.05fr) minmax(380px,.85fr);grid-template-areas:"brand gate" "services services" "colophon colophon";max-width:1280px;margin:0 auto;padding:18px 18px 22px;gap:0}.brand,.gate,.services{margin-top:0}.brand{grid-area:brand}.gate{grid-area:gate}.services{grid-area:services;margin-top:12px}.colophon{grid-area:colophon;margin-top:12px}.brand{display:flex;flex-direction:column;gap:18px;background:linear-gradient(180deg,var(--sheen),transparent 28%),var(--case);border:1px solid var(--case-edge);border-right:0;border-radius:4px 0 0 4px;padding:26px 30px 24px;box-shadow:0 22px 60px -34px var(--shadow)}.brand-head h1{margin:6px 0 0;font-size:clamp(28px,3.6vw,44px)}.brand-head h1 span{color:var(--rail-dim)}.brand-head .strap{margin-top:8px}.brand-art{flex:1;justify-content:center;gap:20px;min-height:150px}.brand-art,.brand-art figure{display:flex;flex-direction:column}.brand-art figure{margin:0;gap:6px}.brand-art figcaption{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--line-hi)}.brand-art svg{display:block;width:100%;height:auto}.art-rail{fill:none;stroke:var(--art-a);stroke-width:8;stroke-linecap:round}.art-diag{fill:none;stroke:var(--art-b);stroke-width:7;stroke-linecap:round}.art-stop{stroke:var(--art-c);stroke-width:7}.art-pf{fill:var(--art-d);stroke:var(--art-e)}.caps{margin-top:0;display:flex;flex-direction:column;gap:10px}.caps-head{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);margin:0;font-weight:400}.caps-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.caps-list li{font-size:12px;line-height:1.45;color:var(--ink-2);border-left:2px solid var(--case-edge);padding-left:11px}.caps-list b{display:block;color:var(--ink);font-family:Barlow Condensed,sans-serif;font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px}.notice{margin:0;padding:16px 20px;border:1px solid var(--case-edge);border-left:3px solid var(--amber);background:var(--plate);border-radius:0 3px 3px 0;font-size:13px;line-height:1.55;color:var(--ink-2)}.notice b{display:block;color:var(--ink);font-family:Barlow Condensed,sans-serif;font-size:15px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}.notice-slim{padding:11px 15px;font-size:12px}.notice-slim b{font-size:13px;margin-bottom:2px}.gate{display:flex;flex-direction:column;gap:14px;background:var(--plate);border:1px solid var(--case-edge);border-radius:0 4px 4px 0;padding:26px 26px 24px;box-shadow:0 22px 60px -34px var(--shadow)}.gate-eyebrow{margin:0 0 4px;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass)}.gate-title{font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:26px;letter-spacing:.1em;text-transform:uppercase;margin:0;line-height:1}.gate-title:before{content:none}.gate-form{gap:12px}.field,.gate-form{display:flex;flex-direction:column}.field{gap:4px}.field label{font-family:Barlow Condensed,sans-serif;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}.field input,.field select{width:100%;font:inherit;font-size:14px;background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:2px;padding:9px 11px}.field input::placeholder{color:var(--ink-3)}.field input:focus-visible,.field select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.field.bad input{border-color:var(--red)}.desks{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.desks legend{padding:0;font-family:Barlow Condensed,sans-serif;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}.desks-hint{margin:0;font-size:12px;color:var(--ink-3)}.desks.bad .desks-hint{color:var(--bad-ink-2)}.desk-plates{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.desk-plates.wide{grid-template-columns:minmax(0,1fr)}.plate-btn{font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--ink-2);background:var(--tile);border:1px solid var(--line);border-radius:2px;padding:8px 4px;cursor:pointer;text-transform:none;transition:background .15s,border-color .15s,color .15s}.plate-btn:hover{background:var(--tile-hi);color:var(--ink)}.plate-btn[aria-pressed=true]{background:var(--tile-hi);border-color:var(--cyan);color:var(--ink-hot)}.plate-btn[disabled]{opacity:.45;cursor:not-allowed}.desks[hidden]{display:none}.gate-error{margin:0;padding:9px 13px;border:1px solid var(--bad-line);border-left:3px solid var(--red);background:var(--bad-bg);border-radius:0 3px 3px 0;font-size:13px;color:var(--bad-ink)}.gate-error b{color:var(--ink)}.signon{width:100%;padding:11px 16px;font-size:15px;letter-spacing:.18em;background:var(--tile-hi);border-color:var(--line-hi)}.signon:hover{background:var(--tile-on)}.signon[disabled]{opacity:.5;cursor:not-allowed}.gate-foot{margin:0;font-size:11.5px;line-height:1.45;color:var(--ink-3)}.resume{padding:11px 14px;border:1px solid var(--case-edge);border-left:3px solid var(--cyan);background:var(--cove);border-radius:0 3px 3px 0;display:flex;flex-direction:column;gap:8px}.resume[hidden]{display:none}.resume-line{margin:0;font-size:13px;color:var(--ink-2)}.resume-line b{color:var(--ink)}.resume-acts{display:flex;gap:8px}.ghost{background:transparent}.ghost:hover{background:var(--surface)}.accounts{margin-top:auto;border-top:1px solid var(--case-edge);padding-top:12px}.accounts h3{margin:0 0 7px;font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}.accounts ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.accounts li{display:flex;align-items:center;gap:10px}.accounts button{flex:1;display:flex;justify-content:space-between;gap:12px;text-align:left;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:400;letter-spacing:.04em;text-transform:none;background:var(--field);border-color:var(--surface-hi);color:var(--ink-2);padding:6px 10px}.accounts button:hover{background:var(--tile);color:var(--ink);border-color:var(--line)}.accounts em{font-style:normal;color:var(--ink-3)}.services ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.services li{display:flex;align-items:flex-start;gap:10px;background:var(--case);border:1px solid var(--case-edge);border-radius:3px;padding:9px 12px}.services .lamp{flex:none;width:10px;height:10px;border-radius:50%;margin-top:5px;background:var(--ink-3);box-shadow:0 0 0 3px var(--halo)}.services li.ok .lamp{background:var(--green);box-shadow:0 0 8px color-mix(in srgb,var(--green) 55%,transparent)}.services li.warn .lamp{background:var(--amber);box-shadow:0 0 8px color-mix(in srgb,var(--amber) 55%,transparent)}.services li.fail .lamp{background:var(--red);box-shadow:0 0 8px color-mix(in srgb,var(--red) 55%,transparent)}.services li.probe .lamp{animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:.25}}.services b{display:block;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.services .svc-note{display:block;font-size:11.5px;line-height:1.4;color:var(--ink-2);margin-top:1px}.colophon{display:flex;flex-wrap:wrap;gap:10px 18px}.book,.colophon{align-items:center}.book{flex:1;min-width:280px;display:grid;gap:2px;text-decoration:none;grid-template-areas:"eyebrow go" "name go" "strap go";grid-template-columns:minmax(0,1fr) auto;background:var(--case);border:1px solid var(--case-edge);border-left:3px solid var(--brass);border-radius:0 3px 3px 0;padding:10px 16px;transition:border-color .18s,background .18s}.book:hover{background:var(--sunk);border-color:var(--line-hi);border-left-color:var(--brass)}.book:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.book-eyebrow{grid-area:eyebrow;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass)}.book-name{grid-area:name;font-family:Barlow Condensed,sans-serif;font-size:18px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);line-height:1.15}.book-strap{grid-area:strap;font-size:12px;color:var(--ink-2);line-height:1.4}.book-go{grid-area:go;padding-left:20px;white-space:nowrap;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan)}.book:hover .book-go{color:var(--cyan-hot)}.colophon-built{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-family:IBM Plex Mono,monospace;font-size:11px}.colophon-built b{font-family:Barlow Condensed,sans-serif;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin-right:2px}.colophon-built span{border:1px solid var(--case-edge);border-radius:2px;padding:3px 8px;color:var(--ink-2);letter-spacing:.06em;background:var(--plate);white-space:nowrap}@media (max-width:760px){.book{grid-template-areas:"eyebrow" "name" "strap" "go";grid-template-columns:minmax(0,1fr)}.book-go{padding-left:0;margin-top:6px}}@media (prefers-reduced-motion:reduce){.services .lamp{animation:none}.book,.field input,.field select,.plate-btn{transition:none}}@media (max-width:940px){.gatehouse{grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "gate" "services" "colophon"}.brand{border-right:1px solid var(--case-edge);border-bottom:0;border-radius:4px 4px 0 0;padding:22px 20px 20px;gap:16px}.brand-art{min-height:110px}.gate{border-radius:0 0 4px 4px;padding:22px 20px 20px}}@media (max-width:520px){.gatehouse{padding:12px 10px 16px}.desk-plates{grid-template-columns:repeat(4,minmax(0,1fr))}}