/* One physical device language for PORT. Native socket/cable geometry is unchanged. */
@font-face{font-family:"Manrope";src:url('/assets/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url('/assets/ibm-plex-mono-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--ui-font:"Manrope",Arial,sans-serif;--ui-mono:"IBM Plex Mono",monospace;--device-face:#ecf0f5;--device-edge:#b6c0cd;--screen:#17212d;--screen-line:#394654;--screen-muted:#afbdcd;--key-edge:#aab6c5}
body,.port-architecture,.port-instruments,.port-flow{font-family:var(--ui-font)}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,.port-architecture h2,.port-instruments h2{font-variation-settings:normal;font-stretch:normal;font-weight:600;letter-spacing:-.055em;line-height:1.02}
h1{font-size:clamp(54px,6.5vw,100px)}
h2,.port-architecture h2,.port-instruments h2{font-size:clamp(42px,5.1vw,76px)}
.hero-copy>p{font-size:17px;line-height:1.6;max-width:30em}
.hero-copy>.hero-endline{font-size:16px}
.mono,.port-architecture .mono,.port-instruments .mono,.port-svg-mono,.state-tools li,.port-flow-kicker,.port-flow-command,.port-flow-receipt,.port-flow-method text,.port-flow-tag,.query-input-row input,.hero-ca code,pre,code{font-family:var(--ui-mono);letter-spacing:0}
.port-svg-body{font-family:var(--ui-font)}
.brand,.intro-word{font-family:Archivo,Arial,sans-serif}
.eyebrow{font-size:12px;letter-spacing:.04em;margin-bottom:18px}
.section-head>p,.port-instruments-head>p{font-size:17px;line-height:1.6;max-width:28em}
.button{border-radius:6px;min-height:46px;padding:12px 19px;gap:18px;font-weight:500;font-size:15px;background:linear-gradient(#253041,#17212d);border-color:#17212d;box-shadow:inset 0 1px #ffffff20,0 3px 0 #0e1420;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.button:hover{background:linear-gradient(#354559,#253246);border-color:#253246;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff25,0 4px 0 #0e1420}
.button:active{transform:translateY(2px);box-shadow:inset 0 1px 3px #00000025,0 1px 0 #0e1420}
.button.secondary,.light-button,.nav.dark .nav-app{background:linear-gradient(#fafcff,#e5ebf3);border-color:#b6c0cd;color:var(--ink);box-shadow:inset 0 1px #fff,0 3px 0 #aab6c5}
.button.secondary:hover,.light-button:hover,.nav.dark .nav-app:hover{background:linear-gradient(#fff,#edf2f8);border-color:#8392a5;color:var(--ink);box-shadow:inset 0 1px #fff,0 4px 0 #aab6c5}
.button.secondary:active,.light-button:active,.nav.dark .nav-app:active{box-shadow:inset 0 1px 3px #12192515,0 1px 0 #aab6c5}
.button:disabled{transform:none;box-shadow:inset 0 1px #ffffff20,0 2px 0 #0e1420}
.nav-links{border-radius:7px;padding:3px;border-color:#b7c2d0;background:#edf2f8dd;box-shadow:inset 0 1px #fff}
.nav{background:#e4eaf1f2;border-bottom:1px solid #bac5d340;backdrop-filter:blur(14px)}
.nav.dark{background:#121925f2;border-bottom-color:#56657b40}
.nav-links a,.nav-links button{border-radius:4px;font-size:14px;font-weight:500;padding:9px 13px}
.nav-app{font-size:14px;min-height:42px}
.sound-toggle,.menu-button{border-radius:6px;background:#eef3f8b3;box-shadow:inset 0 1px #ffffff80,0 2px 0 #b6c0cd66}
.nav.dark .sound-toggle,.nav.dark .menu-button{background:#263343;box-shadow:inset 0 1px #ffffff0b,0 2px 0 #0e1420}
.nav.dark .nav-links{border-color:#435165;box-shadow:inset 0 1px #ffffff09}
.sound-toggle:active,.menu-button:active{transform:translateY(1px);box-shadow:none}
.nav-sheet{border-radius:8px}
.plug-tag{border-radius:5px;font-family:var(--ui-mono);font-size:12px;min-height:36px;box-shadow:inset 0 1px #fff,0 2px 0 #b6c0cd80}
.plug-tag.active,.plug-tag:hover{box-shadow:inset 0 1px #ffffff18,0 2px 0 #0e1420;color:var(--plate)}
.hero-state h2{font-size:25px;font-weight:600;letter-spacing:-.03em}
.hero-state>p{font-size:15px}
.state-eyebrow{font-size:12px}
.state-tools li{font-size:12px;min-height:40px}
.state-tools li b{font-size:12px}
.state-activity{font-size:12px;line-height:1.5}
.hero-hint,.hero-bottom .mono{font-size:12px}
.hero-ca button{font-family:var(--ui-mono);border-radius:4px;min-height:36px}
.port-architecture{min-height:740px;padding-block:100px}
.port-architecture-copy>p{font-size:18px;line-height:1.6}
.port-architecture-count{margin-top:60px;padding-block:16px}
.port-architecture-count strong{font-family:var(--ui-mono);font-size:52px;font-weight:400;font-variation-settings:normal}
.port-architecture-tool{font-family:var(--ui-font);font-weight:500}
.port-flow-pick button{border-radius:4px;font-family:var(--ui-font);font-size:14px;min-height:44px}
.port-flow{--pf-code:var(--ui-mono)}
.port-flow-head h2,.port-flow-details h3{font-family:var(--ui-font)}
.port-flow-navigation button{font-family:var(--ui-mono);font-size:12px}
.port-flow-receipt{border-radius:3px;box-shadow:0 7px 0 -3px #a2b0c5,0 8px 18px #0000001f}
.port-flow-head h2{letter-spacing:-.055em;font-weight:600;font-variation-settings:normal}
.port-flow-head p,.port-flow-details p{font-family:var(--ui-font);font-size:16px;line-height:1.6}
.port-flow-details h3{font-weight:500;letter-spacing:-.035em}

/* The four tools now share a single switchboard enclosure. */
.console-section{padding-top:90px;padding-bottom:85px}
.console-section .section-head{margin-bottom:38px}
.assistant-shell,.console-shell{border-radius:9px;border:1px solid var(--device-edge);background:var(--device-face);box-shadow:inset 0 1px #fff,0 5px 0 #bcc6d2,0 14px 30px #17212d0d;overflow:hidden}
.assistant-head,.console-head{padding:20px 26px;background:linear-gradient(#f5f8fc,#e5ebf3);border-bottom:1px solid #b4bfce;font-size:12px;color:#4b5b6e}
.assistant-head .mono,.console-head .mono{font-size:12px}
.assistant-head .text-button{font-size:14px;font-weight:500;min-height:36px}
.assistant-messages{background:var(--screen);padding:34px 32px;min-height:330px;max-height:570px;box-shadow:inset 0 2px 8px #00000025;color:#e8eff8;scrollbar-color:#62758a var(--screen)}
.assistant-welcome{max-width:620px;padding:6px 0 38px}
.assistant-mark{color:#90a4ff;font-family:var(--ui-mono);font-size:32px}
.assistant-welcome h3{font-size:28px;font-weight:500;letter-spacing:-.04em;margin:15px 0 14px;color:#edf3fc}
.assistant-welcome p{color:var(--screen-muted);font-size:16px;line-height:1.7;max-width:43em}
.chat-message{max-width:90%;border-radius:5px;padding:17px 20px;margin-bottom:24px}
.chat-assistant{background:transparent;color:#e8eff8;padding-left:0;max-width:820px}
.chat-user{background:#2c3b4f;color:#f4f8ff;border:1px solid #43536a;box-shadow:inset 0 1px #ffffff09}
.chat-speaker{font-family:var(--ui-mono);font-size:12px;letter-spacing:.025em;color:#aebbd0;opacity:1;margin-bottom:12px}
.chat-copy{font-size:16px;line-height:1.75;max-width:65ch}
.chat-copy strong{font-weight:600;color:#fff}
.chat-thinking .chat-copy{color:#bdc9d9}
.chat-evidence{font-family:var(--ui-mono);color:#aebbd0;font-size:12px;line-height:1.7;letter-spacing:0}
.chat-sources{gap:8px}
.chat-sources a{background:#263449;color:#dbe6ff;border:1px solid #4e627b;border-radius:3px;padding:8px 11px;font-family:var(--ui-mono);font-size:12px;max-width:100%;overflow-wrap:anywhere}
.chat-sources a:hover{background:#324663;border-color:#90a4ff}
.chat-error{background:#3d2829;border-color:#8c5d59;color:#f3c3b9;font-size:15px;border-radius:4px}
.assistant-prompts{background:var(--device-face);padding:21px 26px;gap:10px;border-top:1px solid #adbaca}
.assistant-prompts button{min-height:42px;border-radius:4px;background:linear-gradient(#fff,#e5ebf3);border-color:var(--key-edge);color:#27354a;box-shadow:inset 0 1px #fff,0 2px 0 #b0bdce;font-family:var(--ui-font);font-size:14px;font-weight:500;padding:10px 14px;transition:transform .15s,box-shadow .15s,border-color .15s}
.assistant-prompts button:hover{color:#27354a;border-color:#7288b4;background:#fff;transform:translateY(-1px)}
.assistant-prompts button:active{transform:translateY(2px);box-shadow:inset 0 1px 3px #12192512,0 0 0 #b0bdce}
.assistant-form{padding:20px 26px;background:#f9fbfe;border-top:1px solid #bec9d6;align-items:flex-end;gap:24px}
.assistant-form textarea{font-size:16px;line-height:1.65;padding:9px 0;min-height:44px;color:#17212d}
.assistant-form textarea::placeholder{color:#617086}
.assistant-footer{background:var(--device-face);font-size:13px;color:#526172;padding:15px 26px;border-top:1px solid #d1dae6}
.assistant-footer .mono{font-size:12px;line-height:1.6}
.manual-tools{margin-top:42px;border-top-color:#b5c0ce;padding-top:26px}
.manual-tools>summary{font-size:20px;font-weight:500;letter-spacing:-.025em;min-height:44px}
.manual-tools>summary span{font-family:var(--ui-mono);font-size:12px;color:#526172;letter-spacing:0}
.manual-tools[open]>summary{margin-bottom:24px}
.console-tabs{padding:18px 26px 0;gap:5px;flex-wrap:wrap}
.console-tabs button{border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:500;padding:9px 13px;min-height:42px;color:#526172}
.console-tabs button.active{background:#263449;color:#f1f5fa;border-color:#263449;box-shadow:inset 0 1px #ffffff18}
.console-tabs button:hover:not(.active){background:#dae3ee;color:#17212d}
#query-form{padding:25px 26px 23px}
.query-label{font-size:12px;color:#526172}
.query-input-row{border-bottom-color:#aab8c9;padding:12px 0;gap:18px}
#query-input{font-family:var(--ui-font);font-size:23px;font-weight:400;color:#17212d}
.query-input-row input[readonly]{color:#526172}
.prompt-arrow{font-size:25px;color:#526172}
.query-options{margin-top:14px;align-items:center}
.query-options p{font-size:14px;color:#526172}
.query-options label{font-size:12px;color:#526172}
.query-options select{border-radius:3px;min-height:36px;font-family:var(--ui-mono);font-size:14px;background:#f9fbfe;color:#17212d;border-color:#adbbcd}
.result-area{background:var(--screen);color:#e8eff8;padding:24px 26px;min-height:290px;box-shadow:inset 0 2px 8px #00000025}
.empty-result p{font-size:21px;font-weight:400;color:#d6e1ef;line-height:1.5}
.empty-result .mono{font-size:12px;color:var(--screen-muted)}
.result-symbol{color:#8ea4ff;font-size:38px}
.result-table{font-size:14px;color:#e8eff8}
.result-table th{font-family:var(--ui-mono);font-size:12px;color:var(--screen-muted);border-bottom-color:var(--screen-line)}
.result-table td{border-bottom-color:var(--screen-line);padding-block:16px}
.result-area .positive{color:#91d9c2}.result-area .negative{color:#f1b0a4}
.result-area .mint-code,.result-area .pad-row small,.result-area .signal-reading small,.result-area .bundle-note,.result-area .result-error p{color:var(--screen-muted);font-size:13px;line-height:1.7}
.result-area .mint-code,.result-area .signal-reading small{font-family:var(--ui-mono)}
.result-area .token-links a{color:#a6b9ff;font-size:14px}
.result-area .signal-reading,.result-area .metric,.result-area .pad-row{border-color:var(--screen-line)}
.result-area .signal-reading p{font-size:16px;line-height:1.65}
.result-area .result-error h3,.result-area .pad-row strong,.result-area .bundle-verdict{font-family:var(--ui-font);font-weight:500;color:#e8eff8}
.token-name small{display:block;margin-top:4px;font-family:var(--ui-mono);font-size:12px;color:var(--screen-muted)}
.token-image{background:#2c3b4f;border-radius:3px}
.metric-grid{gap:22px}
.metric strong{font-family:var(--ui-font);font-size:31px;font-weight:500;color:#eef4ff}
.metric small{font-family:var(--ui-mono);font-size:12px;color:var(--screen-muted);line-height:1.6}
.metric .mono,.metric span,.coin-summary,.coin-meta,.result-notes,.result-notes p{color:var(--screen-muted)}
.coin-matches{border-color:var(--screen-line)}
.coin-matches h3{color:#eef4ff;font-weight:500}
.coin-matches>p,.coin-match code{color:var(--screen-muted)}
.coin-match{border-color:var(--screen-line)}
.coin-match>span{color:#9bb0ff}
.console-footer{background:var(--device-face);border-top:1px solid #bdc9d8;padding:17px 26px;color:#526172}
.console-footer .mono{font-size:12px;line-height:1.6}
.console-footer button{font-size:14px}
#raw-result{font-family:var(--ui-mono);font-size:12px;line-height:1.7;background:#111a25;color:#c8d6e9;overflow:auto;max-width:100%;margin:0}

/* Client setup and documentation keep the same quiet control language. */
dialog{border-radius:10px;border-color:#b6c0cd;background:#f1f5fa;box-shadow:inset 0 1px #fff,0 20px 90px #07122250}
.close-dialog{font-family:var(--ui-font);border-radius:4px;min-height:44px;min-width:44px}
.client-switch{border-radius:5px;padding:4px;background:#e0e7f0;border:1px solid #bfcbda}
.client-switch button{border-radius:3px;min-height:44px;font-size:14px}
.endpoint-row,.config-details{border-radius:4px}
.connect-note,.dialog-bottom .mono{font-size:12px;line-height:1.6}
.port-docs-dialog h2{font-weight:600;letter-spacing:-.055em}
.port-docs-dialog h3,.port-docs-dialog h4{font-weight:500;letter-spacing:-.025em}
.port-docs-dialog pre,.port-docs-dialog code{font-family:var(--ui-mono)}
.port-docs-head>.mono,.port-docs-toc>.mono,.port-docs-dialog .port-docs-label{font-size:12px}
.port-docs-dialog .port-docs-small{font-size:14px}
.port-docs-client,.port-docs-tool,.port-docs-endpoint{border-radius:4px}
.boundary-copy>p{font-size:23px;font-weight:400;line-height:1.5}
.closing h2{font-weight:500;letter-spacing:-.055em;line-height:1.08}
.closing-path{font-size:12px}
footer>.mono{font-size:12px}


@media(max-width:760px){
  h1{font-size:clamp(44px,9vw,66px);line-height:1.04;letter-spacing:-.055em}
  h2,.port-architecture h2,.port-instruments h2,.section-head h2{font-size:clamp(38px,9.5vw,60px);line-height:1.05}
  .hero-copy>p{font-size:16px;line-height:1.6;max-width:32em}.hero-copy>.hero-endline{font-size:15px}
  .hero-actions{gap:11px;flex-wrap:wrap}.hero-actions .button{font-size:14px;min-height:46px;padding:11px 14px;gap:13px}
  .hero-hint{font-size:11px;line-height:1.6;max-width:300px}.hero-bottom>.mono{display:none}.hero-bottom{justify-content:flex-end}
  .hero-state h2{font-size:21px}.hero-state .text-button{font-size:13px}.state-eyebrow{font-size:12px}
  .plug-tag{font-size:11px;padding:7px 10px;min-height:44px}
  .nav-app{font-size:13px;min-height:42px}.nav{gap:9px}.sound-toggle{width:42px;flex-basis:42px}
  .intro-caption{font-size:12px;white-space:normal;text-align:center;max-width:90%;width:320px}
  .port-architecture{padding-block:75px;min-height:0}.port-architecture-copy>p{font-size:17px;line-height:1.6}.port-architecture-count{margin-top:36px}
  .port-architecture-tool{font-size:clamp(10px,2.4vw,14px)}
  .port-instruments{padding-block:72px 54px}.port-instruments-head{grid-template-columns:1fr;gap:23px;margin-bottom:36px}
  .port-instruments-head>p{font-size:16px}.port-instruments-grid{grid-template-columns:1fr;gap:25px}
  .port-instrument{padding:24px}.instrument-channel{margin-bottom:17px}.port-instrument-title>strong{font-size:26px}
  .instrument-screen{margin-top:21px;min-height:290px;padding:20px 16px}.port-instrument>p{font-size:16px;margin-top:13px}
  .port-instrument-reading{font-size:42px}.port-coin-scope{min-height:260px}.port-coin-face{left:83px}.port-coin-rail{width:70px}
  .port-coin-rail>span{font-size:10px!important}.port-coin-rings{width:min(100%,160px)}.port-coin-rings>i:nth-child(4){transform-origin:4px 84px}
  .port-instrument-footer{flex-wrap:wrap}.port-instrument-footer>span{min-height:44px}
  .port-instruments-rule{font-size:12px!important;line-height:1.6;justify-content:flex-start;padding-top:30px}
  .console-section{padding-block:72px}.section-head{gap:23px}.section-head>p{font-size:16px}
  .assistant-head,.console-head{padding:16px}.assistant-head{flex-wrap:wrap;gap:10px}.assistant-head>div{gap:15px;margin-left:auto}
  .assistant-head .mono,.console-head .mono{font-size:11px}.assistant-head .text-button{font-size:13px;min-height:44px}
  .assistant-messages{padding:28px 20px;min-height:320px;max-height:510px}.assistant-welcome h3{font-size:25px}.assistant-welcome p{font-size:16px}
  .chat-message{max-width:100%;padding:15px}.chat-assistant{padding-left:0}.chat-copy{font-size:16px;line-height:1.75}.chat-speaker{font-size:12px}
  .assistant-prompts{padding:20px 16px;gap:11px}.assistant-prompts button{font-size:13px;min-height:44px;padding:10px 12px}
  .assistant-form{padding:17px 16px;gap:14px}.assistant-form .button{min-height:46px;font-size:14px;padding:11px 13px;gap:10px}
  .assistant-form textarea{font-size:16px}.assistant-footer{padding:15px 16px;font-size:12px}.assistant-footer .mono{display:none}
  .manual-tools{margin-top:35px}.manual-tools>summary{font-size:19px}.manual-tools>summary span{font-size:11px;line-height:1.6;max-width:150px}
  .console-tabs{padding:16px 16px 0;gap:6px;display:grid;grid-template-columns:1fr 1fr}.console-tabs button{font-size:13px;padding:9px 8px;min-height:44px}
  #query-form{padding:24px 16px}.query-input-row{gap:11px}.query-label{font-size:12px}#query-input{font-size:19px}
  .query-input-row .button{font-size:14px;min-height:44px;padding:11px 14px;margin:5px 0 0 31px}
  .query-options{gap:12px;flex-wrap:wrap}.query-options p{font-size:13px;max-width:100%}.query-options label{font-size:12px}
  .result-area{padding:24px 16px;min-height:290px}.result-table{font-size:14px;min-width:620px}.result-table th{font-size:12px}
  .empty-result p{font-size:19px}.metric-grid{gap:22px 15px}.metric strong{font-size:27px}
  .console-footer{padding:16px;gap:15px}.console-footer .mono{font-size:11px;max-width:170px}.console-footer button{font-size:13px}
  .closing h2{font-size:clamp(36px,9vw,56px)}.closing-path{font-size:10px;flex-wrap:wrap;gap:12px}.closing-path i{width:20px}
  footer>.mono:last-child{font-size:12px}.hero-ca code{font-size:12px}.hero-ca button{min-height:44px}
}
@media(max-width:360px){.nav-app{font-size:12px;padding-inline:10px}.nav{gap:7px}.brand{font-size:29px}.sound-toggle,.menu-button{width:44px;flex-basis:44px}.port-instrument{padding:19px}.instrument-screen{padding:16px 12px}.assistant-form{gap:10px}.assistant-form .button{padding-inline:10px;gap:7px}.port-instrument-footer{font-size:11px!important}.port-coin-face{left:73px}.port-coin-rail{width:60px}}
@media(prefers-reduced-motion:reduce){.button,.plug-tag,.port-instrument,.assistant-prompts button{transition:none}.button:hover,.port-instrument:hover,.assistant-prompts button:hover{transform:none}}

/* Shared switchboard: selection, consequence and actual source data in one object. */
:root{--device-face:#e1e5e9;--device-edge:#a4adb8;--screen:#161b22;--screen-line:#373e49;--screen-muted:#b3bdcb}
.port-instruments{background:#e7ebef;color:#171c24;padding:88px var(--port-gutter) 96px}
.port-instruments-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:44px}
.port-instruments-head .eyebrow{display:block;font-size:12px;color:#526071;margin-bottom:22px}
.port-instruments h2,.console-section h2,.port-architecture h2,.boundaries-section h2,.closing h2{font-family:Archivo,Arial,sans-serif;font-variation-settings:"wdth" 85;font-weight:680;letter-spacing:-.05em;line-height:.95}
.port-instruments h2{font-size:clamp(58px,7vw,102px)}
.port-instruments-head>p{max-width:27em;color:#4c5868;font-size:18px;line-height:1.5;padding-bottom:5px;justify-self:end}
.port-rack{--rack-accent:#5869d9;background:#dbe0e5;border:1px solid #a6b0bc;border-radius:18px;box-shadow:inset 0 1px #fff,0 8px 0 -1px #a5aeb9,0 27px 40px -24px #36415470;padding:0 28px;overflow:hidden}
.rack-top,.rack-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}
.rack-top{height:78px;border-bottom:1px solid #a9b2bf}
.rack-top>.mono{font-size:12px;color:#5c6777}
.rack-name{font-family:Archivo,Arial,sans-serif;font-size:29px;font-weight:750;letter-spacing:-.07em;display:flex;align-items:baseline}
.rack-name>span{color:#5869d9;margin-left:1px}
.rack-name>small{font-size:11px;font-weight:400;color:#546172;margin-left:20px;letter-spacing:.06em}
.rack-body{display:grid;grid-template-columns:280px minmax(0,1fr);gap:30px;padding:27px 0}
.rack-control{display:flex;flex-direction:column;min-width:0;padding-block:9px}
.rack-control-label{font-size:11px;color:#566271;margin-bottom:20px}
.rack-switches{display:grid;gap:11px}
.rack-switches .port-instrument{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr) 10px;align-items:center;gap:13px;min-height:69px;min-width:0;margin:0;padding:15px 18px;border:1px solid #aab4c0;border-radius:5px;color:#1e2833;background:#f1f3f6;box-shadow:inset 0 1px #fff,0 4px 0 #a6aebb;overflow:visible;transition:transform .16s,box-shadow .16s,color .16s,background .16s}
.rack-switches .port-instrument:before{display:none}
.rack-switches .port-instrument>strong{font-family:Archivo,Arial,sans-serif;font-variation-settings:"wdth" 90;font-weight:650;font-size:19px;letter-spacing:-.025em;line-height:1.15}
.rack-key-number{font-size:12px;color:#607083}
.rack-switches .port-instrument>i{width:6px;height:22px;border-radius:1px;background:color-mix(in srgb,var(--plug-color),#f1f3f6 40%);box-shadow:inset 0 0 0 1px #00000015;justify-self:end}
.rack-switches .port-instrument:hover{background:#fafbfc;transform:translateY(-1px);box-shadow:inset 0 1px #fff,0 5px 0 #a6aebb;border-color:#708197}
.rack-switches .port-instrument:active,.rack-switches .port-instrument.active{background:#c5ccd5;transform:translateY(3px);box-shadow:inset 0 2px 3px #4a5c741c,0 1px 0 #9ca8b8;border-color:#919eaf}
.rack-switches .port-instrument.active>i{background:var(--plug-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--plug-color),transparent 87%)}
.rack-switches .port-instrument.active .rack-key-number{color:#263449}
.rack-switches .port-instrument:focus-visible{outline:2px solid var(--plug-color);outline-offset:6px}
.rack-routing{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:31px;font-size:11px;color:#637084}
.rack-routing>i{height:1px;flex:1;background:#8d9aab;position:relative}
.rack-routing>i:after{content:"";position:absolute;right:0;top:-2px;height:5px;width:5px;border-radius:50%;background:var(--rack-accent)}
.rack-screen{min-width:0;background:var(--screen);border:5px solid #3c444e;border-radius:9px;box-shadow:0 0 0 1px #ffffffa0,inset 0 2px 10px #00000070;color:#edf1f6;overflow:hidden}
.rack-screen-head{height:51px;border-bottom:1px solid #414650;display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 24px;font-size:11px;color:#9facbc}
.rack-screen-head>span{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.rack-screen-head i{width:6px;height:6px;border-radius:50%;background:var(--rack-accent);margin-right:4px}
.rack-screen-head b{font-weight:400;color:#dfe6f0}
.rack-screen-head code{font-size:11px;color:#c8d0db}
.rack-display{min-height:312px;display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;padding:29px 29px 32px;animation:rack-enter .38s cubic-bezier(.2,.7,.3,1) both;--plug-color:var(--rack-accent)}
.rack-display[hidden]{display:none!important}
.rack-display-copy{min-width:0}
.rack-view-label{display:block;color:var(--rack-accent);font-size:11px;letter-spacing:.02em!important;margin-bottom:18px;filter:brightness(1.8)}
.rack-display h3{font-family:Archivo,Arial,sans-serif;font-variation-settings:"wdth" 85;font-size:clamp(30px,3.2vw,50px);line-height:1;letter-spacing:-.04em;font-weight:600;color:#edf1f6;margin:0;max-width:7.7em}
.rack-display-copy>p{font-family:var(--ui-font);color:#b3bdcb;line-height:1.6;font-size:15px;margin-top:20px;max-width:25em}
.rack-display-art{display:flex;flex-direction:column;min-width:0;align-items:center;justify-content:center;position:relative;min-height:220px}
.rack-display .port-market-dial{width:100%;max-width:315px;margin:0}
.rack-display .port-dial-needle{transform:rotate(38deg)}
.rack-display .port-instrument-reading{font-family:var(--ui-mono);font-variation-settings:normal;font-size:42px;font-weight:400;line-height:1;text-align:center;letter-spacing:-.06em;margin-top:-3px}
.rack-display .port-instrument-caption{font-size:11px;color:#9facbc;margin-top:8px}
.rack-display .port-coin-scope{margin:0;width:100%;position:relative;min-height:220px;flex:auto}
.rack-display .port-coin-rail{top:15px;bottom:20px;width:67px;border-color:#414c5b}
.rack-display .port-coin-rail>span{color:#9facbc;font-size:9px!important;margin-right:13px}
.rack-display .port-coin-rail>i{width:10px;height:10px;right:-5px;top:45%;background:var(--rack-accent);border-color:var(--rack-accent)}
.rack-display .port-coin-face{left:80px;top:20px;bottom:30px;gap:13px}
.rack-display .port-coin-rings{width:min(100%,145px);background:none;border-color:#1c8b9c60;transform:none}
.rack-display .port-coin-rings>i:nth-child(4){background:var(--rack-accent);transform-origin:4px 76.5px}
.rack-display .port-coin-rings>span{font-size:32px;color:var(--rack-accent)}
.rack-display .port-coin-caption{font-size:11px;color:#9facbc}
.rack-display .port-coin-input{display:none}
.rack-display .port-bundle-scope{margin:0;min-height:190px;width:100%;flex:auto}
.rack-display .port-bundle-scope svg{display:block;width:100%;overflow:visible}
.rack-display .port-bundle-scope .port-svg-mono{font-size:14px}
.rack-display .port-board-scope{width:100%;gap:13px;margin:0;min-height:200px;flex:auto;padding-bottom:0}
.rack-display .port-board-column>span,.rack-display .port-board-column>small{font-size:9px!important;color:#a1afbf}
.rack-display .port-board-slots{padding:12px 10px;border-radius:4px;background:#272e39;border-color:#465263;gap:12px}
.rack-display .port-board-slots>i{height:11px;border-radius:1px;border:0;background:#161b22}
.rack-display .port-board-slots>i:before{border-radius:0;background:var(--rack-accent);top:3px;bottom:3px;left:5px;width:5px}
.rack-display .port-board-wire{display:none}
.rack-screen .manual-tools{border-top:1px solid #424a56;border-radius:0;padding:0;margin:0}
.rack-screen .manual-tools>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0;padding:16px 24px;min-height:65px;font-size:15px;font-weight:500;letter-spacing:0;color:#e2e8f1;background:#202733;transition:background .18s}
.rack-screen .manual-tools>summary::-webkit-details-marker{display:none}
.rack-screen .manual-tools>summary:hover{background:#2b3645}
.rack-screen .manual-tools>summary:focus-visible{outline:2px solid #b5c8ef;outline-offset:-4px}
.rack-screen .manual-tools>summary span{font-family:var(--ui-font);font-size:15px;color:#eef3fa}
.rack-screen .manual-tools>summary b{margin-left:20px;font-family:var(--ui-mono);font-weight:400;color:var(--rack-accent);filter:brightness(1.8)}
.rack-screen .manual-tools>summary .rack-access{font-family:var(--ui-mono);font-size:10px;color:#a7b4c4}
.rack-close-label{display:none}
.rack-screen:has(.manual-tools[open]) .rack-display-stack{display:none}
.rack-screen .manual-tools[open] .rack-close-label{display:inline}
.rack-screen .manual-tools[open] .rack-open-label{display:none}
.rack-screen .console-shell{border:0;box-shadow:none;border-radius:0;background:#161b22}
.rack-screen .console-head,.rack-screen .console-tabs{display:none}
.rack-screen #query-form{padding:23px 24px;background:#202733;border-bottom:1px solid #414a58}
.rack-screen .query-label{color:#a8b8d0;font-size:11px}
.rack-screen .query-input-row{border-color:#64748b;gap:12px;flex-wrap:wrap;padding-block:12px}
.rack-screen #query-input{color:#eef3fa;font-size:20px;font-family:var(--ui-font);flex-basis:calc(100% - 50px)}
.rack-screen .query-input-row input[readonly]{color:#d1ddec}
.rack-screen .prompt-arrow{color:var(--rack-accent)}
.rack-screen .query-input-row .button{margin:7px 0 0 35px;background:#e3e9f1;border-color:#e3e9f1;color:#202733;box-shadow:0 3px 0 #8291a6;font-size:14px;min-height:44px;padding:10px 16px}
.rack-screen .query-input-row .button:active{box-shadow:0 1px 0 #8291a6}
.rack-screen .query-options{gap:15px;align-items:flex-start;margin-top:16px}
.rack-screen .query-options p{color:#a6b3c6;font-size:12px;line-height:1.6;max-width:29em}
.rack-screen .query-options label{font-size:11px;color:#a6b3c6}
.rack-screen .query-options select{background:#202733;color:#edf2fa;border:1px solid #52637c;min-height:36px}
.rack-screen .result-area{padding:24px;max-width:100%;overflow:auto;min-height:220px;background:#161b22;box-shadow:none}
.rack-screen .result-table{min-width:600px}
.rack-screen .console-footer{background:#202733;border-color:#414a58;padding:16px 24px;gap:15px}
.rack-screen .console-footer .mono{color:#a6b3c6;font-size:10px}
.rack-screen .console-footer .text-button{color:#e8effa;font-size:12px;min-height:36px}
.rack-screen .result-error{padding:20px 0}
.rack-screen .result-error h3{font-family:var(--ui-font);font-size:26px;font-weight:500;letter-spacing:-.03em}
.rack-screen .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.rack-screen .loading-result{color:#b2bfd1}
.rack-bottom{height:73px;border-top:1px solid #a9b2bf}
.rack-bottom>.mono{font-size:10px;color:#556274}
.rack-connect{background:none;border:0;display:flex;align-items:center;gap:35px;min-height:44px;color:#243348;font-size:14px;font-weight:500;cursor:pointer}
.rack-connect:hover{text-decoration:underline;text-underline-offset:5px}
.rack-connect:focus-visible{outline:2px solid #526bbb;outline-offset:3px}
.rack-connect>span{font-family:var(--ui-mono);font-size:20px}
@keyframes rack-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}

/* The assistant is the second work surface, with one input strip beneath its display. */
.console-section{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start;gap:60px;padding-block:100px}
.console-section .section-head{display:block;margin:0;padding-top:28px}
.console-section .section-head h2{font-size:clamp(52px,5.8vw,86px)}
.console-section .section-head>p{margin-top:28px;font-size:17px;line-height:1.65;max-width:25ch;color:#586577}
.assistant-shell{padding:0 20px 0;border-radius:14px;background:#dbe0e5;border:1px solid #a6b0bc;box-shadow:inset 0 1px #fff,0 7px 0 -1px #a5aeb9,0 25px 40px -28px #36415450}
.assistant-head{padding:22px 1px;background:none;border:0;min-height:72px}
.assistant-head>.mono{font-size:10px;letter-spacing:0}
.assistant-head>div>.mono{font-size:11px}
.assistant-head .text-button{font-size:12px;min-height:36px}
.assistant-messages{margin:0;border:5px solid #3c444e;border-radius:8px;background:#161b22;box-shadow:0 0 0 1px #ffffffa0;min-height:335px;max-height:600px;padding:27px;color:#ecf0f5}
.assistant-welcome{padding:30px 0 25px;max-width:30em}
.assistant-mark{font-family:var(--ui-mono);font-size:39px;color:#8399f0;margin-bottom:22px;line-height:1}
.assistant-welcome h3{font-family:Archivo,Arial,sans-serif;font-variation-settings:"wdth" 85;font-weight:600;font-size:38px;letter-spacing:-.03em;line-height:1.06;max-width:13ch}
.assistant-welcome p{font-size:15px;line-height:1.7;max-width:35em;margin-top:18px;color:#b2bfd1}
.assistant-prompts{background:none;border:0;padding:18px 0 22px;gap:10px}
.assistant-prompts button{min-height:44px;font-size:12px;padding:10px 13px;border-color:#a8b3c1;background:#f1f3f6;box-shadow:inset 0 1px #fff,0 3px 0 #a5afbe;border-radius:4px}
.assistant-form{margin-inline:-20px;padding:20px;background:#ecf0f4;border-color:#aab3c0;gap:14px}
.assistant-form textarea{font-family:var(--ui-font);font-size:16px;min-height:46px}
.assistant-form .button{border-radius:4px;font-size:14px;min-height:46px;padding:12px 15px;gap:24px}
.assistant-footer{background:none;padding:15px 0;border-color:#b4beca;font-size:12px;align-items:flex-start;gap:14px}
.assistant-footer>.mono{font-size:9px;max-width:22em;text-align:right;line-height:1.6}
.assistant-footer>span:first-child{max-width:28em;line-height:1.6}
.chat-user{border-radius:3px;background:#2c3542;padding:14px 18px;max-width:90%}
.chat-sources a{border-radius:2px;font-size:11px;padding:7px 10px}

@media(max-width:1100px){
 .rack-body{grid-template-columns:235px minmax(0,1fr);gap:24px}
 .rack-switches .port-instrument{padding-inline:15px;gap:9px}.rack-switches .port-instrument>strong{font-size:18px}
 .rack-display{grid-template-columns:1fr;padding:24px;gap:15px;min-height:330px}
 .rack-display h3{font-size:35px;max-width:none}.rack-display-copy>p{max-width:40em;margin-top:13px}
 .rack-view-label{display:none}.rack-display-art{min-height:180px;width:250px;max-width:100%;justify-self:center}
 .rack-display .port-market-dial{width:215px}.rack-display .port-instrument-reading{font-size:33px}
 .rack-display .port-coin-scope{min-height:185px}.rack-display .port-coin-rings{width:125px}
 .rack-display .port-coin-rings>i:nth-child(4){transform-origin:4px 66.5px}
 .rack-display .port-bundle-scope{min-height:165px}
 .rack-display .port-board-scope{min-height:175px}
 .console-section{grid-template-columns:240px minmax(0,1fr);gap:35px}
 .assistant-head{flex-wrap:wrap;gap:10px}.assistant-head>div{margin-left:auto}
 .assistant-footer{flex-direction:column}.assistant-footer>.mono{text-align:left;max-width:none}
}
@media(max-width:760px){
 .port-instruments{padding-block:64px 72px}
 .port-instruments-head{grid-template-columns:1fr;gap:22px;margin-bottom:32px}
 .port-instruments-head .eyebrow{font-size:11px;margin-bottom:20px}
 .port-instruments h2{font-size:clamp(58px,14.5vw,86px)}
 .port-instruments-head>p{justify-self:start;font-size:16px;max-width:25em;margin:0;padding:0}
 .port-rack{border-radius:12px;padding:0 15px;box-shadow:inset 0 1px #fff,0 6px 0 -1px #a5aeb9,0 22px 30px -25px #36415470}
 .rack-top{height:63px;gap:10px}.rack-name{font-size:27px}.rack-name>small{display:none}.rack-top>.mono{font-size:9px}
 .rack-body{grid-template-columns:1fr;gap:22px;padding:19px 0}
 .rack-control{padding:0}.rack-control-label{font-size:10px;margin-bottom:14px}
 .rack-switches{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .rack-switches .port-instrument{grid-template-columns:20px minmax(0,1fr) 5px;gap:8px;padding:12px 10px;min-height:65px;border-radius:4px}
 .rack-switches .port-instrument>strong{font-size:16px;line-height:1.15}.rack-key-number{font-size:10px}
 .rack-switches .port-instrument>i{width:4px;height:20px}.rack-routing{display:none}
 .rack-screen{border-width:3px;border-radius:6px}
 .rack-screen-head{height:44px;margin-inline:15px;font-size:9px;gap:8px}.rack-screen-head code{font-size:9px}
 .rack-display{padding:24px 18px 20px;min-height:352px;gap:13px}
 .rack-display h3{font-size:33px;line-height:1.05;max-width:10em}.rack-display-copy>p{font-size:14px;line-height:1.6;margin-top:12px}
 .rack-display-art{min-height:190px;width:230px}.rack-display .port-market-dial{width:220px}
 .rack-screen .manual-tools>summary{padding:16px 15px;min-height:62px;flex-wrap:wrap;gap:8px;font-size:14px}
 .rack-screen .manual-tools>summary span{font-size:14px}.rack-screen .manual-tools>summary .rack-access{font-size:9px}
 .rack-screen .manual-tools>summary b{margin-left:10px}
 .rack-screen #query-form{padding:20px 15px}
 .rack-screen .query-input-row{gap:8px}.rack-screen #query-input{font-size:16px;flex-basis:calc(100% - 38px)}
 .rack-screen .query-input-row .button{margin-left:29px;padding:10px 14px}
 .rack-screen .query-options{flex-wrap:wrap;gap:9px}.rack-screen .query-options p{font-size:12px;max-width:none}
 .rack-screen .result-area{padding:20px 15px;min-height:240px}
 .rack-screen .console-footer{padding:13px 15px;flex-wrap:wrap;gap:7px}
 .rack-screen .console-footer .mono{max-width:100%;font-size:10px}
 .rack-screen .result-table{min-width:600px}
 .rack-bottom{height:auto;min-height:64px;gap:9px;flex-wrap:wrap;padding-block:12px}
 .rack-bottom>.mono{font-size:8px;line-height:1.5;max-width:22em}
 .rack-connect{font-size:12px;gap:13px;min-height:44px}.rack-connect>span{font-size:17px}
 .console-section{display:block;padding-block:72px}
 .console-section .section-head{padding:0;margin-bottom:32px}
 .console-section .section-head h2{font-size:62px}.console-section .section-head>p{margin-top:22px;font-size:16px;max-width:30em}
 .assistant-shell{padding-inline:15px;border-radius:10px}.assistant-head{padding-block:16px;min-height:64px}
 .assistant-head>.mono{font-size:9px}.assistant-head>div{gap:9px}.assistant-head>div>.mono{font-size:10px}
 .assistant-messages{padding:20px 15px;border-width:3px;min-height:310px;max-height:530px}
 .assistant-welcome{padding:20px 0}.assistant-welcome h3{font-size:34px}.assistant-welcome p{font-size:14px}
 .assistant-prompts{padding-block:16px 19px;gap:9px}.assistant-prompts button{font-size:11px;min-height:44px;padding:10px 11px}
 .assistant-form{margin-inline:-15px;padding:17px 15px;gap:10px;flex-wrap:wrap}
 .assistant-form textarea{flex-basis:100%;font-size:16px}.assistant-form .button{margin-left:auto;min-width:94px}
 .assistant-footer{padding-block:13px;font-size:11px}.assistant-footer>.mono{font-size:8px}
}
@media(prefers-reduced-motion:reduce){.rack-display{animation:none}.rack-switches .port-instrument{transition:none}.rack-switches .port-instrument:hover{transform:none}}
@media(min-width:1101px){
 .port-instruments{padding-block:68px 76px}
 .port-instruments-head{grid-template-columns:1.35fr .65fr;margin-bottom:36px}
 .port-instruments h2{font-size:clamp(58px,6vw,86px);white-space:nowrap}
 .rack-display{min-height:292px}
 .rack-top{height:70px}.rack-bottom{height:66px}
}
.rack-screen .console-head{display:flex;justify-content:space-between;padding:13px 24px;background:#202733;color:#b6c3d5;border-color:#414a58}
.rack-screen .console-head>span{font-size:10px}
.rack-screen .console-head>span:last-child{color:#d8e1ed;font-size:11px}
.rack-name>.brand-o{color:inherit;margin-left:0;flex-shrink:0;width:21px;height:23px;align-self:center;display:inline-flex}
.rack-name>.rack-dot{color:#5869d9;margin-left:1px}
@media(min-width:1101px){
 .rack-screen #query-input{flex-basis:0}
 .rack-screen .query-input-row .button{margin:0;flex-shrink:0}
}
.port-instruments h2{letter-spacing:-.035em;word-spacing:.035em}
@media(max-width:760px){.rack-screen-head,.rack-screen-head code{font-size:11px}}

/* Latch-inspired typography, capsule controls and translucent panels.
   Independently built for PORT; no Latch assets, commercial fonts or product code. */
:root{--surface-dark:#151b26;--surface-line:#ffffff26;--surface-muted:#b4becd;--ui-ease:cubic-bezier(.22,.7,.25,1)}
h1,h2,h3,.port-instruments h2,.console-section h2,.port-architecture h2,.boundaries-section h2,.closing h2,.port-flow-head h2,.rack-display h3,.assistant-welcome h3,.rack-switches .port-instrument>strong{
 font-family:var(--ui-font);font-variation-settings:normal;font-stretch:normal;font-weight:400;letter-spacing:-.035em;line-height:1.04;
}
.hero-copy{padding-top:124px;width:min(67vw,940px)}
.hero-eyebrow{display:block;color:#52617a;font-size:11px;letter-spacing:.06em;margin-bottom:24px}
.hero h1{font-size:clamp(58px,6.2vw,94px);line-height:1.04;white-space:normal;max-width:800px;font-weight:400;letter-spacing:-.035em}
.hero-ai-line{display:block;font-size:.76em;margin-top:4px;letter-spacing:-.035em}
.hero-clients{display:flex;align-items:center;gap:24px;margin-top:22px;color:#536178;font-size:13px;font-weight:500;line-height:1.7}
.hero-client{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.client-logo{display:block;flex:none;width:22px;height:22px;object-fit:contain}
.hero-copy>p{font-size:16px;line-height:1.6;max-width:29em;margin-top:19px;color:#3e4b60}
.hero-actions{margin-top:25px;gap:12px}
.hero-hint{margin-top:23px;max-width:31em;font-size:11px}
.hero-state h2{font-family:var(--ui-font);font-weight:500;font-size:25px;letter-spacing:-.04em}
.hero-state .state-eyebrow{font-size:10px;letter-spacing:.025em;line-height:1.6}
.hero-state>p{font-size:14px;line-height:1.6}
.hero-state .text-button{font-weight:500}
.eyebrow,.port-instruments-head .eyebrow{letter-spacing:.04em}
.button,.button.secondary,.light-button,.nav.dark .nav-app,.rack-screen .query-input-row .button,.assistant-form .button{
 display:inline-flex;align-items:center;justify-content:center;gap:19px;min-height:48px;padding:8px 10px 8px 22px;border:0;border-radius:999px;background:#252d3b;color:#f2f5fb;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;font-family:var(--ui-font);font-weight:500;font-size:14px;letter-spacing:-.015em;
 transition:background .3s var(--ui-ease),color .3s,transform .3s var(--ui-ease);
}
.button>span:last-child:not(.nav-app-label){display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#ffffff18;font-size:17px;transition:transform .35s var(--ui-ease),background .3s}
.button.secondary,.light-button,.nav.dark .nav-app{background:#f0f3f8;color:#202938}
.button.secondary>span:last-child,.light-button>span:last-child,.nav.dark .nav-app>span:last-child{background:#2029380c}
.button:hover,.button.secondary:hover,.light-button:hover,.nav.dark .nav-app:hover,.rack-screen .query-input-row .button:hover{background:#5869d9;color:#fff;transform:translateY(-2px);box-shadow:none;border:0}
.button:hover>span:last-child:not(.nav-app-label){background:#ffffff26;transform:translate(2px,-2px)}
.button:active,.button.secondary:active,.light-button:active,.nav.dark .nav-app:active,.rack-screen .query-input-row .button:active{transform:scale(.98);box-shadow:none}
.button:disabled{background:#434c5e;color:#c8d0dc;box-shadow:none;transform:none;opacity:.7;cursor:not-allowed}
.button:focus-visible,.rack-connect:focus-visible{outline:2px solid #829cf0;outline-offset:4px}
.nav,.nav.dark{background:#e4eaf1df;border:0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.nav.dark{background:#121925d9}
.nav-links,.nav.dark .nav-links{padding:3px;border:0;box-shadow:none;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;gap:2px}
.nav-links a,.nav-links button{padding:10px 14px;font-size:13px;border-radius:999px;font-weight:500;box-shadow:none;transition:background .25s}
.nav-links a:hover,.nav-links button:hover{background:#fff7;color:#202938;box-shadow:none}
.nav.dark .nav-links a:hover,.nav.dark .nav-links button:hover{background:#ffffff14;color:#f0f3f8}
.nav-app{font-size:13px;min-height:46px}
.sound-toggle,.menu-button,.nav-social{background:#f4f7f980;color:#253447;border:0;border-radius:50%;box-shadow:none;backdrop-filter:none;width:44px;height:44px;flex-basis:44px;transition:background .25s,transform .25s}
.nav-social{display:grid;place-items:center;flex-shrink:0;padding:0}
.nav-social svg{display:block;pointer-events:none}
.sound-toggle:hover,.menu-button:hover,.nav-social:hover{background:#f9fbfd;box-shadow:none;border:0;transform:translateY(-1px)}
.sound-toggle:active,.menu-button:active,.nav-social:active{transform:scale(.95);box-shadow:none}
.nav.dark .sound-toggle,.nav.dark .menu-button,.nav.dark .nav-social{background:#ffffff13;color:#f0f3f8;box-shadow:none;border:0}
.nav.dark .sound-toggle:hover,.nav.dark .menu-button:hover,.nav.dark .nav-social:hover{background:#ffffff23}
@media(max-width:500px){
 .nav{padding-inline:12px;gap:6px}
 .nav .nav-app>span.nav-app-label,.nav .nav-app>span.nav-app-arrow{display:none}
 .nav-app::before{content:"Connect"}
 .nav .nav-app{min-height:44px;padding:8px 12px;gap:0}
}
.nav-sheet{background:#edf2f9f0;border:1px solid #ffffffa0;border-radius:23px;box-shadow:0 20px 60px #1b2c4624;backdrop-filter:blur(18px)}
.plug-tag{border:1px solid #fff9;border-radius:999px;background:#f5f8fbba;box-shadow:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#364359;font-family:var(--ui-mono);font-size:11px;min-height:36px;font-weight:400}
.plug-tag:hover,.plug-tag.active{background:#252d3bf0;border-color:#252d3b;color:#fff;box-shadow:none}
.plug-tag:active{transform:scale(.97)}
.hero-ca button{background:#eef3fa;color:#27354a;border:1px solid #bbc8da;border-radius:999px;box-shadow:none;min-height:36px}
.port-flow-head h2{font-size:clamp(44px,5.3vw,78px)}
.port-flow-pick button{border:1px solid #ffffff25;border-radius:999px;background:#ffffff0a;color:#e7eef9;box-shadow:none;min-height:44px;font-weight:400}
.port-flow-pick button:hover,.port-flow-pick button[aria-pressed="true"]{background:#f0f3fa;color:#202938;border-color:#f0f3fa;box-shadow:none}
.port-architecture h2{font-size:clamp(48px,6.1vw,88px)}
.port-instruments{background:radial-gradient(ellipse at 88% 0,#5869d918,transparent 65%),#17202d;color:#f2f5fb}
.port-instruments-head{grid-template-columns:1.2fr .8fr;gap:45px;align-items:end;margin-bottom:38px}
.port-instruments h2{font-size:clamp(52px,5.8vw,84px);white-space:normal;letter-spacing:-.04em;word-spacing:normal}
.port-instruments-head .eyebrow{color:#b5c4df;font-size:11px}
.port-instruments-head>p{color:#b8c3d4;font-size:17px;max-width:25em;line-height:1.6}
.port-rack{background:#ffffff06;border:1px solid var(--surface-line);border-radius:28px;padding-inline:30px;box-shadow:none;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.rack-top{height:74px;border-color:#ffffff1f}
.rack-name{font-size:29px;color:#eff3fa}
.port-rack .socket-logo-holes{fill:#17202d}
.rack-name>small,.rack-top>.mono{color:#9aacc6;font-size:10px}
.rack-control-label{color:#abbad0;font-size:10px;letter-spacing:.04em}
.rack-body{gap:34px;padding-block:28px;grid-template-columns:270px minmax(0,1fr)}
.rack-switches{gap:11px}
.rack-switches .port-instrument{background:#ffffff06;border:1px solid #ffffff24;border-radius:999px;box-shadow:none;color:#dae3f1;padding:15px 20px;grid-template-columns:28px minmax(0,1fr) 9px;min-height:67px;transition:background .25s,color .25s,border-color .25s,transform .25s;overflow:visible;backdrop-filter:none;-webkit-backdrop-filter:none}
.rack-switches .port-instrument:before,.rack-switches .port-instrument:after{display:none}
.rack-switches .port-instrument>strong{font-size:17px;font-weight:500;letter-spacing:-.025em;line-height:1.25}
.rack-key-number{font-size:10px;color:#96a6bc}
.rack-switches .port-instrument>i{width:6px;height:6px;border-radius:50%;background:var(--plug-color);box-shadow:none}
.rack-switches .port-instrument:hover{background:#ffffff12;border-color:#ffffff60;box-shadow:none;transform:translateY(-1px)}
.rack-switches .port-instrument.active,.rack-switches .port-instrument:active{color:#17202d;background:#e4ebf8;border-color:#e4ebf8;box-shadow:none;transform:none}
.rack-switches .port-instrument.active .rack-key-number{color:#5a6c87}
.rack-switches .port-instrument.active>i{box-shadow:none;background:var(--plug-color)}
.rack-screen{background:#101823a6;border:1px solid #ffffff26;border-radius:20px;box-shadow:none}
.rack-screen-head{height:54px;border-color:#ffffff1f;margin-inline:28px;color:#b9c6d8}
.rack-screen-head code{color:#cad7ea}
.rack-display{padding:32px 30px;min-height:310px;gap:25px;grid-template-columns:1.15fr .85fr}
.rack-display h3{font-size:clamp(30px,2.85vw,43px);max-width:10em;font-weight:400;line-height:1.1;letter-spacing:-.035em}
.rack-display-copy>p{color:#b6c3d6;margin-top:18px;max-width:26em;font-size:14px;line-height:1.7}
.rack-view-label{font-size:10px}
.rack-screen .manual-tools{border-color:#ffffff1e}
.rack-screen .manual-tools>summary{background:#ffffff05;padding-inline:28px;border-radius:0;min-height:65px}
.rack-screen .manual-tools>summary:hover{background:#ffffff0d}
.rack-screen .manual-tools>summary span{font-size:14px}
.rack-screen .manual-tools>summary .rack-access{color:#a8b9d2;font-size:9px}
.rack-screen .console-shell,.rack-screen .result-area{background:transparent;border:0;box-shadow:none}
.rack-screen .console-head,.rack-screen #query-form,.rack-screen .console-footer{background:#ffffff04;border-color:#ffffff20}
.rack-screen #query-form{padding-inline:28px}
.rack-screen .query-options select{border-radius:999px;background:#202c3e;min-height:40px;font-size:12px;border-color:#ffffff30}
.rack-screen .query-input-row .button{background:#e5ebf6;color:#202938;box-shadow:none;margin-top:0;padding:9px 19px;min-height:44px}
.rack-bottom{border-color:#ffffff1f;min-height:72px;height:auto}
.rack-bottom>.mono{color:#9aacc6;font-size:9px}
.rack-routing{color:#a4b3ca;font-size:10px}
.rack-routing>i{background:#ffffff40}
.rack-connect{min-height:44px;padding:8px 10px 8px 21px;background:#f0f3fa;color:#202938;border:0;border-radius:999px;font-size:13px;gap:18px;box-shadow:none;font-family:var(--ui-font);font-weight:500;transition:background .3s,transform .3s}
.rack-connect>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#2029380c;font-size:17px}
.rack-connect:hover{background:#d2dffc;transform:translateY(-1px);text-decoration:none;box-shadow:none}
.rack-connect:active{transform:scale(.98)}
.console-section{gap:58px;padding-block:100px;grid-template-columns:330px minmax(0,1fr)}
.console-section .section-head h2{font-size:clamp(50px,5.4vw,78px);line-height:1.04}
.console-section .section-head>p{max-width:25ch;font-size:16px;color:#52617a}
.assistant-shell{background:radial-gradient(ellipse at 100% 0,#5869d918,transparent 60%),#17202d;border:1px solid #39465a;border-radius:28px;padding-inline:24px;box-shadow:none;color:#e8eff9}
.assistant-head{padding-block:22px;color:#b6c6dd;background:none;border:0}
.assistant-head .text-button{color:#d8e3f5;font-size:12px;border-radius:999px;padding:8px 13px;background:#ffffff0a;min-height:38px}
.assistant-head .text-button:hover{background:#ffffff16}
.assistant-messages{background:#10182390;box-shadow:none;border:1px solid #ffffff26;border-radius:20px;padding:30px;min-height:335px}
.assistant-welcome h3{font-family:var(--ui-font);font-size:35px;line-height:1.12;font-weight:400;letter-spacing:-.035em;max-width:15ch}
.assistant-welcome p{font-size:14px;line-height:1.7;color:#b6c3d6}
.assistant-mark{font-size:30px;margin-bottom:22px}
.assistant-prompts{background:none;padding-block:20px;border:0;gap:8px}
.assistant-prompts button{background:#ffffff07;color:#d9e4f5;border:1px solid #ffffff28;border-radius:999px;box-shadow:none;min-height:42px;font-size:12px;padding:9px 13px;font-weight:400;transition:background .25s,border-color .25s,transform .25s}
.assistant-prompts button:hover{background:#ffffff12;color:#fff;border-color:#ffffff60;box-shadow:none;transform:translateY(-1px)}
.assistant-prompts button:active{transform:scale(.98);box-shadow:none}
.assistant-form{background:#ffffff06;border-top:1px solid #ffffff24;margin-inline:-24px;padding:20px 24px;gap:20px}
.assistant-form textarea{background:none;color:#eff4fc;font-size:15px;line-height:1.6}
.assistant-form textarea::placeholder{color:#a8b8d0}
.assistant-form .button{background:#e5ebf6;color:#202938;min-height:46px}
.assistant-form .button>span{background:#2029380c}
.assistant-form .button:hover{background:#bdcff5;color:#202938}
.assistant-footer{color:#afc0d9;background:none;border-color:#ffffff20;padding-block:16px}
.chat-user{background:#26364d;border:1px solid #ffffff26;border-radius:18px}
.chat-copy{font-size:15px;line-height:1.75}
.chat-sources a{background:#ffffff08;border-color:#ffffff2c;border-radius:999px;color:#c7d8ff;padding:7px 12px}
.chat-sources a:hover{background:#ffffff12;border-color:#829cf0}
dialog{background:#eaf0f7;border:1px solid #ffffffad;border-radius:28px;box-shadow:0 25px 100px #07122240;font-family:var(--ui-font)}
dialog h2,.port-docs-dialog h2{font-family:var(--ui-font);font-variation-settings:normal;letter-spacing:-.035em;font-weight:400;line-height:1.06}
.close-dialog{border:0;background:#17202d0c;border-radius:50%;width:44px;height:44px;color:#253447}
.close-dialog:hover{background:#17202d18}
.client-switch{display:flex;gap:4px;padding:4px;border:0;border-radius:999px;background:#dce4ef;box-shadow:none}
.client-switch button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-width:0;min-height:44px;padding:9px 15px;font-size:13px;box-shadow:none;background:none;border:0;border-radius:999px;color:#465875}
.client-switch .client-logo{width:24px;height:24px;padding:3px;border-radius:6px;background:#edf2f8}
.client-switch button.active{background:#253447;color:#f2f5fb;box-shadow:none}
.client-switch button:hover:not(.active){background:#edf2f8;color:#253447}
.endpoint-row,.config-details,.port-docs-client,.port-docs-tool,.port-docs-endpoint{border-radius:16px;border-color:#abbad0}
.config-details summary{padding:12px 14px}
.closing h2{font-weight:400;font-size:clamp(56px,7vw,96px)}
.closing .button{margin-top:34px}
@media(max-width:1100px){
 .hero-copy{padding-top:116px;width:70%}.hero h1{font-size:clamp(62px,7vw,77px)}.hero-copy>p{max-width:27em}
 .hero-state .state-eyebrow{font-size:9px}.hero-state h2{font-size:22px}
 .rack-body{grid-template-columns:225px minmax(0,1fr);gap:23px}.rack-switches .port-instrument{padding-inline:17px;gap:8px}.rack-switches .port-instrument>strong{font-size:15px}
 .rack-display{grid-template-columns:1fr;min-height:335px;padding:28px;gap:18px}.rack-display h3{font-size:34px}
 .console-section{grid-template-columns:250px minmax(0,1fr);gap:32px}
}
@media(max-width:760px){
 .hero-copy{padding:104px var(--gutter) 0;width:100%}.hero-eyebrow{font-size:10px;margin-bottom:16px}
 .hero h1{font-size:clamp(48px,14vw,64px);letter-spacing:-.04em;line-height:1.06}.hero-ai-line{font-size:clamp(26px,8.3vw,44px);margin-top:5px;white-space:nowrap;letter-spacing:-.035em}
 .hero-clients{font-size:11px;margin-top:15px;gap:14px}.hero-client{gap:6px}.hero-clients .client-logo{width:18px;height:18px}
 .hero-copy>p{font-size:15px;line-height:1.55;max-width:30em;margin-top:16px}
 .hero-actions{margin-top:20px;gap:9px}.hero-actions .button{font-size:12px;min-height:46px;padding:8px 8px 8px 15px;gap:12px}.hero-actions .button>span:last-child{width:28px;height:28px;flex-basis:28px;font-size:16px}
 .hero-hint{font-size:10px;margin-top:16px;max-width:33em}
 .hero-state h2{font-size:18px}.hero-state .text-button{font-size:11px}
 .plug-tag{min-height:44px;font-size:10px;padding:7px 10px}
 .nav-app{min-height:42px;padding:7px 9px 7px 16px}.nav-app>span:last-child{width:28px;height:28px;flex-basis:28px}
 .port-flow-head h2{font-size:44px}.port-architecture h2{font-size:clamp(44px,12vw,62px)}
 .port-instruments{padding-block:66px 72px}.port-instruments-head{grid-template-columns:1fr;gap:23px;margin-bottom:32px}
 .port-instruments h2{font-size:clamp(47px,12vw,64px)}.port-instruments-head .eyebrow{font-size:10px}
 .port-instruments-head>p{font-size:15px;max-width:26em;justify-self:start}
 .port-rack{padding-inline:15px;border-radius:23px;box-shadow:none}.rack-top{height:63px}.rack-name{font-size:27px}.rack-top>.mono{font-size:9px}
 .rack-body{grid-template-columns:1fr;gap:22px;padding-block:22px}.rack-control-label{font-size:10px}
 .rack-switches{gap:8px}.rack-switches .port-instrument{grid-template-columns:16px minmax(0,1fr) 5px;gap:6px;padding:12px 11px;min-height:61px;border-radius:22px}
 .rack-switches .port-instrument>strong{font-size:13px;line-height:1.2;letter-spacing:-.025em}.rack-key-number{font-size:9px}.rack-switches .port-instrument>i{height:5px;width:5px}
 .rack-screen{border:1px solid #ffffff26;border-radius:16px}.rack-screen-head{margin-inline:15px;height:46px;font-size:10px}.rack-screen-head code{font-size:10px}
 .rack-display{padding:25px 18px;grid-template-columns:1fr;gap:15px;min-height:355px}.rack-display h3{font-size:31px;max-width:10em}
 .rack-display-copy>p{font-size:13px;margin-top:13px}.rack-display-art{width:220px;max-width:100%;min-height:180px}
 .rack-screen .manual-tools>summary{padding-inline:15px;min-height:65px}.rack-screen .manual-tools>summary span{font-size:13px}.rack-screen .manual-tools>summary .rack-access{font-size:8px}
 .rack-screen #query-form{padding-inline:15px}.rack-screen .query-input-row .button{margin-top:8px;font-size:12px}
 .rack-bottom{padding-block:15px;gap:13px}.rack-bottom>.mono{font-size:8px;max-width:100%}.rack-connect{font-size:12px;padding:8px 9px 8px 16px;gap:16px}
 .console-section{display:block;padding-block:72px}.console-section .section-head h2{font-size:clamp(48px,12vw,64px)}.console-section .section-head>p{max-width:30em;font-size:15px}
 .assistant-shell{padding-inline:15px;border-radius:23px}.assistant-head{padding-block:18px}.assistant-head>.mono{font-size:8px}.assistant-head>div{gap:7px}.assistant-head .text-button{font-size:11px;min-height:38px;padding:7px 10px}
 .assistant-messages{padding:23px 17px;border-width:1px;border-radius:16px;min-height:300px}
 .assistant-welcome h3{font-size:31px}.assistant-welcome p{font-size:13px}.assistant-mark{font-size:28px}
 .assistant-prompts button{font-size:11px;min-height:44px;padding-inline:12px}
 .assistant-form{padding:19px 15px;margin-inline:-15px;gap:14px}.assistant-form textarea{font-size:16px}.assistant-form .button{padding:8px 10px 8px 19px;font-size:13px}
 .assistant-footer{font-size:11px}.chat-copy{font-size:15px}
 dialog{border-radius:23px}.client-switch button{font-size:12px;padding-inline:10px}.closing h2{font-size:clamp(43px,11vw,62px)}
}
@media(max-width:360px){
 .hero-actions{gap:7px}.hero-actions .button{padding-left:13px;font-size:11px;gap:8px}
 .rack-switches .port-instrument{padding:12px 9px;grid-template-columns:12px minmax(0,1fr) 4px;gap:5px}.rack-switches .port-instrument>strong{font-size:12px}.rack-key-number{font-size:8px}.rack-switches .port-instrument>i{width:4px;height:4px}
}
@media(max-width:480px){
 .client-switch button{flex-direction:column;gap:5px;min-height:68px;padding:8px 4px;font-size:11px;line-height:1.3}
 .client-switch button>span{max-width:100%}
}
/* FloraPad's app informed the softer, clearly bounded input surfaces. */
.assistant-form textarea{background:#ffffff07;border:1px solid #ffffff25;border-radius:14px;padding:13px 16px;min-height:54px;transition:border-color .2s,background .2s}
.assistant-form textarea:hover{border-color:#ffffff45}
.assistant-form textarea:focus{outline:2px solid #829cf0;outline-offset:2px;background:#ffffff0a}
.rack-screen .query-input-row{background:#ffffff06;border:1px solid #ffffff28;border-radius:14px;padding:12px 15px;transition:border-color .2s}
.rack-screen .query-input-row:focus-within{border-color:#829cf0}
.rack-screen #query-input{font-size:17px}
@media(max-width:760px){
 .assistant-form textarea{padding:13px 14px;min-height:54px}
 .rack-screen .query-input-row{padding:12px 11px;gap:8px}.rack-screen #query-input{font-size:16px}
 .rack-screen .query-input-row .button{margin-left:25px}
}

@media(prefers-reduced-motion:reduce){.button,.rack-connect,.rack-switches .port-instrument,.assistant-prompts button,.plug-tag{transition:none}.button:hover,.rack-connect:hover,.rack-switches .port-instrument:hover,.assistant-prompts button:hover{transform:none}}
.rack-screen .data-note{font-size:12px;line-height:1.65;color:#a6b3c6}
.rack-screen .data-details{border-top:1px solid #ffffff20;padding-top:16px;margin-top:20px}
.rack-screen .data-details summary{cursor:pointer;font-size:14px;color:#dce6f5;min-height:40px;display:list-item;list-style-position:inside}
.rack-screen .data-facts{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,2fr);gap:12px 20px;margin:12px 0 6px;font-size:13px;line-height:1.7}
.rack-screen .data-facts dt{color:#a6b3c6}.rack-screen .data-facts dd{margin:0;overflow-wrap:anywhere}
.rack-screen .data-metrics .metric strong{overflow-wrap:anywhere;font-size:clamp(19px,2.2vw,27px);font-weight:400}
.rack-screen .token-links{flex-wrap:wrap;gap:12px 20px}
.rack-screen .data-excluded{margin-top:28px;padding-top:22px;border-top:1px solid #ffffff20}
.rack-screen .data-excluded h3{font-family:var(--ui-font);font-size:18px;font-weight:400;margin:0 0 7px}
.rack-screen .data-excluded-item{padding:18px 0;border-bottom:1px solid #ffffff14;min-width:0}
.rack-screen .data-excluded-item>strong{font-weight:400;font-size:15px}
.rack-screen .data-address{display:block;font-family:var(--ui-mono);font-size:11px;line-height:1.7;color:#a6b3c6;overflow-wrap:anywhere;margin:9px 0}
.rack-screen .data-reasons{padding-left:18px;margin:10px 0;color:#c5d1e2;font-size:13px;line-height:1.7}
.rack-screen .data-reasons li{overflow-wrap:anywhere}
.rack-screen .data-research{font-size:12px;color:#a6b9ff;min-height:40px}
.rack-screen .data-pad+.data-pad{margin-top:26px}
.rack-screen .pad-row>div:first-child{display:grid;gap:5px;min-width:0}
.rack-screen .data-pad-volume{display:grid;gap:5px;text-align:right}
.rack-screen .data-pad-volume small{max-width:160px;font-size:10px;line-height:1.5}
.rack-screen .data-pad-token{margin:17px 0 22px;padding:16px 18px;border:1px solid #ffffff20;border-radius:16px;background:#ffffff03}
.rack-screen .data-pad-token>.mono{display:block;font-size:10px;color:#a6b3c6;margin-bottom:14px}
.rack-screen .data-pad-token .metric-grid{margin:15px 0 0;gap:16px}
.rack-screen .response-downloads{padding:14px 24px;background:#111a25;border-top:1px solid #ffffff16;display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap}
.rack-screen .response-downloads[hidden]{display:none}
.rack-screen .response-download-actions{display:flex;gap:20px;flex-wrap:wrap}
.rack-screen .response-download-actions button{color:#bdcef2;font-size:12px;min-height:40px}
@media(max-width:760px){.rack-screen .response-downloads{padding:14px 15px}.rack-screen .data-facts{grid-template-columns:1fr;gap:4px}.rack-screen .data-facts dd{margin-bottom:10px}.rack-screen .data-pad-token{padding:15px}.rack-screen .data-research,.rack-screen .response-download-actions button{min-height:44px}.rack-screen .data-metrics .metric strong{font-size:22px}}
