:root{
  --ink:#292630;--muted:#706c78;--paper:#f9f9fb;--field:#fdfdfe;
  --lime:#dfff86;--line:#45414b;--soft:#cbc8d1;--accent:#665475;
  --control:#e7e5eb;--control-hover:#dfff86;--selected:#dfff86;--focus:#665475;
  font:14px/1.5 "Courier New",monospace;color:var(--ink);background:#e8e7ec
}
*{box-sizing:border-box}
body{display:flow-root;margin:0;min-height:100vh;background:#f1f0f4;color:var(--ink)}
body.bg-bedroom{background:#f1f0f4}
body.bg-sticker-desk{--paper:#fff9ed;--ink:#352733;--muted:#796675;--line:#655260;--soft:#d9c9d3;--accent:#9a4777;--control:#f1e3d5;--selected:#dfff86;background:#eadfce;background-image:linear-gradient(90deg,#f3e8d8 1px,transparent 1px),linear-gradient(#f3e8d8 1px,transparent 1px);background-size:24px 24px}
body.bg-rainy-window{color-scheme:dark;--paper:#22313c;--field:#18242d;--ink:#edf5f7;--muted:#acbcc3;--line:#5b707a;--soft:#41545e;--accent:#8dc4d5;--control:#2d404b;--control-hover:#38515e;--selected:#334e55;--focus:#9bcbd8;background:#16232c;background-image:linear-gradient(105deg,transparent 44%,#758b9520 45%,transparent 46%);background-size:17px 31px}
body.bg-glitter-night{color-scheme:dark;--paper:#211a29;--field:#18131e;--ink:#f5edf7;--muted:#b7aabd;--line:#5d5364;--soft:#463c4d;--accent:#d4a5c4;--control:#2b2332;--control-hover:#382d41;--selected:#344326;--focus:#c7a2bd;background:#15101c;background-image:radial-gradient(#d4a5c42b 1px,transparent 1px);background-size:21px 21px}
body.bg-moon-garden{--paper:#f1faed;--ink:#173032;--muted:#506b67;--line:#315456;--soft:#b5cbbd;--accent:#527560;--control:#dcebd8;--selected:#c5e59e;background:#cadcc9;background-image:radial-gradient(circle at 80% 12%,#fffbd2 0 3rem,transparent 3.1rem)}
body.bg-cyber-aquarium{--paper:#effdff;--ink:#082e3a;--muted:#46717a;--line:#246678;--soft:#b2dce1;--accent:#14687f;--control:#d6f2f5;--selected:#a9e9d0;background:#b9e8ed;background-image:radial-gradient(circle,#ffffff75 1px,transparent 2px);background-size:29px 29px}
body.bg-cloud-loft{--paper:#fffefe;--ink:#253248;--muted:#657087;--line:#526078;--soft:#cbd2e0;--accent:#6c5f99;--control:#e8ecf6;--selected:#d9ddff;background:linear-gradient(#bcd8ee,#ece8f5)}
body.bg-midnight-rooftop{color-scheme:dark;--paper:#29243a;--field:#201c2e;--ink:#f5f1ff;--muted:#b9b0c8;--line:#665d78;--soft:#4b435d;--accent:#b7a8ec;--control:#342e47;--control-hover:#423a59;--selected:#404e28;--focus:#b7a8ec;background:#171423;background-image:linear-gradient(160deg,transparent 70%,#312c45 70%)}
body.bg-witch-kitchen{color-scheme:dark;--paper:#20271f;--field:#171d17;--ink:#eef4e8;--muted:#acb8a2;--line:#596651;--soft:#3e493a;--accent:#b3ca78;--control:#2b3528;--control-hover:#394634;--selected:#4a3d59;--focus:#b3ca78;background:#141912;background-image:radial-gradient(#8aa15c24 1px,transparent 1px);background-size:18px 18px}
body.bg-deep-sea{color-scheme:dark;--paper:#102d3d;--field:#0a202c;--ink:#e6fbff;--muted:#99b9c4;--line:#3f6b7b;--soft:#294e5e;--accent:#72d0d7;--control:#183a49;--control-hover:#214c5d;--selected:#245b5a;--focus:#72d0d7;background:linear-gradient(#12364a,#07151e)}
body.bg-star-train{color-scheme:dark;--paper:#202237;--field:#171827;--ink:#fff8e7;--muted:#c4bdad;--line:#62647b;--soft:#44465d;--accent:#e1c576;--control:#2c2e47;--control-hover:#3b3d58;--selected:#504729;--focus:#e1c576;background:#111321;background-image:radial-gradient(#f7e4a8 1px,transparent 1px);background-size:37px 37px}
body.bg-aurora{--paper:#f7fff9;--ink:#17302b;--muted:#4c6861;--line:#36594f;--soft:#b5d3c7;--accent:#4f7f70;--control:#dff2e6;--selected:#bfe6c8;background:linear-gradient(135deg,#ccefdc,#d7d0f0,#bfe6e8)}
body.bg-angel-static{--paper:#fbfdff;--ink:#28334a;--muted:#68748b;--line:#59657c;--soft:#c9d3e3;--accent:#7181ac;--control:#e8eef8;--selected:#dce7ff;background:#e8f0fa;background-image:repeating-linear-gradient(0deg,#ffffff55 0 1px,transparent 1px 4px)}
body.bg-yearbook-sunset{--paper:#fff7ef;--ink:#452a36;--muted:#806471;--line:#725260;--soft:#dec6ce;--accent:#a84f72;--control:#f3ded6;--selected:#f0d689;background:linear-gradient(#f3b7b2,#e8c3c9,#aeb9dd)}
a{color:var(--accent);text-underline-offset:3px}
button,input,textarea{font:inherit}
button,input,textarea,.site-header,.pet-nav a,.pet-search,.animal-card,.today-card,.care-card,.no-results,.journal-card,.background-picker,.auth-card,.about-note{border-radius:3px}
.skip-link{position:absolute;top:-5rem;left:1rem;padding:.6rem;background:var(--paper);border:1px solid var(--line);z-index:5}.skip-link:focus{top:1rem}
.site-header{max-width:920px;margin:1rem auto 0;padding:.7rem 1rem;background:var(--paper);border:1px solid var(--line)}
.header-top,.owner-nav,.pet-nav{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}
.header-top{justify-content:space-between}.brand a{color:var(--ink);font-weight:bold;font-size:1.15rem;text-decoration:none}.brand a::before{content:"♥ ";color:var(--accent)}
.owner-code{color:var(--muted);font-size:.72rem}.owner-nav form{margin:0}
.owner-nav button,.owner-nav a,.pet-nav a{padding:.2rem .45rem;background:transparent;border:1px solid var(--soft);color:var(--ink);font-size:.72rem}
.pet-nav{margin-top:.55rem;padding-top:.55rem;border-top:1px dotted var(--soft)}.pet-nav a[aria-current=page]{background:var(--selected);font-weight:bold}
main{max-width:920px;margin:auto;padding:2rem 1rem 3rem}.intro{text-align:center;margin:0 auto 1.2rem}.intro h1{margin:.2rem;font-size:2rem}.eyebrow{margin:.2rem 0;color:var(--accent);font-size:.72rem;letter-spacing:.06em}
.flash{max-width:580px;margin:0 auto 1rem;padding:.6rem .8rem;border:1px solid var(--line)}.flash-success{background:#edffdd}.flash-error{background:#ffe0eb}
.onboarding{max-width:560px;margin:auto}.pet-search,.animal-card,.today-card,.care-card,.no-results,.journal-card,.background-picker,.auth-card,.about-note{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:1rem}
.pet-search{margin-bottom:.8rem}.pet-search label,.adopt-form label{display:block;margin-bottom:.3rem;font-weight:bold}.pet-search>div{display:grid;grid-template-columns:1fr auto;gap:.4rem}
input,textarea{width:100%;padding:.5rem;background:var(--field);color:var(--ink);caret-color:var(--accent);border:1px solid var(--soft)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}textarea{resize:vertical}
button,.pet-pager a,.no-results a{padding:.48rem .7rem;border:1px solid var(--line);background:var(--control);color:var(--ink);font-weight:bold;cursor:pointer;text-decoration:none}
button:hover,.pet-pager a:hover,.no-results a:hover{background:var(--control-hover)}button:disabled{cursor:not-allowed;opacity:.55;background:var(--control)}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px dashed var(--focus);outline-offset:2px}
.pet-pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;margin-bottom:.8rem;text-align:center}.pet-pager a:last-child{text-align:right}.pet-pager span{color:var(--muted);font-size:.72rem}
.animal-top{display:flex;align-items:center;gap:1rem;min-height:7rem}.animal-top>div{min-width:0}.animal-card pre,.hero-art{margin:0;white-space:pre;tab-size:4;font-family:Consolas,"Liberation Mono",Menlo,Monaco,"Courier New",monospace;font-variant-ligatures:none;font-kerning:none;line-height:1;letter-spacing:0;text-align:left;text-transform:none}.animal-top pre{flex:0 0 auto;width:max-content;max-width:100%;overflow:auto;padding:.7rem;color:var(--accent);border:1px dotted var(--soft)}
.animal-card h2{margin:0;font-size:1.45rem}.personality{margin:.7rem 0}.adopt-form,.adopt-login{margin-top:.7rem;padding-top:.7rem;border-top:1px dotted var(--soft)}.adopt-form label{display:block;font-weight:bold}.adopt-form button{width:100%;margin-top:.4rem;background:var(--selected)}.adopt-login a,.home-start{font-weight:bold}.no-results{text-align:center}
.pet-dashboard{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(330px,1.6fr);gap:.8rem}.today-card{text-align:center}.today-card h1,.care-card h2,.journal-card h2,.auth-card h1{margin:.15rem 0 .65rem;font-size:1.35rem}.hero-art{display:inline-block;min-height:7.5rem;padding:1rem;color:var(--accent);font-size:1rem;line-height:1;text-align:left}
.pet-meta{margin:.35rem auto;color:var(--muted);font-size:.78rem}.pet-moment{max-width:22rem;margin:.6rem auto 0;padding:.55rem .4rem;color:var(--muted);font-size:.75rem;font-style:italic;border-top:1px dotted var(--soft)}
.care-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem}.care-actions form{display:flex}.care-actions button{display:grid;width:100%;gap:.1rem;background:var(--paper);color:var(--ink)}.care-actions small{color:var(--muted);font-weight:normal}
.journal-card,.background-picker{margin-top:.8rem}.journal-card label,.auth-card label{display:grid;gap:.25rem;margin:.5rem 0;font-weight:bold}.journal-card textarea{min-height:6rem}.journal-card button{margin-top:.4rem}.journal-card details{margin-top:.8rem;padding-top:.5rem;border-top:1px dotted var(--soft)}.journal-card article{border-bottom:1px dotted var(--soft)}.journal-card time{color:var(--muted);font-size:.7rem}
.journal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.journal-head h2{margin:0}.journal-head a{font-size:.7rem}
.old-note{margin:0 0 .8rem;padding:.55rem .7rem;border-left:2px solid var(--accent);background:var(--field)}.old-note small{color:var(--muted)}.old-note p{margin:.25rem 0 0;font-style:italic}
.background-picker summary{cursor:pointer;font-weight:bold}.background-picker>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.4rem;margin-top:.7rem}.background-picker form{display:flex}.background-picker button{display:grid;place-content:center;width:100%;min-height:3rem;text-align:center}.background-picker button:disabled{opacity:1;background:var(--selected)}.room-note{margin:.7rem 0 0;color:var(--muted);font-size:.72rem}
.room-sticker-desk{background:#f1e3d5!important}.room-rainy-window{background:#22313c!important;color:#edf5f7!important}.room-glitter-night{background:#21142f!important;color:#ead4e3!important}.room-moon-garden{background:#cfe5c9!important}.room-cyber-aquarium{background:#9eebf2!important}.room-cloud-loft{background:#dceafa!important}.room-midnight-rooftop{background:#29233b!important;color:#fff!important}.room-witch-kitchen{background:#283126!important;color:#eaf1df!important}.room-deep-sea{background:#12384a!important;color:#e6fbff!important}.room-star-train{background:#25273e!important;color:#f2daa0!important}.room-aurora{background:#ccefdc!important}.room-angel-static{background:#e8f0fa!important}.room-yearbook-sunset{background:#edbdba!important}
.auth-main{max-width:420px}.auth-card form{display:grid;gap:.2rem}.auth-card button{margin-top:.5rem}.auth-switch{margin:1rem 0 0;padding-top:.7rem;border-top:1px dotted var(--soft);font-size:.78rem}
.about-main{max-width:560px}.about-note{margin:1rem 0}.about-dateline{margin:0 0 1rem;color:var(--accent);font-size:.68rem}.about-note h1{margin:.2rem 0 1rem;font-size:1.65rem}.about-note pre{display:inline-block;margin:0 0 .7rem;color:var(--accent);line-height:1.05}.about-copy{max-width:31rem}.about-signoff{color:var(--accent)}
footer{padding:1rem;text-align:center;color:var(--muted);font-size:.68rem}footer p{margin:.2rem}
@media(max-width:760px){.site-header{margin:0;border-width:0 0 1px}.pet-dashboard{grid-template-columns:1fr}.animal-top{align-items:flex-start}.pet-pager{grid-template-columns:1fr 1fr}.pet-pager span{grid-column:1/-1;grid-row:1}.pet-pager a{grid-row:2}}
@media(max-width:480px){.animal-top{display:grid}.animal-top pre{width:max-content;max-width:100%;justify-self:center}.owner-code{width:100%;text-align:right}}
@media(forced-colors:active){button,.pet-search,.animal-card,.today-card,.care-card{border:2px solid ButtonText}}
