@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root{color-scheme:dark;--page:#070d17;--panel:#0c1729;--side:#0a1423;--bar:#111e31;--border:#20314a;--text:#eaf0fa;--muted:#95a8c2;--cyan:#6de4d5;--blue:#85baff;--yellow:#f4d58a;--orange:#e9ae8c;--mono:'JetBrains Mono',Consolas,monospace;--sans:'DM Sans',system-ui,sans-serif}
html[data-theme="classic"]{--page:#001432;--panel:#012456;--side:#011b42;--bar:#082d60;--border:#244b7c;--text:#fff;--muted:#afc3e0;--cyan:#72f1d6;--blue:#9ed4ff;--yellow:#fff2a4;--orange:#ffc0a1}
html[data-theme="matrix"]{--page:#050c08;--panel:#0b1911;--side:#08140d;--bar:#12251a;--border:#254934;--text:#e1fbe9;--muted:#97bca4;--cyan:#80f7a6;--blue:#a5dfad;--yellow:#d9f99d;--orange:#b7dc99}
*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--text);font:15px/1.7 var(--sans);background-image:radial-gradient(ellipse at 50% 0%,#19345335,transparent 65%)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{background:none;border:0}a,button,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}button:hover,a:hover{color:var(--cyan)}[hidden]{display:none!important}::selection{background:#39829f;color:#fff}.muted{color:var(--muted)}.syntax-command{color:var(--yellow)}.syntax-string{color:var(--cyan)}.syntax-variable{color:var(--blue)}.syntax-number{color:var(--orange)}.prompt{color:var(--cyan)}.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 9px #6de4d536;vertical-align:middle;margin-right:8px}.skip-link{position:fixed;top:-100px;left:16px;padding:10px;background:var(--panel);z-index:20}.skip-link:focus{top:10px}
.site-header,.page-footer{max-width:1380px;margin:auto;display:flex;align-items:center;justify-content:space-between}.site-header{height:102px;padding:0 34px}.wordmark{display:flex;align-items:center;font:600 16px var(--mono);gap:0}.ps-logo{display:inline-flex;align-items:center;justify-content:center;font:bold 20px var(--mono);width:35px;height:30px;background:#2076bf;border-radius:5px;transform:skew(-9deg);margin-right:14px;color:#fff}.ps-logo.small{width:21px;height:18px;font-size:13px;margin-right:10px;border-radius:3px}.header-divider{margin:0 22px;color:#43516a}.header-label{color:var(--muted);font-size:11px;font-weight:400}.header-link{font-size:13px}.header-link span{margin-left:14px;color:var(--cyan)}
.workspace{max-width:1312px;margin:0 auto;border:1px solid #30415a;border-radius:12px;overflow:hidden;box-shadow:0 30px 90px #0006;background:var(--panel)}.window-bar{height:46px;background:var(--bar);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 17px;font:11px var(--mono)}.window-title{display:flex;align-items:center}.version{color:var(--muted);margin-left:12px}.window-actions{display:flex;gap:15px;align-items:center}.window-actions button{font-size:17px;padding:4px}.window-actions button span{font-size:10px;vertical-align:middle;margin-left:5px}.workspace-body{display:grid;grid-template-columns:204px minmax(0,1fr)}.sidebar{position:relative;padding:27px 0 30px;background:var(--side);border-right:1px solid var(--border);font:11px/1.8 var(--mono);display:flex;flex-direction:column}.sidebar-label{font-size:10px;letter-spacing:1.6px;color:var(--muted);padding:0 20px;display:flex;justify-content:space-between}.folder-label{font-size:10px;margin:25px 18px 12px;letter-spacing:.7px}.file-nav{display:grid;gap:3px}.file-nav a{border-left:2px solid transparent;display:flex;gap:10px;align-items:center;padding:11px 15px 11px 20px;color:var(--muted)}.file-nav a.active{color:var(--text);background:#5d97d512;border-color:var(--cyan)}.file-nav a:hover{background:#5d97d512;color:var(--text)}.file-icon{font-size:9px;font-weight:600;color:var(--blue)}.file-icon.orange{color:var(--orange)}.file-number{margin-left:auto;font-size:9px;opacity:.55}.sidebar-links{margin-top:40px}.sidebar-links>a{display:block;margin:17px 20px;color:var(--muted)}.sidebar-links>a:hover{color:var(--cyan)}.sidebar-links>a>span{display:inline-block;min-width:26px;color:var(--text)}.sidebar-note{margin:auto 20px 0;padding-top:90px;font-size:9px;line-height:2;color:var(--cyan)}.sidebar-note .muted{display:block;margin-top:8px}.editor{min-width:0}.editor-tabs{display:flex;background:var(--side);border-bottom:1px solid var(--border);font:11px var(--mono);height:44px}.editor-tabs>a,.editor-tabs>button{display:flex;gap:12px;align-items:center;padding:0 22px;border-right:1px solid var(--border);color:var(--muted);border-top:2px solid transparent}.editor-tabs .active{color:var(--text);background:var(--panel);border-top-color:var(--cyan)}.editor-tabs span{color:var(--blue);font-size:10px}.editor-tabs>button{margin-left:auto;border-right:0}.breadcrumb{font:10px var(--mono);color:var(--muted);padding:13px 28px;display:flex}.breadcrumb>span:first-child{color:var(--text)}.encoding{margin-left:auto;opacity:.7}
main{padding:15px 42px 34px;min-height:720px}.command-line{font:11px/1.8 var(--mono);display:flex;gap:10px;flex-wrap:wrap}.line-no{color:#697d98;margin-right:10px;font-size:10px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:35px;align-items:center;padding:42px 0 38px}.eyebrow{font:9px/1.7 var(--mono);letter-spacing:2px;color:var(--muted);margin:0 0 20px}.hero-copy h1{font:500 clamp(58px,5.8vw,84px)/.98 var(--sans);letter-spacing:-5px;margin:0 0 26px}.hero-copy h1>span{color:var(--cyan)}.cursor{font-weight:400;animation:blink 1.7s step-end infinite}.role{font-weight:600;font-size:15px;line-height:1.6;margin:0}.role>span{font-weight:400;color:var(--blue)}.hero-summary{font-size:13px;color:var(--muted);margin:18px 0 24px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:19px;flex-wrap:wrap}.primary-button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;background:var(--cyan);color:#09221e;font-size:11px;font-weight:700;padding:11px 16px;border-radius:4px;transition:transform .15s,filter .15s}.primary-button:hover{color:#09221e;filter:brightness(1.08);transform:translateY(-2px)}.text-button{font:10px var(--mono);padding:5px 0}.text-button span{margin-left:6px;color:var(--cyan)}.profile-object{font:11px/1.9 var(--mono);border:1px solid var(--border);border-radius:7px;background:linear-gradient(140deg,#14253c55,transparent);padding:22px;box-shadow:10px 10px 0 #050c161f}.object-title{display:flex;gap:7px;margin-bottom:18px}.object-type{font-size:8px;letter-spacing:1px;margin-left:auto;color:var(--muted);border:1px solid var(--border);border-radius:3px;padding:0 6px}.profile-object dl{margin:0 0 9px}.profile-object dl>div{display:grid;grid-template-columns:90px 1fr;gap:9px;margin:12px 0}.profile-object dt{color:var(--muted)}.profile-object dd{margin:0;color:var(--cyan);overflow-wrap:anywhere}.object-footer{border-top:1px solid var(--border);margin-top:17px;padding-top:14px;font-size:9px;color:var(--muted)}.bio-block{border-top:1px solid var(--border);padding-top:25px}.section-kicker{font:10px var(--mono);color:var(--muted)}.section-kicker span{color:var(--cyan);margin-left:15px}.bio-block h2{font-size:23px;font-weight:500;letter-spacing:-.5px;margin:16px 0 12px}.bio-block p{font-size:13px;color:var(--muted);line-height:1.85;max-width:790px;margin:11px 0}.focus-strip{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--border);margin-top:29px;padding-top:22px;font:10px var(--mono);color:var(--muted)}.focus-strip b{color:var(--cyan);font-weight:400;margin-right:7px}
.view>.eyebrow{margin-top:38px}.page-title{font:500 43px/1.15 var(--sans);letter-spacing:-1.9px;margin:0 0 20px}.page-intro{color:var(--muted);font-size:14px;max-width:640px;margin-bottom:28px}.skill-groups article{display:flex;gap:25px;padding:25px 0;border-top:1px solid var(--border)}.group-index{font:11px var(--mono);padding-top:6px;color:var(--cyan)}.skill-groups h3{font-size:18px;font-weight:500;margin:0 0 5px}.skill-groups p{font-size:13px;color:var(--muted);margin:0 0 14px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{font:10px/1.5 var(--mono);padding:4px 8px;border:1px solid var(--border);border-radius:3px;color:var(--blue);background:#6495d009}.project-list{border-top:1px solid var(--border)}details{border-bottom:1px solid var(--border)}summary{list-style:none;display:flex;align-items:center;gap:22px;padding:25px 0;cursor:pointer}summary::-webkit-details-marker{display:none}.project-number{font:11px var(--mono);color:var(--cyan)}summary small{display:block;font:9px var(--mono);letter-spacing:1.4px;color:var(--muted);margin-bottom:8px}summary strong{font-size:19px;font-weight:500}.details-mark{margin-left:auto;font:22px var(--mono);color:var(--cyan)}details[open] .details-mark{transform:rotate(45deg)}.project-detail{padding:0 25px 26px 39px;color:var(--muted);font-size:13px}.project-detail p:first-child{margin-top:0}.project-detail .tags{margin-top:20px}.footnote{font:10px/1.9 var(--mono);color:var(--muted);margin-top:25px}.creative-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;margin-top:30px}.creative-grid p:not(.page-intro){font-size:13px;color:var(--muted)}.creative-grid .primary-button{margin-top:15px}.off-duty-notes{margin-top:35px;font-family:var(--mono)}.off-duty-notes p{font-size:10px!important}.off-duty-notes span{margin-right:8px}.camera-art{position:relative;min-height:340px;background:radial-gradient(circle at 50% 45%,#28506e33,transparent 65%);display:flex;align-items:center;justify-content:center}.lens{width:210px;height:210px;border-radius:50%;border:1px solid #406078;box-shadow:0 0 0 12px #6495d009,0 0 0 13px #40607866,0 0 0 25px #6495d005,0 0 0 26px #40607833;display:grid;place-items:center}.lens-inner{border:1px solid #537087;border-radius:50%;width:165px;height:165px;display:grid;place-items:center;font-size:110px;line-height:1;color:var(--cyan);background:radial-gradient(circle,#193742,#0b1527)}.camera-caption{position:absolute;bottom:15px;font:8px var(--mono);letter-spacing:1.5px;color:var(--muted)}.viewfinder{position:absolute;width:19px;height:19px;border:solid var(--cyan);opacity:.6}.top-left{top:0;left:0;border-width:1px 0 0 1px}.top-right{top:0;right:0;border-width:1px 1px 0 0}.bottom-left{bottom:0;left:0;border-width:0 0 1px 1px}.bottom-right{bottom:0;right:0;border-width:0 1px 1px 0}
.terminal{border-top:1px solid var(--border);background:var(--side);font:11px/1.8 var(--mono);padding:0 28px 13px}.terminal-toolbar{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1px;padding:13px 0}.terminal-toolbar button{font-size:10px;letter-spacing:0;color:var(--muted)}.terminal-note{color:var(--muted);font-size:9px;letter-spacing:0;margin-left:13px}.terminal-welcome{color:var(--cyan);padding:2px 0 7px}.terminal-welcome .muted{display:block}#terminal-output{max-height:230px;overflow:auto;overflow-wrap:anywhere;scrollbar-color:var(--border) transparent;white-space:pre-wrap}#terminal-output p{margin:6px 0}.log-command{color:var(--yellow);margin:12px 0 5px!important}.log-response{color:var(--muted)}.log-error{color:var(--orange)}.log-success{color:var(--cyan)}#terminal-output a{color:var(--blue);text-decoration:underline}#command-form{display:flex;align-items:center;gap:12px;margin-top:10px}#command-form label{white-space:nowrap}#command-input{border:0;min-width:0;flex:1;color:var(--text);background:transparent;font:12px var(--mono);padding:10px 3px;caret-color:var(--cyan);border-bottom:1px solid var(--border);border-radius:0}#command-input::placeholder{color:var(--muted);opacity:.75}#command-form>button{background:var(--bar);border:1px solid var(--border);border-radius:4px;padding:3px 11px;font-size:16px;color:var(--cyan)}.terminal-hints{display:flex;justify-content:space-between;gap:15px;font-size:8px;color:var(--muted);margin-top:9px}.terminal-hints button{color:var(--cyan);padding:0;font:inherit}.hint-gap{margin-left:12px}kbd{font:inherit;background:var(--bar);border:1px solid var(--border);border-radius:2px;padding:1px 3px;margin-right:3px}.status-bar{display:flex;justify-content:space-between;gap:15px;padding:7px 18px;background:#132a42;border-top:1px solid #26415c;color:#aec8df;font:9px var(--mono)}.status-divider{margin:0 13px;color:#597590}.page-footer{font:9px/1.8 var(--mono);color:var(--muted);padding:23px 34px 35px}.footer-code span{color:var(--cyan)}body.focus-mode .sidebar,body.focus-mode .site-header,body.focus-mode .page-footer{display:none}body.focus-mode .workspace-body{grid-template-columns:1fr}body.focus-mode .workspace{max-width:1100px;margin:20px auto}.noscript-note{margin:20px;text-align:center}.egg-art{font:11px/1.4 var(--mono);color:var(--cyan)}.matrix-rain{position:fixed;inset:0;pointer-events:none;z-index:30;overflow:hidden;background:#00100750}.matrix-rain span{position:absolute;top:-300px;writing-mode:vertical-rl;color:#80f7a6;font:15px var(--mono);text-shadow:0 0 12px #80f7a6;animation:rain 3s linear forwards}.toast{position:fixed;right:24px;bottom:24px;max-width:calc(100% - 48px);background:var(--bar);border:1px solid var(--cyan);border-radius:5px;box-shadow:0 10px 35px #0007;padding:13px 18px;font:11px var(--mono);color:var(--cyan);z-index:40}@keyframes blink{50%{opacity:0}}@keyframes rain{to{transform:translateY(calc(100vh + 400px))}}
@media(min-width:1500px){.site-header{height:120px}.workspace{margin-top:5px}}@media(max-width:1100px){.workspace{margin:0 20px}.workspace-body{grid-template-columns:176px minmax(0,1fr)}main{padding:15px 28px 28px}.hero-grid{gap:23px}.hero-copy h1{font-size:66px}.profile-object{padding:17px;font-size:10px}.profile-object dl>div{grid-template-columns:76px 1fr;gap:6px}.hero-actions{gap:14px}.focus-strip{font-size:9px}.sidebar-label{padding:0 16px}.file-nav a{padding-left:15px;gap:7px}.file-number{display:none}.terminal-note{display:none}}
@media(max-width:850px){.hero-grid{grid-template-columns:1fr;padding-top:30px}.hero-copy h1{font-size:72px}.profile-object{max-width:100%;font-size:11px}.profile-object dl>div{grid-template-columns:100px 1fr}.header-label,.header-divider{display:none}.focus-strip{flex-wrap:wrap}.creative-grid{grid-template-columns:1fr}.camera-art{min-height:310px}.page-title{font-size:36px}.hero-copy{padding-bottom:5px}.hero-summary br{display:none}.hero-summary{max-width:320px}.terminal-path{display:none}.footer-code{display:none}}
@media(max-width:600px){.site-header{height:74px;padding:0 17px}.wordmark{font-size:14px}.header-link{font-size:11px}.header-link span{margin-left:5px}.workspace{margin:0 10px;border-radius:8px}.workspace-body{display:flex;flex-direction:column}.sidebar{padding:0;border-right:0;border-bottom:1px solid var(--border)}.sidebar>.sidebar-label,.folder-label,.sidebar-links,.sidebar-note{display:none}.file-nav{display:flex;gap:0;justify-content:space-between}.file-nav a{flex:1;justify-content:center;padding:13px 4px;border-left:0;border-bottom:2px solid transparent;font-size:9px;gap:4px;white-space:nowrap}.file-nav a.active{border-bottom-color:var(--cyan)}.file-icon{display:none}.editor-tabs{display:none}.window-bar{padding:0 12px;font-size:10px}.version{display:none}.window-actions{gap:12px}.window-actions button span{display:none}.breadcrumb{padding:13px 18px;font-size:9px}.encoding{display:none}main{padding:12px 20px 28px;min-height:0}.command-line{font-size:9px;gap:7px}.line-no{display:none}.hero-grid{padding-top:27px;gap:26px}.hero-copy h1{font-size:72px;letter-spacing:-4px;margin-bottom:22px}.eyebrow{font-size:8px;letter-spacing:1.6px}.role{font-size:14px}.hero-summary{font-size:13px}.hero-actions{gap:20px}.primary-button{font-size:11px}.profile-object{padding:20px}.profile-object dl>div{grid-template-columns:92px 1fr}.bio-block h2{font-size:22px}.bio-block p{font-size:13px}.focus-strip{display:grid;gap:13px;font-size:10px}.terminal{padding:0 17px 13px;font-size:10px}.terminal-toolbar{font-size:8px}.terminal-welcome{font-size:9px}#command-form{gap:8px}#command-input{font-size:16px;width:80px}#command-form>button{padding:2px 9px}.terminal-hints{font-size:8px;flex-wrap:wrap;gap:7px}.status-bar{padding:8px 11px;font-size:8px}.status-bar>span:last-child{font-size:0}.status-bar>span:last-child #egg-count{font-size:8px}.status-bar>span:last-child .status-divider{display:none}.page-footer{padding:20px 17px;font-size:8px}.page-title{font-size:33px;letter-spacing:-1.2px}.view>.eyebrow{margin-top:26px}.skill-groups article{gap:15px}.skill-groups h3{font-size:17px}.tags span{font-size:9px}.project-detail{padding-left:0}summary{gap:14px}summary strong{font-size:17px}.project-number{font-size:10px}.camera-art{margin-top:10px}.off-duty-notes p{font-size:9px!important}body.focus-mode .workspace{margin:10px}body.focus-mode .sidebar{display:flex}}
/* Keep file changes from selecting a lower scroll anchor or shifting the layout. */
html{scrollbar-gutter:stable}
.editor{overflow-anchor:none}
.mobile-file{display:none}
.project-source{padding-top:24px}
.project-source p{font-size:13px;color:var(--muted)}
summary>span:nth-child(2){min-width:0}
.details-mark,.project-number{flex-shrink:0}

@media(max-width:600px){
  html{scrollbar-gutter:auto}
  .workspace{overflow:clip}
  .sidebar{position:sticky;top:0;z-index:10;box-shadow:0 4px 12px #0002}
  .file-nav a{font-size:12px;min-height:48px;padding:12px 4px}
  .desktop-file{display:none}
  .mobile-file{display:inline}
  .sidebar-links{display:flex;align-items:center;justify-content:space-evenly;gap:4px;margin:0;padding:0 5px;border-top:1px solid var(--border)}
  .sidebar-links .sidebar-label,.sidebar-links>a>span{display:none}
  .sidebar-links>a{display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:6px;font-size:10px}
  .window-bar{height:50px;padding-right:5px}
  .window-actions{gap:0}
  .window-actions button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .header-link{min-height:44px;display:flex;align-items:center}
  main{scroll-margin-top:105px;padding:16px 18px 28px}
  .hero-grid{padding:22px 0 28px;gap:24px}
  .hero-copy h1{font-size:clamp(55px,17vw,72px)}
  .role{font-size:15px}
  .hero-summary,.bio-block p,.page-intro,.skill-groups p,.project-detail,.creative-grid p:not(.page-intro){font-size:15px;line-height:1.8}
  .eyebrow{font-size:10px;letter-spacing:1px}
  .hero-actions{gap:8px;align-items:stretch}
  .primary-button,.text-button{min-height:44px;font-size:12px}
  .text-button{padding:8px 12px}
  .profile-object{padding:16px;font-size:12px}
  .profile-object dl>div{grid-template-columns:86px minmax(0,1fr);gap:8px}
  .object-title{gap:5px;flex-wrap:wrap}
  .object-footer{font-size:10px}
  .page-title{font-size:clamp(28px,8.4vw,36px);overflow-wrap:break-word}
  .tags span{font-size:11px;overflow-wrap:anywhere;max-width:100%}
  summary{gap:12px;min-height:64px}
  summary strong{font-size:18px;line-height:1.4;display:block}
  .project-detail{padding-right:0}
  .skill-groups article>div{min-width:0}
  .project-source p{font-size:14px}
  .terminal{font-size:12px}
  .terminal-toolbar{min-height:52px;padding:4px 0;font-size:10px}
  .terminal-toolbar button{min-width:44px;min-height:44px;font-size:12px}
  .terminal-welcome{font-size:11px}
  #command-form>button{min-width:44px;min-height:44px}
  #command-input{min-height:44px}
  .terminal-hints{font-size:10px;align-items:center;gap:8px}
  .terminal-hints>span:first-child{display:none}
  .terminal-hints>span:last-child{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
  .terminal-hints button{min-height:44px;min-width:44px;padding:0 3px}
  .status-bar{font-size:9px;line-height:1.5;gap:6px}
  .status-divider{margin:0 6px}
  .page-footer{font-size:10px}
  .camera-art{min-width:0}
  .lens{width:170px;height:170px}
  .lens-inner{width:135px;height:135px;font-size:90px}
  .toast{bottom:max(16px,env(safe-area-inset-bottom));right:16px;max-width:calc(100% - 32px)}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.matrix-rain{display:none}}
