:root{color:#e8f1f8;background:#05070d;font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}*,:before,:after{box-sizing:border-box}body{background:#05070d;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}#root{min-height:100vh}.app-shell{background:radial-gradient(circle at 50% 42%,#4082c824,#0000 26rem),radial-gradient(circle at 78% 80%,#8c64ff14,#0000 24rem),#05070d;flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}.app-shell:before{content:"";z-index:0;opacity:0;pointer-events:none;background:#000;transition:opacity .7s;position:absolute;inset:0}.app-shell[data-shape=rain]:before{opacity:1}.stage{z-index:1;flex:1;min-height:0;position:relative}.terminal__menus{flex-shrink:0;align-items:center;gap:.55rem;margin-left:auto;display:flex}.tune-panel{min-width:14.5rem;padding:.5rem .45rem .35rem}.hud-slider{border-radius:.45rem;grid-template-columns:3.2rem 1fr 1.9rem;align-items:center;gap:.45rem;padding:.26rem .35rem;display:grid}.hud-slider:hover{background:#46a0e614}.hud-slider__label{letter-spacing:.06em;color:#b4d2f0b3;font-size:.66rem}.hud-slider__value{text-align:right;color:#8ce8ff;font-variant-numeric:tabular-nums;font-size:.66rem}.hud-slider input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:.9rem;margin:0}.hud-slider input[type=range]::-webkit-slider-runnable-track{background:#96c8f54d;border-radius:999px;height:2px}.hud-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#8ce8ff;border-radius:999px;width:.58rem;height:.58rem;margin-top:-.23rem;box-shadow:0 0 6px #8ce8ff99}.hud-slider input[type=range]::-moz-range-track{background:#96c8f54d;border-radius:999px;height:2px}.hud-slider input[type=range]::-moz-range-thumb{background:#8ce8ff;border:0;border-radius:999px;width:.58rem;height:.58rem;box-shadow:0 0 6px #8ce8ff99}.hud-slider input[type=range]:focus-visible{outline-offset:2px;border-radius:999px;outline:2px solid #78e1ffd9}.shape-menu{position:relative}.shape-menu__toggle{letter-spacing:.05em;text-transform:none;color:#cde6fad9;background:#080d169e;border:1px solid #96c8f538;border-radius:999px;align-items:center;gap:.28rem;padding:.24rem .66rem;font-size:.7rem;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.shape-menu__chevron{opacity:.85;flex-shrink:0;width:.72rem;height:.72rem}.shape-menu__toggle:hover,.shape-menu__toggle[aria-expanded=true]{color:#f3fbff;background:#46a0e629;border-color:#8cdcffbf}.shape-menu__toggle:disabled{opacity:.42;cursor:not-allowed}.shape-menu__toggle:disabled:hover{color:#cde6fad9;background:#080d169e;border-color:#96c8f538}@property --tune-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.shape-menu__toggle[data-tuned=true]{--tune-c1:#ffa64af2;--tune-c2:#ff7e3af2;--tune-glow:#ff924057;--tune-fill:#080d16;--tune-angle:0deg;background:linear-gradient(var(--tune-fill), var(--tune-fill)) padding-box, conic-gradient(from var(--tune-angle), transparent 0deg, transparent 286deg, color-mix(in srgb, var(--tune-c2) 70%, transparent) 312deg, var(--tune-c2) 332deg, var(--tune-c1) 352deg, transparent 360deg) border-box;box-shadow:0 0 0 1px color-mix(in srgb, var(--tune-c1) 24%, transparent) inset, 0 0 14px var(--tune-glow);border:1px solid #0000;animation:1.7s linear infinite tune-shimmer-spin}.shape-menu__toggle[data-tuned=true][data-theme=aurora]{--tune-c1:#7fd8fffa;--tune-c2:#8affc9f5;--tune-glow:#7fd8ff57}.shape-menu__toggle[data-tuned=true][data-theme=synthwave]{--tune-c1:#ff2fb3fa;--tune-c2:#b967fffa;--tune-glow:#ff2fb357}.shape-menu__toggle[data-tuned=true][data-theme=matrix]{--tune-c1:#3aff83f5;--tune-c2:#0ac75df5;--tune-glow:#32e1784d}.shape-menu__toggle[data-tuned=true][data-theme=ice]{--tune-c1:#bde9fffa;--tune-c2:#7fa8fffa;--tune-glow:#aad7ff57}.shape-menu__toggle[data-tuned=true][data-theme=ember]{--tune-c1:#ff5b4cfa;--tune-c2:#d90429fa;--tune-glow:#eb223057}.shape-menu__toggle[data-tuned=true][data-theme=mono]{--tune-c1:#ecececf5;--tune-c2:#aaaaaaf5;--tune-glow:#e6e6e647}.shape-menu__toggle[data-tuned=true][aria-expanded=true],.shape-menu__toggle[data-tuned=true]:hover{--tune-fill:color-mix(in srgb, var(--tune-c1) 14%, #080d16);color:#f3fbff}@keyframes tune-shimmer-spin{0%{--tune-angle:0deg}to{--tune-angle:360deg}}@media (prefers-reduced-motion:reduce){.shape-menu__toggle[data-tuned=true]{animation:none}}.shape-menu__list{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#04070de6;border:1px solid #a0d2fa33;border-radius:.7rem;flex-direction:column;min-width:10rem;max-height:min(60vh,24rem);padding:.35rem;display:flex;position:absolute;bottom:calc(100% + .55rem);right:0;overflow-y:auto;box-shadow:0 .8rem 2.4rem #00000080}.shape-menu__item{text-align:left;letter-spacing:.04em;color:#cde6fad1;border-radius:.45rem;padding:.42rem .7rem;font-size:.78rem;transition:background .14s,color .14s}.shape-menu__item:hover{color:#f3fbff;background:#46a0e62e}.shape-menu__item[data-active=true]{color:#8ce8ff}.shape-menu__item[data-active=true]:after{content:" •"}.shape-menu__divider{border-top:1px solid #a0d2fa29;margin:.3rem .4rem}.portfolio-scene{z-index:0;touch-action:none;cursor:crosshair;position:absolute;inset:0}.portfolio-scene__canvas{position:absolute;inset:0}.portfolio-scene__canvas>canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.portfolio-scene--fallback{place-items:center;display:grid}.portfolio-scene__fallback{text-align:center;justify-items:center;gap:1.1rem;padding:1.5rem;display:grid}.portfolio-scene__fallback img{opacity:.92;border-radius:999px}.portfolio-scene__fallback p{color:#c4daeead;margin:0;font-size:.8rem;line-height:1.6}.name-mark{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;top:clamp(.9rem,2.4vw,1.6rem);left:clamp(1rem,2.6vw,1.8rem)}.name-mark h1{letter-spacing:.06em;color:#e8f1f8d1;margin:0;font-size:.92rem;font-weight:500}.name-mark p{letter-spacing:.09em;text-transform:uppercase;color:#aac8e27a;margin:.18rem 0 0;font-size:.68rem}.terminal-dock{z-index:3;width:min(36rem,100vw - 2rem);transition:width .22s;position:fixed;bottom:clamp(.75rem,2.2vw,1.35rem);right:clamp(.75rem,2.4vw,1.6rem)}.terminal-dock--max{width:min(46rem,100vw - 2rem)}.terminal--max .terminal__output{min-height:16rem;max-height:55vh}.terminal--min{width:fit-content;margin-left:auto}.terminal--min .terminal__header{border-bottom:0}.terminal{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#04070dd1;border:1px solid #a0d2fa2e;border-radius:.85rem;box-shadow:0 1rem 3rem #00000080}.terminal__header{color:#bedcf599;letter-spacing:.06em;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #aad7fa1f;align-items:center;gap:.7rem;padding:.45rem .8rem;font-size:.7rem;display:flex}.terminal__header,.terminal__title,.terminal__traffic,.terminal__dot,.terminal__menus,.shape-menu__toggle,.shape-menu__item{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.terminal__title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.terminal__traffic{gap:.34rem;display:inline-flex}.terminal__dot{opacity:.8;cursor:pointer;border-radius:999px;width:.72rem;height:.72rem;transition:transform .12s,filter .12s,opacity .12s}.terminal__dot:hover{opacity:1;filter:brightness(1.25);transform:scale(1.18)}.terminal__dot:focus-visible{outline-offset:2px;outline:2px solid #78e1ffd9}.terminal__dot[data-tone=red]{background:#ff6a6a}.terminal__dot[data-tone=yellow]{background:#ffd86d}.terminal__dot[data-tone=green]{background:#5df2ae}.terminal__output{color:#d6ecfce6;scrollbar-width:thin;scrollbar-color:#82beeb66 transparent;min-height:7.5rem;max-height:12.5rem;padding:.8rem;font-size:.78rem;line-height:1.55;overflow:auto}.terminal__line{white-space:pre-wrap}.terminal__line a{color:#8ce8ff;text-underline-offset:2px;text-decoration:underline}.terminal__cmd{color:#9fe9ff;font-weight:600}.terminal__line a:hover{color:#c4f2ff}.terminal__empty{color:#8cafcd80;margin:0}.terminal__input-row{border-top:1px solid #aad7fa1a;grid-template-columns:auto 1fr;align-items:center;gap:.5rem;padding:.6rem .8rem;font-size:.78rem;display:grid}.terminal__prompt{color:#8ce8ff}.terminal__input-shell{width:100%;position:relative}.terminal__input{color:#ecf7ff;caret-color:#8ce8ff;background:0 0;border:0;outline:0;width:100%;min-width:0;padding-right:6.8rem}.terminal__input-actions{align-items:center;gap:.14rem;display:inline-flex;position:absolute;top:50%;right:.2rem;transform:translateY(-50%)}.terminal__input-action{color:#b6def8e0;background:0 0;border-radius:.38rem;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;transition:background .14s,color .14s,transform .12s;display:inline-flex}.terminal__input-action:hover{color:#ddf4ff;background:#46a0e62e}.terminal__input-action[data-action=randomize]:hover svg,.terminal__input-action[data-action=randomize]:focus-visible svg{transform-origin:50% 56%;animation:.46s dice-shake}.terminal__input-action[data-action=reset] svg{width:.95rem;height:.95rem}.terminal__input-action:active{transform:translateY(.5px)}@keyframes dice-shake{0%{transform:translate(0)rotate(0)}16%{transform:translate(-.55px)rotate(-8deg)}33%{transform:translate(.75px)rotate(7deg)}50%{transform:translate(-.5px)rotate(-6deg)}66%{transform:translate(.5px)rotate(5deg)}83%{transform:translate(-.25px)rotate(-2deg)}to{transform:translate(0)rotate(0)}}.terminal__input-action:focus-visible{outline-offset:1px;outline:2px solid #78e1ffd9}.terminal__input::placeholder{color:#96b9d773}.shape-menu__toggle:focus-visible,.shape-menu__item:focus-visible,.terminal__input:focus-visible{outline-offset:2px;outline:2px solid #78e1ffd9}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=720px){.name-mark h1{font-size:.84rem}.name-mark p{font-size:.62rem}.terminal-dock{left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom,0px));width:auto}.terminal__header{gap:.5rem;padding:.42rem .65rem}.terminal__menus{gap:.35rem}.shape-menu__toggle{text-overflow:ellipsis;white-space:nowrap;max-width:7.5rem;padding:.22rem .55rem;overflow:hidden}.shape-menu__list{max-height:min(46vh,18rem)}.tune-panel{max-width:calc(100vw - 2rem)}.terminal__output{min-height:5.5rem;max-height:8.5rem}.terminal--max .terminal__output{min-height:10rem;max-height:42vh}.terminal--min{width:auto;margin-left:0}.terminal__input{font-size:16px}.terminal,.shape-menu__list,.shape-menu__toggle{-webkit-backdrop-filter:none;backdrop-filter:none}.terminal{background:#04070df0}}@media (width<=560px){.terminal__title{display:none}.terminal__traffic{gap:.3rem}}@media (prefers-reduced-motion:reduce){.terminal__input-action[data-action=randomize]:hover svg,.terminal__input-action[data-action=randomize]:focus-visible svg{animation:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
