@font-face{font-family:'Pixelify Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/pixelify.ttf') format('truetype')}
@font-face{font-family:'Pixelify Sans';font-style:normal;font-weight:600 900;font-display:swap;src:url('/pixelify-semibold.ttf') format('truetype')}
:root{--blue:#90ffce;--ink:#f2eeff;--muted:#aaa4c2;--line:#39304f;--yellow:#ffda78;color:var(--ink);background:#100e1c;color-scheme:dark}
body{background:radial-gradient(ellipse at 8% 0%,#5a245633,transparent 45%),radial-gradient(ellipse at 100% 40%,#16466c22,transparent 50%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px),#100e1c;background-size:auto,auto,32px 32px,32px 32px,auto;min-height:100vh}
.topbar{position:relative;border-bottom:1px solid #49405d;height:64px;background:#100e1cbf}.topbar:after{content:'';position:absolute;bottom:-1px;left:27%;right:27%;height:2px;background:linear-gradient(90deg,transparent,#ff82d7,#77eeff,#93ffcf,transparent);opacity:.85}.brand{font-family:'Silkscreen',monospace;font-size:30px;font-weight:700;letter-spacing:1px;color:#f4eeff;text-shadow:2px 0 #ff77c566,-2px 0 #62e8ff66}.header-account{position:absolute;right:28px;top:50%;transform:translateY(-50%);display:flex;align-items:center}.login-button{font-size:13px;font-weight:700;padding:9px 19px;border:1px solid #91ffd07a;border-bottom:3px solid #5cad8c;background:#172c29;color:#a1ffda;border-radius:7px;box-shadow:0 0 16px #71ffd30b}.login-button:hover{background:#21443a}.header-account .account-bar{margin:0;height:auto;gap:15px;font-size:13px;color:#cdc5e0}.account-bar #logout{padding:8px 11px;border:1px solid #57456d;background:#251d38;border-radius:6px;color:#a4ffe0}.account-bar #account-label{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.panel{background:#201a31;border:1px solid #493957;border-radius:13px;box-shadow:inset 0 1px #ffffff05}.eyebrow{color:#b7accb}.device{position:relative;background:linear-gradient(145deg,#8970b8,#6b5d98 60%,#7260a6);border:2px solid #ac8fcd;border-radius:27px;box-shadow:0 5px 0 #3a2d56,0 8px 0 #090710,0 0 32px #bb71ff0c,inset 0 2px #d5bbef70;padding:15px 14px 12px}.device-top{padding-left:5px;padding-right:5px}.device-label{color:#241d39;font-weight:800;letter-spacing:.5px}.status-light{background:#a1ffd4;box-shadow:0 0 0 3px #43345c44,0 0 8px #89ffcda0}.device .small-button{color:#211a35;font-weight:700}.device .small-button span{color:#e5ff94}.screen{background-color:#cedcb1;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,#2436200a 3px,#2436200a 4px),radial-gradient(#79936655 .7px,transparent .8px);background-size:auto,5px 5px;border:6px solid #382d4e;border-radius:13px;box-shadow:0 1px #cdb9e766,inset 0 3px 12px #2f462633;padding:11px 10px;color:#263b2b}.screen-top,.screen-bottom{font-family:monospace;color:#43583b;font-size:10px;font-weight:700;letter-spacing:.15px}.screen-top{gap:9px}.speech{background:#e8efcedd;color:#2e412a;border:1px solid #70875c80;border-radius:5px;font-size:13px;box-shadow:2px 2px 0 #65795015}.spark{color:#758952}.floor-shadow{background:#50693b2e}#pet-image{filter:drop-shadow(0 6px 3px #223a4b33)}.unhatched #pet-image{filter:grayscale(.45) opacity(.7)}.unhatched .pet-touch:disabled{opacity:.8}.screen #sleep-float{color:#3c4589}.care-controls{gap:8px}.care-controls button{background:#211a37;border:1px solid #ac91c3;border-bottom:4px solid #2d223f;border-radius:11px;color:#ebe1ff;box-shadow:inset 0 1px #b296ce26;min-height:64px}.care-controls button:hover:not(:disabled){background:#312548}.care-controls button:nth-child(1) .action-icon{color:#ff90c6}.care-controls button:nth-child(2) .action-icon{color:#89e8ff}.care-controls button:nth-child(3) .action-icon{color:#c0ffa3}.care-controls button:nth-child(4) .action-icon{color:#e1b4ff}.care-controls strong{font-size:13px}.care-controls button:disabled{opacity:.65}.device-foot{color:#29233e;font-weight:700;letter-spacing:.5px;font-size:9px}
.hatch-card h2,.profile-title h2,.chat-heading h2{color:#f4edff}.hatch-card>p,.save-note,.growth-next{color:#b9accb}.hatch-card h2{font-size:23px}.hatch-card label,.hatch-card legend{color:#d4c8e8}input{background:#151021;border-color:#514061;color:#f3eeff;border-radius:5px}input::placeholder,textarea::placeholder{color:#9589ac}.personalities span{border-color:#4b3c60;color:#bcb0d1;background:#1a1429;border-radius:5px}.personalities input:checked+span{background:#2c3e37;border-color:#8effc9;color:#acffdb}.primary{background:#a1ffd2;color:#162d24;border-color:#84d6b0;border-bottom-color:#458b72;border-radius:6px;font-weight:800;box-shadow:0 0 16px #9cffd00a}.primary:hover{background:#c5ffe3}.primary:disabled{opacity:.45}.level-medal{background:#352b49;border:1px solid #ffa8df;color:#ffb2dd;border-radius:7px;box-shadow:3px 3px 0 #0d0919;transform:rotate(4deg)}.level-medal strong{font-family:'Silkscreen',monospace;font-size:22px}.level-medal span{font-size:9px}.growth-label,.stat>div:first-child{color:#e1d7ef}.growth-label>span,.stat strong{color:#b5a6ca}.growth-track,.stat-track{border-radius:2px;background:#362a48}.growth-track{height:8px}.growth-track>div{background:repeating-linear-gradient(90deg,#8df2d0 0 10px,#31463e 10px 12px)}.stats{border-top:1px solid #44344f}.food{background:#ffb775}.joy{background:#fb8ed1}.energy{background:#8eedcd}.pet-tip{color:#c1b1d4;background:#2b223b;border:1px solid #43324e;border-radius:5px}.profile-title .eyebrow{color:#b8a1cb}.journal,.journal li,.journal small{color:#cbbadd}
.chat-panel{background:#191526;border:1px solid #493753;box-shadow:inset 0 2px #88e4ff0b}.chat-heading #ai-status{color:#b4a7c6}.chat-modes,.auth-tabs{background:#0f0c1b;border:1px solid #392c4a;border-radius:5px;padding:4px}.chat-modes button,.auth-tabs button{border-radius:3px;color:#c2b4d7;font-size:12px}.chat-modes button[aria-pressed=true],.auth-tabs button[aria-pressed=true]{background:#33243f;color:#ffb8e6;box-shadow:inset 0 -2px #f997d4}.chat-empty{color:#b4a9c8}.chat-empty>span{color:#7ee8ff;text-shadow:0 0 15px #61ddff66}.chat-empty h3{color:#dbcee9}.chat-panel textarea{background:#100d1c;color:#ece2fb;border:1px solid #574264;border-radius:5px}.chat-message{background:#2a2139;color:#eee4ff;border:1px solid #48314f;border-radius:7px}.chat-message.user{background:#1d3437;border-color:#375a58}.chat-message strong{color:#9dedd6}.chat-pending{color:#9dffd6}.chat-message pre{color:#d9c9ee}.chat-footer{border-color:#3d2d4b;color:#a99abb}.chat-footer .small-button{color:#c5b5d9}.composer-actions>span{color:#ae9ec3}.chat-error{color:#ffb3b0}#review-fields label{color:#d4c5e9}#review-fields label span{color:#ac9bbe}#review-fields input{background:#100c1a;border-color:#4d3a5d}.skill-counter{color:#b2a3c6}.section-heading h2{font-family:'Silkscreen',monospace;font-size:15px;letter-spacing:0;color:#c9bade}.skill-card,.skill-card.unlocked{background:#1a1428;border:1px solid #493752;border-radius:7px;box-shadow:inset 0 1px #76518422}.skill-card.unlocked{border-color:#65b29b88;background:#1a272a}.skill-icon{background:#332640;color:#b7a0cb;border-radius:4px}.unlocked .skill-icon{background:#2b493f;color:#a8ffdc}.skill-card h3{color:#e1d3ef;font-size:14px}.skill-status{color:#ab96bd}.unlocked .skill-status{color:#98ebc6}.skill-card button{border-color:#46304f;color:#a2ffdf}.skill-card button:disabled{color:#a896ba}.skill-card.unlocked button{border-color:#39554b}
footer{border-color:#3d2d4b;color:#a99abc}footer>span:last-child{color:#ab9bbc}.text-button{color:#c9b6df}.text-button span{border-color:#584267;color:#ae98c7}.toast{background:#2b2140;border:1px solid #a48fc8;color:#f0eaff;box-shadow:3px 3px 0 #0008;border-radius:6px}.error{background:#381d30;border-color:#985871;color:#ffc7d3}.loading{color:#c3aedc}
dialog{background:#20162e;border:2px solid #80629c;border-radius:12px;color:#f1e7ff;box-shadow:6px 6px 0 #0a0514,0 0 50px #8750ae19}dialog::backdrop{background:#080513bd;backdrop-filter:blur(5px)}dialog p,.help-list{color:#c2afd5}.close{color:#e8c7fc}.answer-options button{background:#322044;border-color:#89599f;color:#adffdb;border-radius:6px}.game-status{color:#c6b3db}.note-list li,.market-stats div,.watch-row{background:#30203e;color:#e3d1f1}.note-list button,.watch-row button:last-child{color:#d9b3f0}.market-stats small{color:#c1a4d5}.market-link,.watch-row button:first-child{color:#9fffdb}.moments-list small{color:#b29bc7}.memory-grid button{border-radius:5px}.memory-grid button.active{border-color:white;box-shadow:0 0 20px currentColor}.auth-card{background:#20172f;border-color:#5d416e}.auth-card>p,.auth-card .account-note{color:#c0abcf}.auth-card input{background:#120c20}.auth-card .auth-tabs{margin-top:5px}.auth-card .auth-tabs button{font-size:14px}#auth-modal{width:min(465px,calc(100% - 26px));padding:22px 10px 10px}#auth-modal .auth-screen{display:block;min-height:0;margin:0;max-width:none}#auth-modal .auth-art{display:none}#auth-modal .auth-card{border:0;box-shadow:none;padding:17px}#auth-modal .close{z-index:2;top:6px;right:8px}.auth-card h2{color:#f0ddff}.auth-card label{color:#dfc9ed}.auth-card .import-guest input{accent-color:#9bffd3}
@media(min-width:1101px){.world{height:clamp(435px,calc(100dvh - 305px),670px)}.pet-touch{width:clamp(155px,22vh,250px);height:clamp(155px,22vh,250px)}}
@media(max-height:780px) and (min-width:1101px){.topbar{height:52px}.brand{font-size:27px}.header-account .login-button{padding:7px 17px}}
@media(max-width:700px){.topbar{height:60px;justify-content:flex-start;padding-left:17px}.brand{font-size:24px}.header-account{right:16px}.account-bar #account-label{display:none}.header-account .login-button{padding:8px 14px}.header-account .account-bar{gap:0}.device{border-radius:24px}.chat-panel{min-height:470px}.skill-card h3{font-size:13px}.screen-top{font-size:9px}.device-label{max-width:180px}.section-heading h2{font-size:14px}}

/* Midnight arcade: one pixel typeface across the whole experience. */
:root{--ink:#e4e9f3;--muted:#9da9bd;--line:#2c3445;--blue:#74f6ca;background:#07090f}
body{background:radial-gradient(ellipse at 10% 25%,#19354420,transparent 45%),radial-gradient(ellipse at 90% 60%,#39194220,transparent 50%),linear-gradient(#83b6ff05 1px,transparent 1px),linear-gradient(90deg,#83b6ff05 1px,transparent 1px),#07090f;background-size:auto,auto,24px 24px,24px 24px,auto}
body,body *{font-family:'Pixelify Sans',monospace!important;font-synthesis:none}
body{font-size:15px}.topbar{background:#07090fd9;border-color:#263043}.brand{font-size:38px;letter-spacing:3px;text-shadow:2px 2px #f777cb55,-2px -1px #5cf5ec55}
.header-account .login-button,.account-bar #logout{background:#101a21;border:1px solid #518d82;border-bottom:3px solid #32554c;border-radius:3px;font-size:15px}.account-bar #account-label{color:#bac8d8}
.training-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 15px}.training-intro h1{font-size:24px;letter-spacing:1px;line-height:1.1;margin:0;color:#c6ffb7}.training-intro p{font-size:14px;line-height:1.4;margin:4px 0 0;color:#9dabbd}.training-intro>span{color:#8b96ac;font-size:12px;letter-spacing:1px;white-space:nowrap}.training-intro>span:before{content:'■';color:#74f6ca;margin-right:8px}
.panel,.chat-panel,.auth-card{background:#10141e;border:1px solid #30394b;border-radius:5px;box-shadow:inset 0 1px #ffffff05}
.device{background:linear-gradient(130deg,#242b3b,#161b27);border:2px solid #424a60;border-radius:15px;box-shadow:0 5px 0 #080b12,0 7px 0 #333b4d,inset 0 2px #64718a40}
.device-label{color:#bac5dd;font-size:10px;max-width:210px}.device .small-button{color:#97ebce;font-size:13px}.device-foot{color:#929db5;font-size:10px}.status-light{border-radius:1px;background:#a0ff6e;box-shadow:0 0 9px #a0ff6e70}
.screen{background-color:#090f19;background-image:linear-gradient(#5782bd0c 1px,transparent 1px),linear-gradient(90deg,#5782bd0c 1px,transparent 1px);background-size:12px 12px;border:4px solid #05070e;border-radius:4px;box-shadow:0 1px #64718a60,inset 0 0 35px #0009;color:#b9f3e2}
.screen-top,.screen-bottom{color:#86a6bb;font-size:10px;font-weight:400;letter-spacing:.2px}.speech{border-color:#2c5362;background:#142532;color:#c6f4e3;border-radius:3px;font-size:14px;line-height:1.35;box-shadow:3px 3px #03091050}.spark{color:#4d769b}.floor-shadow{background:#367ebc30;filter:none;height:6px;border-radius:0}.screen #sleep-float{color:#c4c0ff}
#pet-image{image-rendering:pixelated;filter:none;animation:pixel-hop 3s steps(2,end) infinite}.unhatched #pet-image{filter:grayscale(.55) opacity(.65)}.sleeping #pet-image{animation:none;filter:saturate(.5)}.pet-touch:hover{transform:translateY(-3px)}
@keyframes pixel-hop{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.care-controls button{background:#111824;color:#dce5f6;border-color:#46506a;border-bottom-color:#03050c;border-radius:4px}.care-controls button:hover:not(:disabled){background:#242f43}.care-controls strong{font-size:16px;font-weight:600}.care-controls button[data-game=train]{border-top-color:#b4ff80}.care-controls button[data-game=train] strong{color:#b4ff80}
.hatch-card h2,.profile-title h2,.chat-heading h2{color:#e7eefb;letter-spacing:0;font-weight:600}.hatch-card h2{font-size:26px}.hatch-card>p,.save-note,.growth-next{color:#a5b4c8}.hatch-card>p{font-size:15px}.hatch-card label,.hatch-card legend{font-size:14px;color:#c8d4e5}.save-note{font-size:12px}.eyebrow,.profile-title .eyebrow{color:#99b7c8}.profile-title h2{font-size:32px}.profile-title .eyebrow{font-size:12px}
input,.auth-card input,#review-fields input,.chat-panel textarea{background:#080c14;border-color:#37435a;border-radius:3px;color:#e1edff;font-size:15px}input::placeholder,textarea::placeholder{color:#8594aa}.personalities span{background:#0b101a;color:#acb9cb;border-color:#37435a;border-radius:2px;font-size:14px}.personalities input:checked+span{background:#16322c;color:#a0ffdb;border-color:#548e7d}
.primary{border-radius:3px;background:#b8ff80;color:#142010;border-color:#a0dc72;border-bottom-color:#4d7733;font-size:16px}.primary:hover{background:#d0ffa9}.level-medal{background:#1d1c2d;border-color:#bf80d7;color:#eba8ff;border-radius:3px;transform:none;box-shadow:3px 3px #060810}.level-medal strong{font-size:26px}.level-medal span{font-size:11px}
.growth-label,.stat>div:first-child{color:#d0dfef;font-size:14px}.growth-label>span,.stat strong{color:#9baec5;font-size:13px}.growth-next{font-size:13px}.growth-track,.stat-track{background:#232d3d}.growth-track{height:10px}.growth-track>div{background:repeating-linear-gradient(90deg,#aaff78 0 10px,#293b22 10px 13px)}.stats{border-color:#2a3447}.stat-track{height:7px}.food{background:#ffbd6a}.joy{background:#fa81d0}.energy{background:#76efd6}.pet-tip{color:#adc7c0;background:#14232a;border-color:#2c444c;font-size:13px;border-radius:3px}
.chat-heading h2{font-size:24px}.chat-heading #ai-status{color:#88bbab;font-size:13px}.chat-modes,.auth-tabs{background:#080c14;border-color:#27334a;border-radius:3px}.chat-modes button{font-size:14px;color:#9aaec4}.chat-modes button[aria-pressed=true],.auth-tabs button[aria-pressed=true]{background:#282238;color:#f3b0ed;box-shadow:inset 0 -2px #d689d5;border-radius:1px}.chat-empty{color:#9eaec6}.chat-empty h3{color:#d2dff1;font-size:18px;letter-spacing:0}.chat-empty p{font-size:15px}.chat-empty>span{color:#8ceeff}.chat-panel textarea{font-size:16px}.composer-actions>span{color:#97aac0;font-size:12px}.composer-actions .primary{font-size:15px}.chat-message{background:#1c2434;border-color:#344459;border-radius:3px;color:#dbe8fc}.chat-message.user{background:#15312e;border-color:#335d55}.chat-message strong{color:#9aedca;font-size:14px}.chat-message .message-text{font-size:16px;line-height:1.45}.chat-message pre{color:#b5c9df;font-size:13px}.chat-footer{border-color:#2a3548;color:#8c9db3;font-size:12px}.chat-footer .small-button{color:#aebad0;font-size:12px}
.section-heading h2{color:#becbe2;font-size:18px;letter-spacing:1px}.skill-counter{color:#91a5bf;font-size:12px}.skill-card,.skill-card.unlocked{background:#10141e;border-color:#30394b;border-radius:3px}.skill-card.unlocked{background:#12221f;border-color:#416958}.skill-icon{background:#222b3c;color:#a3b5d3;border-radius:2px}.unlocked .skill-icon{background:#263e30;color:#b7ff8c}.skill-card h3{color:#d7e3f6;font-size:16px;letter-spacing:0}.skill-status{color:#8fa2bd;font-size:11px}.unlocked .skill-status{color:#a3eab5}.skill-card button{color:#b6efd4;font-size:14px;border-color:#303a4f}.skill-card button:disabled{color:#8e9eb7}
footer{border-color:#293145;color:#95a5bc}footer>span:last-child{color:#95a5bc}.text-button{color:#b8c6df}.text-button span{border-color:#35415b;color:#a1b2ce}.toast{background:#161f2f;border-color:#5b7395;border-radius:3px;color:#e2ecff;font-size:16px}
dialog{background:#111724;border-color:#506482;border-radius:5px;color:#dbe8ff}dialog p,.help-list{color:#aebfd8;font-size:16px}.close{color:#bad1f3}.answer-options button{background:#1d2b40;color:#b8ff80;border-color:#506b85;border-radius:3px}.game-status,.auth-card>p,.auth-card .account-note{color:#a3b5ce}.note-list li,.market-stats div,.watch-row{background:#1b2638;color:#d7e3f6}.note-list button,.watch-row button:last-child{color:#c4d5ee}.market-stats small,.moments-list small{color:#9db3cd}.auth-card h2,.auth-card label{color:#d7e6fd}
@media(min-width:1101px){.world{height:clamp(400px,calc(100dvh - 350px),670px)}.training-intro{height:43px}.skills-section{margin-top:15px}.chat-panel{height:100%}}
@media(min-width:1101px) and (max-height:780px){.brand{font-size:32px}.training-intro{margin-bottom:12px}.training-intro h1{font-size:21px}.training-intro p{font-size:13px}.skills-section{margin-top:14px}.pet-tip{margin-top:12px}.hatch-card fieldset{margin:10px 0}.hatch-card>p{margin-bottom:10px}.hatch-card h2{font-size:24px}.skill-card{padding:9px 12px}}
@media(max-width:700px){.brand{font-size:30px}.training-intro{margin:0 0 15px}.training-intro h1{font-size:21px}.training-intro>span{display:none}.training-intro p{font-size:14px}.device{border-radius:12px}.screen-top{font-size:10px}.section-heading h2{font-size:16px}.skill-card h3{font-size:15px}.skill-status{font-size:11px}.skill-card button{font-size:13px}.chat-panel{height:510px}.device-label{max-width:190px}}
@media(prefers-reduced-motion:reduce){#pet-image{animation:none}}
.chat-empty{padding:4px}.chat-empty>span{font-size:20px;line-height:1}.chat-empty h3{font-size:17px;margin:5px 0}.chat-empty p{font-size:14px;line-height:1.3}
