:root{--ink:#4c423d;--cream:#fff9e9;--teal:#63bdb4;--orange:#e98f70;--yellow:#f1cf70}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#f8efdd;font:15px/1.5 ui-rounded,'Trebuchet MS',system-ui,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font-family:inherit;font-weight:700;font-size:13px;line-height:1.3;color:inherit;min-height:44px;background:#fff9ed;border:2px solid #d4c7b4;border-radius:15px;padding:10px 16px;cursor:pointer;touch-action:manipulation}button:hover{background:#fff2ce}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #d77e59;outline-offset:4px}button[aria-pressed=true]{border-color:#3d938f;background:#d2eee5}a{color:inherit;text-decoration:none}header{padding:17px 4vw;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #e9ddc6;gap:15px;background:#fff8e8}.brand{font:800 11px system-ui;letter-spacing:2px}.wordmark{font-size:18px}.wordmark>span{color:#dc9a52}nav{display:flex;gap:7px}nav button{padding:8px 12px;min-width:43px}main{max-width:1320px;margin:auto;padding:32px 4vw 20px}[hidden]{display:none!important}h1,h2,p{margin-top:0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#9c614a;margin-bottom:6px}#welcome{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:6vw;min-height:70vh}.welcome-art{aspect-ratio:1.1;position:relative;border:8px solid #fff9eb;border-radius:40px;overflow:hidden;box-shadow:0 12px 0 #e7d6b8;transform:rotate(-2deg)}.welcome-art>img{width:100%;height:100%;object-fit:cover}#welcome-people{position:absolute;inset:0}#welcome-people svg{position:absolute;width:29%;bottom:7%;filter:drop-shadow(0 7px 0 #77584022)}#welcome-people svg:nth-child(1){left:8%;transform:rotate(-6deg)}#welcome-people svg:nth-child(2){left:34%;bottom:9%}#welcome-people svg:nth-child(3){right:5%;transform:rotate(6deg)}.hello{position:absolute;top:25px;left:25px;background:#fff5ca;border:2px solid #cfa463;border-radius:12px;padding:10px;font:800 11px system-ui;letter-spacing:2px;transform:rotate(3deg)}.welcome-copy h1{font-size:clamp(50px,6vw,84px);line-height:1.04;letter-spacing:-3px;margin:15px 0 25px}.welcome-copy em{font-style:normal;color:#3c9f98}.welcome-copy>p:not(.eyebrow){color:#786b5d;max-width:390px;line-height:1.8}.primary{background:var(--teal);border-color:#41998e;color:#173e39;box-shadow:0 4px 0 #3c978b;padding:15px 24px}.primary:hover{background:#7ecdc2}.welcome-note{font-size:11px;margin-top:22px}.world-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.world-bar h1{font-size:31px;letter-spacing:-1px;line-height:1.2;margin:0}.room-nav{display:flex;gap:7px;flex-wrap:wrap}.toolrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.toolrow button{font-size:12px;padding:9px 13px}.toolrow button:nth-child(2){background:#e7d9ed}.toolrow button:nth-child(3){background:#fff0c0}#saved{margin-left:auto;font-size:10px;color:#87775e}.stage-scroll{overflow-x:auto;border:6px solid #fffaf0;border-radius:24px;background:#d9c4a5;box-shadow:0 7px 0 #decbab;overscroll-behavior-x:contain;scrollbar-width:thin}.stage{position:relative;aspect-ratio:1.5;background:center/100% 100% no-repeat;min-width:600px;isolation:isolate;touch-action:pan-x}#entities{position:absolute;inset:0;pointer-events:none}.entity{position:absolute;transform:translate(-50%,-100%);background:transparent;border:0;border-radius:10px;padding:0;min-height:0;touch-action:none;user-select:none;-webkit-user-select:none;pointer-events:auto;cursor:grab;transition:filter .1s;filter:drop-shadow(0 5px 1px #604b3925)}.entity:hover{background:transparent}.entity svg{display:block;width:100%;height:auto;pointer-events:none}.entity.selected{filter:drop-shadow(0 0 5px #fff5bb) drop-shadow(0 0 3px #7165b7)}.entity.dragging{z-index:1000!important;cursor:grabbing;filter:drop-shadow(0 9px 6px #62453955)}.entity .held{position:absolute;right:-14%;top:60%;width:48%;pointer-events:none}.entity .name{position:absolute;top:100%;left:50%;transform:translateX(-50%);font-size:10px;padding:1px 8px;border-radius:7px;background:#fff9e6dd;white-space:nowrap}.entity:not(.selected) .name{display:none}.context{margin-top:20px;display:flex;justify-content:space-between;gap:15px;align-items:center;background:#fff8e8;border:2px solid #e8dac2;border-radius:16px;padding:13px 16px;min-height:74px}#selected-label{font-size:13px;font-weight:700}#context-actions{display:flex;gap:6px;flex-wrap:wrap}#context-actions button{font-size:11px;padding:8px 11px}.move-tip{font-size:11px;color:#8a7c69;text-align:center;margin:12px 0}.world-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}#residents{display:flex;gap:8px;flex-wrap:wrap}#residents button{display:flex;align-items:center;padding:4px 12px 4px 5px;font-size:12px;gap:6px}#residents svg{width:32px;height:48px}#home-menu{font-size:11px}.stage #bubble{position:absolute;top:9%;left:50%;transform:translateX(-50%);background:#fffbeb;border:3px solid #b89769;border-radius:25px;padding:13px 22px;z-index:1100;font-size:18px;opacity:0;pointer-events:none;white-space:nowrap}.stage #bubble.show{opacity:1}.wave{animation:wave .6s ease-in-out 2}@keyframes wave{0%,100%{transform:translate(-50%,-100%) rotate(-4deg)}50%{transform:translate(-50%,-100%) rotate(4deg)}}dialog{width:min(780px,94vw);padding:26px;border:3px solid #d0b995;border-radius:25px;background:#fff8e8;color:var(--ink);max-height:90dvh;overflow:auto;box-shadow:0 10px 80px #533c3c44}dialog::backdrop{background:#3b373b88}.dialog-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:20px}.dialog-heading h2{font-size:27px;margin:6px 0}.dialog-heading button{font-size:22px;min-width:44px;padding:4px}.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.catalog-grid button{display:flex;align-items:center;flex-direction:column;gap:5px;font-size:11px;padding:10px}.catalog-grid svg{width:84px;height:68px}.catalog-grid .avatar svg{height:110px}.wardrobe-layout{display:grid;grid-template-columns:210px 1fr;gap:28px}.wardrobe-preview{background:#f4dfd2;border-radius:90px 90px 20px 20px;align-self:start;padding:12px}.wardrobe-preview svg{width:100%;display:block}.wardrobe-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wardrobe-controls label{font-size:11px;font-weight:700}.wardrobe-controls select{width:100%;margin-top:5px;padding:11px 8px;border:2px solid #d8c6ae;border-radius:10px;background:#fffdf5;color:var(--ink);font:13px inherit;min-height:44px}.dialog-copy{font-size:14px;line-height:1.8;color:#7a6b59}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.empty{padding:30px;text-align:center}.badge-note{padding:16px;border-radius:16px;background:#e3edc9}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#514437;color:#fff5d7;border-radius:15px;padding:12px 22px;z-index:10000;max-width:90vw;text-align:center;font-size:12px;opacity:0;pointer-events:none}#toast.show{opacity:1}footer{font-size:10px;text-align:center;color:#8c7c68;padding:22px 5vw 30px}@media(max-width:850px){#welcome{grid-template-columns:1fr 1fr;gap:25px}.world-bar{align-items:start;flex-direction:column}.stage{min-width:720px}.context{align-items:start;flex-direction:column}.wordmark{font-size:14px}.welcome-copy h1{font-size:52px}.stage-scroll{border-width:4px}.catalog-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:550px){main{padding:23px 16px 12px}header{padding:12px 16px;gap:10px}.brand{font-size:9px;letter-spacing:1px}.wordmark{display:none}#welcome{grid-template-columns:1fr;gap:35px}.welcome-art{aspect-ratio:1.3}.welcome-copy h1{font-size:60px}.welcome-copy>p:not(.eyebrow){max-width:none}.room-nav{gap:5px}.room-nav button{font-size:11px;padding:9px 11px}.world-bar{gap:14px;margin-bottom:15px}.world-bar h1{font-size:27px}.toolrow{gap:5px}.toolrow button{padding:8px;font-size:10px}#saved{display:block;width:100%;text-align:right;margin:3px 0}.stage-scroll{border-radius:16px}.world-bottom{align-items:end}#residents{gap:4px}#residents button{padding:3px 6px;font-size:10px;gap:2px}#residents svg{width:24px;height:37px}.wardrobe-layout{grid-template-columns:110px 1fr;gap:15px}.wardrobe-controls{grid-template-columns:1fr}.wardrobe-preview{position:sticky;top:10px}.catalog-grid{gap:8px}.catalog-grid button{padding:8px 4px}.catalog-grid svg{width:65px;height:56px}dialog{padding:19px}.dialog-heading h2{font-size:23px}#context-actions button{padding:8px;font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

dialog.avatar-dialog{width:min(1040px,96vw)}.avatar-dialog .wardrobe-layout{grid-template-columns:230px 1fr;align-items:start}.avatar-left{position:sticky;top:0}.avatar-left .wardrobe-preview{padding:15px 20px;background:linear-gradient(#efd7e3,#e5ece0);border:3px solid #e2c0b7;border-radius:100px 100px 24px 24px}.avatar-left>label{font-size:11px;font-weight:700;display:block;margin-top:15px}.avatar-left input{display:block;width:100%;min-height:44px;padding:10px;border:2px solid #cfb99a;border-radius:12px;background:#fffdf7;font:15px inherit;color:var(--ink);margin-top:4px}.avatar-save{font-size:10px;color:#9a8771;line-height:1.7;margin-top:10px}.avatar-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:17px}.avatar-bar select{min-height:44px;padding:8px 14px;border:2px solid #cbb798;border-radius:12px;background:#fffaf0;color:var(--ink);font:14px inherit}.avatar-bar button{background:#f3d58b}.avatar-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:2px solid #e3d3b9;padding-bottom:15px}.avatar-tabs button{font-size:11px;padding:8px 12px;min-height:40px}.avatar-right h3{font-size:17px;margin:19px 0 12px}.avatar-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.avatar-choices button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:127px;padding:12px;font-size:11px;background:#fffdf6}.avatar-choices img{width:100%;height:76px;object-fit:contain}.avatar-choices button[aria-pressed=true]{background:#dfefdc;border:3px solid #65a696}.color-swatch{width:54px;height:54px;border:3px solid #675344;border-radius:50%;display:block}.accessory-symbol{font:48px Georgia;color:#a27b50}.entity svg image{pointer-events:none}@media(max-width:650px){.avatar-dialog .wardrobe-layout{grid-template-columns:110px minmax(0,1fr);gap:12px}.avatar-left .wardrobe-preview{padding:7px 3px}.avatar-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.avatar-choices button{min-height:100px;padding:8px 3px;font-size:10px}.avatar-choices img{height:56px}.avatar-tabs{gap:4px}.avatar-tabs button{padding:7px;font-size:10px;min-height:36px}.avatar-bar{gap:6px}.avatar-bar select,.avatar-bar button{width:100%;font-size:11px}.avatar-left input{font-size:12px}.avatar-save{font-size:9px}}
@media(min-width:851px){.stage-scroll{width:min(100%,max(550px,calc((100dvh - 340px)*1.5)));margin-inline:auto}.stage{min-width:0}}
