.pi-dialog{border:0;padding:0;background:#fbfaf1;color:#304f3b;border-radius:26px;width:min(1050px,calc(100% - 30px));max-width:none;max-height:min(92vh,920px);box-shadow:0 28px 100px #1b342d70;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}.pi-dialog::backdrop{background:#203d338c;backdrop-filter:blur(4px)}.pi-dialog *{box-sizing:border-box}.pi-shell{overflow:auto;max-height:min(92vh,920px)}.pi-header{display:flex;justify-content:space-between;gap:20px;padding:24px 28px 17px}.pi-eyebrow{font-size:10px;font-weight:700;color:#90a884;letter-spacing:.18em}.pi-header h2{font-family:"Songti SC",serif;font-size:27px;font-weight:500;letter-spacing:.05em;margin:8px 0}.pi-header p,.pi-room-subtitle{margin:0;font-size:12px;color:#899b85}.pi-close{border:1px solid #dce7d5;background:white;color:#628168;width:38px;height:38px;border-radius:50%;font-size:23px;cursor:pointer}.pi-tabs{display:flex;gap:7px;padding:0 28px 16px;overflow:auto}.pi-tab{white-space:nowrap;border:1px solid #e1eadc;border-radius:12px;background:#fffef9;color:#789278;padding:10px 16px;font:inherit;font-size:12px;cursor:pointer}.pi-tab.is-active{background:#456e50;color:white;border-color:#456e50}.pi-body{display:grid;grid-template-columns:minmax(0,1fr) 270px;border-top:1px solid #e5eadc}.pi-room-area{padding:22px 25px}.pi-room-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.pi-room-title{font-size:16px;margin:0 0 5px}.pi-badge{font-size:11px;color:#89a07f;background:#edf3e6;border-radius:99px;padding:8px 11px;white-space:nowrap}.pi-room{position:relative;overflow:hidden;height:420px;border-radius:20px;background:#f4ead2;box-shadow:inset 0 0 0 1px #e4e0cf,0 9px 20px #617b4c18;isolation:isolate}.pi-wall{position:absolute;inset:0 0 39%;background:linear-gradient(90deg,#e2e7d3 0 13%,#f3eedb 13% 87%,#e3e8d4 87%);border-bottom:9px solid #d8c8a6;box-shadow:inset 0 -7px 20px #b5a27c18}.pi-dialog[data-room="bedroom"] .pi-wall{background:linear-gradient(90deg,#e2e4dd 0 13%,#f6e8e1 13% 87%,#e2e4dd 87%)}.pi-dialog[data-room="reading"] .pi-wall{background:linear-gradient(90deg,#dfe8d9 0 13%,#eaf0db 13% 87%,#dfe8d9 87%)}.pi-dialog[data-room="kitchen"] .pi-wall{background:linear-gradient(90deg,#e5e7d7 0 13%,#f7efd7 13% 87%,#e5e7d7 87%)}.pi-window{position:absolute;width:26%;height:57%;left:37%;top:17%;border:9px solid #f9f5e9;border-radius:55px 55px 5px 5px;box-shadow:0 3px 0 #d1bea0,0 0 0 2px #d4c9af;overflow:hidden;background:linear-gradient(#b8dfdd 0 67%,#dce9bf 67%)}.pi-window:before,.pi-window:after{content:"";position:absolute;background:#f9f5e9}.pi-window:before{width:5px;height:100%;left:50%}.pi-window:after{height:5px;width:100%;top:58%}.pi-sun{position:absolute;right:17%;top:22%;width:23px;height:23px;background:#f8e49c;border-radius:50%;box-shadow:0 0 20px #fff9be}.pi-frame{position:absolute;left:19%;top:31%;border:5px solid #e0c8a3;background:#fbf6e8;color:#c0a56f;border-radius:3px;padding:10px 17px;font-size:20px}.pi-garland{position:absolute;right:18%;top:24%;font-size:22px;color:#c8a568}.pi-floor{position:absolute;bottom:0;left:0;right:0;height:43%;background:repeating-linear-gradient(175deg,#d9bf95 0 23px,#d0b38b 24px 26px);border-radius:0 0 20px 20px;box-shadow:inset 0 12px 16px #866d5030}.pi-grid{position:absolute;inset:-18% 9% 6%;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);gap:3px}.pi-slot{display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;min-width:0;border:1px dashed #fff6d586;background:#fdf5d318;border-radius:12px;cursor:pointer;transition:background .15s,transform .15s}.pi-slot:hover{background:#fff9d76b;transform:translateY(-2px)}.pi-slot.is-filled{border-color:transparent;background:#fff8da20}.pi-slot.is-selected{border:2px solid #699a6e;background:#e8f3db88}.pi-slot-dot{font-size:18px;color:#fff9e9a8}.pi-object{font-size:clamp(27px,4vw,43px);line-height:1;filter:drop-shadow(0 5px 3px #6b60464a)}.pi-object-label{font-size:10px;line-height:1.2;color:#5d6c4b;background:#fffdf0dd;padding:3px 6px;border-radius:8px;margin-top:2px}.pi-instruction{min-height:23px;font-size:12px;color:#6f8d6a;margin-top:13px}.pi-actions{display:flex;gap:7px;margin-top:5px}.pi-actions button{font:inherit;font-size:11px;border:1px solid #dbe8d8;background:#fffef9;color:#698967;padding:8px 12px;border-radius:9px;cursor:pointer}.pi-actions button[hidden]{display:none}.pi-palette{padding:22px 20px;border-left:1px solid #e8eddf;background:#f8faf1}.pi-palette-title{display:flex;align-items:center;justify-content:space-between}.pi-palette-title h3{font-size:14px;margin:0}.pi-palette-title span{font-size:10px;color:#739170;background:#e8f1e4;border-radius:99px;padding:5px 8px}.pi-palette>p,.pi-note{font-size:11px;line-height:1.75;color:#91a08a}.pi-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:14px 0}.pi-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:64px;padding:6px 3px;border:1px solid #e4ebdc;border-radius:12px;background:#fffef9;color:#668365;cursor:pointer;font:inherit}.pi-item:hover,.pi-item.is-selected{border-color:#7ead7e;background:#e7f2e2}.pi-item-icon{font-size:23px}.pi-item-label{font-size:10px}.pi-note{border-top:1px solid #e3ebdc;padding-top:13px}.pi-note strong{color:#769573;font-weight:600}.pi-dialog button:focus-visible{outline:3px solid #d1ae66;outline-offset:2px}@media(max-width:700px){.pi-dialog,.pi-shell{max-height:94vh}.pi-header{padding:20px 18px 15px}.pi-header h2{font-size:23px}.pi-tabs{padding:0 18px 14px}.pi-tab{padding:9px 13px}.pi-body{grid-template-columns:1fr}.pi-room-area{padding:18px}.pi-room{height:330px}.pi-palette{border-left:0;border-top:1px solid #e8eddf;padding:17px 18px}.pi-items{grid-template-columns:repeat(4,minmax(0,1fr))}.pi-item{min-height:58px}.pi-grid{inset:-15% 7% 5%}.pi-object{font-size:31px}.pi-frame{padding:7px 10px}.pi-badge{font-size:10px}}

/* A softer palette for the cloud treehouse. */
.pi-dialog{background:#fffaf2}.pi-eyebrow{color:#ba9a85}.pi-tab.is-active{background:#829476;border-color:#829476}.pi-wall{background:linear-gradient(90deg,#e7ebd9 0 13%,#f7edda 13% 87%,#e7ebd9 87%)}.pi-palette{background:#fbf8f0}.pi-frame{border-radius:50%;background:#fff4e9}.pi-dialog[data-room="bedroom"] .pi-wall{background:linear-gradient(90deg,#eee4df 0 13%,#faeae1 13% 87%,#eee4df 87%)}
