:root{color-scheme:dark;font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#e6e6e6;background:#050505;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #050505;--bg-2: #08080a;--panel: rgba(255, 255, 255, .035);--panel-strong: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .12);--border-strong: rgba(138, 79, 29, .58);--text: #e6e6e6;--heading: #f0f0f0;--secondary: #9a9a9a;--muted: #6f6f6f;--accent: #8a4f1d;--max-width: 1180px}*{box-sizing:border-box}html{background:var(--bg)}body{min-width:320px;margin:0;background:radial-gradient(circle at 18% 0%,rgba(138,79,29,.06),transparent 26rem),linear-gradient(135deg,#050505,#08080a 52%,#101014)}body:before{position:fixed;inset:0;z-index:10;pointer-events:none;content:"";background:repeating-linear-gradient(to bottom,rgba(255,255,255,.025),rgba(255,255,255,.025) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;opacity:.28}button,a{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}p{color:var(--secondary);line-height:1.7}h1,h2,h3,.brand-button,.nav-link,.terminal-label,.cta-button,.outline-button,.tab-button{letter-spacing:.08em;text-transform:uppercase}h1,h2,h3{color:var(--heading);line-height:1.12}h1{font-size:6.8rem}h2{font-size:2.6rem}h3{font-size:1rem}.scanline-text{color:var(--heading);background:repeating-linear-gradient(to bottom,#f0f0f0 0 2px,#b9b9b2 2px 3px,#eee 4px);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 10px rgba(230,230,230,.08)}.app-shell{position:relative;z-index:0;min-height:100vh;overflow-x:clip}.noise-layer{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:linear-gradient(to bottom,black 0%,transparent 90%);mask-image:linear-gradient(to bottom,black 0%,transparent 90%);opacity:.45}.site-header,.site-footer,.page-section{width:min(calc(100% - 40px),var(--max-width));margin-inline:auto}.site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:72px;padding-block:14px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.site-header:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--border),transparent)}.brand-button,.nav-link,.text-link,.tab-button,.modal-close{border:0;background:none;cursor:pointer}.brand-button{display:inline-flex;align-items:center;flex:0 0 auto;gap:.55rem;padding:0;color:var(--heading);font-weight:700}.status-dot{width:.56rem;height:.56rem;border:1px solid var(--accent);background:#8a4f1d6b;box-shadow:0 0 18px #8a4f1d57}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.nav-link{padding:.55rem .72rem;color:var(--secondary);font-size:.78rem;transition:color .16s ease,background .16s ease}.nav-link:hover,.nav-link.is-active{color:var(--accent);background:#8a4f1d14}.hero-section{position:relative;display:grid;align-items:end;width:min(calc(100% - 40px),var(--max-width));min-height:min(780px,calc(100vh - 96px));margin:0 auto;padding:9rem 0 4rem;overflow:hidden;background:linear-gradient(#00000094,#000000e6),url(/images/hero-bg.webp) center / cover no-repeat,#050505}.hero-section:after{position:absolute;inset:0;z-index:0;pointer-events:none;content:"";background:repeating-linear-gradient(to bottom,rgba(255,255,255,.035),rgba(255,255,255,.035) 1px,transparent 1px,transparent 5px);opacity:.2}.hero-content{position:relative;z-index:1;max-width:900px}.hero-grid{position:absolute;inset:4rem 0 2rem;z-index:0;display:grid;grid-template-columns:repeat(8,1fr);gap:.65rem;opacity:.28}.hero-grid span{min-height:76px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(255,255,255,.045),transparent 50%),#ffffff04}.hero-grid span:nth-child(3n){border-color:#8a4f1d40}.hero-grid span:nth-child(5n){opacity:.22}.terminal-label{display:inline-block;margin-bottom:.7rem;color:var(--accent);font-size:.72rem;font-weight:700}.cta-button,.outline-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--border-strong);cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.cta-button{margin-top:2rem;padding:.95rem 1.25rem;color:#e8e2d8;background:var(--accent);font-weight:800}.cta-button.small{min-height:40px;margin-top:1rem;font-size:.78rem}.outline-button{padding:.7rem .9rem;color:var(--text);background:#ffffff05;font-size:.78rem;font-weight:700}.cta-button:hover,.outline-button:hover{border-color:#ffffff6b;transform:translateY(-1px)}.cta-button:hover{box-shadow:0 0 34px #8a4f1d42}.page-section{padding:4.4rem 0}.page-top{padding-top:6rem}.narrow-page{max-width:860px}.section-header{display:flex;align-items:end;justify-content:space-between;gap:1.2rem;margin-bottom:1.4rem}.section-header p{max-width:710px;margin-top:.72rem}.text-link{color:var(--accent);font-size:.88rem}.text-link:hover{color:var(--heading)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.compact-grid,.room-grid,.music-preview-grid,.music-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-card,.link-card,.profile-panel{border:1px solid var(--border);background:var(--panel)}.archive-card{--accent-color: var(--accent);--room-text-color: var(--accent-color);position:relative;display:block;width:100%;overflow:hidden;padding:0;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.work-card:before{position:absolute;top:0;right:0;left:0;height:2px;content:"";background:var(--accent-color);opacity:.76}button.archive-card{cursor:pointer}.archive-card:hover,.link-card:hover{border-color:var(--accent-color, var(--accent));background:#ffffff0e;box-shadow:0 0 24px #ffffff09;transform:translateY(-2px)}.media-placeholder{position:relative;display:grid;min-height:210px;place-items:end start;overflow:hidden;padding:1rem;border-bottom:1px solid var(--border);background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 42%),linear-gradient(45deg,#8a4f1d38,#1e1e2433),#08080a;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 42%),linear-gradient(45deg,var(--accent-color, #8a4f1d),rgba(30,30,36,.22)),#08080a;opacity:.92}.media-placeholder:before{position:absolute;inset:0;content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent),repeating-linear-gradient(0deg,rgba(0,0,0,.16),rgba(0,0,0,.16) 2px,transparent 2px,transparent 7px);opacity:.54}.media-placeholder span{position:relative;z-index:1;color:#f2f2f2;font-size:.76rem;font-weight:800;letter-spacing:.1em}.room-cover-media{position:relative;display:grid;min-height:210px;place-items:end start;overflow:hidden;padding:1rem;border-bottom:1px solid var(--border);background:#08080a}.room-cover-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.58) saturate(.82);transform:scale(1.01);transition:filter .18s ease,transform .18s ease}.room-cover-media:before{position:absolute;inset:0;z-index:1;content:"";background:linear-gradient(180deg,#0000002e,#0000009e),repeating-linear-gradient(0deg,rgba(0,0,0,.18),rgba(0,0,0,.18) 2px,transparent 2px,transparent 7px)}.room-cover-media span{position:relative;z-index:2;color:#f2f2f2;font-size:.76rem;font-weight:800;letter-spacing:.1em}.archive-card:hover .room-cover-media img{filter:brightness(.72) saturate(.9);transform:scale(1.035)}.card-body{padding:1rem}.card-title-row{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.card-body p{margin-top:.72rem;font-size:.95rem}.room-type{display:inline-block;margin-bottom:.7rem;color:var(--room-text-color);font-size:.72rem;font-weight:800;letter-spacing:.1em}.work-card h3{font-size:1.35rem}.card-link{display:inline-block;margin-top:1rem;color:var(--room-text-color);font-size:.78rem;font-weight:800;letter-spacing:.08em}.room-detail-page .section-header{margin-bottom:1rem}.room-back-link{margin-bottom:1.2rem;padding:0}.room-detail-band{height:2px;margin-bottom:1.2rem;background:var(--accent-color);opacity:.74}.room-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.room-gallery-item{display:block;width:100%;overflow:hidden;border:1px solid var(--border);padding:0;color:inherit;background:#ffffff07;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}button.room-gallery-item{cursor:pointer}.room-gallery-item:hover{border-color:var(--accent-color);background:#ffffff0b;transform:translateY(-2px)}.room-item-thumb{position:relative;aspect-ratio:4 / 3;overflow:hidden;border-bottom:1px solid var(--border);background:#08080a}.room-item-thumb img{display:block;width:100%;height:100%;object-fit:cover}.room-item-thumb .media-placeholder{width:100%;height:100%;min-height:100%;border-bottom:0}.room-item-body{padding:.95rem}.room-gallery-item h3{font-size:1rem}.room-gallery-item .outline-button{border-color:var(--accent-color);color:var(--room-text-color)}.room-empty-state{border:1px solid var(--border);padding:1.5rem;color:var(--muted);background:#ffffff07;font-size:.86rem;font-weight:800;letter-spacing:.08em}.image-modal{width:auto;max-width:90vw;max-height:86vh;overflow:hidden;border:0;padding:0;background:transparent;box-shadow:none}.image-modal-media{display:grid;max-width:90vw;max-height:86vh;margin:0;place-items:center;overflow:hidden;background:transparent}.modal-image{display:block;width:auto;height:auto;max-width:90vw;max-height:86vh;object-fit:contain}.video-modal-frame{display:block;width:min(90vw,1120px);max-width:90vw;max-height:78vh;border:0;background:#050505;aspect-ratio:16 / 9}.media-viewer-video,.video-modal-gif{display:block;width:min(90vw,1200px);max-width:90vw;max-height:80vh;height:auto;object-fit:contain;background:#000}.video-modal-gif{image-rendering:auto}.video-modal-x{display:grid;gap:1rem;place-items:center}.video-modal-x-meta{display:grid;gap:.35rem;text-align:center}.video-modal-x-meta .room-type{color:var(--room-text-color)}.video-modal-x-meta h3{max-width:min(720px,84vw);color:var(--heading);font-size:1.05rem}.video-modal-x .outline-button{border-color:var(--accent-color);color:var(--room-text-color);background:#08080ac7}.music-modal-player{display:grid;gap:1rem;place-items:center}.music-modal-meta{display:grid;gap:.45rem;justify-items:center;text-align:center}.music-modal-meta .room-type{color:var(--room-text-color)}.music-modal-meta h3{color:var(--heading);font-size:1.05rem}.music-modal-meta .button-row{justify-content:center;margin-top:.4rem}.music-modal-meta .outline-button{border-color:var(--accent-color);color:var(--room-text-color);background:#08080ac7}.image-modal-media .media-placeholder{width:min(720px,88vw);min-height:min(420px,70vh);border-bottom:0}.image-modal-controls{display:none}.image-modal-controls span{color:var(--secondary);font-size:.8rem;font-weight:800;letter-spacing:.08em;text-align:center}.image-modal>.room-type,.image-modal>h3{display:none}.button-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.work-card .outline-button{border-color:var(--accent-color);color:var(--room-text-color)}.work-card .outline-button:hover{border-color:#ffffff52}.muted-text{color:var(--muted)}.stack-list{display:grid;gap:.85rem}.diary-card{display:grid;grid-template-columns:128px 1fr;gap:1rem;padding:1.1rem}.diary-date{color:var(--accent);font-weight:800;letter-spacing:.06em}.diary-home-section .stack-list{max-width:860px}.tabs{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:1.15rem}.tab-button{min-height:42px;border:1px solid var(--border);padding:.68rem .92rem;color:var(--secondary);background:#ffffff06;cursor:pointer}.tab-button:hover,.tab-button.is-active{border-color:var(--border-strong);color:var(--accent)}.profile-panel{position:relative;min-height:340px;overflow:hidden;padding:clamp(2rem,6vw,4.2rem);background:linear-gradient(135deg,rgba(255,255,255,.042),transparent 38%),#ffffff07}.profile-panel:before{position:absolute;inset:0;pointer-events:none;content:"";background:repeating-linear-gradient(to bottom,rgba(255,255,255,.025),rgba(255,255,255,.025) 1px,transparent 1px,transparent 6px);opacity:.28}.profile-panel>*{position:relative;z-index:1}.profile-panel h2{margin-top:.2rem}.profile-panel p{max-width:440px;margin-top:1.2rem;color:#b8b8b8;font-size:1rem}.terminal-list{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}.terminal-list li{position:relative;padding-left:1.05rem;color:var(--secondary)}.terminal-list li:before{position:absolute;left:0;color:var(--accent);content:"/"}.link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.link-card{display:grid;min-height:92px;align-content:center;padding:1rem;transition:border-color .16s ease,background .16s ease,transform .16s ease}.link-card span{color:var(--heading);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:1rem;background:#000000c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.image-viewer-backdrop{z-index:30;padding:0;overflow:hidden;background:#000000e6}.viewer-close,.viewer-nav{position:fixed;z-index:35;min-width:76px;min-height:44px;border:1px solid rgba(255,255,255,.18);color:#d8d8d8;background:#08080ab8;cursor:pointer;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:border-color .16s ease,color .16s ease,background .16s ease}.viewer-close{top:32px;right:32px}.viewer-prev{top:50%;left:32px;transform:translateY(-50%)}.viewer-next{top:50%;right:32px;transform:translateY(-50%)}.viewer-close:hover,.viewer-nav:hover{border-color:var(--accent-color, var(--accent));color:var(--heading);background:#121214db}.viewer-counter{position:fixed;top:32px;left:50%;z-index:35;transform:translate(-50%);color:var(--secondary);font-size:.8rem;font-weight:800;letter-spacing:.08em;text-align:center}.preview-modal{width:min(560px,100%);border:1px solid var(--accent-color, var(--border-strong));padding:1.25rem;background:#08080a;box-shadow:0 24px 80px #0000007a}.preview-modal p{margin-top:.9rem}.preview-modal .terminal-label{color:var(--room-text-color)}.preview-modal .cta-button{border-color:var(--accent-color);background:var(--accent-color);color:#f0f0f0}.modal-close{float:right;color:var(--accent);font-size:.76rem;font-weight:800}.site-footer{display:flex;align-items:center;justify-content:flex-start;margin-top:2rem;padding:2rem 0 2.6rem;border-top:1px solid var(--border)}.site-footer .text-link{color:#9a9a9a;font-size:.78rem;letter-spacing:.08em}@media(max-width:900px){h1{font-size:5rem}h2{font-size:2.15rem}.site-header{align-items:flex-start;flex-direction:column}.site-nav{justify-content:flex-start}.hero-grid{grid-template-columns:repeat(4,1fr)}.card-grid,.music-preview-grid,.music-grid,.room-gallery-grid,.link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){h1{font-size:3.3rem}h2{font-size:1.75rem}.scanline-text{background:repeating-linear-gradient(to bottom,#f0f0f0 0 3px,#bcbcb6 3px 4px,#eee 5px);-webkit-background-clip:text;background-clip:text}.site-header,.site-footer,.page-section,.hero-section{width:min(calc(100% - 28px),var(--max-width))}.site-header{min-height:auto}.nav-link{padding:.5rem .52rem;font-size:.72rem}.hero-section{min-height:640px;padding:6rem 0 3rem}.hero-grid{inset:3rem 0 1.5rem;gap:.45rem}.hero-grid span{min-height:58px}.page-section{padding:3rem 0}.page-top{padding-top:4rem}.section-header,.site-footer{align-items:flex-start;flex-direction:column}.card-grid,.music-preview-grid,.music-grid,.room-gallery-grid,.link-grid{grid-template-columns:1fr}.media-placeholder{min-height:190px}.image-modal-media{min-height:auto}.image-modal-media .media-placeholder{min-height:min(300px,70vh)}.video-modal-frame,.video-modal-gif{max-width:92vw;max-height:72vh}.media-viewer-video,.video-modal-gif{width:94vw;max-width:94vw;max-height:75vh}.viewer-close{top:18px;right:18px}.viewer-counter{top:20px}.viewer-prev,.viewer-next{top:auto;bottom:22px;transform:none}.viewer-prev{left:18px}.viewer-next{right:18px}.diary-card{grid-template-columns:1fr}.cta-button,.outline-button,.tab-button{width:100%}.button-row .outline-button{width:auto}}
