:root{--bg:#050505;--fg:#ece8e0;--fg-soft:#b8b3a9;--dim:#666058;--ghost:#0f0e0c;--rule:#1a1916;--accent:#d6c19a;--mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,"Courier New",monospace;--font:var(--mono)}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;width:100%;overflow:hidden;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:clamp(13px,.95vw,15px);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{position:relative}body:before{z-index:1;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.92' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.55 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.18'/></svg>");mix-blend-mode:overlay;opacity:.32}body:after,body:before{content:"";position:fixed;inset:0;pointer-events:none}body:after{z-index:0;background:radial-gradient(ellipse at 50% 40%,rgba(255,240,215,.04) 0,rgba(0,0,0,0) 55%,rgba(0,0,0,.55) 100%)}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:#0a0a0a}img{display:block;max-width:100%}button{font:inherit;background:transparent;border:0;color:inherit;cursor:pointer;padding:0;text-align:inherit}.stage{position:fixed;inset:0;z-index:5}.content{min-width:0;padding:1.5rem 2rem}.content,.view{position:absolute;inset:0;min-height:0}.view{display:flex;flex-direction:column;animation:view-in .38s cubic-bezier(.22,1,.36,1) both}@keyframes view-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.scrapbook{position:relative;width:100%;height:100%}.scrap-tile{--dx:0px;--dy:0px;--stack-order:0;position:absolute;display:block;filter:grayscale(.65) brightness(.7) contrast(.95) saturate(.85);transform:translate3d(var(--dx),var(--dy),0) scale(1);transform-origin:center;transition:filter .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);cursor:grab;z-index:calc(1 + var(--stack-order));will-change:transform,filter;touch-action:none;user-select:none}.scrap-tile.is-awake{filter:grayscale(0) brightness(1) contrast(1.02) saturate(1.05);transform:translate3d(var(--dx),calc(var(--dy) - 2px),0) scale(1.06);transition:filter .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);z-index:calc(25 + var(--stack-order))}.scrap-tile:focus-visible,.scrap-tile:hover{filter:grayscale(0) brightness(1.02) contrast(1.04) saturate(1.1);transform:translate3d(var(--dx),calc(var(--dy) - 2px),0) scale(1.07);z-index:calc(26 + var(--stack-order));outline:none}.scrap-tile.is-dragging{cursor:grabbing;transition:none;z-index:calc(27 + var(--stack-order));filter:grayscale(0) brightness(1.05) contrast(1.05) saturate(1.15)}.scrap-frame{position:relative;width:100%;height:100%}.scrap-frame img,.scrap-frame video{width:100%;height:100%;object-fit:cover;display:block}.scrap-frame:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.3' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/></svg>");mix-blend-mode:overlay;opacity:.5}.scrap-frame:after,.scrap-frame:before{content:"";position:absolute;inset:0;pointer-events:none}.scrap-frame:before{background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.18));mix-blend-mode:multiply;z-index:1}.hero-center{position:absolute;inset:0;align-items:center;justify-content:flex-start;padding:38vh 2rem 0;pointer-events:none;z-index:99999;text-align:center}.hero-center,.terminal{display:flex;flex-direction:column}.terminal{pointer-events:auto;font-family:var(--mono);font-size:clamp(13px,1vw,16px);color:var(--fg);background:rgba(8,8,8,.94);border:1px solid var(--line-bright);border-radius:2px;width:min(620px,88vw);height:min(50vh,460px);box-shadow:0 18px 50px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.02);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-align:left;overflow:hidden;cursor:text}.terminal-bar{display:flex;align-items:center;gap:.5em;padding:.45em .7em;border-bottom:1px solid var(--rule);background:rgba(255,255,255,.02);font-size:.78em;color:var(--dim);user-select:none;cursor:grab;touch-action:none}.terminal.is-dragging .terminal-bar{cursor:grabbing}.terminal.is-dragging{user-select:none}.terminal-bar .dots{display:inline-flex;gap:.4em}.terminal-bar .dots i{width:11px;height:11px;border-radius:50%;background:var(--rule);display:block;transition:background .2s ease}.terminal-bar:hover .dots i:first-child{background:hsl(32,100%,60%)}.terminal-bar:hover .dots i:nth-child(2){background:hsl(70,90%,55%)}.terminal-bar:hover .dots i:nth-child(3){background:hsl(158,75%,45%)}.terminal-bar .path{margin-left:.4em;letter-spacing:.02em}.terminal-body{padding:.7em .85em .85em;display:flex;flex-direction:column;gap:.35em;flex:1 1 auto;min-height:0;overflow-y:auto;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--rule) transparent}.terminal-body::-webkit-scrollbar{width:6px}.terminal-body::-webkit-scrollbar-thumb{background:var(--rule);border-radius:3px}.terminal-row{display:flex;align-items:baseline;gap:.5em}.terminal-row.hist{opacity:.85}.terminal-row .glyph{color:var(--accent);user-select:none}.terminal-row .path-prefix{color:var(--dim);user-select:none;margin-right:.5em}.terminal-row input{flex:1 1 auto;background:transparent;border:0;outline:0;color:var(--fg);font:inherit;caret-color:var(--accent);min-width:0}.terminal-row input::placeholder{color:var(--dim)}.terminal-line{font-family:var(--mono);font-size:.92em;color:var(--fg-soft);letter-spacing:0;white-space:pre-wrap;word-break:break-word;padding-left:1.1em}.terminal-link{color:var(--accent);border-bottom:1px dotted;transition:color .2s ease,border-color .2s ease}.terminal-link:focus-visible,.terminal-link:hover{color:var(--fg);outline:none}@media (max-width:720px){.content{padding:1rem 1.2rem}body,html{overflow:auto}}