:root{color:#241f1a;font-synthesis:none;text-rendering:optimizelegibility;background:#191714;font-family:ui-rounded,SF Pro Rounded,Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100dvh;margin:0;overflow:hidden}button,input,textarea{font:inherit}.app-shell{background:radial-gradient(circle at 20% 10%,#ffd57d24,#0000 22%),radial-gradient(circle at 78% 24%,#63ae971f,#0000 24%),linear-gradient(135deg,#151716,#20201c 48%,#121416);width:100vw;height:100dvh;min-height:100dvh;position:relative;overflow:hidden}.file-input{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.room-canvas{cursor:pointer;width:100vw;height:100dvh;image-rendering:pixelated;touch-action:none;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:0}.onboarding-card{z-index:4;color:#fff8ee;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#121412d1;border:2px solid #fff8eead;border-radius:8px;width:min(420px,100vw - 44px);padding:18px;position:fixed;top:22px;left:22px;box-shadow:0 20px 60px #00000057}.onboarding-card h1,.onboarding-card p{margin:0}.onboarding-card h1{margin-bottom:10px;font-size:clamp(1.8rem,5vw,2.8rem);line-height:.98}.onboarding-card p{color:#fff8eec7;line-height:1.55}.eyebrow{text-transform:uppercase;font-size:.76rem;font-weight:900;color:#ffd66b!important;margin-bottom:10px!important}.identity-card,.loading-card{gap:12px;display:grid}.loading-card h1{margin-bottom:0}.loading-bar{background:#fff8ee29;border-radius:8px;height:8px;position:relative;overflow:hidden}.loading-bar span{border-radius:inherit;background:#ffd66b;width:42%;animation:1s ease-in-out infinite loading-slide;position:absolute;inset:0 auto 0 0}.identity-card h1{margin-bottom:0}.identity-card label,.state-control{color:#fff8eeb8;text-transform:uppercase;gap:6px;font-size:.78rem;font-weight:900;display:grid}.identity-card input,.identity-card textarea{color:#fff8ee;background:#fff8ee1a;border:1px solid #fff8ee47;border-radius:8px;outline:none;width:100%;padding:10px 12px}.identity-card textarea{resize:vertical}.identity-card input:focus,.identity-card textarea:focus{border-color:#ffd66b}.state-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.state-options button{color:#fff8ee;cursor:pointer;background:#fff8ee14;border:1px solid #fff8ee3d;border-radius:8px;min-height:36px;font-size:.76rem;font-weight:950}.state-options button.selected{color:#fff8ee;background:#ffd66b2e;border-color:#ffd66b}.primary-action,.room-choice{cursor:pointer;border-radius:8px}.primary-action{color:#191714;background:#fff8ee;border:0;min-height:44px;font-weight:950}.primary-action:disabled{cursor:wait;opacity:.72}.pet-inspector{z-index:6;color:#fff8ee;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#121412db;border:2px solid #fff8eead;border-radius:8px;gap:12px;width:min(580px,100vw - 36px);max-height:calc(100dvh - 96px);padding:14px;display:grid;position:fixed;top:18px;right:18px;overflow:auto;box-shadow:0 24px 70px #00000061}.pet-inspector-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pet-inspector h2,.pet-inspector p{margin:0}.pet-inspector h2{font-size:1.35rem;line-height:1.05}.pet-inspector p:not(.eyebrow){color:#fff8eeb8;margin-top:6px;font-size:.88rem;line-height:1.4}.icon-action{color:#fff8ee;cursor:pointer;background:#fff8ee14;border:1px solid #fff8ee3d;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:1rem;font-weight:950;line-height:1;display:inline-grid}.pet-state-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.pet-state-card{background:#fff8ee14;border:1px solid #fff8ee33;border-radius:8px;gap:6px;min-width:0;padding:8px;display:grid}.pet-state-canvas{width:100%;max-width:148px;height:112px;image-rendering:pixelated;justify-self:center}.pet-state-card strong{color:#fff8eedb;text-align:center;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.78rem;font-weight:950;overflow:hidden}.room-picker{gap:8px;display:grid}.room-choice{color:#fff8ee;text-align:left;background:#fff8ee14;border:1px solid #fff8ee38;gap:3px;width:100%;padding:10px 12px;display:grid}.room-choice strong{font-size:.95rem}.room-choice span{color:#fff8eead;font-size:.82rem;line-height:1.35}.room-choice.selected{background:#ffd66b24;border-color:#ffd66b}.room-badge{z-index:5;color:#fff8ee;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121412b8;border:2px solid #fff8ee94;border-radius:8px;margin:0;padding:8px 10px;font-size:.82rem;font-weight:950;position:fixed;top:18px;left:18px;box-shadow:0 14px 32px #00000047}.room-panel{z-index:5;gap:8px;width:min(340px,100vw - 36px);display:grid;position:fixed;top:18px;left:18px}.room-panel .room-badge{width:fit-content;position:static}.room-panel label,.room-panel .state-control{color:#fff8eeb8;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121412b8;border:2px solid #fff8ee94;border-radius:8px;gap:6px;padding:10px;font-size:.72rem;font-weight:900;display:grid;box-shadow:0 14px 32px #00000047}.room-panel .state-options{grid-template-columns:repeat(4,minmax(0,1fr))}.room-panel input{color:#fff8ee;text-transform:none;background:#fff8ee1a;border:1px solid #fff8ee47;border-radius:8px;outline:none;width:100%;padding:9px 10px}.room-panel input:focus{border-color:#ffd66b}.floating-upload,.floating-error,.github-link{z-index:5;color:#fff8ee;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121412c7;border:2px solid #fff8eead;border-radius:8px;position:fixed;box-shadow:0 14px 32px #00000047}.floating-upload{cursor:pointer;min-height:44px;padding:0 16px;font-weight:900;transition:transform .18s,background .18s;bottom:18px;right:18px}.floating-upload:hover{background:#2b2118e6;transform:translateY(-2px)}.floating-upload:disabled{cursor:wait;opacity:.72;transform:none}.floating-upload:focus-visible{outline-offset:4px;outline:3px solid #e6a73d}.github-link{color:#fff8ee;align-items:center;min-height:38px;padding:0 12px;font-size:.82rem;font-weight:950;text-decoration:none;transition:transform .18s,background .18s;display:inline-flex;bottom:18px;left:18px}.github-link:hover{background:#2b2118e6;transform:translateY(-2px)}.github-link:focus-visible{outline-offset:4px;outline:3px solid #e6a73d}.floating-error{color:#ffd8d1;max-width:min(420px,100vw - 36px);margin:0;padding:12px 14px;font-weight:800;bottom:68px;left:18px}@keyframes loading-slide{0%{transform:translate(-100%)}50%{transform:translate(70%)}to{transform:translate(240%)}}@media (width<=720px){.onboarding-card{width:calc(100vw - 24px);max-height:calc(100dvh - 84px);top:12px;left:12px;overflow:auto}.pet-inspector{width:auto;max-height:calc(100dvh - 84px);top:12px;left:12px;right:12px}.pet-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
