:root{--bg: #060806;--bg-elev: #0c110c;--bg-card: #101710;--green: #6dff57;--green-soft: #3dcc4a;--green-dim: #2a6b32;--amber: #e6c15a;--text: #d4ead0;--muted: #73906f;--faint: #3d4f3c;--red: #ff5f56;--yellow: #ffbd2e;--traffic-green: #27c93f;--border: #1e2c1e;--shadow: 0 24px 80px rgba(0, 0, 0, .55);--mono: "IBM Plex Mono", ui-monospace, "Cascadia Code", "SF Mono", Menlo, monospace;--radius: 10px}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}html{color-scheme:dark}body{margin:0;font-family:var(--mono);background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}button{font-family:inherit}.app-root{position:relative;min-height:100dvh;padding:28px 20px 40px;overflow-x:hidden}.scanlines{pointer-events:none;position:fixed;inset:0;z-index:20;background:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,rgba(0,0,0,.12) 2px,rgba(0,0,0,.12) 3px);opacity:.35}.vignette{pointer-events:none;position:fixed;inset:0;z-index:19;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.45) 100%)}.home-wrap{max-width:920px;margin:0 auto}.wordmark{margin:0 0 18px;color:var(--green);font-size:clamp(28px,6.4vw,52px);font-weight:600;letter-spacing:.22em;line-height:1.15;text-indent:.08em}.prompt-line{display:flex;align-items:center;gap:8px;margin:0}.prompt-line .prompt{color:var(--green);flex-shrink:0}.prompt-input{flex:1;min-width:2ch;margin:0;padding:0;border:none;outline:none;background:transparent;color:var(--text);font:inherit;caret-color:var(--green);caret-shape:block}.terminal{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.titlebar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#0a0f0a;border-bottom:1px solid var(--border)}.traffic{display:flex;gap:7px;flex-shrink:0}.traffic span{width:11px;height:11px;border-radius:50%}.traffic .c-red{background:var(--red)}.traffic .c-yellow{background:var(--yellow)}.traffic .c-green{background:var(--traffic-green)}.titlebar-label{flex:1;text-align:center;color:var(--muted);font-size:12px;letter-spacing:.02em}.term-body{padding:18px 18px 12px;min-height:420px;display:flex;flex-direction:column}.log{flex:1;display:flex;flex-direction:column;gap:4px;font-size:14px}.log-line.system{color:var(--muted)}.log-line.command{color:var(--text)}.log-line.command .prompt{color:var(--green);margin-right:8px}.log-line.output{color:var(--text);padding-left:0;white-space:pre-wrap}.cursor{display:inline-block;width:8px;height:1em;background:var(--green);margin-left:2px;vertical-align:text-bottom;animation:blink 1.05s steps(1) infinite}@keyframes blink{50%{opacity:0}}.listing{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 16px;margin:8px 0 12px}.dir-link,.cmd-chip{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid transparent;color:var(--green);cursor:pointer;font-size:14px;padding:6px 8px;border-radius:6px;text-align:left}.listing .dir-link{flex-direction:column;align-items:flex-start;gap:2px;min-height:44px}.dir-link:hover,.cmd-chip:hover{background:#6dff5714;border-color:var(--green-dim);text-decoration:none}.dir-link .slash{color:var(--amber)}.dir-hint{color:var(--muted);font-size:12px}.help-table{display:grid;gap:6px;margin:8px 0 12px}.help-row{display:grid;grid-template-columns:88px 1fr;gap:12px}.help-row .name{color:var(--green)}.help-row .hint{color:var(--muted)}.cmd-bar{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px;padding-top:14px;border-top:1px dashed var(--border)}.cmd-chip{border-color:var(--border);min-height:40px}.page-shell{max-width:860px;margin:0 auto}.page-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:22px;box-shadow:var(--shadow)}.page-path{color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-path strong{color:var(--green);font-weight:500}.cd-home{flex-shrink:0;border:1px solid var(--border);border-radius:6px;padding:6px 10px;min-height:36px;display:inline-flex;align-items:center}.cd-home:hover{text-decoration:none;background:#6dff5714}.page-title{margin:0 0 8px;font-size:22px;font-weight:600;color:var(--green)}.lede{color:var(--muted);margin:0 0 22px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin-bottom:14px}.card h2,.card h3{margin:0 0 6px;font-size:16px;font-weight:600;color:var(--text)}.meta{color:var(--amber);font-size:12px;margin:0 0 10px}.card ul{margin:0;padding-left:18px}.card li{margin-bottom:6px}.card li:last-child{margin-bottom:0}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}.tag{border:1px solid var(--green-dim);color:var(--green-soft);border-radius:999px;padding:3px 10px;font-size:12px}.skill-group h3{color:var(--green);font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.contact-list{list-style:none;padding:0;margin:0}.contact-list li{margin:0 0 12px;display:grid;gap:2px}.contact-list .label{color:var(--muted);font-size:12px}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.btn{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border:1px solid var(--green-dim);border-radius:6px;color:var(--green)}.btn:hover{background:#6dff5714;text-decoration:none}.muted-note{color:var(--muted);font-size:13px}code{color:var(--green)}@media(max-width:640px){.app-root{padding:16px 12px 28px}.wordmark{font-size:clamp(22px,8vw,32px);letter-spacing:.14em;margin-bottom:14px}.term-body{min-height:360px;padding:14px}.help-row{grid-template-columns:1fr;gap:2px}.page-bar{flex-wrap:wrap}}
