@font-face{font-family:Bungee;src:url('assets/font/bungee.ttf')}@property --neon{syntax:'<color>';inherits:true;initial-value:#82f7c6}
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#f6ebd8;background:#0c1216;color-scheme:dark;--mint:#83e7c3;--muted:#a8b6b9;--wood:url('assets/cabinet/walnut.webp');--neon:#82f7c6;animation:neon 45s linear infinite}
@keyframes neon{0%,100%{--neon:#82f7c6}20%{--neon:#63dfff}40%{--neon:#baa0ff}60%{--neon:#f39bdc}80%{--neon:#ffcd85}}
*{box-sizing:border-box}body{margin:0;min-width:300px;background:radial-gradient(ellipse at 50% -20%,#243b42 0,transparent 65%),#0c1216}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a{color:var(--mint)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b9fff2;outline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.15}h2{font-size:1.25rem}p{line-height:1.65}small,.muted{color:var(--muted)}.boot{min-height:80svh;display:grid;place-content:center;justify-items:center;gap:20px}.boot img{width:110px}.cabinet{max-width:1160px;margin:auto;border:12px solid #694022;border-image:var(--wood) 25 stretch;background:linear-gradient(90deg,#04090899,#131b1e66,#04090899),var(--wood);box-shadow:0 0 70px #000;min-height:100svh;position:relative;padding:12px}.cabinet::before{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #cf915a55}.home{height:100svh;min-height:620px;display:flex;flex-direction:column;gap:10px;overflow:hidden}.rack{height:84px;flex-shrink:0;display:flex;align-items:end;gap:10px;position:relative;background:radial-gradient(ellipse at 28% 0,#ffc86a36,transparent 25%),radial-gradient(ellipse at 77% 0,#ffc86a36,transparent 25%),#101b1a55}.rack:before,.rack:after{content:'';width:32px;height:6px;position:absolute;top:0;background:#fff0b3;border:3px solid #b07840;border-radius:50%;box-shadow:0 5px 18px #ffca6a99}.rack:before{left:27%}.rack:after{right:22%}.plaque,.panel,.gallery-heading{border:2px solid #a97b4e;border-radius:15px;background:linear-gradient(145deg,#1e3037,#111b25);box-shadow:inset 0 1px 0 #d4c1a830,0 3px 8px #0005;position:relative}.screws:before,.screws:after{content:'⊖';font-size:13px;line-height:1;color:#b38a56;position:absolute;top:4px;pointer-events:none}.screws:before{left:5px}.screws:after{right:5px}.counter{height:62px;min-width:104px;color:#fff1d8;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px}.counter strong{font-size:1.75rem}.counter svg{width:34px;height:30px}.cloud{height:62px;width:62px;flex-shrink:0;display:grid;place-items:center;color:#309cf0;padding:12px}.cloud svg{width:35px;height:35px}.cloud .check{position:absolute;right:6px;bottom:6px;color:var(--mint);font-size:19px;text-shadow:0 2px #102127}.cloud.syncing svg{animation:pulse 1s ease-in-out infinite alternate}@keyframes pulse{to{opacity:.3}}.rack-decor{height:78px;display:flex;align-items:end;justify-content:center;gap:5px;flex:1;min-width:0}.rack-decor img{object-fit:contain;object-position:bottom;max-width:25%;height:66px}.rack-decor .plant{width:138px;max-width:50%;height:73px}.brand-badge{height:62px;width:62px;padding:6px;flex-shrink:0}.brand-badge img{width:100%;height:100%;object-fit:contain}.shelf{height:20px;background:var(--wood) center/620px auto;border-top:2px solid #c17c3e55;box-shadow:0 8px 8px #0009;position:relative;flex-shrink:0}.shelf.led{margin-bottom:7px}.shelf.led:after{content:'';position:absolute;left:5%;right:5%;bottom:-4px;height:3px;background:var(--neon);box-shadow:0 0 5px var(--neon),0 0 16px var(--neon);border-top:1px solid #fff9}.home>.shelf{height:12px;margin-top:-10px}.neon-title{height:74px;flex-shrink:0;display:grid;place-items:center;background:radial-gradient(ellipse at center,#2c4b5022,transparent),#111d28}.neon-title h1{font-family:Bungee,monospace;font-size:clamp(36px,6vw,59px);letter-spacing:.04em;color:#142830;-webkit-text-stroke:1.3px var(--neon);text-shadow:0 0 7px var(--neon),0 0 22px var(--neon);line-height:1}.rail{display:flex;gap:14px;align-items:center;justify-content:space-between;background:var(--wood) center/650px auto;border:1px solid #c48c4360;border-radius:13px;padding:9px 14px;box-shadow:inset 0 1px #df9c5666}.arcade{border:1px solid #35291a;border-radius:12px;padding:10px 19px;color:#062523;background:linear-gradient(#b2fff0,#62d9b4 54%,#248d78);font-weight:800;box-shadow:0 4px 0 #0a3939,0 5px 0 2px #a57e4e,inset 0 2px 1px #fff9,inset 0 0 0 3px #d0fff155;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;transition:filter .15s,transform .15s}.arcade:hover{filter:brightness(1.12)}.arcade:active{transform:translateY(3px);box-shadow:0 1px 0 #0a3939,0 2px 0 2px #a57e4e}.arcade.amber{background:linear-gradient(#ffeab4,#ffd063 54%,#b47e24);color:#38250a}.arcade.dark{background:linear-gradient(#56717a,#25434d 54%,#152a34);color:#d7ede5}.arcade.danger{background:linear-gradient(#ffd4c9,#d46d63);color:#3c1715}.arcade.small{padding:6px 12px;font-size:.85rem;min-height:38px}.rail .arcade{min-width:170px}.home-tiles{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0;gap:20px;padding-top:2px}.home-tile-wrap{display:flex;flex-direction:column;min-height:0}.home-tile{display:block;position:relative;flex:1;min-height:0;border:3px solid #b78555;border-radius:18px;overflow:hidden;color:inherit;background:#0e2029;text-decoration:none;isolation:isolate}.home-tile>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .4s}.home-tile:hover>img{transform:scale(1.035)}.tile-caption{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:#111b281a;text-shadow:0 2px 5px #000,0 0 12px #000}.tile-caption strong{font-size:clamp(23px,2.7vw,34px);display:block;line-height:1.15;margin-bottom:5px}.tile-caption small{font-size:clamp(14px,1.6vw,18px);color:var(--mint);font-weight:700}.tile-arrow{font-size:38px;background:#132d36;box-shadow:0 0 0 1px #a98654;border-radius:10px;width:46px;line-height:52px;text-align:center;color:var(--mint)}.home-tile-wrap .shelf{height:14px;margin-top:6px}.bottom-display{display:flex;align-items:end;justify-content:space-around;gap:7px;height:76px;padding-top:8px;flex-shrink:0}.bottom-display img{height:65px;width:47px;object-fit:contain;object-position:bottom}.bottom-display .books{width:42px}.home>.bottom-shelf{height:14px;margin:0}.gallery{min-height:100svh;padding:20px;display:flex;flex-direction:column;gap:20px}.gallery-heading{display:flex;align-items:center;gap:20px;padding:18px 22px;position:sticky;top:0;z-index:5;background:#172735f2;backdrop-filter:blur(14px)}.gallery-heading .heading-copy{flex:1;min-width:0}.gallery-heading p{color:var(--mint);margin-top:6px;font-weight:600}.gallery-heading .system-logo{max-width:230px;max-height:46px;object-fit:contain;filter:brightness(0) invert(.9)}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.search{flex:1;min-width:180px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #667b83;border-radius:10px;background:#101c25;color:#f1ecdf;min-height:46px}input:focus,textarea:focus,select:focus{border-color:var(--mint);outline:2px solid #84edca22}input[type=checkbox]{width:18px;min-height:18px;accent-color:#79dbb7}textarea{resize:vertical;min-height:110px;line-height:1.6}label{display:block;font-size:.85rem;font-weight:650;color:#c7d5cf}label>input,label>select,label>textarea{margin-top:7px}label.checkline{display:flex;align-items:center;gap:10px;font-weight:400;font-size:.9rem}label.checkline>input{margin:0}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid #65757e;border-radius:9px;background:#172430;color:#d4ddd8;padding:9px 14px;font-size:.86rem;min-height:40px}.chip.active{background:#84dfc5;color:#122b2c;border-color:var(--mint);font-weight:750}.systems-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}.system-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;border:1px solid #a47a50;border-radius:16px;background:#172331;padding:15px;transition:transform .2s,border-color .2s}.system-card:hover{transform:translateY(-3px);border-color:var(--mint)}.system-art{height:128px;border-radius:10px;background:radial-gradient(ellipse at center,#3a495c,#152331);display:flex;align-items:center;justify-content:center;padding:10px;margin-bottom:14px}.system-art img{max-width:100%;height:100%;object-fit:contain}.system-art .brand-fallback{color:var(--mint);font-size:1.3rem;font-weight:750;text-align:center}.system-card h2{font-size:1rem;line-height:1.4;min-height:44px}.system-card p{font-weight:700;color:var(--mint);font-size:.9rem;margin-top:8px}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:20px}.game-card{color:inherit;text-decoration:none;background:#172331;border:1px solid #9a754b;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s}.game-card:hover{transform:translateY(-4px)}.game-cover{height:230px;background:linear-gradient(145deg,#2a3945,#101a24);display:grid;place-items:center;overflow:hidden}.game-cover img{height:100%;width:100%;object-fit:contain}.game-card .copy{padding:12px}.game-card h2{font-size:.95rem;line-height:1.35;margin-bottom:5px}.game-card small{font-size:.77rem}.empty{border:1px dashed #8d7759;border-radius:18px;padding:52px 25px;text-align:center;background:#101c27aa;display:grid;gap:14px;justify-items:center}.empty svg{width:62px;color:var(--mint)}.empty p{max-width:480px;color:var(--muted)}.panel{padding:24px}.stack{display:grid;gap:18px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-title h2{font-size:1.2rem}.section-title small{font-size:.8rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .wide{grid-column:1/-1}.editor{max-width:900px;width:100%;margin:auto}.form-photo{width:100%;height:240px;object-fit:contain;background:#101d28;border-radius:12px}.form-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.form-status{padding:12px 15px;border-radius:9px;background:#80ddbe15;border:1px solid #80ddbe55;line-height:1.5;color:#beeadd;font-size:.9rem}.form-status:empty{display:none}.candidates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.candidate{background:#1c303b;border:1px solid #687b7f;border-radius:12px;text-align:left;color:inherit;padding:12px;display:flex;align-items:center;gap:12px}.candidate img{width:58px;height:80px;object-fit:contain}.candidate h3{font-size:.95rem;margin-bottom:5px}.candidate small{font-size:.75rem}.candidate .badge{display:block;color:var(--mint);font-size:.75rem;margin-top:5px}.detail-grid{display:grid;grid-template-columns:minmax(240px,350px) 1fr;gap:28px}.detail-photo{width:100%;height:410px;object-fit:contain;background:#111d28;border-radius:18px;padding:12px;cursor:zoom-in}.detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.tag{border:1px solid #6c7162;border-radius:6px;padding:5px 9px;font-size:.77rem;color:#cce2d7}.description{white-space:pre-wrap;font-size:.95rem;line-height:1.8}.eyebrow{color:var(--mint);text-transform:uppercase;font-size:.75rem;letter-spacing:.14em;margin-bottom:12px;font-weight:800}.detail-grid h2{font-size:1.8rem}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.video-grid iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:10px;background:#0a141b}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.status-line{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #ffffff12}.status-line span:last-child{color:var(--mint)}.settings-grid p{font-size:.9rem;color:#b1c6c4;margin-bottom:16px}.settings-grid .actions{display:flex;flex-wrap:wrap;gap:12px}.settings-grid .panel:last-child{grid-column:1/-1}.settings-grid details{padding:13px 0}.settings-grid summary{cursor:pointer;font-weight:700;margin-bottom:12px}.settings-grid .form-grid{gap:12px}.info-list{display:grid;gap:10px}.login{max-width:450px;margin:10vh auto;padding:30px;display:grid;gap:20px}.login img{width:85px;margin:auto}.login h1{text-align:center}.login .neon-title{border:0;height:64px}.login label{font-size:.9rem}.intro{position:fixed;inset:0;z-index:30;background:#03060f;display:grid;place-items:center}.intro video{width:100%;height:100%;object-fit:contain}.intro-controls{position:absolute;top:max(18px,env(safe-area-inset-top));left:20px;right:20px;display:flex;justify-content:space-between}.intro-tip{position:absolute;bottom:8%;color:#d4e5e1;font-size:.85rem}.credits{white-space:pre-wrap;font-size:.8rem;line-height:1.6;max-height:60svh;overflow:auto}.credits a{overflow-wrap:anywhere}dialog{background:#162832;color:#f4ecdb;border:2px solid #b08755;border-radius:17px;padding:27px;max-width:min(90vw,650px);max-height:90svh;box-shadow:0 15px 100px #000a}dialog::backdrop{background:#02090ddd;backdrop-filter:blur(5px)}dialog h2{margin-bottom:16px}dialog p{margin-bottom:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}.photo-dialog{max-width:100vw;width:100vw;height:100svh;max-height:100svh;border:0;border-radius:0;padding:0;background:#000;overflow:hidden}.photo-dialog img{height:100%;width:100%;object-fit:contain;cursor:zoom-out}.photo-dialog .photo-close{position:absolute;top:max(18px,env(safe-area-inset-top));right:18px;z-index:2}.camera{max-width:100%;border-radius:12px;max-height:60svh}.privacy{font-size:.77rem;color:#9fb4b3;margin-top:20px}#notices{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:100;pointer-events:none;max-width:min(90vw,650px)}.toast{background:#1c3942;border:1px solid #85c9b1;border-radius:12px;padding:13px 20px;box-shadow:0 5px 25px #000a;color:#eefcf3;font-size:.9rem;margin-top:8px}.toast.error{border-color:#d88a79;background:#442d31}.progress{height:6px;border-radius:3px;background:#0d1e27;overflow:hidden}.progress>span{display:block;height:100%;background:var(--mint);transition:width .2s}.back-link{flex-shrink:0}.busy-overlay{pointer-events:none}.desktop-note{font-size:.76rem;color:#789c9c;text-align:center;padding:10px}.offline-label{color:#ffca80;font-size:.8rem}.link-button{border:0;background:transparent;color:var(--mint);text-decoration:underline;padding:8px}.hidden{display:none!important}
@media(min-width:1400px){.cabinet{border-width:16px}.home{height:calc(100svh - 40px);min-height:660px;margin:20px auto;border-radius:12px;overflow:hidden}.home .rack{height:88px}.home .bottom-display{height:85px}.home .bottom-display img{height:74px;width:56px}.home .bottom-display .books{width:42px}}
@media(max-width:700px){.cabinet{border-width:8px;padding:9px}.home{gap:7px;min-height:580px}.rack{height:64px;gap:5px}.counter{height:48px;min-width:78px;padding:6px 9px;gap:5px}.counter strong{font-size:1.4rem}.counter svg{width:27px}.cloud{height:48px;width:48px;padding:9px}.cloud svg{width:30px;height:30px}.brand-badge{height:48px;width:48px;padding:4px}.rack-decor{height:61px;gap:3px}.rack-decor img{height:49px;max-width:23%}.rack-decor .plant{height:55px;width:88px;max-width:54%}.neon-title{height:62px}.neon-title h1{font-size:clamp(30px,8.5vw,45px)}.rail{padding:8px 10px;gap:10px}.rail .arcade{min-width:0;font-size:1rem;padding:9px 14px}.home-tiles{grid-template-columns:1fr;grid-template-rows:1fr 1fr;gap:10px}.home-tile>img{object-position:center 52%}.tile-caption{padding:10px 12px}.tile-caption strong{font-size:25px}.tile-caption small{font-size:14px}.tile-arrow{font-size:32px;width:40px;line-height:43px}.home-tile-wrap .shelf{height:12px;margin-top:3px}.bottom-display{height:61px;padding-top:3px;gap:3px}.bottom-display img{height:54px;width:34px}.bottom-display .books{width:26px}.home>.bottom-shelf{height:12px}.gallery{padding:10px;gap:15px}.gallery-heading{padding:14px 12px;gap:14px;border-radius:12px}.gallery-heading h1{font-size:1.4rem}.gallery-heading p{font-size:.78rem}.gallery-heading .system-logo{max-width:145px;max-height:34px}.back-link{padding:8px 11px;font-size:.85rem}.systems-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.system-card{padding:11px}.system-art{height:105px;padding:7px}.system-card h2{font-size:.88rem}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.game-cover{height:225px}.game-card .copy{padding:10px}.detail-grid{grid-template-columns:1fr;gap:20px}.detail-photo{height:320px}.detail-grid h2{font-size:1.5rem}.panel{padding:18px}.settings-grid{grid-template-columns:1fr;gap:16px}.settings-grid .panel:last-child{grid-column:auto}.form-grid{grid-template-columns:1fr;gap:16px}.form-grid .wide{grid-column:auto}.candidates{grid-template-columns:1fr}.video-grid{grid-template-columns:1fr}.form-actions .arcade{flex:1}.toolbar{gap:10px}.toolbar .arcade{font-size:.8rem;padding:8px 10px}.chips{gap:6px}.chip{font-size:.78rem;padding:8px 10px}.login{margin:5vh 15px;padding:24px}dialog{padding:22px}.intro-controls{left:12px;right:12px}}
@media(max-height:720px) and (max-width:700px){.home{min-height:520px;gap:5px}.rack{height:55px}.rack-decor{height:51px}.rack-decor img{height:44px}.rack-decor .plant{height:48px}.neon-title{height:53px}.rail .arcade{min-height:38px;padding:6px 12px}.bottom-display{height:50px}.bottom-display img{height:45px}.tile-caption strong{font-size:22px}.tile-caption small{font-size:12px}.home-tile-wrap .shelf{height:10px}}
@media(prefers-reduced-motion:reduce){:root{animation:none}.cloud.syncing svg{animation:none}.game-card,.home-tile>img,.system-card{transition:none}}
