:root{--bg: #faf3e7;--card: #fffdf8;--text: #2b2118;--muted: #8a7a68;--accent: #ff8a4c;--accent-press: #e67335;--track: #f0e6d6;--shadow: 0 12px 32px rgba(80, 50, 20, .18);border-radius:24px}@media(prefers-color-scheme:dark){:root{--bg: #241d16;--card: #322a20;--text: #f4e9dc;--muted: #a89880;--track: #443a2d;--shadow: 0 12px 32px rgba(0, 0, 0, .45)}}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text);transition:background .3s}#root{max-width:480px;margin:0 auto;padding:12px 14px 24px}.screen{display:flex;flex-direction:column;gap:14px}.topbar{display:flex;flex-direction:column;gap:6px}.topbar__name{font-size:26px;font-weight:800;letter-spacing:.2px}.topbar__meta{display:flex;gap:8px;flex-wrap:wrap}.chip{background:var(--card);border-radius:999px;padding:4px 12px;font-size:14px;box-shadow:var(--shadow)}.scene{perspective:900px;display:grid;place-items:center;padding:18px 0}.pet3d{position:relative;width:min(78vw,320px);aspect-ratio:1;background:var(--card);border-radius:24px;box-shadow:var(--shadow);display:grid;place-items:center;transform-style:preserve-3d;will-change:transform}.pet3d__img{width:100%;height:100%;object-fit:cover;border-radius:24px;-webkit-user-select:none;user-select:none}.pet3d__emoji{font-size:120px;filter:drop-shadow(0 10px 18px rgba(80,50,20,.25))}.pet3d__badge{position:absolute;top:10px;right:12px;font-size:22px}.stats{display:flex;flex-direction:column;gap:8px;background:var(--card);border-radius:24px;padding:14px;box-shadow:var(--shadow)}.stat{display:grid;grid-template-columns:26px 1fr 34px;align-items:center;gap:8px}.stat__icon{font-size:18px;text-align:center}.stat__track{height:12px;border-radius:999px;background:var(--track);overflow:hidden}.stat__fill{height:100%;border-radius:999px}.stat__num{font-variant-numeric:tabular-nums;font-size:13px;color:var(--muted);text-align:right}.actions__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.actions__btn{border:0;border-radius:18px;padding:14px 10px;font-size:15px;font-weight:600;color:#fff;background:var(--accent);cursor:pointer;box-shadow:0 6px 16px #ff8a4c59;transition:filter .15s}.actions__btn:active{filter:brightness(.92)}.actions__btn:disabled{background:var(--track);color:var(--muted);box-shadow:none;cursor:default}.actions__btn small{font-weight:400;opacity:.85}.actions__err{text-align:center;color:var(--muted);min-height:20px}.hint{color:var(--muted)}
