/* Mobile first touch refinements over the original desktop diary. */
html{overflow-x:clip}.page,.window,.avatargrid,.aboutgrid,.room-inside{min-width:0}
img,video,iframe,canvas{max-width:100%}
button,summary{touch-action:manipulation}
.theme-toggle{flex:none;min-width:75px;min-height:38px;padding:5px 10px;border:1px solid #b9a6d3;border-radius:999px;background:#fff9;color:#554873;font:12px "DM Mono",monospace;cursor:url('assets/y2k-hand.svg') 11 3,pointer}
.theme-toggle:focus-visible{outline:3px solid #8364b2;outline-offset:3px}
.hangout-page,.coin-page{max-width:1280px;margin:auto}
.hangout-shell{max-width:1180px;margin:auto}.hangout-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);gap:0;background:#f4ebf8}
.hangout-stage{min-width:0;padding:17px;background:#e9dff0}.hangout-scene{position:relative;border:5px solid #c4a2d1;background:#302842;box-shadow:5px 6px 0 #54406955;overflow:hidden;aspect-ratio:5/3;touch-action:none}.hangout-scene canvas{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none;cursor:url('assets/y2k-hand.svg') 11 3,pointer}
.hangout-overlay{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:max-content;max-width:90%;background:#312844c9;color:#fff3fa;padding:6px 11px;border-radius:7px;text-align:center;font:11px/1.3 "DM Mono",monospace;pointer-events:none;opacity:0;transition:opacity .2s}.hangout-overlay.show{opacity:1}
.hangout-map{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:15px 0 8px}.hangout-map>div{text-align:center;min-width:0}.hangout-map strong{display:block;font:22px "Patrick Hand",cursive;line-height:1.1}.hangout-map small{display:block;font:11px/1.3 "DM Mono",monospace}.hangout-map button{flex:0 0 auto;font-size:12px;padding:9px;min-height:44px}.hangout-map button:disabled{opacity:.45;cursor:not-allowed}
.hangout-touch{display:flex;justify-content:center;gap:8px;margin:12px 0}.hangout-touch button{width:48px;height:48px;border:2px solid #a484b8;border-radius:10px;background:#fffbff;color:#514068;font:26px "DotGothic16",monospace;touch-action:none;user-select:none}.hangout-touch button:active{transform:translateY(2px);background:#dcc5ed}
.emote-tray{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:11px 0;border-top:1px dashed #aa91b9}.emote-tray>span{font:12px "DM Mono",monospace;margin-right:3px}.emote-tray button{min-height:42px;padding:6px 10px;border:1px solid #bea5cc;border-radius:8px;background:#fff9;color:#584263;cursor:url('assets/y2k-hand.svg') 11 3,pointer}.emote-tray button:hover,.emote-tray button:focus-visible{background:#e8cdec;outline-offset:2px}
.hangout-help{font:11px/1.6 "DM Mono",monospace;margin:6px 0;color:#665275}.hangout-sidebar{min-width:0;padding:17px;display:flex;flex-direction:column;gap:12px;background:#efe2ee;border-left:1px solid #d8c3dc}.hangout-presence{display:grid;gap:2px}.hangout-presence strong{font:17px "DotGothic16",monospace}.hangout-presence span{font:11px/1.45 "DM Mono",monospace}
.chat-window{border:2px solid #c3aacd;border-radius:13px;overflow:hidden;background:#fffafb;display:flex;flex-direction:column;min-height:380px;max-height:600px}.chat-heading{display:flex;justify-content:space-between;gap:7px;align-items:center;background:linear-gradient(90deg,#e7c7ea,#c8e9f4);padding:12px;color:#4f3d66;font:13px "DM Mono",monospace}.chat-heading small{font-size:10px;text-align:right}.chat-messages{padding:11px;flex:1;min-height:210px;overflow-y:auto;overscroll-behavior:contain}.chat-line{padding:8px 9px;margin:0 0 7px;border-radius:8px;background:#f2e8f5;overflow-wrap:anywhere;font:13px/1.45 "Nunito",sans-serif}.chat-line small{font:10px "DM Mono",monospace;color:#6d587d}.chat-line strong{font-weight:800;color:#714f93}.chat-line p{margin:3px 0}.chat-line.chat-own{background:#dcf0eb}.chat-line.chat-system{background:#f9e6e1}.chat-actions{display:flex;gap:7px;justify-content:flex-end}.chat-actions button{background:none;border:0;text-decoration:underline;font:10px "DM Mono",monospace;color:#775d8c;cursor:pointer}.chat-window form{padding:11px;border-top:1px solid #e8dbea}.chat-window form label{margin:0 0 6px}.chat-compose{display:flex;gap:6px}.chat-compose input{min-width:0;flex:1;font-size:16px}.chat-compose button{padding:9px 11px}.chat-status{margin:0;font:11px/1.5 "DM Mono",monospace}.hangout-sidebar>details{padding:10px;border:1px solid #c3aacd;border-radius:9px}.hangout-sidebar>details[hidden]{display:none}.hangout-sidebar>details summary{cursor:pointer}#chat-reports{display:grid;gap:7px;margin-top:9px}
.coin-window{max-width:860px;margin:auto}.coin-content{padding:25px;background:linear-gradient(155deg,#f9eef8,#e3eafb)}.coin-note{padding:14px;border:1px dashed #aa8dc5;background:#fff9;border-radius:10px}.coin-note strong{font:13px "DM Mono",monospace}.coin-note p{margin:6px 0 0;line-height:1.45}.coin-wallet{margin:20px 0;padding:12px;border:2px solid #ba9fd1;border-radius:9px;background:#fff9;font:13px/1.5 "DM Mono",monospace}.coin-market{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.coin-card{padding:18px;border:2px solid #d2bce2;border-radius:12px;background:#fff9;box-shadow:5px 5px 0 #ad91c044}.coin-card h3{font:26px "Patrick Hand",cursive;margin:0}.coin-card p{margin:7px 0 13px;font:12px/1.5 "DM Mono",monospace}.coin-card label{margin:0 0 8px}.coin-card input{max-width:120px;font-size:16px}.coin-card .room-actions{gap:6px}.coin-card .button{flex:1;min-width:85px}.coin-status{min-height:23px;font:12px/1.5 "DM Mono",monospace}
@media(max-width:930px){.hangout-layout{grid-template-columns:1fr}.hangout-sidebar{border-left:0;border-top:1px solid #d8c3dc}.chat-window{max-height:440px;min-height:330px}.chat-messages{min-height:185px}.hangout-stage{padding:12px}}
@media(max-width:650px){.topbar{gap:8px;padding:10px 14px}.topbar .mobile-nav{margin-left:0}.topbar .mobile-nav summary{min-height:40px;display:grid;place-items:center}.topbar .mobile-nav>div{right:0;top:calc(100% + 9px);width:min(300px,calc(100vw - 26px));max-height:calc(100dvh - 76px);overflow-y:auto;padding-bottom:max(9px,env(safe-area-inset-bottom))}.topbar details>div button{min-height:44px}.logo{font-size:15px;margin-right:auto}.page{padding:25px 13px calc(56px + env(safe-area-inset-bottom))}.sectionhead{margin-bottom:20px}.sectionhead h2{font-size:clamp(29px,9vw,48px);overflow-wrap:anywhere}.windowbar{padding:0 10px}.heroinside{gap:18px;text-align:center}.heroinside .actions{justify-content:center}.herocopy h1{font-size:clamp(47px,15vw,80px);letter-spacing:1px}.desktopicons{gap:4px}.desktopicons button{min-width:75px;width:calc(25% - 4px);min-height:77px;font-size:11px}.desktopicons span{font-size:27px}.aboutgrid,.room-inside,.music-interior{padding:20px;gap:18px}.profilecard{max-width:340px;width:100%;margin:auto}.aboutgrid article h2{font-size:clamp(29px,8vw,44px);overflow-wrap:anywhere}.aboutgrid article p{font-size:16px}.room-art{min-height:170px}.albumgrid{gap:10px}.arcade-map{padding:12px}.game-levels{gap:7px}.level-card{min-height:170px}.game-backup{grid-template-columns:1fr}.game-backup small{grid-column:auto}.game-overlay{padding:12px}.game-overlay img{width:70px}.game-overlay h3{font-size:23px}.game-overlay p{font-size:12px}.museum-room canvas{width:100%;height:auto}.hangout-map{gap:5px}.hangout-map strong{font-size:18px}.hangout-map button{font-size:10px;padding:7px;max-width:110px}.hangout-scene{border-width:3px}.hangout-help{font-size:10px}.coin-market{grid-template-columns:1fr}.coin-content{padding:14px}.shop-card button{min-height:44px}.catalog-items{max-height:260px}.avatar-tabs{overflow-x:auto}.avatar-tabs button{white-space:nowrap}}
@media(max-width:390px){.desktopicons button{width:calc(33.33% - 4px)}.game-levels{grid-template-columns:1fr}.level-card{min-height:125px}.catalog-items{grid-template-columns:1fr}.hangout-map small{display:none}.hangout-map button{max-width:90px}.hangout-touch button{width:44px;height:44px}}
@media(hover:none){html,body,button,a,summary,.hangout-scene canvas{cursor:auto}}

/* Night mode keeps the lavender, pink, and ocean palette without tinting avatar art. */
html[data-theme="night"]{color-scheme:dark;--ink:#f5e8fa;--glass:#27243cdd;--line:#d8bce253}
html[data-theme="night"] body{color:#f1e5f8;background:radial-gradient(circle at 15% 10%,#644576 0,transparent 30%),radial-gradient(circle at 83% 16%,#23536d 0,transparent 30%),linear-gradient(155deg,#15192e,#30223d 56%,#162f41)}
html[data-theme="night"] .topbar{background:#23223fe8;border-bottom-color:#745b8b}html[data-theme="night"] .topbar nav button,html[data-theme="night"] .topbar summary,html[data-theme="night"] .logo,html[data-theme="night"] .clock{color:#f1e2fb}html[data-theme="night"] .topbar details>div{background:#302844;border-color:#8b70a1}html[data-theme="night"] .topbar details>div button{color:#fff}html[data-theme="night"] .topbar details>div button:hover{background:#564067}
html[data-theme="night"] .theme-toggle{background:#473457;border-color:#a887ba;color:#ffecf9}html[data-theme="night"] .window:not(.pixelwindow):not(.game-window):not(.coin-window):not(.hangout-shell){background:#26243bdd;border-color:#9277a7}html[data-theme="night"] .windowbar{background:linear-gradient(90deg,#564477,#634465,#34566c);color:#fff5fc;border-color:#a883bc}
html[data-theme="night"] .status,html[data-theme="night"] .button:not(.game-info .button):not(.shop-card button),html[data-theme="night"] .profilecard,html[data-theme="night"] .miniplayer,html[data-theme="night"] .album,html[data-theme="night"] .arcade-map,html[data-theme="night"] .arcade-intro>div,html[data-theme="night"] .quote,html[data-theme="night"] .messages article{background:#342c4aeb;color:#f5e9fa;border-color:#9074a6}
html[data-theme="night"] .herocopy h1,html[data-theme="night"] .sectionhead h2,html[data-theme="night"] .aboutgrid article h2,html[data-theme="night"] .aboutgrid article p,html[data-theme="night"] .profilecard h2,html[data-theme="night"] .arcade-map h3,html[data-theme="night"] .arcade-intro h3{color:#f5dffb}
html[data-theme="night"] .sectionhead p,html[data-theme="night"] .eyebrow,html[data-theme="night"] .tagline,html[data-theme="night"] .intro,html[data-theme="night"] .hangout-help{color:#dbc4ed}html[data-theme="night"] .windowbar,html[data-theme="night"] .button.primary{box-shadow:inset 0 1px #fff5}
html[data-theme="night"] input:not(.pixelcontrols input),html[data-theme="night"] select:not(.pixelcontrols select),html[data-theme="night"] textarea{background:#2d2841;color:#fff4fa;border-color:#947bb0}html[data-theme="night"] input::placeholder,html[data-theme="night"] textarea::placeholder{color:#b3a3c6}
html[data-theme="night"] .hangout-layout,html[data-theme="night"] .hangout-stage{background:#29263d}html[data-theme="night"] .hangout-sidebar{background:#302843;border-color:#745883}html[data-theme="night"] .hangout-map,html[data-theme="night"] .hangout-help{color:#efe3f4}html[data-theme="night"] .chat-window{background:#2d253e;border-color:#9f7cba}html[data-theme="night"] .chat-heading{background:linear-gradient(90deg,#705079,#45687b);color:#fff}html[data-theme="night"] .chat-line{background:#49365b;color:#f8eafb}html[data-theme="night"] .chat-line.chat-own{background:#31565e}html[data-theme="night"] .chat-line strong,html[data-theme="night"] .chat-line small{color:#ffe5ff}html[data-theme="night"] .chat-window form{border-color:#70557f}
html[data-theme="night"] .coin-content{background:linear-gradient(145deg,#2b263f,#2b3950)}html[data-theme="night"] .coin-note,html[data-theme="night"] .coin-wallet,html[data-theme="night"] .coin-card{background:#3c3150;color:#f5e6fb;border-color:#9c77b8}html[data-theme="night"] .coin-note p,html[data-theme="night"] .coin-card p{color:#e7d3eb}html[data-theme="night"] .museum-room{color:#443951}
html[data-theme="night"] .scene-canvas,html[data-theme="night"] .scene-red,html[data-theme="night"] .scene-orange,html[data-theme="night"] .scene-yellow,html[data-theme="night"] .scene-green,html[data-theme="night"] .scene-blue,html[data-theme="night"] .scene-violet,html[data-theme="night"] .scene-museum{filter:saturate(.9) brightness(.83)}
html[data-theme="night"] .game-stage canvas{filter:brightness(.83)}html[data-theme="night"] footer{background:#29233baa;color:#e5d1f1}
@media(prefers-reduced-motion:reduce){.hangout-overlay{transition:none}}

/* Phone navigation and readable input sizes. */
#chat-unhide{align-self:flex-start;margin:0 11px 9px;border:0;background:none;color:#735b92;text-decoration:underline;cursor:pointer;font:11px "DM Mono",monospace}
#chat-unhide[hidden]{display:none}
@media(max-width:900px){.topbar nav{display:none}.topbar .mobile-nav{display:block}}
@media(max-width:650px){.page input:not([type="color"]):not([type="range"]),.page select,.page textarea{font-size:16px}.topbar .clock{display:none}.hangout-map strong{overflow-wrap:anywhere}.hangout-map button{min-height:44px}}

/* Darken the old paper panels while preserving the album cover colors. */
html[data-theme="night"] .jworld,html[data-theme="night"] .room-note,html[data-theme="night"] .profile-auth,html[data-theme="night"] .profile-editor,html[data-theme="night"] .notebook-top{background:#342b4a;color:#f5e9f9;border-color:#8d6fa3}
html[data-theme="night"] .jworld h2,html[data-theme="night"] .profile-auth h3,html[data-theme="night"] .profile-editor h3,html[data-theme="night"] .notebook-top h3,html[data-theme="night"] .profile-auth label,html[data-theme="night"] .profile-editor label{color:#f6e0fa}
html[data-theme="night"] .profile-preview{color:#41344e;filter:saturate(.85) brightness(.83)}html[data-theme="night"] .profile-decor-options label{background:#493658;color:#f5e6fa;border-color:#937ba7}
html[data-theme="night"] .album .cover{color:#342743}html[data-theme="night"] body .notebook-page input,html[data-theme="night"] body .notebook-page select,html[data-theme="night"] body .notebook-page textarea{background:#fff9;color:#40304e;border-color:#c4aad2}
html[data-theme="night"] #chat-unhide{color:#edd2fb}
