:root{--bamboo-light: #d4b896;--bamboo-mid: #b89b78;--bamboo-dark: #8b7355;--bamboo-shadow: #5c4a3a;--lcd-bg: #c8d4a8;--lcd-dark: #a8b888;--lcd-text: #2a3a1a;--lcd-highlight: #6a8a5a;--stone-light: #e8e0d0;--stone-mid: #d0c8b8;--stone-dark: #b8b0a0;--washi: #f5f1eb;--washi-dark: #e8e2d8;--ink: #1a1714;--ink-wash: #6b6560;--vermillion: #c73e1d;--font-display: "Shippori Mincho", serif;--font-body: "Zen Kaku Gothic New", sans-serif;--lcd-highlight-end: #5a7a4a;--accent-r: 106;--accent-g: 138;--accent-b: 90;--wheel-glow: rgba(106, 138, 90, .3);--accent-fill: #6a8a5a;--accent-fill-light: #8aaa7a;--accent-fill-bright: rgba(160, 200, 140, .9);--volume-bg: rgba(42, 58, 26, .95);--volume-bg-end: rgba(32, 48, 20, .95);--volume-text: #c8d4a8}:root[data-theme=dark]{--bamboo-light: #3a3a38;--bamboo-mid: #2c2c2a;--bamboo-dark: #1e1e1c;--bamboo-shadow: #121210;--lcd-bg: #1a1a18;--lcd-dark: #141412;--lcd-text: #e0e0d8;--lcd-highlight: #6a8a5a;--lcd-highlight-end: #5a7a4a;--stone-light: #484848;--stone-mid: #383838;--stone-dark: #282828;--washi: #0e0e0e;--washi-dark: #080808;--ink: #e0e0d8;--ink-wash: #9a9a90;--vermillion: #c73e1d}:root[data-theme=light]{--bamboo-light: #e8ddd0;--bamboo-mid: #d4c8b8;--bamboo-dark: #c0b4a4;--bamboo-shadow: #a09488;--lcd-bg: #f5f5f0;--lcd-dark: #e8e8e0;--lcd-text: #2a2a2a;--lcd-highlight: #5a8a5a;--lcd-highlight-end: #4a7a4a;--stone-light: #f0ece4;--stone-mid: #e0dcd4;--stone-dark: #d0ccc4;--washi: #faf8f4;--washi-dark: #f0ece4;--ink: #2a2a2a;--ink-wash: #6a6a6a;--vermillion: #c73e1d}:root[data-theme=midnight]{--bamboo-light: #344a6a;--bamboo-mid: #283c58;--bamboo-dark: #1e3048;--bamboo-shadow: #142438;--lcd-bg: #162440;--lcd-dark: #102038;--lcd-text: #c8ddf0;--lcd-highlight: #38a8f0;--lcd-highlight-end: #2888cc;--stone-light: #3a5070;--stone-mid: #2e4260;--stone-dark: #223450;--washi: #0e1828;--washi-dark: #0a1420;--ink: #c8ddf0;--ink-wash: #8aa8c8;--vermillion: #ff6a3a;--wheel-glow: rgba(56, 168, 240, .4);--accent-r: 56;--accent-g: 168;--accent-b: 240;--accent-fill: #38a8f0;--accent-fill-light: #60c0ff;--accent-fill-bright: rgba(100, 200, 255, .9);--volume-bg: rgba(20, 36, 56, .95);--volume-bg-end: rgba(14, 28, 48, .95);--volume-text: #a0c8e8}:root[data-theme=sakura]{--bamboo-light: #e8c8d0;--bamboo-mid: #d4a8b4;--bamboo-dark: #b8889a;--bamboo-shadow: #906878;--lcd-bg: #fce8ee;--lcd-dark: #f0d0da;--lcd-text: #4a2030;--lcd-highlight: #d85888;--lcd-highlight-end: #b84070;--stone-light: #f0d8e0;--stone-mid: #e4c8d0;--stone-dark: #d4b0c0;--washi: #fdf0f4;--washi-dark: #f4e0e8;--ink: #4a2030;--ink-wash: #8a6070;--vermillion: #d85888;--wheel-glow: rgba(216, 88, 136, .4);--accent-r: 216;--accent-g: 88;--accent-b: 136;--accent-fill: #d85888;--accent-fill-light: #e880a8;--accent-fill-bright: rgba(240, 140, 180, .9);--volume-bg: rgba(60, 20, 36, .95);--volume-bg-end: rgba(48, 14, 28, .95);--volume-text: #f0d0da}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden;touch-action:manipulation}*{touch-action:manipulation;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-body);background:var(--washi);color:var(--ink);display:flex;align-items:center;justify-content:center}.atmosphere{position:fixed;inset:0;pointer-events:none;overflow:hidden;background:linear-gradient(175deg,var(--washi) 0%,var(--washi-dark) 50%,var(--washi) 100%);transition:background .3s ease}.washi-texture{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.5' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='0.08'/%3E%3C/svg%3E");opacity:1}.bamboo-art{position:absolute;top:0;height:100%;width:200px}.bamboo-art.left{left:0}.bamboo-art.right{right:0}.scroll-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(139,119,90,.15) 100%),linear-gradient(180deg,rgba(139,119,90,.08) 0%,transparent 15%,transparent 85%,rgba(139,119,90,.1) 100%);pointer-events:none}@media(max-width:500px){.bamboo-art{width:100px}}.device-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:8px}.bamboo-device{position:relative;width:100%;height:100%;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);background:linear-gradient(165deg,var(--bamboo-light) 0%,var(--bamboo-mid) 20%,var(--bamboo-dark) 50%,var(--bamboo-mid) 80%,var(--bamboo-light) 100%);border-radius:28px;padding:14px;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d,0 5px 15px #0003,inset 0 2px #ffffff40,inset 0 -2px #00000026,inset 3px 0 8px #0000001a,inset -3px 0 8px #0000001a;z-index:100}.wood-grain{position:absolute;inset:0;pointer-events:none;opacity:.5;border-radius:28px;background-image:repeating-linear-gradient(92deg,transparent 0px,transparent 3px,rgba(92,74,58,.12) 3px,rgba(92,74,58,.12) 5px,transparent 5px,transparent 12px),repeating-linear-gradient(88deg,transparent 0px,transparent 30px,rgba(139,115,85,.08) 30px,rgba(139,115,85,.08) 31px)}.wood-edge{position:absolute;top:30px;bottom:30px;width:4px;background:linear-gradient(180deg,#ffffff1a,#0000001a,#ffffff0d)}.wood-edge.left{left:0}.wood-edge.right{right:0}.hardware-top{display:flex;justify-content:space-between;align-items:center;padding:0 15px;margin-bottom:8px;flex-shrink:0}.headphone-jack{width:12px;height:12px;background:radial-gradient(circle,#1a1a1a 40%,#3a3a3a);border-radius:50%;box-shadow:inset 0 1px 2px #000c}.hold-switch{width:32px;height:10px;background:linear-gradient(180deg,#8a7a6a,#6a5a4a);border-radius:5px;padding:2px}.switch-groove{width:12px;height:100%;background:#4a3a2a;border-radius:3px;margin-left:auto}.brand-carving{text-align:center;margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0}.brand-kanji{font-family:var(--font-display);font-size:1.1rem;color:#5c4a3a99;text-shadow:0 1px 0 rgba(255,255,255,.3)}.brand-text{font-size:.65rem;letter-spacing:.3em;color:#5c4a3a80;text-shadow:0 1px 0 rgba(255,255,255,.3)}.hardware-bottom{display:flex;justify-content:center;margin-top:10px;flex-shrink:0}.dock-connector{width:70px;height:10px;background:linear-gradient(180deg,#5a4a3a,#3a2a1a);border-radius:2px 2px 5px 5px;padding:2px 4px}.connector-pins{width:100%;height:100%;background:repeating-linear-gradient(90deg,#8a7a5a 0px,#8a7a5a 2px,transparent 2px,transparent 4px);border-radius:1px}.footer-carving{text-align:center;margin-top:6px;flex-shrink:0}.carving-text{font-family:var(--font-display);font-size:.6rem;letter-spacing:.15em;color:#5c4a3a80;text-shadow:0 1px 0 rgba(255,255,255,.2)}.screen-assembly{flex:1;min-height:0;display:flex;flex-direction:column}.screen-bezel{flex:1;min-height:0;background:linear-gradient(180deg,#2a2520,#1a1714);border-radius:12px;padding:10px;position:relative;box-shadow:inset 0 2px 4px #00000080,0 1px #ffffff1a}.bezel-screw{position:absolute;width:6px;height:6px;background:radial-gradient(circle at 30% 30%,#555,#222);border-radius:50%;box-shadow:inset 0 1px 1px #00000080}.bezel-screw:after{content:"+";font-size:5px;color:#333;display:flex;align-items:center;justify-content:center;height:100%}.bezel-screw.tl{top:4px;left:4px}.bezel-screw.tr{top:4px;right:4px}.bezel-screw.bl{bottom:4px;left:4px}.bezel-screw.br{bottom:4px;right:4px}.lcd-screen{width:100%;height:100%;background:linear-gradient(180deg,var(--lcd-bg) 0%,var(--lcd-dark) 100%);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;box-shadow:inset 0 1px 3px #0003}.lcd-screen:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0px,transparent 1px,rgba(0,0,0,.03) 1px,rgba(0,0,0,.03) 2px),repeating-linear-gradient(90deg,transparent 0px,transparent 1px,rgba(0,0,0,.02) 1px,rgba(0,0,0,.02) 2px);pointer-events:none;z-index:50;border-radius:6px}.status-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:linear-gradient(180deg,var(--lcd-highlight),var(--lcd-highlight-end));border-bottom:1px solid var(--lcd-highlight-end);font-size:.75rem;flex-shrink:0;transition:background .3s ease}.status-os{font-size:.65rem;font-weight:500;color:#fff;opacity:.8;letter-spacing:.05em}.status-title{font-family:var(--font-display);font-weight:600;color:#fff;letter-spacing:.05em;font-size:.85rem}.status-right{display:flex;align-items:center;gap:8px}.status-time{font-size:.7rem;color:#fff;opacity:.9}.battery{width:22px;height:10px;border:1px solid rgba(255,255,255,.8);border-radius:2px;padding:1px;position:relative}.battery:after{content:"";position:absolute;right:-4px;top:2px;width:2px;height:5px;background:#fffc;border-radius:0 1px 1px 0}.battery-fill{width:80%;height:100%;background:#fff;border-radius:1px}.screen-content{flex:1;min-height:0;position:relative;overflow:hidden}.view{position:absolute;inset:0;display:none;flex-direction:column;overflow:hidden;animation:slideIn .2s ease-out}.view.active{display:flex}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.view-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(180deg,rgba(0,0,0,.05),transparent);border-bottom:1px solid rgba(0,0,0,.1);flex-shrink:0}.view-header.with-art{padding:12px 14px;gap:12px}.header-kanji{font-family:var(--font-display);font-size:1rem;color:#5a4a3a}.header-title{font-size:.85rem;font-weight:600;color:var(--lcd-text);text-transform:uppercase;letter-spacing:.08em}.header-subtitle{font-size:.7rem;color:#5a6a4a}.header-info{display:flex;flex-direction:column;gap:2px}.header-album-art{width:48px;height:48px;background:#666;border-radius:4px;background-size:cover;background-position:center;box-shadow:0 2px 6px #00000040}.menu-list{list-style:none;flex:1;overflow-y:auto;padding:4px 0}.menu-list.scrollable{-webkit-overflow-scrolling:touch}.menu-item{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;transition:background .1s ease;color:var(--lcd-text);font-size:.95rem;border-bottom:1px solid rgba(0,0,0,.05)}.menu-item:last-child{border-bottom:none}.menu-item.selected{background:linear-gradient(180deg,var(--lcd-highlight),var(--lcd-highlight-end));color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.3)}.menu-item[data-disabled=true]{opacity:.45}.item-icon{font-size:.85rem;width:20px;text-align:center;opacity:.7}.item-kanji{font-family:var(--font-display);font-size:.8rem;opacity:.6;min-width:24px}.menu-item.selected .item-kanji,.menu-item.selected .item-icon{opacity:.9}.item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-arrow{font-size:.9rem;opacity:.5}.item-meta{font-size:.7rem;opacity:.5;font-style:italic}.menu-item.selected .item-arrow,.menu-item.selected .item-meta{opacity:.8}.theme-check{font-style:normal!important;font-weight:700;opacity:.9!important;color:var(--lcd-highlight);min-width:16px;text-align:right}.menu-item.selected .theme-check{color:#fff}.track-num{font-family:Courier New,monospace;font-size:.75rem;opacity:.5;min-width:20px}.track-duration{font-size:.75rem;opacity:.6}.now-playing{display:flex;flex-direction:column;align-items:center;padding:16px;height:100%;gap:12px}.np-artwork{position:relative;flex-shrink:0}.artwork-frame{width:140px;height:140px;background:linear-gradient(145deg,#7a6a5a,#5a4a3a);border-radius:8px;padding:5px;box-shadow:0 6px 20px #00000059,inset 0 1px #fff3;overflow:hidden;position:relative}.artwork-frame img{width:100%;height:100%;object-fit:cover;border-radius:4px}.artwork-shine{position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.3) 0%,transparent 50%);pointer-events:none;border-radius:4px}.artwork-shadow{position:absolute;bottom:-10px;left:10%;right:10%;height:20px;background:radial-gradient(ellipse,rgba(0,0,0,.35),transparent);filter:blur(5px)}.np-info{text-align:center;width:100%;flex-shrink:0}.np-title{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--lcd-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.np-artist{font-size:.85rem;color:#4a5a3a;margin-bottom:2px}.np-album{font-size:.75rem;color:#6a7a5a;font-style:italic}.np-progress{display:flex;align-items:center;gap:10px;width:100%;padding:0 8px;flex-shrink:0}.np-progress .time{font-family:Courier New,monospace;font-size:.7rem;color:var(--lcd-text);min-width:32px}.np-progress .time:last-child{text-align:right}.progress-bar{flex:1;height:10px;background:#00000026;border-radius:5px;position:relative;cursor:pointer}.progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#5a7a4a,#7a9a6a);border-radius:5px;transition:width .1s linear}.progress-diamond{position:absolute;top:50%;left:0%;transform:translate(-50%,-50%) rotate(45deg);width:10px;height:10px;background:linear-gradient(135deg,#8a9a6a,#6a7a5a);box-shadow:0 1px 4px #00000059;transition:left .1s linear}.np-controls{display:flex;gap:24px;opacity:.4;font-size:.9rem;flex-shrink:0}.control-icon{cursor:pointer;transition:opacity .2s}.control-icon:hover{opacity:.8}.control-icon.active{opacity:1}.scroll-content{flex:1;overflow-y:auto;padding:12px 14px;-webkit-overflow-scrolling:touch}.content-section{margin-bottom:16px}.section-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(0,0,0,.1)}.section-kanji{font-family:var(--font-display);font-size:1rem;color:#6a5a4a}.section-title{font-size:.8rem;font-weight:600;color:var(--lcd-text);text-transform:uppercase;letter-spacing:.08em}.content-text{font-size:.85rem;line-height:1.7;color:var(--lcd-text);margin-bottom:10px}.content-text strong{color:#3a4a2a}.content-text em{color:#5a4a3a}.content-text.quote{font-family:var(--font-display);font-style:italic;color:#5a6a4a;border-left:2px solid #8a9a6a;padding-left:12px;margin-top:12px}.spotify-embed-container{flex:1;padding:8px;overflow:hidden}.spotify-embed-container iframe{width:100%;height:100%;min-height:200px;border-radius:8px}.artwork-grid{flex:1 1 0;min-height:0;display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:auto;gap:10px;padding:10px;overflow-y:auto;-webkit-overflow-scrolling:touch;align-content:start}.artwork-card{position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;cursor:pointer;transition:all .2s ease;box-shadow:0 3px 10px #00000040;border:3px solid transparent;opacity:.7}.artwork-card:hover{opacity:.85}.artwork-card.selected{border-color:#7aff7a;box-shadow:0 0 0 2px #7aff7a4d,0 0 20px #7aff7a80,0 4px 20px #0006;transform:scale(1.05);opacity:1;z-index:10}.artwork-card .cover{position:absolute;inset:0;background-size:cover;background-position:center;background-color:#555;background-repeat:no-repeat}.artwork-card .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.2) 40%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:8px;transition:background .2s ease}.artwork-card.selected .overlay{background:linear-gradient(to top,rgba(60,100,60,.9) 0%,rgba(60,100,60,.3) 40%,transparent 60%)}.artwork-card .title{font-family:var(--font-display);font-size:.75rem;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8);line-height:1.2}.artwork-card.selected .title{color:#afa}.artwork-card .year{font-size:.6rem;color:#ffffffb3;margin-top:2px}.artwork-card .play-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:40px;height:40px;background:#7aff7a;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#1a3a1a;font-size:16px;font-weight:700;transition:transform .2s ease;box-shadow:0 3px 15px #7aff7a99}.artwork-card.selected .play-badge{transform:translate(-50%,-50%) scale(1)}.view-header.compact{padding:8px 12px;min-height:auto;overflow:hidden}.view-header.with-art{display:flex;gap:12px;padding:10px 12px;align-items:center;background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,transparent 100%)}.album-detail-art{width:70px;height:70px;border-radius:6px;background-size:cover;background-position:center;background-color:#555;box-shadow:0 3px 10px #0000004d;flex-shrink:0}.album-detail-info{flex:1;display:flex;flex-direction:column;gap:4px}.detail-title{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--lcd-text);line-height:1.2}.detail-meta{font-size:.75rem;color:#5a6a4a}#albumDetailScroll{flex:1;overflow-y:auto;padding:12px;-webkit-overflow-scrolling:touch}.detail-section{margin-bottom:16px}.detail-section-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#6a7a5a;margin-bottom:6px;font-weight:600}.detail-section p{font-size:.8rem;line-height:1.6;color:var(--lcd-text);margin:0}.detail-tracklist{list-style:none;padding:0;margin:0}.detail-tracklist li{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid rgba(0,0,0,.08);font-size:.8rem;color:var(--lcd-text)}.detail-tracklist li:last-child{border-bottom:none}.track-num{font-size:.7rem;color:#7a8a6a;width:20px;text-align:right}.fun-fact-box{background:rgba(var(--accent-r),var(--accent-g),var(--accent-b),.1);padding:10px 12px;border-radius:6px;border-left:3px solid var(--accent-fill)}.fun-fact-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#5a7a4a;display:block;margin-bottom:6px;font-weight:600}.fun-fact-text{font-size:.78rem;line-height:1.5;color:var(--lcd-text);font-style:italic}.play-album-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;background:linear-gradient(180deg,#6a9a5a,#4a7a3a);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;margin-top:12px;text-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 3px 10px #00000040;text-decoration:none}.play-album-btn:hover{background:linear-gradient(180deg,#7aaa6a,#5a8a4a)}.album-detail-section p{font-size:.85rem;line-height:1.6;color:var(--lcd-text)}.album-detail-section .fun-fact{background:#0000000d;padding:10px 12px;border-radius:4px;border-left:3px solid #8a9a6a}.album-detail-section .fun-fact-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#6a7a5a;display:block;margin-bottom:4px}.play-album-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;background:linear-gradient(180deg,var(--lcd-highlight),#5a7a4a);color:#fff;border:none;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;margin-top:10px;text-shadow:0 1px 1px rgba(0,0,0,.3);box-shadow:0 2px 6px #0003}.play-album-btn:hover{background:linear-gradient(180deg,#7a9a6a,var(--lcd-highlight))}.free-downloads-content{padding:12px}.free-desc{font-size:.75rem;color:var(--lcd-text-dim);line-height:1.5;margin-bottom:12px;padding:10px;background:#0000001a;border-radius:6px;border-left:3px solid var(--lcd-highlight)}.download-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#ffffff0d;border-radius:6px;margin-bottom:8px}.download-item .item-info{flex:1}.download-item .item-title{font-size:.85rem;font-weight:500;color:var(--lcd-text)}.download-item .item-size{font-size:.7rem;color:var(--lcd-text-dim)}.download-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;background:linear-gradient(180deg,var(--lcd-highlight),#5a7a4a);color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;text-decoration:none}.download-btn:hover{background:linear-gradient(180deg,#7a9a6a,var(--lcd-highlight))}.placeholder-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px}.placeholder-icon{font-size:3rem;opacity:.3}.placeholder-text{font-family:var(--font-display);font-size:1.1rem;color:var(--lcd-text)}.placeholder-sub{font-size:.8rem;color:#6a7a5a}.game-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:8px;background:var(--lcd-bg);position:relative}.game-header{display:flex;justify-content:space-between;width:100%;padding:4px 8px;font-family:var(--font-body);font-size:.75rem;color:var(--lcd-text);font-weight:600}.snake-fullscreen{padding:0!important;position:relative;overflow:hidden}.snake-fullscreen canvas{display:block;width:100%;height:100%;background:#0a0a1a;image-rendering:pixelated}.snake-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1aeb;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,140,255,.3);color:#e0e0e0}.brick-fullscreen{padding:0!important;position:relative;overflow:hidden}.brick-fullscreen canvas{display:block;width:100%;height:100%}#brickCanvas{background:#a8b888;image-rendering:pixelated}.brick-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1ae6;color:#fff;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,130,200,.4)}.game-canvas-wrapper{display:flex;align-items:center;justify-content:center;gap:4px}.control-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 2px;color:var(--lcd-text);opacity:.7;font-size:.65rem;font-family:var(--font-body)}.control-arrow{font-size:1.2rem;font-weight:700;animation:pulse 1.5s ease-in-out infinite}.control-label{font-size:.55rem;margin-top:2px;opacity:.8}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.tetris-fullscreen{padding:0!important;position:relative;overflow:hidden}.tetris-fullscreen canvas{display:block;width:100%;height:100%;background:#0a0a1a;image-rendering:pixelated}.tetris-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1aeb;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,140,255,.3);color:#e0e0e0}.gems-fullscreen{padding:0!important;position:relative;overflow:hidden}.gems-fullscreen canvas{display:block;width:100%;height:100%;background:#0a0a1a;image-rendering:pixelated}.gems-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1ee6;color:#fff;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,140,255,.4)}.bj-fullscreen{padding:0!important;position:relative;overflow:hidden;align-items:stretch!important}.bj-fullscreen canvas{display:block;width:100%!important;height:100%!important;max-width:none!important;border:none!important}.bj-fullscreen .game-instructions{position:absolute;bottom:25%;left:0;right:0;z-index:2;background:#a8b888eb;padding:12px;margin:0 20px;border-radius:6px;border:1px solid var(--lcd-text)}.flappy-fullscreen{padding:0!important;position:relative;overflow:hidden;align-items:stretch!important}.flappy-fullscreen canvas{display:block;width:100%!important;height:100%!important;max-width:none!important;border:none!important;image-rendering:pixelated}.flappy-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1aeb;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,140,255,.3);color:#e0e0e0;font-family:var(--font-body);font-size:.7rem;text-align:center}.hopper-fullscreen{padding:0!important;position:relative;overflow:hidden}.hopper-fullscreen canvas{display:block;width:100%;height:100%;background:#0a0a1a;image-rendering:pixelated}.hopper-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1aeb;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,140,255,.3);color:#e0e0e0;font-family:var(--font-body);font-size:.7rem;text-align:center}.mines-fullscreen{padding:0!important;position:relative;overflow:hidden}.mines-fullscreen canvas{display:block;width:100%;height:100%;background:#0a0a1a;image-rendering:pixelated}.mines-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1aeb;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,140,255,.3);color:#e0e0e0;opacity:.7}.doodle-container{padding:4px!important}.doodle-header{display:flex;justify-content:space-between;width:100%;padding:4px 8px;font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--lcd-text)}.doodle-fullscreen{padding:0!important;position:relative;overflow:hidden;align-items:stretch!important}.doodle-fullscreen canvas{display:block;width:100%!important;height:100%!important;max-width:none!important;border:none!important;image-rendering:pixelated}.doodle-fullscreen .game-instructions{position:absolute;bottom:30%;left:0;right:0;z-index:2;background:#0a0a1ee6;color:#fff;padding:12px;margin:0 20px;border-radius:6px;border:1px solid rgba(100,200,140,.4)}.jam-container{padding:2px!important;background:linear-gradient(180deg,#1a1a2e,#16213e,#0f3460)}.jam-header{display:flex;justify-content:space-between;width:100%;padding:4px 8px;font-family:var(--font-body);font-size:.7rem;font-weight:600;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.5)}.jam-streak{opacity:0;transition:opacity .2s}.jam-streak.active{opacity:1;animation:pulse .5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}#jamCanvas{background:linear-gradient(180deg,#1a1a2e,#16213e);border:2px solid #4a9fff;border-radius:4px;box-shadow:0 0 20px #4a9fff4d,inset 0 0 30px #00000080}.jam-controls{padding:4px;font-family:var(--font-body);font-size:.55rem;color:#8af;opacity:.9;text-align:center}.jam-results-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:20px;text-align:center;font-family:var(--font-body);color:var(--lcd-text)}.jam-results-title{font-size:1.1rem;font-weight:700;margin-bottom:10px}.jam-stars{font-size:1.5rem;margin-bottom:15px;letter-spacing:4px}.jam-stats{display:flex;flex-direction:column;gap:6px;margin-bottom:15px}.jam-stat{font-size:.75rem}.jam-results-hint{font-size:.6rem;opacity:.7}.chess-fullscreen{padding:0!important;position:relative;overflow:hidden;align-items:stretch!important}.chess-fullscreen canvas{display:block;width:100%!important;height:100%!important;max-width:none!important;border:none!important}.chess-fullscreen .game-instructions{position:absolute;bottom:25%;left:0;right:0;z-index:2;background:#a8b888eb;padding:12px;margin:0 20px;border-radius:6px;border:1px solid var(--lcd-text)}#blackjackCanvas{background:#4a6a3a}.game-instructions{display:flex;flex-direction:column;align-items:center;padding:8px;font-family:var(--font-body);font-size:.7rem;color:var(--lcd-text);opacity:.8}.game-instructions.hidden{display:none}.game-instructions .quit-hint{margin-top:4px;font-size:.6rem;opacity:.6}.game-quit-hint{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-family:var(--font-body);font-size:.55rem;color:var(--lcd-text);opacity:.5}.scores-list{padding:8px 12px;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.score-entry{display:flex;align-items:center;padding:8px 4px;font-family:var(--font-body);font-size:.85rem;color:var(--lcd-text);border-bottom:1px solid var(--lcd-dark)}.score-rank{width:24px;font-weight:600}.score-game{flex:1}.score-value{font-weight:700;color:var(--lcd-highlight)}.video-entry{margin-bottom:16px}.video-title{font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--lcd-text);padding:4px 0 6px}.video-embed{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:4px;background:#000}.video-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-radius:4px}.wheel-assembly{padding:12px 0;display:flex;justify-content:center;flex-shrink:0}.click-wheel{width:180px;height:180px;position:relative}.wheel-ring{width:100%;height:100%;background:var(--stone-mid);border-radius:50%;position:relative;box-shadow:0 8px 25px #00000059}.ring-texture{display:none}.wheel-btn{position:absolute;background:transparent;border:none;color:var(--ink-wash);font-size:.7rem;font-family:var(--font-body);font-weight:600;cursor:pointer;padding:12px;transition:all .1s ease;letter-spacing:.05em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;z-index:15}.wheel-btn:hover{color:var(--ink)}.wheel-btn:active{transform:scale(.92)}.wheel-btn.menu{top:10px;left:50%;transform:translate(-50%)}.wheel-btn.prev{left:10px;top:50%;transform:translateY(-50%)}.wheel-btn.next{right:10px;top:50%;transform:translateY(-50%)}.wheel-btn.play{bottom:10px;left:50%;transform:translate(-50%);font-size:.6rem}.wheel-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;background:linear-gradient(145deg,var(--stone-light) 0%,var(--stone-mid) 50%,var(--stone-dark) 100%);border:none;border-radius:50%;cursor:pointer;box-shadow:0 4px 15px #00000047,inset 0 2px 4px #ffffff4d,inset 0 -2px 4px #0000001a;transition:all .1s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}.wheel-center:hover{filter:brightness(1.1)}.wheel-center:active{transform:translate(-50%,-50%) scale(.94);box-shadow:0 2px 8px #00000040,inset 0 1px 2px #fffc}.center-surface{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.center-kanji{font-family:var(--font-display);font-size:1.4rem;color:#6a5a4a;text-shadow:0 1px 0 rgba(255,255,255,.5)}.scroll-wheel-overlay{position:absolute;inset:0;border-radius:50%;pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:10}.scroll-wheel-overlay.active{opacity:1}.scroll-wheel-overlay .scroll-indicator{position:absolute;inset:4px;border-radius:50%;border:2px solid rgba(var(--accent-r),var(--accent-g),var(--accent-b),.45);background:rgba(var(--accent-r),var(--accent-g),var(--accent-b),.1)}.scroll-arc{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.scroll-arc .arc-track{fill:none;stroke:rgba(var(--accent-r),var(--accent-g),var(--accent-b),.2);stroke-width:8}.scroll-dot{position:absolute;width:28px;height:28px;border-radius:50%;background:rgba(var(--accent-r),var(--accent-g),var(--accent-b),.75);box-shadow:0 0 14px rgba(var(--accent-r),var(--accent-g),var(--accent-b),.8),0 0 28px rgba(var(--accent-r),var(--accent-g),var(--accent-b),.4);pointer-events:none;transform:translate(-50%,-50%);opacity:0;transition:opacity .15s ease;z-index:11}.scroll-wheel-overlay.active .scroll-dot{opacity:1}.scroll-arc .arc-progress{fill:none;stroke:rgba(var(--accent-r),var(--accent-g),var(--accent-b),.7);stroke-width:8;stroke-linecap:round;stroke-dasharray:264;stroke-dashoffset:264;transition:stroke-dashoffset .1s ease;filter:drop-shadow(0 0 4px rgba(var(--accent-r),var(--accent-g),var(--accent-b),.6))}.volume-popup{position:absolute;top:-70px;left:50%;transform:translate(-50%) scale(.9);background:linear-gradient(180deg,var(--volume-bg),var(--volume-bg-end));border:1px solid rgba(var(--accent-r),var(--accent-g),var(--accent-b),.5);border-radius:12px;padding:10px 16px;display:flex;align-items:center;gap:10px;opacity:0;pointer-events:none;transition:all .2s ease;box-shadow:0 8px 25px #0006,inset 0 1px #ffffff1a;z-index:100}.volume-popup.visible{opacity:1;transform:translate(-50%) scale(1)}.volume-icon{font-size:1.1rem}.volume-bar{width:80px;height:6px;background:#0006;border-radius:3px;overflow:hidden}.volume-fill{height:100%;width:50%;background:linear-gradient(90deg,var(--accent-fill),var(--accent-fill-light));border-radius:3px;transition:width .1s ease;box-shadow:0 0 8px rgba(var(--accent-r),var(--accent-g),var(--accent-b),.5)}.volume-percent{font-size:.75rem;color:var(--volume-text);min-width:32px;text-align:right;font-family:Courier New,monospace}.wheel-ring.scrolling{box-shadow:0 8px 25px #00000059,inset 0 2px 4px #ffffff80,inset 0 -2px 4px #00000026,0 0 20px var(--wheel-glow)}.menu-list::-webkit-scrollbar,.scroll-content::-webkit-scrollbar{width:5px}.menu-list::-webkit-scrollbar-track,.scroll-content::-webkit-scrollbar-track{background:#0000000d}.menu-list::-webkit-scrollbar-thumb,.scroll-content::-webkit-scrollbar-thumb{background:#5a7a4a66;border-radius:3px}@media(min-width:500px){.device-stage{padding:20px}.bamboo-device{width:380px;height:calc(100vh - 40px);max-height:850px;border-radius:35px;padding:16px;box-shadow:0 30px 100px #0006,0 15px 40px #0000004d,inset 0 2px #ffffff40,inset 0 -2px #00000026,inset 4px 0 10px #0000001a,inset -4px 0 10px #0000001a}.wood-edge.left{border-radius:35px 0 0 35px}.wood-edge.right{border-radius:0 35px 35px 0}.wood-grain{border-radius:35px}.click-wheel{width:200px;height:200px}.wheel-center{width:80px;height:80px}.artwork-frame{width:180px;height:180px}.screen-bezel{border-radius:14px;padding:12px}.lcd-screen{border-radius:8px}.lcd-screen:before{border-radius:8px}}@media(min-width:800px){.device-stage{padding:30px}.bamboo-device{width:420px;height:calc(100vh - 60px);max-height:900px}.click-wheel{width:220px;height:220px}.wheel-center{width:90px;height:90px}.center-kanji{font-size:1.6rem}.artwork-frame{width:200px;height:200px}}
