:root{--shell:#101116;--terminal:#282a36;--line:#44475a;--line-soft:#363846;--text:#f8f8f2;--body:#c5c8d4;--muted:#7f87a5;--purple:#bd93f9;--cyan:#8be9fd;--green:#50d890;--yellow:#f1fa8c;--error:#ffb86c}
*{box-sizing:border-box}html,body{height:100%}body{margin:0;overflow:hidden;background:var(--shell);color:var(--text);font-family:"IBM Plex Mono",monospace}button,input{font:inherit}.desktop{height:100dvh;padding:8px;display:grid;grid-template-rows:48px minmax(0,1fr);background:var(--shell)}

/* Terminal window tabs */
.topbar{min-width:0;display:flex;align-items:flex-end;justify-content:space-between}.tabs{height:48px;display:flex;align-items:flex-end;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{height:40px;min-width:max-content;padding:0 18px;border:0;border-right:1px solid #1d1e25;border-radius:6px 6px 0 0;background:#343642;color:#aeb3c2;font-size:11px;cursor:pointer}.tab.active{height:44px;background:var(--terminal);color:#fff}.tab span{margin-right:8px;color:var(--cyan);font-size:14px}.tab b{margin-left:18px;color:#bbc0cc;font-size:16px;font-weight:400}.topbar time{align-self:center;padding:0 14px;color:var(--green);font-size:11px;white-space:nowrap}

/* Terminal viewport */
.workspace{min-height:0;overflow:hidden;background:var(--terminal);border-radius:0 6px 6px 6px}.terminal{height:100%;overflow:auto;padding:clamp(22px,4vw,52px) clamp(18px,5vw,72px) 36px;scrollbar-color:#505469 var(--terminal);scrollbar-width:thin}.terminal-output{max-width:1060px}.boot{font-size:11px;line-height:1.8;color:#aeb4c4}.boot.muted{color:#737b9a}.ok,.success{color:var(--green)!important}

/* Initial terminal output */
.hero-terminal{margin:clamp(26px,5vh,52px) 0 32px}.path{margin:0 0 22px;color:var(--cyan);font-size:11px}.path::before{content:"$ cd ";color:var(--green)}.path span{color:var(--purple)}h1{margin:0;color:var(--text);font:600 clamp(42px,6.8vw,92px)/.92 "IBM Plex Mono",monospace;letter-spacing:0}h1::before{content:"> ";color:var(--purple)}h1 em{color:#aeb4c4;font-style:normal;font-weight:400}.role{margin:28px 0 16px;color:#edf0eb;font-size:clamp(12px,1.3vw,16px);line-height:1.8}.prompt{margin-right:8px;color:var(--green)}.role-indent{padding-left:22px;color:var(--purple)}.summary{max-width:780px;margin:0;color:var(--body);font:13px/1.75 "IBM Plex Mono",monospace}.summary::before{content:"/* ";color:var(--muted)}.summary::after{content:" */";color:var(--muted)}

.quick-commands{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:32px 0 24px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quick-commands>span{margin-right:8px;color:var(--muted);font-size:9px}.quick-commands button{padding:4px 7px;border:0;background:transparent;color:var(--cyan);font-size:11px;cursor:pointer}.quick-commands button::before{content:"[";color:var(--muted)}.quick-commands button::after{content:"]";color:var(--muted)}.quick-commands button:hover,.quick-commands button:focus-visible{background:var(--line);color:#fff;outline:0}

.system-info{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-left:1px solid var(--line);padding-left:16px}.system-info div{padding:5px 20px 5px 0}.system-info span,.system-info strong{display:block}.system-info span{margin-bottom:5px;color:var(--muted);font-size:8px}.system-info span::before{content:"const ";color:var(--purple)}.system-info strong{color:#d8dbe3;font-size:11px;font-weight:400}.system-info strong::before{content:"= \"";color:#69718d}.system-info strong::after{content:"\";";color:#69718d}.hint{margin:22px 0 0;color:var(--muted);font-size:10px}.hint::before{content:"# ";color:#66708d}.hint b{color:var(--yellow);font-weight:400}

/* Interactive prompt */
.command-line{display:flex;align-items:center;min-height:30px;margin-top:32px;font-size:12px}.command-line label{white-space:nowrap}.command-line label span{color:var(--green)}.command-line label b{color:var(--cyan);font-weight:400}.command-line input{flex:1;min-width:50px;padding:5px 8px;border:0;outline:0;background:transparent;color:var(--text);caret-color:transparent}.cursor{width:7px;height:15px;margin-left:-7px;background:var(--yellow);pointer-events:none;animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}

/* Shared command output */
.response{margin:30px 0 4px;font-size:12px;animation:reveal .2s ease}.response-command{padding-top:22px;border-top:1px solid var(--line);color:#838aa3;font-size:11px}.response-command span{color:var(--green)}.response h2{margin:14px 0 20px;color:var(--purple);font:500 12px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.response h2::before{content:"// ";color:#687196}.error{margin:14px 0;color:var(--error);font-size:11px}.error::before{content:"error: ";color:#ff5555}@keyframes reveal{from{opacity:0;transform:translateY(3px)}}

/* Terminal data formats */
.term-table{max-width:720px}.term-table div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:7px 0;border-bottom:1px dotted var(--line-soft)}.term-table code{color:var(--cyan)}.term-table span{color:var(--body)}
.term-object{max-width:880px;padding-left:17px;border-left:1px solid var(--line)}.term-object div{display:grid;grid-template-columns:160px 1fr;gap:18px;padding:7px 0}.term-object b{color:var(--cyan);font-weight:400}.term-object b::after{content:":";color:#687196}.term-object span{color:#d4d6de}.term-object a{color:var(--cyan);text-decoration:none}.term-object a:hover{text-decoration:underline}.term-copy{max-width:860px;margin:24px 0 0;color:var(--body);font:12px/1.8 "IBM Plex Mono",monospace}.term-copy::before{content:"> ";color:var(--green)}
.term-tree{max-width:920px}.term-tree section{display:grid;grid-template-columns:34px 1fr;gap:4px;padding:3px 0 17px}.term-tree i{color:#687196;font-style:normal}.term-tree small{display:block;margin-bottom:5px;color:#7f89a9;font-size:9px}.term-tree strong{display:block;color:#f0f0ed;font-size:13px;font-weight:500}.term-tree p{margin:5px 0 0;color:#aeb3c2;font:11px/1.6 "IBM Plex Mono",monospace}
.term-code{max-width:900px;margin:0;padding:15px 18px;border-left:1px solid var(--line);background:#252732;color:#c9ccd5;font:11px/2 "IBM Plex Mono",monospace;white-space:pre-wrap;overflow-x:auto}.term-code span{color:var(--cyan)}
.term-checklist p{margin:0;color:#d0d3db;font:12px/1.9 "IBM Plex Mono",monospace}.term-checklist b{color:var(--green);font-weight:400}.contact-items{margin-top:20px}.contact-items a{display:block;width:max-content;max-width:100%;color:var(--cyan);font:12px "IBM Plex Mono",monospace;text-decoration:none;overflow-wrap:anywhere}.contact-items a:hover{text-decoration:underline}

@media(max-width:760px){body{overflow:auto}.desktop{min-height:100dvh;height:auto;padding:4px;grid-template-rows:74px minmax(calc(100dvh - 82px),auto)}.topbar{position:relative;align-items:flex-start}.topbar time{position:absolute;top:7px;right:2px;font-size:10px}.tabs{width:100%;height:74px;padding-top:34px}.tab{padding:0 11px}.tab b{margin-left:8px}.workspace{border-radius:0 5px 5px 5px}.terminal{padding:20px 12px 30px}.hero-terminal{margin-top:28px}h1{font-size:clamp(38px,12vw,58px);line-height:1}.summary{font-size:12px}.system-info{grid-template-columns:1fr}.system-info div{padding:5px 0}.term-table div,.term-object div{grid-template-columns:1fr;gap:4px}.term-tree section{grid-template-columns:28px 1fr}.term-code{font-size:10px;padding:12px}.command-line{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important}}
