:root{--bg-base: #FAF6EE;--bg-surface: #FCF9F2;--bg-elevated: #F4EDDF;--bg-capsule: #EFE6D5;--bg-glass: rgba(252, 249, 242, .88);--ink-primary: #1F1915;--ink-secondary: #332D2D;--ink-muted: #5C4D41;--ink-faint: #8A8278;--gold-primary: #CBA851;--gold-deep: #7A6345;--gold-border: #BDA582;--gold-soft: rgba(203, 168, 81, .16);--jade-primary: #2E6F5E;--jade-bright: #499B84;--jade-soft: rgba(46, 111, 94, .11);--cinnabar-primary: #841D1E;--cinnabar-warm: #B83B35;--cinnabar-soft: rgba(132, 29, 30, .1);--slate-tech: #3E6B78;--slate-soft: rgba(62, 107, 120, .12);--card-shadow: 0 10px 30px rgba(45, 34, 22, .065), inset 0 0 0 3px rgba(252, 249, 242, .9), inset 0 0 0 4px rgba(189, 165, 130, .25);--radius-outer: 26px;--radius-card: 22px;--radius-capsule: 16px;--radius-pill: 999px;--font-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", serif;--font-sans: "PingFang SC", -apple-system, BlinkMacSystemFont, "Noto Sans SC", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Menlo", monospace}[data-theme=dark]{--bg-base: #13110F;--bg-surface: #1B1815;--bg-elevated: #24201C;--bg-capsule: #2C2621;--bg-glass: rgba(27, 24, 21, .9);--ink-primary: #FAF6EE;--ink-secondary: #E4DDD3;--ink-muted: #A89F94;--ink-faint: #736B61;--gold-primary: #D4B25E;--gold-deep: #A6895B;--gold-border: rgba(203, 168, 81, .34);--gold-soft: rgba(203, 168, 81, .14);--jade-primary: #499B84;--jade-bright: #63BFA5;--jade-soft: rgba(73, 155, 132, .16);--cinnabar-primary: #B83B35;--cinnabar-warm: #D45B55;--cinnabar-soft: rgba(184, 59, 53, .18);--slate-tech: #5D94A4;--slate-soft: rgba(93, 148, 164, .16);--card-shadow: 0 14px 36px rgba(0, 0, 0, .42), inset 0 0 0 2px rgba(255, 250, 240, .04), inset 0 0 0 3px rgba(203, 168, 81, .16)}*{box-sizing:border-box}html,body{margin:0;padding:0;background-color:var(--bg-base);color:var(--ink-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;transition:background-color .25s ease,color .25s ease}body{background-image:radial-gradient(circle at 12% 8%,rgba(203,168,81,.08),transparent 40%),radial-gradient(circle at 88% 15%,rgba(46,111,94,.07),transparent 42%),radial-gradient(circle at 50% 92%,rgba(132,29,30,.05),transparent 45%);min-height:100vh}.bio-card{position:relative;background:var(--bg-surface);border:1.5px solid var(--gold-border);border-radius:var(--radius-card);box-shadow:var(--card-shadow);transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease}.bio-card:hover{transform:translateY(-2px)}.round-tenon{position:absolute;width:14px;height:14px;border-color:var(--gold-deep);opacity:.48;pointer-events:none}.round-tenon.tl{top:9px;left:9px;border-top:2px solid;border-left:2px solid;border-top-left-radius:7px}.round-tenon.tr{top:9px;right:9px;border-top:2px solid;border-right:2px solid;border-top-right-radius:7px}.round-tenon.bl{bottom:9px;left:9px;border-bottom:2px solid;border-left:2px solid;border-bottom-left-radius:7px}.round-tenon.br{bottom:9px;right:9px;border-bottom:2px solid;border-right:2px solid;border-bottom-right-radius:7px}.cinnabar-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;background:var(--cinnabar-primary);color:#fffdfc;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.1em;box-shadow:0 2px 8px #841d1e38,inset 0 0 0 1px #ffffff38}.jade-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;background:var(--jade-soft);color:var(--jade-primary);border:1px solid rgba(46,111,94,.28);border-radius:999px;font-size:12px;font-weight:600}.gold-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;background:var(--gold-soft);color:var(--gold-deep);border:1px solid var(--gold-border);border-radius:999px;font-size:12px;font-weight:600}.lifespan-track{position:relative;width:100%;height:18px;background:var(--bg-capsule);border-radius:999px;border:1.5px solid var(--gold-border);box-shadow:inset 0 2px 5px #140f0a1a;overflow:visible}.lifespan-fill{height:100%;border-radius:999px;position:relative;transition:width .6s cubic-bezier(.22,1,.36,1)}.lifespan-beacon{position:absolute;right:-7px;top:50%;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background:#fffdf9;border:3.5px solid var(--jade-primary);box-shadow:0 0 0 4px #2e6f5e33,0 2px 6px #00000040}@keyframes pulse-gentle{0%,to{box-shadow:0 0 0 3px #2e6f5e2e}50%{box-shadow:0 0 0 7px #2e6f5e0f}}.lifespan-beacon{animation:pulse-gentle 2.8s infinite ease-in-out}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 20px;border-radius:999px;border:1.5px solid rgba(255,255,255,.18);background:linear-gradient(135deg,var(--jade-primary) 0%,#1F4E42 100%);color:#faf6ee;font-size:14px;font-weight:700;letter-spacing:.04em;cursor:pointer;box-shadow:0 4px 14px #2e6f5e3d;transition:all .18s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:999px;border:1.5px solid var(--gold-border);background:var(--bg-elevated);color:var(--ink-primary);font-size:13px;font-weight:600;cursor:pointer;transition:all .18s ease}.btn-secondary:hover:not(:disabled){background:var(--bg-capsule);border-color:var(--gold-primary)}.btn-cinnabar{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:var(--cinnabar-primary);color:#fffdfc;font-size:13px;font-weight:700;cursor:pointer;transition:all .18s ease}.btn-cinnabar:hover:not(:disabled){filter:brightness(1.08)}.bio-input,.bio-select,.bio-textarea{width:100%;padding:10px 14px;border-radius:14px;border:1.5px solid var(--gold-border);background:var(--bg-base);color:var(--ink-primary);font-size:14px;font-family:var(--font-sans);outline:none;transition:border-color .18s ease,box-shadow .18s ease}.bio-input:focus,.bio-select:focus,.bio-textarea:focus{border-color:var(--jade-primary);box-shadow:0 0 0 3px var(--jade-soft)}.tabular-nums{font-variant-numeric:tabular-nums;font-family:var(--font-mono)}.pets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:22px}@media(max-width:640px){.pets-grid{grid-template-columns:1fr}}
