:root{--paper:#f4f0e7;--panel:#faf7ef;--ink:#303446;--muted:#84808b;--line:#ded7cb;--mint:#dce6c7;--green:#4a614c;--lilac:#dfd3ee;--coral:#e9b9af;--shadow:0 7px 24px #50443c0a;--radius:14px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;height:100dvh;min-height:420px;display:flex;flex-direction:column;overflow:hidden}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer}button:disabled{opacity:.36;cursor:not-allowed}button,input,textarea,select{outline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:2px solid #596f4a}button{border:0;background:none}button:hover:not(:disabled){filter:brightness(.975)}.button{padding:13px 19px;min-height:44px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:16px;font-size:12px;font-weight:700;white-space:nowrap;border:1px solid transparent;box-shadow:0 3px 0 #52493e07}.button.primary{background:var(--mint);color:#344b3b;border-color:#c5d3ae}.button.secondary{background:var(--panel);border-color:var(--line)}.text-button{font-size:11px;font-weight:600;min-height:40px;padding:7px 10px}.icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;border-radius:9px;flex-shrink:0}.icon-button:hover{background:#e6dfd344}.icon-button.active{background:var(--mint);color:var(--green)}.danger{color:#a2605a}.eyebrow,.micro{font-family:'Courier New',monospace;font-size:9px;letter-spacing:1.55px;font-weight:700;line-height:1.65}.micro{font-size:8px;letter-spacing:.9px}.topbar{height:76px;flex-shrink:0;display:flex;align-items:center;gap:22px;padding:0 30px;border-bottom:1px solid var(--line);z-index:5;background:var(--paper)}.brand{padding:0;display:flex;align-items:center;gap:9px;white-space:nowrap}.brand b{font-size:31px;letter-spacing:-2px;display:flex;align-items:center;gap:4px}.brand b>span{font-size:32px;color:#8c9f6c;letter-spacing:0}.brand-block{width:18px;display:grid;grid-template-columns:repeat(2,7px);gap:3px;transform:skewY(-13deg)}.brand-block i{background:#555966;width:7px;height:7px}.brand-block i:nth-child(2){background:#b298c9}.brand-block i:nth-child(5){background:#a2b477}.brand-tag{font:700 7px/1.7 'Courier New',monospace;letter-spacing:1px;border-left:1px solid var(--line);padding-left:17px;margin-left:-4px}.topbar nav{display:flex;height:100%;gap:24px;margin-left:12px}.topbar nav button{font-size:11px;padding:0;white-space:nowrap}.nav-current{border-bottom:2px solid var(--ink);font-weight:700}.nav-current span{padding-left:10px}.header-end{margin-left:auto;display:flex;align-items:center;gap:12px}.save-status{font:700 8px 'Courier New',monospace;letter-spacing:.7px;color:#6c7f60;max-width:155px;line-height:1.5}.save-status.warning{color:#9d7350}.room-heading{display:flex;gap:15px;align-items:center;min-width:0;flex:1}.back-button{display:flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap;min-height:40px}.back-button>span:first-child{font-size:20px}.unit-code{padding:6px 8px;background:#e5dcef;color:#6a5e7b;border-radius:5px;font:700 10px 'Courier New',monospace;white-space:nowrap}.room-heading>#roomHeading{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#layout{position:relative;flex:1;min-height:0;background:radial-gradient(ellipse at 69% 47%,#f6f1ec00 10%,#ece6db50 85%)}.hero{position:absolute;z-index:2;top:0;bottom:0;left:0;padding:50px 0 24px 38px;width:333px;display:flex;flex-direction:column;pointer-events:none}.hero>*{pointer-events:auto}.eyebrow .asterisk{color:#8c9f6c;font-size:18px;vertical-align:-2px;padding-right:7px}.hero h1{font-size:66px;line-height:.99;letter-spacing:-3.6px;margin:32px 0 24px;font-weight:800}.underlined{position:relative;display:inline-block}.underlined:after{content:'';position:absolute;height:5px;background:#b7c896;bottom:-12px;left:-5px;width:110%;border-radius:50%;transform:rotate(-4deg)}.hero>p{font-size:13px;color:#7b7784;line-height:1.9;margin:8px 0 23px}.hero-cta{align-self:flex-start;margin-bottom:12px}.hero>.micro{color:#78777d;font-size:7px}.intro-note{background:#fffcf5;border:1px solid #ddd2c2;border-radius:13px;margin-top:auto;margin-bottom:25px;padding:22px 18px;box-shadow:0 5px 0 #cfc2ae25;display:flex;gap:15px;transform:rotate(-1.5deg);width:265px}.note-num{width:30px;height:30px;border-radius:50%;background:#efe5cc;display:grid;place-items:center;font:700 12px 'Courier New',monospace;flex-shrink:0}.intro-note b{font-size:15px;letter-spacing:-.3px}.intro-note p{font-size:11px;line-height:1.6;color:#827886;margin:8px 0}.note-doodle{font-size:21px;color:#a396bc;letter-spacing:7px}.prototype-note{font:9px/1.8 'Courier New',monospace;color:#726e7a}.prototype-note>span:last-child{font-size:8px;color:#98909b}.status-dot{display:inline-block;width:5px;height:5px;background:#8ca679;border-radius:50%;margin-right:7px;vertical-align:1px}#stage{position:absolute;inset:0 0 0 290px;overflow:hidden;background:radial-gradient(ellipse at 57% 34%,#e9dbe333 0,transparent 65%);touch-action:none}#world{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#world:active{cursor:grabbing}.stage-tag{position:absolute;left:65px;top:26px;font:700 8px 'Courier New',monospace;letter-spacing:1.2px;color:#847b89;pointer-events:none}.stage-tag>span:last-child{color:#b0a7ad}.stage-sticker{position:absolute;right:28px;top:55px;padding:17px 26px 19px 19px;background:#e9def2;border:1px solid #d9c9e6;border-radius:12px;box-shadow:0 4px 0 #9887a513;transform:rotate(4deg);pointer-events:none}.stage-sticker>span{display:block;font:700 7px 'Courier New',monospace;letter-spacing:1.5px;color:#9d89b0;margin-bottom:8px}.stage-sticker b{font-size:15px;line-height:1.2;letter-spacing:-.4px}.stage-sticker i{position:absolute;bottom:12px;right:13px;color:#9982af;font-style:normal;font-size:20px}.camera-tools{position:absolute;right:24px;bottom:35px;background:#fffaf0e8;border:1px solid var(--line);border-radius:13px;padding:3px;box-shadow:var(--shadow);display:flex;align-items:center;z-index:3;backdrop-filter:blur(6px)}.camera-tools .icon-button{height:35px;width:35px;font-size:20px}.divider{width:1px;height:17px;background:var(--line);margin:0 3px}.stage-hint{position:absolute;bottom:18px;left:40px;font-size:10px;color:#8c828e;pointer-events:none}.stage-hint span{padding:0 7px}#unitLabels{position:absolute;inset:0;pointer-events:none}.unit-door{position:absolute;transform:translate(-50%,-50%);background:#fff8eaf0;border:1px solid #cbbdaf;box-shadow:0 2px 0 #8f7c6820;border-radius:6px;padding:6px 9px;font-size:9px;min-height:34px;display:flex;gap:8px;align-items:center;pointer-events:auto;max-width:190px;white-space:nowrap;transition:background .15s,box-shadow .15s}.unit-door:hover{background:#e5edcd;box-shadow:0 3px 0 #acbe9466}.unit-door b{font:700 9px 'Courier New',monospace;color:#84718c}.unit-door .arrow{font-size:12px;color:#839767}.unit-door.modified:before{content:'';position:absolute;right:-3px;top:-3px;background:#88a572;width:8px;height:8px;border:2px solid var(--paper);border-radius:50%}.bottom-bar{height:66px;display:flex;align-items:center;gap:12px;padding:0 30px;border-top:1px solid var(--line);flex-shrink:0}.bottom-bar>div:first-child{display:flex;align-items:center;gap:12px}.mini-seal{border:1px dashed #b0a4ae;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;color:#918698;font:700 14px 'Courier New',monospace;transform:rotate(-12deg)}.bottom-bar .micro{font-size:7px;color:#918590}.footer-center{font-size:10px;color:#96909a;margin:auto}.room-only{display:none!important}body[data-view=room] .room-only{display:flex!important}body[data-view=room] .block-only{display:none!important}body[data-view=room] .brand-tag{display:none}body[data-view=room] .topbar{gap:21px}body[data-view=room] .topbar .brand b{font-size:28px}body[data-view=room] #layout{display:grid;grid-template-columns:240px minmax(0,1fr) 263px;gap:0}body[data-view=room] #stage{position:relative;inset:auto;min-width:0;background:radial-gradient(ellipse at 50% 45%,#ece7dd70,transparent 70%)}.side-panel{min-height:0;overflow:auto;background:#faf7efe8;flex-direction:column;border-right:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#d2c7b8 transparent}.side-panel#inspector{border-right:0;border-left:1px solid var(--line)}.panel-title{padding:24px 18px 16px}.panel-title .eyebrow{font-size:7px;color:#958c9b;letter-spacing:1.3px}.panel-title h2{margin:10px 0 5px;font-size:21px;letter-spacing:-.6px}.panel-title p{font-size:10px;color:#8c8590;margin:8px 0 0}.segmented{display:flex;background:#ece6da;border:1px solid #dfd7c9;border-radius:9px;padding:3px;gap:2px}.segmented button{padding:9px 12px;font-size:11px;border-radius:6px;white-space:nowrap;flex:1;min-height:34px}.segmented button.active{background:#fffaf0;box-shadow:0 1px 4px #75695413;font-weight:700}.shelf-tabs{margin:0 14px 10px}.categories{padding:0 12px;display:flex;flex-wrap:wrap;gap:3px;margin-bottom:12px}.categories button{font-size:10px;color:#8d8392;border-radius:6px;padding:7px 8px;min-height:30px}.categories button.active{background:#e5ead8;color:#586852}.catalog-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:0 14px 18px}.catalog-item{border:1px solid #e4dbcf;background:#fffcf6;border-radius:10px;position:relative;display:flex;flex-direction:column;align-items:center;padding:6px 5px 10px;min-height:103px;transition:transform .16s,border-color .16s}.catalog-item:hover{transform:translateY(-2px);border-color:#adb998}.catalog-item img{width:100%;height:66px;object-fit:contain;pointer-events:none}.catalog-item span{font-size:9px;font-weight:700;padding-top:3px}.catalog-item i{position:absolute;right:7px;top:7px;font-size:12px;font-style:normal;color:#9ca887}.catalog-item.shape-item{background:#fbf8f7}.panel-footnote{padding:16px 18px;margin-top:auto;border-top:1px dashed var(--line);font:8px/1.8 'Courier New',monospace;color:#9a8f9a}.stage-toolbar{position:absolute;top:18px;left:50%;transform:translateX(-50%);gap:9px;z-index:3;white-space:nowrap}.history-controls{display:flex;align-items:center;background:#faf6ed;border:1px solid var(--line);border-radius:9px;padding:1px}.history-controls .icon-button{width:33px;height:33px;font-size:22px}.unit-label{position:absolute;left:28px;top:85px;display:flex;flex-direction:column;gap:7px;pointer-events:none}.unit-label .eyebrow{color:#a99aad;font-size:8px}.unit-label h2{font-size:23px;letter-spacing:-.8px;margin:0}.unit-subtitle{font-size:10px;color:#978a95}.viewer-note{display:none!important;position:absolute;left:28px;bottom:75px;background:#fffaf0e6;border:1px solid var(--line);padding:17px 19px;border-radius:12px;box-shadow:var(--shadow);flex-direction:column;gap:7px}.viewer-note>span{font:8px 'Courier New',monospace;letter-spacing:1.3px;color:#9a8da5}.viewer-note>b{font-size:16px}.viewer-note p{font-size:10px;color:#8e8491;margin:0 0 5px}.viewer-note .button{font-size:10px;min-height:36px;padding:9px 13px}body[data-mode=view][data-view=room] .viewer-note{display:flex!important}body[data-mode=view] .side-panel{opacity:.45;pointer-events:none}body[data-mode=view] .editor-footer{opacity:.65}body[data-mode=view] #world{cursor:grab}body[data-mode=edit][data-view=room] #world{cursor:grab}#inspectorContent{width:100%;padding:20px 18px 24px}.inspector-kicker{font:7px 'Courier New',monospace;letter-spacing:1.5px;color:#9d90a2}.inspector-title{display:flex;align-items:center;justify-content:space-between;margin:9px 0 4px;gap:8px}.inspector-title h2{font-size:20px;line-height:1.15;letter-spacing:-.5px;margin:0}.inspector-desc{font-size:10px;line-height:1.6;color:#978b99;margin-bottom:20px}.inspector-section{padding:16px 0;border-top:1px solid #e7ded2}.inspector-section .eyebrow{font-size:8px;color:#948297;letter-spacing:1.1px;margin-bottom:11px;display:block}.field{display:flex;flex-direction:column;gap:7px;font-size:10px;color:#817584;margin:0 0 12px}.field>input:not([type=range]):not([type=color]),.field>select,.field>textarea{min-width:0;width:100%;border:1px solid #ddd3c6;background:#fffcf6;border-radius:7px;color:#484352;padding:9px 10px;font-size:11px;min-height:36px}.field>textarea{resize:vertical;line-height:1.4}.field>input[type=color]{width:100%;height:34px;padding:3px;border:1px solid #ded4c7;border-radius:7px;background:#fff9f0;cursor:pointer}.field>input[type=range],.range-row input[type=range]{width:100%;accent-color:#8ea17a;cursor:pointer;height:18px;margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.swatch-row{display:flex;flex-wrap:wrap;gap:7px;margin:3px 0 8px}.swatch{width:22px;height:22px;background:var(--swatch);border-radius:50%;border:2px solid #fff9f0;box-shadow:0 0 0 1px #d6ccbf;padding:0}.swatch.active{box-shadow:0 0 0 2px #788b63}.range-row{display:grid;grid-template-columns:42px 1fr 36px;gap:8px;align-items:center;margin:10px 0;font-size:10px;color:#8b7e8d}.range-row output{font:10px 'Courier New',monospace;color:#6d636f;text-align:right}.inspector-action{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 12px;background:#e4dced;border:1px solid #d7cbe1;border-radius:9px;font-size:11px;font-weight:700}.inspector-action small{display:block;font:9px/1.5 Arial;margin-top:4px;color:#94819b;font-weight:400}.action-row{display:flex;gap:7px;margin:8px 0}.action-row button{background:#f2ebdf;border:1px solid #dfd4c5;border-radius:7px;min-height:35px;font-size:10px;flex:1;padding:6px}.action-row .danger{background:#f5e8e1;border-color:#e3cfc3}.check-field{display:flex;align-items:center;gap:8px;font-size:10px;color:#837784;margin:5px 0 14px;min-height:27px}.check-field input{accent-color:#8da276}.preset-finish{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.preset-finish button{height:44px;background:#fffaf0;border:1px solid var(--line);border-radius:7px;font-size:10px;display:flex;align-items:center;gap:8px;padding:8px}.preset-finish i{width:19px;height:24px;background:var(--tone);border-radius:4px;display:block}.small-note{font:9px/1.65 Arial;color:#9c8e9e}.editor-footer{height:47px;flex-shrink:0;align-items:center;gap:18px;padding:0 21px;border-top:1px solid var(--line);font-size:9px;color:#948994;background:var(--paper)}.editor-footer>div{margin-left:auto;display:flex;gap:1px}.editor-footer .text-button{font-size:10px}.mobile-tabs{display:none!important}.empty-selection{padding:30px 2px;text-align:center}.empty-selection .large-symbol{font-size:48px;color:#b9adbf}.empty-selection h3{font-size:17px;letter-spacing:-.4px;margin:12px 0}.empty-selection p{font-size:11px;color:#928696;line-height:1.75}.empty-selection .button{font-size:10px}#emptyState{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);pointer-events:none;text-align:center;max-width:220px}#emptyState h2{font-size:21px}#emptyState p{font-size:11px;line-height:1.7;color:#8e8290}#emptyState[hidden]{display:none}
dialog{border:1px solid #d4c9ba;border-radius:17px;background:#f9f5eb;color:var(--ink);padding:0;box-shadow:0 24px 100px #35303a44;max-height:92dvh;max-width:calc(100vw - 30px);overflow:hidden}dialog::backdrop{background:#3d3a494f;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line);gap:15px}.dialog-heading h2{font-size:25px;letter-spacing:-.8px;margin:4px 0}.dialog-heading .eyebrow{font-size:7px;color:#97869f}.dialog-heading .icon-button{background:#eee5d8;border:1px solid #e0d5c6}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:11px;padding:14px 21px;border-top:1px solid var(--line);background:#f8f2e8;flex-shrink:0}.dialog-footer>span{font-size:9px;color:#a093a3;margin-right:auto}.dialog-footer>.text-button:first-child{margin-right:auto}.art-dialog{width:920px}.art-main{display:grid;grid-template-columns:minmax(0,1fr) 257px;max-height:calc(92dvh - 171px);overflow:hidden}.art-workspace{padding:16px 22px;background:#ece5d9;display:flex;flex-direction:column;min-width:0;align-items:center}.art-tools{display:flex;gap:4px;background:#fcf8ee;border:1px solid #ded3c2;border-radius:9px;padding:4px;margin-bottom:16px;width:100%;justify-content:center}.art-tools button{font-size:10px;min-height:34px;padding:8px 11px;border-radius:6px;white-space:nowrap}.art-tools button.active{background:#dfd3eb}.art-canvas-wrap{max-width:490px;width:min(100%,calc(92dvh - 290px));aspect-ratio:1;box-shadow:0 7px 23px #5e4f4415;touch-action:none}.art-canvas-wrap canvas{width:100%;height:100%;display:block;touch-action:none;background:repeating-conic-gradient(#e4dfd8 0 25%,#faf7f2 0 50%) 50%/20px 20px}.art-caption{font-size:9px;color:#9a899f;line-height:1.7;text-align:center;margin:12px 0 0}.art-settings{padding:19px 17px;overflow:auto;scrollbar-width:thin;border-left:1px solid var(--line)}.art-settings .field{font-size:9px}.layers-title{display:flex;justify-content:space-between;align-items:center;margin-top:9px;border-top:1px solid var(--line);padding-top:5px}.layers-title .eyebrow{font-size:7px;color:#9b88a5}.layers-title .text-button{font-size:9px;min-height:30px}#artLayers{display:flex;flex-direction:column;gap:5px;margin:3px 0 9px;max-height:160px;overflow:auto}.layer-button{background:#fdf9f1;border:1px solid #ded2c3;padding:9px 10px;text-align:left;border-radius:6px;display:flex;justify-content:space-between;gap:8px;font-size:9px;min-height:33px}.layer-button.active{background:#e6dfed;border-color:#c0acd0}.layer-button span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:140px}.layer-order{display:flex;gap:5px}.layer-order button{font-size:9px;padding:7px 4px;border:1px solid var(--line);border-radius:5px;flex:1;min-height:32px}.polygon-dialog{width:640px}.polygon-dialog>p{font-size:11px;color:#93859a;padding:0 24px;line-height:1.7}.polygon-dialog>canvas{display:block;max-height:45dvh;width:100%;object-fit:contain;background:#eee9df;touch-action:none}.polygon-actions{padding:12px 20px;display:flex;gap:12px;align-items:center}.polygon-actions button{font-size:10px;background:#f4eadd;padding:9px;border:1px solid var(--line);border-radius:6px}.polygon-actions span{font-size:9px;color:#8d7c91;margin-left:auto}.info-dialog{width:610px}.info-dialog #infoContent{padding:12px 24px 24px;max-height:70dvh;overflow:auto;font-size:12px;line-height:1.85}.info-dialog h3{font-size:15px;margin-bottom:5px}.info-dialog p{color:#8b7e90}.directory-grid,.template-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.directory-entry,.template-entry{background:#fffbf3;border:1px solid #dcd1c2;padding:18px 14px;border-radius:10px;text-align:left;display:flex;flex-direction:column;gap:6px;min-height:91px}.directory-entry b{font:10px 'Courier New',monospace;color:#a08cab}.directory-entry span{font-size:14px;font-weight:700}.directory-entry small,.template-entry small{font-size:10px;color:#9a8a9b}.template-entry b{font-size:14px}.template-entry i{display:block;width:100%;height:24px;border-radius:5px;background:var(--tone)}.object-list-entry{display:flex;gap:10px;align-items:center;background:#fffaf0;border:1px solid #e0d4c2;border-radius:8px;margin:6px 0;padding:6px 8px;font-size:11px;min-height:45px;width:100%;text-align:left}.object-list-entry img{width:47px;height:33px;object-fit:contain}.object-list-entry>span{flex:1}.key{font:10px 'Courier New',monospace;padding:3px 5px;background:#e9dfce;border:1px solid #d7c7b2;border-radius:4px;color:#6d5e73}.help-table{border-collapse:collapse;width:100%;font-size:11px}.help-table td{border-bottom:1px solid var(--line);padding:9px}.help-table td:first-child{color:#807084;width:38%}.storage-callout{background:#eee3d3;border:1px solid #deccaf;border-radius:8px;padding:12px 15px;font-size:11px;color:#897456}#toast{position:fixed;left:50%;bottom:85px;transform:translate(-50%,20px);background:#3c4650;color:#fff8e7;border:1px solid #54555a;border-radius:11px;padding:13px 20px;max-width:min(460px,90vw);font-size:12px;line-height:1.5;box-shadow:0 8px 30px #34343c1f;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100}#toast.visible{opacity:1;transform:translate(-50%,0)}#loading{position:fixed;inset:0;z-index:99;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .2s}#loading.gone{opacity:0;pointer-events:none}.loader-mark{width:63px;height:74px;background:#d0b3c6;border:4px solid #faf0df;outline:1px solid #bcaab9;display:grid;place-items:center;font-size:36px;letter-spacing:-2px;font-weight:900;transform:rotate(-7deg);color:#fff9df;border-radius:5px}#loading>b{font-size:18px;letter-spacing:-.4px}#loading>span{font-size:11px;color:#9a8a9c}
@media(min-width:1600px){.hero{padding-left:65px;width:370px}.hero h1{font-size:77px}#stage{left:320px}body[data-view=room] #layout{grid-template-columns:260px minmax(0,1fr) 280px}}
@media(max-width:1200px){.brand-tag{display:none}.topbar{padding:0 20px;gap:17px}.topbar nav{gap:16px}.hero{padding:40px 0 22px 26px;width:300px}.hero h1{font-size:59px}.intro-note{width:238px;padding:18px 12px}.stage-sticker{right:22px;top:58px;padding:14px 19px 16px 13px}.stage-sticker b{font-size:13px}#stage{left:250px}body[data-view=room] #layout{grid-template-columns:212px minmax(0,1fr) 235px}.catalog-grid{padding:0 11px 15px;gap:7px}.catalog-item{min-height:90px}.catalog-item img{height:55px}.panel-title{padding:21px 15px 15px}.panel-title h2{font-size:18px}.unit-label{top:82px;left:20px}.unit-label h2{font-size:19px}.stage-hint{left:20px;font-size:9px}.desktop-note{display:none}.room-heading>#roomHeading{max-width:180px}.stage-sticker{display:none}.hero>p{font-size:12px}.side-panel #inspectorContent{padding:19px 15px}}
@media(max-width:850px){body{min-height:500px}.topbar{height:62px;padding:0 18px;gap:12px}.brand b{font-size:27px}.brand b>span{font-size:27px}.brand-block{transform:scale(.9) skewY(-13deg)}.topbar nav{margin-left:auto;gap:14px}.topbar nav button{font-size:10px}.topbar nav .nav-current,.topbar #aboutButton{display:none}.header-end{gap:5px;margin-left:auto}.save-status{font-size:7px;max-width:105px}.hero{top:0;left:0;bottom:auto;width:100%;padding:23px 23px 0;display:block;pointer-events:none}.hero .eyebrow{font-size:7px;letter-spacing:1.2px}.hero .asterisk{font-size:14px}.hero h1{font-size:46px;line-height:1.01;letter-spacing:-2.5px;margin:15px 0 13px}.hero h1 br{display:none}.hero>p{font-size:11px;line-height:1.65;margin:0}.hero>p br{display:none}.hero-cta{position:fixed;z-index:5;bottom:76px;left:50%;transform:translateX(-50%);min-height:45px;padding:13px 22px;box-shadow:0 6px 20px #74674d18;pointer-events:auto}.hero>.micro{display:none}.intro-note{display:none}.prototype-note{position:fixed;bottom:57px;width:100%;left:0;font-size:7px;text-align:center;pointer-events:none;z-index:5}.prototype-note>span:last-child{display:none}#stage{inset:157px 0 99px}.stage-tag{display:none}.stage-hint{bottom:3px;left:0;width:100%;text-align:center;font-size:8px}.camera-tools{right:12px;bottom:23px;padding:1px;border-radius:9px}.camera-tools .icon-button{width:30px;height:31px;font-size:17px}.unit-door{font-size:7px;padding:4px 7px;gap:5px;min-height:29px;max-width:153px;border-radius:5px}.unit-door b{font-size:8px}.unit-door .arrow{font-size:10px}.bottom-bar{height:48px;padding:0 15px;gap:1px}.bottom-bar .micro{display:none}.mini-seal{width:26px;height:26px;font-size:12px}.footer-center{font-size:8px}.bottom-bar .text-button{font-size:8px;padding:5px 8px}.bottom-bar .text-button#exportBlockButton{font-size:0}.bottom-bar .text-button#exportBlockButton:after{content:'Back up ↗';font-size:8px}
 body[data-view=room] .topbar{gap:12px;padding:0 13px}body[data-view=room] .topbar .brand b{font-size:22px}body[data-view=room] .topbar .brand-block{display:none}body[data-view=room] .topbar .brand b>span{font-size:21px}body[data-view=room] .save-status{display:none}.room-heading{gap:6px}.hide-small,#roomHeading{display:none}.unit-code{font-size:9px;padding:5px 6px}.back-button>span:first-child{font-size:19px}#saveBackButton{font-size:9px;min-height:35px;padding:7px 10px;gap:5px}body[data-view=room] #layout{display:flex;flex-direction:column}body[data-view=room] #stage{position:relative;order:0;inset:auto;flex:1;min-height:180px;width:100%}body[data-view=room] .side-panel{order:1;flex:none;height:255px;width:100%;border-right:0;border-top:1px solid var(--line);display:none!important;background:var(--panel)}body[data-view=room][data-mobile=furniture] #catalogPanel{display:flex!important}body[data-view=room][data-mobile=selected] #inspector,body[data-view=room][data-mobile=room] #inspector{display:flex!important}.mobile-tabs.room-only{display:flex!important;flex-shrink:0;height:59px;padding:3px 12px calc(3px + env(safe-area-inset-bottom,0px));gap:8px;border-top:1px solid var(--line);background:#f7f2e8;z-index:4}body[data-view=block] .mobile-tabs{display:none!important}.mobile-tabs>button{display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;font-size:9px;gap:3px;border-radius:8px;min-height:45px;color:#928292}.mobile-tabs>button>span{font-size:19px;line-height:1.1}.mobile-tabs>button.active{background:#e1e9cd;color:#526748;font-weight:700}.stage-toolbar{top:9px;gap:6px}.stage-toolbar .segmented{padding:2px}.stage-toolbar .segmented button{padding:6px 11px;min-height:31px;font-size:10px}.history-controls .icon-button{width:28px;height:30px;font-size:19px}.unit-label{top:54px;left:17px;gap:4px}.unit-label .eyebrow{font-size:6px}.unit-label h2{font-size:16px;letter-spacing:-.4px}.unit-subtitle{display:none}.camera-tools .room-only{display:flex!important}body[data-view=room] .camera-tools{bottom:19px;right:12px}body[data-view=room] .stage-hint{bottom:4px;font-size:7px;text-align:left;padding:0 15px}body[data-view=room] .editor-footer{display:none!important}.panel-title{padding:11px 16px 7px}.panel-title>.eyebrow{display:none}.panel-title h2{font-size:15px;margin:0}.panel-title p{font-size:9px;margin:5px 0 0}.shelf-tabs{position:absolute;right:13px;width:192px;margin:10px 0;flex-shrink:0;z-index:1;background:#ece6da}.shelf-tabs button{font-size:9px;min-height:27px;padding:4px 8px}.categories{flex-shrink:0;padding:0 12px;margin:4px 0 7px;gap:4px}.categories button{font-size:9px;min-height:27px;padding:5px 8px}.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:0 12px 12px;gap:7px}.catalog-item{min-height:89px;padding:3px 3px 8px}.catalog-item img{height:55px}.catalog-item span{font-size:8px;line-height:1.3}.catalog-item i{font-size:10px;right:5px;top:4px}.panel-footnote{display:none}.side-panel#inspector{border-left:0}#inspectorContent{padding:13px 17px 25px}.inspector-kicker{font-size:6px}.inspector-title h2{font-size:18px}.inspector-desc{margin:6px 0 13px;font-size:9px}.inspector-title{margin:3px 0}.inspector-section{padding:12px 0}.inspector-section .eyebrow{font-size:7px}.inspector-section .range-row{grid-template-columns:42px 1fr 48px}.field{font-size:10px}.empty-selection{padding:10px 20px}.empty-selection .large-symbol{display:none}.empty-selection h3{font-size:16px}.viewer-note{left:17px;bottom:63px;padding:13px 15px;gap:5px}.viewer-note>b{font-size:13px}.viewer-note p{font-size:9px}.viewer-note>span{font-size:7px}.viewer-note .button{font-size:9px;min-height:31px}.viewer-note>p{display:none}body[data-mode=view] .side-panel{display:none!important}body[data-mode=view] .mobile-tabs{opacity:.65}.art-dialog{max-width:100vw;width:100vw;max-height:100dvh;border-radius:12px;margin:auto 0}.dialog-heading{padding:13px 16px}.dialog-heading h2{font-size:21px;letter-spacing:-.5px}.dialog-heading .eyebrow{font-size:6px}.dialog-heading .icon-button{width:33px;height:33px}.art-main{display:flex;flex-direction:column;max-height:calc(100dvh - 146px);overflow:auto}.art-workspace{padding:10px 14px 7px;flex-shrink:0}.art-tools{margin-bottom:10px;padding:3px;gap:0}.art-tools button{padding:6px 9px;font-size:9px;min-height:33px}.art-canvas-wrap{max-width:340px;width:min(100%,37dvh)}.art-caption{font-size:8px;margin-top:7px}.art-settings{overflow:visible;border-left:0;border-top:1px solid var(--line);padding:15px 17px;display:block}.art-settings>.two-col{grid-template-columns:1fr 1fr}.art-settings .field{font-size:9px;margin-bottom:9px}.art-settings>.field:first-child{max-width:100%}.art-settings .small-note{font-size:8px;margin-bottom:3px}.dialog-footer{padding:10px 13px;gap:7px}.dialog-footer .button{font-size:10px;padding:9px 12px;min-height:36px}.dialog-footer>.text-button{font-size:9px;padding:4px 0}.dialog-footer>span{display:none}.polygon-dialog{max-width:96vw}.polygon-dialog>p{padding:0 17px;font-size:10px}.polygon-actions{flex-wrap:wrap;gap:6px}.polygon-actions button{font-size:9px}.polygon-dialog>canvas{max-height:40dvh}#toast{font-size:11px;bottom:73px;padding:11px 16px}.info-dialog #infoContent{padding:10px 17px 20px;font-size:11px}.info-dialog h3{font-size:14px}.directory-grid,.template-grid{gap:9px}.directory-entry,.template-entry{padding:14px 10px;min-height:85px}.directory-entry span,.template-entry b{font-size:12px}
}
@media(max-width:420px){.hero h1{font-size:40px;letter-spacing:-2px}.hero>p{font-size:10px}.hero{padding-top:20px}.topbar{padding:0 14px}.topbar .brand b{font-size:25px}.topbar nav button{font-size:9px}.save-status{max-width:84px;font-size:6px}.topbar .icon-button{width:29px;height:32px;font-size:17px}#stage{top:145px}.unit-door>span:not(.arrow){max-width:88px;overflow:hidden;text-overflow:ellipsis}.footer-center{font-size:7px}.catalog-item span{font-size:7px}.shelf-tabs{width:174px}.panel-title h2{font-size:13px}.panel-title p{font-size:8px}.unit-label h2{font-size:14px}.unit-code{font-size:8px}#saveBackButton{font-size:8px}.art-tools button{font-size:8px;padding:5px 8px}}
@media(max-height:760px) and (min-width:851px){.hero{padding-top:31px}.hero h1{font-size:56px;margin:24px 0 15px}.hero>p{font-size:11px}.intro-note{margin-top:auto;margin-bottom:18px;padding:15px 12px}.intro-note b{font-size:13px}.intro-note p{font-size:10px}.note-doodle{display:none}.hero-cta{font-size:11px;min-height:40px}.prototype-note{font-size:8px}.unit-label{top:77px}.unit-label h2{font-size:20px}}
@media(max-height:740px) and (max-width:850px){body[data-view=room] .side-panel{height:220px}.hero{padding-top:15px}.hero h1{font-size:36px;margin:10px 0}.hero>p{font-size:9px}#stage{top:120px}.hero-cta{bottom:71px;min-height:40px;padding:10px 18px;font-size:11px}.prototype-note{bottom:53px}.unit-door{min-height:25px;font-size:6px;padding:3px 5px}.unit-door b{font-size:7px}.unit-label{top:53px}.unit-label h2{font-size:13px}.art-canvas-wrap{width:min(100%,32dvh)}}
@media(max-width:850px) and (orientation:landscape){body{min-height:320px}.topbar{height:49px}.hero{width:230px;padding:21px}.hero h1{font-size:33px}.hero h1 br{display:block}.hero>p{font-size:10px}.hero-cta{position:static;transform:none;margin-top:14px;font-size:9px;min-height:33px;padding:9px 11px}.prototype-note{display:none}#stage{inset:0 0 0 200px}.bottom-bar{height:38px}.stage-hint{display:none}.camera-tools{bottom:12px}body[data-view=room] #layout{display:grid;grid-template-columns:1fr 250px}body[data-view=room] #stage{inset:auto;min-height:150px}body[data-view=room] .side-panel{height:auto;border-top:0;border-left:1px solid var(--line);width:auto;order:1}.mobile-tabs.room-only{height:43px;padding:2px 20px;gap:12px}.mobile-tabs>button{flex-direction:row;font-size:9px;min-height:32px;gap:6px}.catalog-grid{grid-template-columns:repeat(2,1fr)}.shelf-tabs{position:static;width:auto;margin:2px 12px 5px}.unit-label{top:50px}.art-main{display:grid;grid-template-columns:1fr 250px}.art-canvas-wrap{width:35dvh}.art-dialog .dialog-heading{padding:8px 15px}.art-main{max-height:calc(100dvh - 120px)}.art-settings{overflow:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Specific state rules follow responsive layout rules to avoid generic .room-only
   display utilities revealing hidden overlays or the mobile dock on desktop. */
body[data-view=room][data-mode=edit] #viewerNote{display:none!important}
body[data-view=room][data-mode=view] #catalogPanel,body[data-view=room][data-mode=view] #inspector{display:none!important}
body[data-view=room][data-mode=view] #layout{display:block}
body[data-view=room][data-mode=view] #stage{position:absolute;inset:0;width:100%;height:100%}
@media(min-width:851px){body[data-view=room] .mobile-tabs{display:none!important}.hero h1{font-size:61px;letter-spacing:-3.1px}.hero{width:357px}.hero .intro-note{max-width:265px}.hero>p{max-width:290px}}
@media(min-width:1600px){.hero h1{font-size:71px}.hero{width:397px}}
@media(max-width:1200px) and (min-width:851px){.hero h1{font-size:54px}.hero{width:324px}}

[hidden]{display:none!important}

body[data-view=block] .camera-tools .room-only{display:none!important}
@media(max-width:850px) and (orientation:portrait){.hero h1 br,.hero>p br{display:block}.hero>p{line-height:1.6;margin-top:6px}}

/* A stable canvas prevents settings changes from moving the surface mid-gesture. */
@media(min-width:851px){.art-main{height:calc(92dvh - 171px)}}
@media(max-width:850px){.art-main{height:calc(100dvh - 146px)}}
@media(max-width:850px) and (orientation:landscape){.art-main{height:calc(100dvh - 120px)}}
/* Open House 02 — expanded collection and component character studio. */
#catalogSearch{margin:3px 15px 4px;width:calc(100% - 30px);flex:none;border:1px solid var(--line);background:#fffaf1;border-radius:8px;padding:11px 12px;font-size:11px;min-height:38px;color:var(--ink)}
#catalogSearch[hidden]{display:none}.shelf-tabs button{padding-left:8px;padding-right:8px}.categories{flex-shrink:0;flex-wrap:wrap}.categories button{min-height:29px}.camera-tools #topView{width:77px;font-size:11px;font-weight:700;white-space:nowrap}.colour-editor{margin-top:10px}.colour-preview{border:1px dashed var(--line);border-radius:9px;padding:9px 10px;margin-top:10px;background:#f1ece25c}.colour-preview.pending{border:1px solid #bdcba8;background:#eaf0dc}.colour-preview .micro{font-size:8px;letter-spacing:.8px;color:#718062}.colour-preview .action-row{margin:6px 0 0}.colour-preview button{min-height:34px}.colour-preview .commit-colour{background:#cfdbbd;border-color:#b8c7a4;color:#3e5640}.colour-compare{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:9px}.colour-compare:empty{display:none}.colour-compare>button{display:flex;align-items:center;gap:4px;font-size:9px;padding:4px 7px;border-radius:6px}.colour-compare>button.active{background:#faf7ef}.colour-compare i{width:15px;height:15px;display:inline-block;border-radius:50%;border:1px solid #a19a8d44}.rack-level{display:flex;width:100%;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:7px;background:#fff9ed;padding:11px 9px;margin-top:7px;gap:4px;text-align:left;font-size:10px}.rack-level b{font-size:10px}.rack-level span{font-size:9px;color:var(--muted)}.attachment-label{font-size:11px;color:var(--green);padding:9px 11px;background:#e6edda;border-radius:7px;line-height:1.5}.shelf-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:18px}.people-shelf{display:block!important}.people-intro{font-size:11px;color:var(--muted);margin:0 0 10px}.character-invite{text-align:center;border:1px solid #d9cfdf;border-radius:13px;padding:6px 13px 17px;background:linear-gradient(150deg,#e8e0ed,#f5ead9);margin-bottom:20px}.character-invite img{height:150px;max-width:100%;object-fit:contain}.character-invite h3{font-size:18px;letter-spacing:-.6px;margin:0 0 8px}.character-invite p{font-size:11px;line-height:1.65;color:#7e7382;margin:0 0 14px}.character-invite .button{width:100%;font-size:11px;padding:11px 8px}.character-preset-entry{display:flex;align-items:center;text-align:left;gap:8px;width:100%;padding:3px;border-bottom:1px solid var(--line)}.character-preset-entry img{width:48px;height:64px;object-fit:contain}.character-preset-entry span{font-size:10px;flex:1}.character-preset-entry b{margin-right:8px;color:#8e819a}.character-dialog{width:1060px;height:min(880px,94dvh);max-width:97vw;max-height:96dvh;padding:0;border:1px solid #d7cec2;border-radius:19px;overflow:hidden;background:var(--panel);color:var(--ink)}.character-dialog[open]{display:flex;flex-direction:column}.character-dialog .dialog-heading{padding:18px 25px;flex:none;border-bottom:1px solid var(--line);height:88px}.character-dialog .dialog-heading h2{font-size:25px;margin:2px 0 0;letter-spacing:-1px}.character-session-note{font-size:11px;color:var(--muted);margin-left:auto;margin-right:15px}.character-body{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(330px,1fr);flex:1;min-height:0}.character-controls{display:flex;flex-direction:column;min-width:0;min-height:0;border-left:1px solid var(--line)}#characterTabs{display:flex;gap:2px;border-bottom:1px solid var(--line);padding:8px 9px;flex:none;background:#f3eee5}#characterTabs button{font-size:11px;font-weight:700;padding:10px 4px;flex:1;border-radius:7px;min-height:37px}#characterTabs button.active{background:#e0d5ea;color:#5f536e}#characterFieldScroll{min-height:0;overflow:auto;flex:1;scrollbar-width:thin;scrollbar-color:#cbbdd2 transparent}#characterFields{padding:18px 24px 30px}#characterFields .inspector-section{padding:15px 0;margin:0;border-bottom:1px solid var(--line)}#characterFields .inspector-section:first-child{padding-top:0}#characterFields .field{font-size:10px}#characterFields .field select,#characterFields .field input[type=text]{font-size:12px;min-height:40px}#characterFields .range-row{grid-template-columns:108px minmax(40px,1fr) 40px;font-size:11px;gap:8px}#characterFields .range-row output{font-size:10px}.char-colors{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 13px}.char-colors input[type=color]{width:100%;height:34px;border:1px solid var(--line);border-radius:7px;padding:3px;background:var(--panel);cursor:pointer}.look-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:15px 0 19px}.look-presets button{border:1px solid var(--line);background:#f1ece9;border-radius:9px;padding:5px 4px 10px;display:flex;flex-direction:column;align-items:center}.look-presets button:nth-child(2n){background:#eee5ec}.look-presets button:nth-child(3n){background:#e8eade}.look-presets img{width:100%;height:103px;object-fit:contain}.look-presets b{font-size:9px;line-height:1.5;font-weight:600}.char-guidance{font-size:11px;line-height:1.7;color:#8b7e90;margin:15px 0 0}.pose-presets{display:flex;gap:5px;flex-wrap:wrap;margin:15px 0}.pose-presets button{background:#eae0ef;border:1px solid #d5c8dd;padding:9px 13px;border-radius:7px;font-size:10px;font-weight:700}#characterPreview{position:relative;min-height:0;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#f8efe1 0,#eee6e2 53%,#e0d9e6 100%)}#characterPreview:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.38;background-image:radial-gradient(#b9a5be .6px,transparent .6px);background-size:17px 17px}#characterCanvas{display:block;position:absolute;width:100%;height:100%;touch-action:none;cursor:grab;outline-offset:-4px}#characterCanvas:active{cursor:grabbing}.character-preview-top{position:absolute;left:20px;right:20px;top:20px;display:flex;justify-content:space-between;align-items:center;z-index:1;pointer-events:none}.character-preview-top .micro{font-size:9px;color:#84758c}.draft-pill{background:#f8f3e2c9;border:1px solid #d9ccb8;border-radius:20px;padding:7px 9px;font-family:'Courier New',monospace;font-size:8px;color:#8c7c6b;font-weight:bold;letter-spacing:.55px}.character-nameplate{position:absolute;bottom:83px;left:10px;right:10px;text-align:center;pointer-events:none}.character-nameplate h3{font-size:25px;letter-spacing:-1px;margin:5px 0;color:#594b66}.character-nameplate>span:last-child{font-size:9px;color:#9a869f}.character-nameplate .eyebrow{color:#a18b9e;font-size:8px}.character-view-tools{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:3px;white-space:nowrap;padding:4px;border:1px solid #dbcecd;border-radius:11px;background:#faf6eddb}.character-view-tools button{font-size:10px;padding:8px 9px;min-height:34px;border-radius:7px}.character-view-tools button:hover{background:#e8dfec}.character-footer{height:69px;flex:none;display:flex;align-items:center;gap:10px;justify-content:flex-end;padding:11px 21px;background:#f8f4eb;border-top:1px solid var(--line)}.character-file-actions{display:flex;gap:5px;margin-right:auto}.character-file-actions button{font-size:10px;padding:8px;min-height:36px;border-radius:5px}.character-file-actions button:hover{background:#ece3eb}#characterUndo{font-size:21px}.character-footer>.button{font-size:11px}
@media(max-width:850px){#catalogSearch{margin-top:4px;margin-bottom:2px;padding:8px 10px;min-height:33px}.categories{flex-wrap:nowrap;overflow-x:auto}.categories button{flex:none}.camera-tools #topView{width:64px;font-size:9px}.shelf-tabs button{padding:7px 9px}.people-shelf{padding-top:10px}.character-invite{display:grid;grid-template-columns:90px 1fr;text-align:left;padding:8px 12px;gap:3px 10px;margin:0 0 12px}.character-invite img{grid-row:span 3;width:90px;height:117px}.character-invite h3{font-size:17px;margin:5px 0 0}.character-invite p{font-size:10px;line-height:1.5;margin:0}.character-invite .button{font-size:10px;min-height:33px;padding:8px}.people-intro{display:none}.shelf-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.character-dialog{width:100vw;max-width:100vw;height:98dvh;max-height:98dvh;border-radius:15px 15px 0 0;margin:auto 0 0}.character-dialog .dialog-heading{padding:12px 16px;height:64px}.character-dialog .dialog-heading h2{font-size:21px}.character-dialog .dialog-heading .eyebrow{font-size:8px}.character-session-note{display:none}.character-body{display:flex;flex-direction:column}#characterPreview{height:34%;min-height:208px;flex:none}.character-controls{flex:1;min-height:0;border-left:0;border-top:1px solid var(--line)}#characterTabs{padding:5px 8px}#characterTabs button{min-height:33px;padding:7px 3px;font-size:10px}#characterFields{padding:15px 19px 22px}#characterFields .range-row{grid-template-columns:112px minmax(40px,1fr) 43px}.character-preview-top{left:14px;right:14px;top:9px}.character-preview-top .micro{font-size:8px}.draft-pill{padding:5px 7px;font-size:7px}.character-view-tools{bottom:8px;padding:2px}.character-view-tools button{min-height:27px;padding:5px 10px;font-size:9px}.character-nameplate{bottom:46px;left:12px;right:auto;text-align:left;max-width:40%;}.character-nameplate h3{font-size:14px;margin:3px 0}.character-nameplate>span:last-child{display:none}.character-nameplate .eyebrow{font-size:6px}.character-footer{height:64px;padding:7px 9px;gap:5px}.character-footer>.button{padding:9px 8px;font-size:9px;gap:5px;min-height:38px}.character-file-actions{gap:0}.character-file-actions button{padding:7px 5px;font-size:8px;min-height:35px}#characterUndo{font-size:18px}.look-presets img{height:92px}.look-presets b{font-size:9px}.colour-preview .action-row button{min-height:38px}}
@media(max-height:590px) and (min-width:650px){.character-dialog{height:98dvh;max-height:98dvh}.character-dialog .dialog-heading{height:60px;padding:8px 15px}.character-body{display:grid;grid-template-columns:48% 52%}#characterPreview{height:auto;min-height:0}.character-nameplate{bottom:55px}.character-nameplate h3{font-size:18px}.character-nameplate>span:last-child{display:none}.character-view-tools{bottom:8px}.character-footer{height:53px;padding:6px 13px}}
/* Open House 03 — browse a collection, not a wall of controls. */
#categories{row-gap:5px}.collection-intro{grid-column:1/-1;background:linear-gradient(120deg,#e7dce8,#f3e6d5);border:1px solid #dfd1d8;border-radius:10px;padding:13px 12px;margin:1px 0 4px}.collection-intro .eyebrow{font-size:7px;letter-spacing:1px;display:block;color:#8d748d}.collection-intro strong{display:block;font-size:15px;line-height:1.3;color:#705b77;margin:7px 0}.collection-intro p{font-size:10px;line-height:1.6;color:#8b7a86;margin:0}.collection-jump{font-size:10px;padding:7px 10px;margin-top:8px;border-radius:6px;border:1px solid #cdb8d1;background:#f8f0e6;color:#755c82;font-weight:700}.collection-filters{display:flex;flex-wrap:wrap;gap:4px;padding:3px 17px 10px;flex:none}.collection-filters button{font-size:9px;border:1px solid #ddd1db;padding:5px 7px;border-radius:6px;color:#88758c;background:#f6f0e9;min-height:28px}.collection-filters button.active{background:#bfa8c8;color:#fffaf0;border-color:#bfa8c8}.catalog-item{position:relative}.new-badge{position:absolute;left:7px;top:6px;color:#7f668a;background:#eee2f0;border:1px solid #e0cee5;font:700 6px 'Courier New',monospace;letter-spacing:.4px;border-radius:3px;padding:2px 4px;pointer-events:none}.look-families{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0 3px}.look-families button{font-size:10px;min-height:30px;border:1px solid #ded0df;padding:6px 9px;background:#f4ede9;border-radius:20px;color:#8a768e}.look-families button.active{background:#ad93b6;border-color:#ad93b6;color:#fff8ec}.look-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.look-presets img{height:116px}.look-presets button{transition:transform .12s,box-shadow .12s;overflow:hidden}.look-presets button:hover{transform:translateY(-2px);box-shadow:0 5px 10px #9e80981c;border-color:#ae95b8}.look-presets small{font-size:7px;letter-spacing:.6px;color:#ac94ab;margin-top:3px;text-transform:uppercase}.style-palettes{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 14px}.style-palettes button{padding:9px;background:#f4ede8;border:1px solid #ded2d7;border-radius:8px;text-align:left}.style-palettes button>span{display:flex;gap:3px}.style-palettes i{display:block;height:14px;flex:1;border-radius:4px}.style-palettes b{display:block;font-size:9px;color:#89758b;font-weight:600;margin-top:6px}.outfit-sets{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0}.outfit-sets button{padding:11px 9px;border:1px solid #dccedd;border-radius:8px;background:#f0e6ee;color:#7b6485;font-size:10px;font-weight:600;text-align:left}.outfit-sets button:hover,.style-palettes button:hover{border-color:#ac91b6;background:#eaddE9}.remix-button{width:100%;min-height:36px;border:1px dashed #c4aecb;border-radius:8px;font-size:10px;color:#8a7095;margin:0 0 8px}.character-controls{min-width:0}#characterTabs{display:flex}#characterTabs button{flex:1;min-width:0;font-size:10px;padding:11px 4px}.character-preset-entry small{font-size:8px}.categories button{font-size:9px;padding:6px 8px;min-height:28px}
@media(max-width:850px){.collection-filters{flex-wrap:nowrap;overflow-x:auto;padding:3px 13px 6px}.collection-filters button{flex:none;font-size:8px;min-height:28px}.collection-intro{padding:9px 11px}.collection-intro .eyebrow{font-size:6px}.collection-intro strong{font-size:12px;margin:4px 0}.collection-intro p{font-size:9px}.collection-jump{padding:5px 8px;margin-top:5px}.look-presets img{height:99px}.look-families{gap:4px}.look-families button{font-size:9px;padding:6px 9px;min-height:30px}#characterTabs button{font-size:9px;padding:8px 2px}.new-badge{font-size:6px}.categories button{flex:none;font-size:9px}.outfit-sets button{min-height:39px}}
@media(prefers-reduced-motion:reduce){.look-presets button{transition:none}.look-presets button:hover{transform:none}}

#categories{display:flex;flex-wrap:wrap;gap:5px;overflow:visible}.more-categories{width:100%;border:1px solid #ded5cb;border-radius:7px;background:#fcf8ee;color:#7d7280;padding:8px 10px;font-size:10px;min-height:34px;margin:3px 0 0}.collection-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:7px}.collection-filters button{flex:none}.collection-intro{padding:10px}.collection-intro .eyebrow{font-size:6px;line-height:1.6}.collection-intro strong{font-size:13px;line-height:1.4;margin:5px 0}.collection-intro p{font-size:9px}.collection-intro .collection-jump{font-size:9px;min-height:29px}
@media(max-width:850px){#categories{flex-wrap:nowrap;padding-bottom:5px;overflow-x:auto}.more-categories{width:auto;min-width:135px;flex:1;margin:0;min-height:28px;font-size:9px;padding:5px}.collection-intro .eyebrow{font-size:6px}.collection-intro strong{font-size:12px}.collection-intro p{font-size:9px}.collection-filters{padding-top:0}.categories button{font-size:9px;min-height:28px}}
/* Open House 04 / Fandom at Home */
.culture-quick-shelves{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 12px}.culture-quick-shelves button{border:1px solid #dbd5e1;background:#f0eaf3;border-radius:20px;padding:8px 11px;font-family:inherit;font-size:11px;font-weight:600;color:#635a72}.culture-quick-shelves button.active{background:#766581;color:white;border-color:#766581}
.culture-dialog{width:min(1110px,96vw);max-width:none;max-height:92dvh;border:1px solid #d4c8db;border-radius:22px;padding:0;overflow:hidden;background:#faf6ee;color:#514959;box-shadow:0 35px 100px #37304555}.culture-dialog::backdrop{background:#312a3c88;backdrop-filter:blur(5px)}
.culture-body{display:grid;grid-template-columns:46% 54%;height:min(650px,70dvh)}.culture-preview{position:relative;display:flex;flex-direction:column;min-height:0;background:radial-gradient(ellipse at 50% 38%,#fbf1e4 15%,#e4d9e9 85%);border-right:1px solid #d9ccde}.culture-top{position:absolute;top:20px;left:20px;z-index:1}.culture-preview canvas{width:100%;height:100%;min-height:0;display:block;touch-action:none;outline-offset:-3px;flex:1}.culture-preview p{text-align:center;font-size:12px;margin:12px 15px 20px;color:#75697c}.culture-camera{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin:0 14px}.culture-camera button{border:1px solid #d5c8da;border-radius:10px;background:#fff9eddb;min-height:37px;padding:7px 13px;color:#655470;font-weight:600}.culture-fields{overflow-y:auto;padding:22px 23px 26px;overscroll-behavior:contain}.culture-intro{font-size:13px;line-height:1.5;margin:0 0 17px;color:#786d80}.wardrobe-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:15px}.wardrobe-slots button{display:flex;flex-direction:column;align-items:center;border:1px solid #ded3e1;border-radius:12px;padding:7px 4px 9px;background:#f3edf4;min-width:0}.wardrobe-slots small{font:600 9px monospace;letter-spacing:1px;color:#97869b}.wardrobe-slots img{width:64px;height:58px;object-fit:contain}.wardrobe-slots span{font-size:10px;line-height:1.2;color:#66566f}.wardrobe-slots .active{border:2px solid #92769e;background:#f0dff1;padding:6px 3px 8px}.culture-turn-controls{display:flex;gap:6px;margin:12px 0}.culture-turn-controls button{border:1px solid #d8cadd;background:#eee5f1;border-radius:10px;min-height:40px;flex:1;color:#6d557b;font-size:12px}.try-on-row{display:flex;gap:8px;margin:16px 0;padding:12px;background:#e9ede3;border-radius:12px}.try-on-row select{min-width:0;flex:1;border:1px solid #cbd0be;border-radius:8px;padding:8px;color:#5e6854;background:#f8f9ef}.try-on-row button{font-size:12px;padding:10px}.garment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.garment-grid button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 7px 12px;border:1px solid #dfd6e1;border-radius:12px;background:#fbf9f3;color:#62566c;font-size:11px;line-height:1.35}.garment-grid img{height:94px;width:90px;object-fit:contain;max-width:100%}.garment-grid .active{background:#e7eddf;border-color:#9bad8c}.culture-dialog .character-footer{border-top:1px solid #dfd4e4;padding:13px 20px;gap:10px}.culture-save-note{margin-right:auto;font-size:11px}
#infoDialog:has(.room-recipe-content){width:min(1020px,94vw);max-width:1020px}#infoContent.room-recipe-content{max-height:75dvh;overflow:auto}.room-recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.room-recipe-card{display:flex;flex-direction:column;text-align:left;border:1px solid #ded2df;border-radius:15px;overflow:hidden;background:#f7f0ed;color:#60566a;padding:0 0 15px}.room-recipe-card img{width:100%;aspect-ratio:340/220;object-fit:contain;background:linear-gradient(140deg,#f1e2e0,#e6dfec)}.room-recipe-card strong,.room-recipe-card span,.room-recipe-card small{margin:0 14px}.room-recipe-card small{font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:#9e87a3;margin-top:10px}.room-recipe-card strong{font-size:15px;margin-top:5px}.room-recipe-card span{font-size:11px;line-height:1.45;margin-top:6px;color:#887c8d}.room-recipe-card:hover{border-color:#a68ab0;transform:translateY(-2px)}.recipe-large{width:100%;max-height:48dvh;object-fit:contain;display:block;background:linear-gradient(135deg,#f0e1df,#e6e0eb);border-radius:16px;margin:12px 0}.culture-fields .field{margin-bottom:15px}.culture-fields select{min-height:40px;width:100%}.culture-fields input[type=color]{height:38px;min-width:44px}
@media(max-width:700px){.culture-dialog{width:calc(100vw - 12px);max-height:96dvh;border-radius:16px}.culture-dialog .dialog-heading{padding:12px 15px}.culture-dialog .dialog-heading h2{font-size:19px}.culture-body{grid-template-columns:1fr;grid-template-rows:32dvh 1fr;height:76dvh}.culture-preview{border-right:0;border-bottom:1px solid #d9ccde}.culture-top{top:9px;left:12px}.culture-top .draft-pill{font-size:8px}.culture-preview p{display:none}.culture-camera{position:absolute;bottom:9px;left:0;right:0;gap:5px}.culture-camera button{font-size:10px;min-height:31px;padding:4px 9px}.culture-fields{padding:14px 14px 20px}.culture-intro{font-size:11px;margin-bottom:12px}.wardrobe-slots{gap:5px}.wardrobe-slots img{height:42px}.wardrobe-slots span{font-size:9px}.culture-dialog .character-footer{padding:9px 12px}.culture-save-note{display:none}.culture-dialog .character-footer .button{flex:1;font-size:12px;padding:11px 9px}.garment-grid img{height:73px}.room-recipe-grid{grid-template-columns:repeat(2,1fr);gap:10px}.room-recipe-card strong{font-size:12px}.room-recipe-card span{font-size:10px}.room-recipe-card strong,.room-recipe-card span,.room-recipe-card small{margin-left:10px;margin-right:10px}.try-on-row{padding:8px}.try-on-row button{font-size:11px}.culture-quick-shelves button{min-height:34px}}
@media(prefers-reduced-motion:reduce){.room-recipe-card:hover{transform:none}}
/* Keep editor footers reachable, including short landscape viewports. */
.culture-dialog[open]{display:flex;flex-direction:column;height:min(840px,94dvh)}
.culture-dialog .dialog-heading,.culture-dialog .character-footer{flex:0 0 auto}
.culture-dialog .culture-body{flex:1;min-height:0;height:auto}
@media(max-height:460px) and (min-width:701px){.culture-dialog .dialog-heading{padding:9px 15px}.culture-dialog .dialog-heading h2{font-size:19px}.culture-dialog .character-footer{padding:7px 15px}.culture-top{display:none}.culture-preview p{display:none}.culture-camera{margin-bottom:8px}.culture-fields{padding:12px 17px}}
/* NEIGHBOURHOOD 27 · the new collection stays within the warm editorial UI. */
.reference-people-hero{grid-column:1/-1;padding:19px 17px 16px;border-radius:20px;background:linear-gradient(140deg,#e6e9d7,#efe4ee);border:1px solid #d6cfc7;overflow:hidden;margin-bottom:14px}
.reference-people-hero h3{font-size:29px;line-height:1.03;letter-spacing:-1px;white-space:pre-line;margin:8px 0 9px;color:#393d43}
.reference-people-hero p{font-size:12px;line-height:1.5;max-width:260px;margin:0;color:#646268}
.reference-people-hero .button{width:100%;font-size:12px}.reference-people-hero .text-button{display:block;margin:8px auto 0;font-size:11px}
.reference-hero-trio{display:flex;justify-content:center;height:156px;margin:5px -13px 8px}.reference-hero-trio img{width:37%;height:100%;object-fit:contain;margin:0 -3%;filter:drop-shadow(0 8px 4px #897d821b)}
.reference-people-group{grid-column:1/-1}.reference-people-group h4{font-size:12px;letter-spacing:.02em;margin:13px 0 9px}
.reference-people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ref-people-card{border:1px solid #ded7cd;border-radius:14px;background:#fbf7ee;padding:7px 3px 11px;min-height:139px;text-align:center;transition:transform .12s,border-color .12s;overflow:hidden}.ref-people-card:hover{transform:translateY(-3px);border-color:#858577}.ref-people-card img{display:block;width:100%;height:109px;object-fit:contain}.ref-people-card span{display:block;font-size:11px;font-weight:700;margin-top:4px}
.reference-unit-tabs{display:flex;flex-wrap:wrap;gap:5px;grid-column:1/-1;padding:7px 0 11px}.reference-unit-tabs button{display:flex;align-items:center;gap:7px;border-radius:9px;border:1px solid #d8d1c9;background:#f4eee5;font-size:10px;line-height:1.3;padding:7px 9px;min-height:32px}.reference-unit-tabs button small{border-radius:5px;background:#e8e0d5;padding:1px 4px;font-size:9px}.reference-unit-tabs button.active{background:#455b55;color:#fcf7eb;border-color:#455b55}.reference-unit-tabs button.active small{background:#70817a;color:white}
.reference-pill{border-color:#879c8a!important;background:#e1e8dc!important;font-weight:750}
#referenceLookSearch{width:100%;padding:10px 12px;border:1px solid #cfc6ba;border-radius:10px;background:#fffcf6;font-size:12px;margin-bottom:12px}
.reference-look-grid button{position:relative;border-color:#d6d0c7}.reference-look-grid button.active{border:2px solid #557c69;background:#edf1e4}.reference-look-grid button img{height:139px}.reference-look-grid button small{font-size:9px;line-height:1.4;white-space:normal}
.reference-attribution{grid-column:1/-1;font-size:10px;line-height:1.5;color:#767078;margin:9px 0 13px}
.reference-preview-tools{position:absolute;z-index:4;top:53px;left:18px;display:flex;gap:7px;flex-wrap:wrap;max-width:calc(100% - 36px)}
.reference-preview-tools button{border:1px solid #cbbfac;background:#fffcf4ed;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:650;color:#455451;box-shadow:0 2px 8px #5b4e4910}
.reference-quick-shelf{display:flex;gap:6px;margin:0 0 12px;flex-wrap:wrap}.reference-quick-shelf button{border:1px solid #9ba891;background:#e4ebdd;color:#405446;padding:8px 9px;font-size:11px;border-radius:10px;font-weight:700;min-height:35px}.reference-quick-shelf button.active{background:#405d50;color:#fff7e9}
.reference-compare-dialog{width:min(820px,94vw);max-height:94dvh;padding:22px;border:1px solid #cfc8bc;border-radius:22px;background:#f7f1e8;color:#3d3b40;overflow:auto}.reference-comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reference-comparison figure{margin:0;display:flex;flex-direction:column;min-width:0;background:#e7e6df;border-radius:16px;overflow:hidden;border:1px solid #d4cfc6}.reference-comparison img{height:360px;width:100%;object-fit:contain;padding:14px}.reference-comparison figcaption{font-size:11px;text-align:center;padding:12px;background:#fdfaf2}.reference-compare-dialog>.small-note{margin:14px 0;line-height:1.55}
@media(max-width:850px){.reference-preview-tools{top:39px;left:12px;max-width:calc(100% - 24px);gap:5px}.reference-preview-tools button{padding:6px 9px;font-size:10px}.reference-look-grid button img{height:124px}.reference-people-hero{padding:15px}.reference-hero-trio{height:136px}.reference-comparison img{height:240px;padding:5px}.reference-compare-dialog{padding:14px}.reference-compare-dialog h2{font-size:21px}.reference-people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ref-people-card span{font-size:10px}.reference-unit-tabs button{min-height:36px}}
@media(prefers-reduced-motion:reduce){.ref-people-card{transition:none}}

/* Put the choices in view before explanatory copy, especially on phones. */
#referencePlushUnits{flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:5px;padding-bottom:8px;margin:0 0 4px;scrollbar-width:thin}#referencePlushUnits button{flex:0 0 auto;white-space:nowrap}
.reference-compact-intro{padding:11px 13px!important;margin:0 0 9px!important}.reference-compact-intro .eyebrow,.reference-compact-intro p{display:none}.reference-compact-intro strong{font-size:12px!important;margin:0!important}
@media(max-width:850px){#characterFields .reference-unit-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:4px 0 7px;scrollbar-width:thin}#characterFields .reference-unit-tabs button{flex:0 0 auto;white-space:nowrap}.reference-intro-section{padding-top:0!important;padding-bottom:9px!important;margin-bottom:9px!important}.reference-intro-section .small-note{display:none}.reference-intro-section h3{margin-bottom:7px}.reference-intro-section .field{margin-bottom:0}.reference-intro-section input{min-height:36px;padding:8px 10px}.reference-look-grid button img{height:100px}.reference-look-grid button{padding:6px 5px 9px}.reference-look-grid button b{font-size:11px}}
#referencePlushUnits{flex-shrink:0;min-height:45px}#characterFields .reference-unit-tabs{flex-shrink:0}

/* Open House 5.4: no cue, no prompts. One side-of-room cleanup action. */
#catDev{position:fixed;z-index:200;right:12px;top:14px;width:285px;max-height:calc(100dvh - 28px);overflow:auto;background:#faf7ef;border:2px solid #a99cb7;border-radius:12px;padding:15px;box-shadow:0 15px 45px #30344640}#catDev strong{font:700 12px 'Courier New',monospace}#catDev p{font-size:11px;line-height:1.5}#catDev button,#catDev select{display:block;width:100%;margin:5px 0;padding:8px;background:#e9dfef;border:1px solid #d3c8dc;border-radius:7px;font-size:11px;min-height:34px}#catDev .cat-dev-close{width:auto;float:right;font-size:10px;margin:0;padding:4px;min-height:25px}#catDev pre{font-size:10px;white-space:pre-wrap}

body[data-cat-visit=true][data-view=room][data-mode=view] .viewer-note{display:none!important}
.cat-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#catEmotion{position:absolute;z-index:4;pointer-events:none;width:44px;height:39px;transform:translate(-50%,-100%)}
#catEmotion[hidden]{display:none!important}#catEmotion svg{position:absolute;width:28px;height:28px;fill:#d69caa;stroke:#faf0dc;stroke-width:2;left:0;top:8px}#catEmotion svg+svg{width:18px;height:18px;left:28px;top:0;fill:#baa7c9}
.cat-keyboard-pat{position:absolute;width:42px;height:42px;padding:0;z-index:4;transform:translate(-50%,-50%);background:transparent;opacity:0;pointer-events:none;border-radius:50%}
.cat-keyboard-pat:focus-visible{opacity:1;outline:2px dashed #4a614c;outline-offset:4px;background:#dce6c726}
#catTidyAllSide{position:absolute;right:14px;top:50%;transform:translateY(-50%);z-index:8;min-width:92px;min-height:46px;padding:12px 15px;border:1px solid #a9bc96;border-radius:12px;background:var(--mint);color:#354936;font:700 12px/1.2 Arial,Helvetica,sans-serif;box-shadow:0 4px 14px #4a614c12;white-space:nowrap;touch-action:manipulation}
#catTidyAllSide[hidden]{display:none!important}#catTidyAllSide:disabled{opacity:.7;cursor:default}#catTidyAllSide:focus-visible{outline:3px solid #4a614c;outline-offset:4px}#catTidyAllSide[data-blink=true]{animation:cat-tidy-blink var(--cat-blink-seconds,2.4s) ease-in-out infinite}
@keyframes cat-tidy-blink{0%,100%{opacity:1;box-shadow:0 0 0 0 #91a87e00,0 4px 14px #4a614c12}50%{opacity:.66;box-shadow:0 0 0 6px #91a87e22,0 4px 14px #4a614c12}}
#catImpactSymbols{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden}.cat-impact-symbol{position:absolute;width:24px;height:24px;background:#b69ac2;transform:translate(-50%,-100%) rotate(15deg);clip-path:polygon(50% 0,60% 35%,100% 50%,62% 61%,50% 100%,37% 62%,0 50%,35% 37%)}.cat-impact-symbol[hidden]{display:none}
#catComic{position:fixed;inset:0;z-index:80;pointer-events:none;display:grid;place-items:center;background:#f4f0e735}
#catComic[hidden]{display:none!important}#catComicPanel{position:relative;width:min(490px,84vw,80dvh);aspect-ratio:1;transform-origin:center}
.cat-comic-burst{position:absolute;inset:6% -5% 4%;background:#e4c8c7;clip-path:polygon(50% 0%,57% 11%,69% 3%,72% 17%,88% 11%,85% 27%,100% 31%,89% 43%,100% 54%,88% 61%,96% 78%,80% 78%,82% 96%,66% 87%,58% 100%,48% 91%,35% 100%,29% 85%,10% 92%,14% 75%,0% 71%,12% 57%,0% 45%,13% 35%,4% 17%,23% 21%,24% 3%,40% 13%)}
.cat-comic-burst:before{content:'';position:absolute;inset:9%;background:#f7edda;clip-path:inherit}
#catComicCanvas{position:absolute;left:4%;top:3%;width:92%;height:87%;filter:drop-shadow(0 7px 0 #77615422)}



#catComic.reduced-motion .cat-comic-word,#catComic.reduced-motion 

@media(max-width:850px){#catTidyAllSide{right:10px;min-width:84px;min-height:44px;padding:11px 12px;font-size:12px}#catDev{width:min(285px,calc(100% - 24px))}#catComicPanel{width:min(380px,85vw,80dvh)}}
@media(prefers-reduced-motion:reduce){#catTidyAllSide{animation:none!important}#catComicCanvas{filter:none}}

/* Scoped CHU! Catcher UI. BLK39 remains warm paper; the cabinet gets a candy accent. */
#clawWorldDoor{position:absolute;z-index:4;transform:translate(-50%,0) rotate(-3deg);border:2px solid #9471af;border-radius:13px;padding:9px 13px;background:#fff5df;color:#694e7c;box-shadow:0 4px 0 #cda2bd,0 6px 22px #a973ab20;pointer-events:auto;min-height:46px;white-space:nowrap;font-weight:800;font-size:13px;line-height:1.2;}
#clawWorldDoor small{display:block;font-size:9px;margin-top:4px;font-weight:700;letter-spacing:.7px;color:#977480;}#clawWorldDoor:hover{background:#f8d9e4;transform:translate(-50%,0) rotate(0deg) scale(1.04)}
.claw-shelf-button{border:1px solid #d8c6dd;border-radius:9px;padding:8px 10px;min-height:40px;font-size:11px;background:#eae1ef;color:#70577c;white-space:nowrap;}
#clawGame{--chu-purple:#9471af;--chu-ink:#473853;--chu-pink:#f0aabc;--chu-cream:#fff5df;position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;padding:0;background:#f3eee6;color:var(--chu-ink);overflow:hidden;box-shadow:none;}
#clawGame[open]{display:flex;flex-direction:column;}#clawGame::backdrop{background:#f3eee6;backdrop-filter:none;}
.chu-top{height:78px;flex:none;display:flex;align-items:center;gap:22px;padding:12px 30px;border-bottom:1px solid #dccfe0;background:#faf5eaf5;}
.chu-brand{font-size:30px;font-weight:900;letter-spacing:-1.5px;line-height:.92;transform:rotate(-4deg);color:#886498;}.chu-brand span{display:block;font-size:10px;letter-spacing:2.4px;margin-top:7px;color:#b07898;}
.chu-heading{border-left:1px solid #d9cadc;padding-left:21px;font-size:12px;color:#8b7692;}.chu-heading b{display:block;font-size:19px;letter-spacing:-.45px;color:#62516e;margin-bottom:5px;}.chu-top-actions{margin-left:auto;display:flex;gap:7px;align-items:center;}.chu-top-actions button{min-width:42px;min-height:42px;padding:8px 12px;border-radius:10px;font-size:12px;font-weight:700;background:#f3ebe6;border:1px solid #ddcfda;}.chu-top-actions button:focus-visible,#clawGame button:focus-visible,#clawGame input:focus-visible{outline:3px solid #597d67;outline-offset:3px;}
.chu-main{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:0;flex:1;min-height:0;max-width:1450px;width:100%;margin:0 auto;}
.chu-playfield{min-height:0;min-width:0;position:relative;background:radial-gradient(ellipse at 50% 46%,#fff6e4 0%,#ebe1ed80 57%,transparent 84%);overflow:hidden;}
#clawCanvas{display:block;width:100%;height:100%;touch-action:none;outline-offset:-6px;cursor:grab;}#clawCanvas:active{cursor:grabbing;}
.chu-stage-tag{position:absolute;left:22px;top:18px;font:700 9px 'Courier New',monospace;letter-spacing:1.6px;color:#9d85a5;pointer-events:none;}
.chu-stage-tag i{font-style:normal;color:#bc80a1;font-size:14px;}
.chu-side{padding:27px 23px 15px 9px;display:flex;flex-direction:column;gap:16px;min-height:0;overflow:auto;scrollbar-width:thin;}
.chu-ticket{background:#fff9e9;border:1px solid #dbcada;border-radius:18px;padding:21px 20px;box-shadow:0 5px 0 #dfd0e04d;position:relative;}
.chu-kicker{font:700 10px 'Courier New',monospace;letter-spacing:1.7px;color:#9d7eaa;display:block;line-height:1.6;}.chu-ticket h2{font-size:29px;letter-spacing:-1px;line-height:1.06;margin:9px 0 13px;}.chu-ticket p{font-size:12px;line-height:1.7;color:#937c99;margin:8px 0 0;}
.chu-heart-counter{display:flex;gap:8px;margin:16px 0 2px}.chu-heart-counter span{font-size:28px;color:#cb7c9d;filter:drop-shadow(0 2px 0 #eed9d0);transition:transform .18s,color .18s;}.chu-heart-counter span.used{color:#e0d3d9;transform:scale(.84);}


.chu-address{border-top:1px dashed #cebad5;padding-top:16px;font-size:12px;color:#85708f;line-height:1.8;}.chu-address strong{color:#645170;font-size:16px;}.chu-sliders{margin-top:5px;display:grid;gap:12px;}.chu-sliders label{font-size:10px;font-weight:700;color:#8f799a;display:flex;flex-direction:column;gap:4px;}.chu-sliders input{accent-color:#9471af;width:100%;}
.chu-deck{min-height:150px;flex:none;padding:10px 34px 13px;display:flex;align-items:center;justify-content:center;gap:27px;background:#faf5ea;border-top:1px solid #dccccf;position:relative;}
.chu-help{max-width:210px;flex:1;color:#9b7f9d;font-size:11px;line-height:1.8;}.chu-help b{display:block;color:#6c537b;font-size:13px;}.chu-stick-area{text-align:center;flex:none;}.chu-stick-area>small{display:block;font:700 9px 'Courier New',monospace;color:#96829f;letter-spacing:1.2px;margin-bottom:6px;}
#clawStick{touch-action:none;position:relative;width:107px;height:107px;border-radius:50%;border:2px solid #c8b9d4;background:radial-gradient(circle,#dacde5 0 36%,#ede4ed 38% 60%,#f9f2eb 61%);box-shadow:inset 0 3px 5px #b29bbd33,0 3px 0 #d9cadd;cursor:grab;}
#clawStick:before{content:'↑';position:absolute;top:4px;left:46px;color:#aa94b5;font-size:13px;}#clawStick:after{content:'↓';position:absolute;bottom:4px;left:46px;color:#aa94b5;font-size:13px;}#clawKnob{position:absolute;left:31px;top:31px;width:43px;height:43px;border-radius:50%;background:radial-gradient(circle at 33% 27%,#f8d2df,#d79cbb 68%);border:2px solid #ac7da2;box-shadow:0 6px 0 #ac809e;pointer-events:none;}
#clawDrop{height:108px;width:148px;border:3px solid #a26789;border-radius:30px;background:#edafc1;color:#6a395d;box-shadow:0 7px 0 #bb83a1,inset 0 3px 0 #ffe0e7;font-weight:900;font-size:25px;letter-spacing:-.5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:none;}
#clawDrop small{font:700 9px 'Courier New',monospace;letter-spacing:1.5px;color:#966985;}#clawDrop:active:not(:disabled){transform:translateY(5px);box-shadow:0 2px 0 #bb83a1;}#clawDrop:disabled{opacity:.58;cursor:default;}
.chu-bumps{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:198px;flex:none;}.chu-bumps button{height:48px;border:1px solid #c6b5cd;border-radius:12px;font-size:12px;font-weight:700;color:#735b82;background:#ece2f0;box-shadow:0 3px 0 #d8c7df;}.chu-bumps button:last-child{grid-column:span 2;background:#dce9d4;border-color:#bdccb7;color:#597261;}.chu-bumps button:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 #d8c7df;}.chu-bumps button:disabled{opacity:.45;}
.chu-banter{margin:0;min-height:37px;padding:6px 15px 8px;font-size:12px;text-align:center;color:#8e6c9b;background:#eee4f1;border-top:1px solid #e0d3e3;line-height:1.7;}
.chu-tray{position:absolute;inset:78px 0 0 auto;width:min(510px,95vw);background:#fbf6ea;z-index:5;display:flex;flex-direction:column;box-shadow:-12px 0 40px #624e7033;border-left:1px solid #d5c3dc;padding:23px;}.chu-tray[hidden]{display:none;}.chu-tray-head{display:flex;align-items:center;gap:10px;}.chu-tray-head h2{font-size:22px;letter-spacing:-.6px;flex:1;margin:0;}.chu-tray-head button{font-size:20px;min-width:44px;min-height:44px;border:1px solid #d4c5da;border-radius:10px;}.chu-tray p{font-size:12px;color:#8c7396;line-height:1.8;}.chu-tray input{padding:12px;border:1px solid #d6c3dc;border-radius:10px;background:#fff9ef;width:100%;font-size:13px;}.chu-all-grid{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;overflow:auto;min-height:0;padding:3px 5px 15px 0;}.chu-all-grid button{border:1px solid #dbcde1;border-radius:13px;background:#f2eaf0;padding:8px;min-width:0;}.chu-all-grid img{width:100%;height:80px;object-fit:contain;}.chu-all-grid b{font-size:10px;display:block;line-height:1.5;}.chu-all-grid small{font-size:9px;color:#8b7392;}
#clawPause{position:absolute;inset:0;display:grid;place-items:center;background:#f5eee8ef;z-index:8;text-align:center;padding:25px;}#clawPause[hidden]{display:none;}#clawPause h2{font-size:26px;color:#836493;}#clawPause p{font-size:13px;color:#8d7397;line-height:1.8;}#clawPause button{background:#dce7cf;border:1px solid #9cba9b;border-radius:12px;padding:15px 24px;font-weight:bold;color:#4b6956;}
#clawInventory{width:min(740px,95vw);background:#fbf6eb;padding:23px;border-radius:20px;}#clawInventory .chu-all-grid{max-height:65dvh;}#clawInventory h2{margin:0;}
#clawLab{position:fixed;left:12px;top:90px;z-index:99999;background:#292334;color:#fff8e8;border-radius:12px;padding:15px;max-width:250px;max-height:65vh;overflow:auto;font:12px monospace;}#clawLab button{display:block;background:#d5c6e6;color:#473853;border-radius:7px;padding:8px;margin:6px 0;width:100%;font:12px Arial;}
.chu-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
@media(min-width:1500px){.chu-main{max-width:1570px;grid-template-columns:minmax(0,1fr) 295px;}.chu-side{padding-right:32px;}.chu-ticket h2{font-size:34px;}}
@media(max-width:850px){.chu-top{height:65px;padding:9px 13px;gap:10px;}.chu-brand{font-size:25px;}.chu-brand span{font-size:8px;letter-spacing:1.7px;}.chu-heading{display:none;}.chu-top-actions{gap:5px;}.chu-top-actions button{padding:8px;min-width:39px;min-height:40px;font-size:10px;}.chu-main{display:flex;position:relative;}.chu-playfield{flex:1;}.chu-side{position:absolute;right:9px;top:8px;padding:0;overflow:visible;pointer-events:none;}.chu-ticket{padding:5px 10px;border-radius:12px;border-color:#d6c3dc;background:#fff9e9dd;box-shadow:none;}.chu-ticket .chu-kicker,.chu-ticket h2,.chu-ticket p{display:none;}.chu-heart-counter{margin:0;gap:5px;}.chu-heart-counter span{font-size:19px;}.chu-stage-tag{left:12px;top:14px;font-size:8px;letter-spacing:.9px;}.chu-deck{min-height:145px;padding:11px 10px 14px;gap:16px;}.chu-help{display:none;}.chu-stick-area>small{font-size:8px;}.chu-bumps{min-width:85px;width:85px;gap:6px;}.chu-bumps button{font-size:10px;height:45px;padding:4px;}.chu-bumps button:last-child{height:43px;}#clawStick{height:88px;width:88px;}#clawStick:before,#clawStick:after{left:37px;}#clawKnob{left:24px;top:24px;width:37px;height:37px;}#clawDrop{width:107px;height:92px;border-radius:26px;font-size:23px;}#clawDrop small{font-size:8px;}.chu-banter{font-size:10px;min-height:36px;padding:6px 9px;}.chu-tray{inset:65px 0 0 auto;padding:16px;}.claw-shelf-button{font-size:9px;padding:6px;max-width:80px;white-space:normal;}#clawWorldDoor{font-size:11px;padding:7px 10px;}#clawWorldDoor small{font-size:8px;}}
@media(max-width:380px){.chu-deck{gap:10px;}#clawDrop{width:99px;}.chu-top-actions button{padding:6px;min-width:36px;}.chu-brand{font-size:22px;}.chu-brand span{font-size:7px;}}
@media(max-height:570px) and (min-width:600px){.chu-top{height:48px;padding:5px 16px;}.chu-main{display:grid;grid-template-columns:minmax(0,1fr) 205px;}.chu-side{position:relative;right:auto;top:auto;padding:8px 15px;pointer-events:auto;}.chu-ticket{padding:8px 12px;}.chu-ticket .chu-kicker{display:block;}.chu-deck{min-height:84px;height:84px;padding:4px 20px;gap:23px;}#clawStick{width:64px;height:64px;}#clawKnob{left:18px;top:18px;width:27px;height:27px;}#clawStick:before,#clawStick:after{left:27px;font-size:9px;}#clawDrop{height:61px;width:132px;font-size:20px;border-radius:20px;}.chu-bumps{display:flex;width:auto;min-width:220px;}.chu-bumps button{width:73px;height:44px;}.chu-stick-area>small{display:none;}.chu-banter{min-height:25px;height:25px;padding:3px;font-size:10px;}.chu-stage-tag{display:none;}}
@media(prefers-reduced-motion:reduce){#clawWorldDoor,.chu-heart-counter span{transition:none;}#clawWorldDoor:hover{transform:translate(-50%,0);}}

@keyframes chuInvite{0%,100%{box-shadow:0 4px 0 #cda2bd,0 6px 16px #a973ab20}50%{box-shadow:0 4px 0 #cda2bd,0 6px 25px #b178b34d}}
#clawWorldDoor{animation:chuInvite 3.6s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){#clawWorldDoor{animation:none;}}
/* Phone controller replaces the retired target card. No hit-dependent UI remains. */
.chu-motion{display:grid;grid-template-columns:45px minmax(0,1fr);gap:10px 11px;background:#eee6f0;border:1px solid #d4c6dd;border-radius:16px;padding:15px;color:#655473;position:relative;pointer-events:auto;}
.chu-motion-icon{position:relative;width:42px;height:50px;align-self:center;}
.chu-motion-icon svg{width:42px;height:50px;fill:#fbf6eb;stroke:#92749d;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.chu-motion-icon svg path{fill:none;}.chu-motion-arrows{opacity:.55;}
#clawMotionDot{position:absolute;left:18px;top:22px;width:7px;height:7px;border-radius:50%;background:#b788a2;}
.chu-motion-copy{min-width:0;}.chu-motion-copy .chu-kicker{font-size:9px;letter-spacing:1px;margin-bottom:3px;}
.chu-motion-copy b{font-size:15px;line-height:1.4;display:block;color:#584865;}
.chu-motion-copy small{font-size:11px;line-height:1.5;display:block;color:#75637e;margin-top:4px;}
.chu-motion-actions{grid-column:1/-1;display:flex;gap:7px;}
.chu-motion-actions button{min-height:44px;font-size:11px;line-height:1.3;font-weight:700;padding:8px 10px;border:1px solid #bacaaf;border-radius:10px;background:#dce6c7;color:#3c5644;flex:1;}
.chu-motion-actions button[aria-pressed=true]{background:#faf6eb;border-color:#c9b7d1;color:#6f5880;}
.chu-motion-actions button#clawMotionCenter{background:#faf6eb;border-color:#d4c6dd;color:#6f5880;}
.chu-motion-actions button[hidden]{display:none;}
.chu-motion-safety{grid-column:1/-1;font-size:9px;line-height:1.5;color:#7c697e;}
.chu-motion[data-motion=active]{background:#e5ebdc;border-color:#b5c7ab;}
.chu-motion[data-motion=active] #clawMotionDot{background:#668567;}
@media(max-width:850px){.chu-address,.chu-sliders{display:none;}}
@media(max-width:850px) and (min-height:571px){
 .chu-side{position:absolute;inset:8px 10px 8px;overflow:visible;pointer-events:none;}
 .chu-ticket{position:absolute;top:0;right:0;}
 .chu-motion{position:absolute;bottom:0;left:0;right:0;grid-template-columns:31px minmax(0,1fr) auto;gap:4px 8px;padding:9px 10px;background:#f5edf2f5;align-items:center;border-radius:13px;}
 .chu-motion-icon{width:30px;height:40px;transform:scale(.8);transform-origin:left center;}
 .chu-motion-copy .chu-kicker{display:none;}.chu-motion-copy b{font-size:12px;}.chu-motion-copy small{font-size:10px;line-height:1.35;margin-top:2px;}
 .chu-motion-actions{grid-column:auto;flex-direction:column;gap:4px;max-width:93px;}
 .chu-motion-actions button{min-height:44px;font-size:10px;padding:5px 8px;}
 .chu-motion-safety{display:none;}
 /* Reserve real layout space for sensors; do not cover cabinet toys. */
 .chu-playfield{padding-bottom:119px;}
}
@media(max-height:570px) and (min-width:600px){
 .chu-motion{display:grid;padding:8px;gap:5px;grid-template-columns:28px minmax(0,1fr);}
 .chu-motion-icon{transform:scale(.7);transform-origin:left center;width:28px;height:38px;}
 .chu-motion-copy .chu-kicker,.chu-motion-safety{display:none;}.chu-motion-copy b{font-size:12px;}.chu-motion-copy small{font-size:10px;line-height:1.3;}
 .chu-motion-actions{gap:4px;}.chu-motion-actions button{min-height:40px;padding:4px;font-size:10px;}
}

/* BLK39 5.6.3 — a warm, unhurried welcome at the TOP LEFT.
   Animate only the supplied image: the link's hit area stays still.
   The transparent sticker has no asterisk, backing card, glow or shadow.
   Navigation reserves this space instead of sitting underneath it. */
:root {
  --brand-width: 144px;
  --brand-height: 60px;
  --brand-left: 24px;
  --brand-top: 10px;
  --brand-reserve: 192px;
  --brand-tilt: -5deg;
  --brand-motion-period: 12s;
  --brand-header-right: 30px;
}
.topbar,
body[data-view=room] .topbar {
  padding-left: calc(var(--brand-reserve) + env(safe-area-inset-left, 0px));
  padding-right: calc(var(--brand-header-right) + env(safe-area-inset-right, 0px));
}
.topbar nav { margin-left: 0; }
#brandButton {
  position: fixed;
  top: calc(var(--brand-top) + env(safe-area-inset-top, 0px));
  left: calc(var(--brand-left) + env(safe-area-inset-left, 0px));
  right: auto;
  width: var(--brand-width);
  height: var(--brand-height);
  min-height: 44px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 12px;
  background: transparent;
  box-shadow: none;
  display: grid;
  place-items: center;
  z-index: 8;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
#brandButton::before, #brandButton::after { content: none; }
#brandButton .brand-logo {
  width: 100%;
  height: auto;
  max-width: 100%;
  display: block;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
  transform-origin: 50% 55%;
  transform: rotate(var(--brand-tilt));
  filter: none;
  animation: blk39-warm-welcome var(--brand-motion-period) ease-in-out infinite;
}
#brandButton:hover, #brandButton:focus-visible { filter: none; }
#brandButton:hover .brand-logo,
#brandButton:active .brand-logo,
#brandButton:focus-visible .brand-logo { animation-play-state: paused; }
#brandButton:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }
/* A slow little lift, lean and exhale, rather than bouncing or a heartbeat.
   Maximum vertical travel is 3px; only a 1% swell and 1.25deg gentle sway. */
@keyframes blk39-warm-welcome {
  0%, 100% { transform: translate3d(0,0,0) rotate(var(--brand-tilt)) scale(1); }
  32% { transform: translate3d(1px,-3px,0) rotate(calc(var(--brand-tilt) - .75deg)) scale(1.01); }
  68% { transform: translate3d(-.5px,-1px,0) rotate(calc(var(--brand-tilt) + .5deg)) scale(1.004); }
}
@media(max-width:1150px) {
  :root { --brand-header-right: 20px; }
}
@media(max-width:850px) {
  :root {
    --brand-width: 104px;
    --brand-height: 48px;
    --brand-left: 14px;
    --brand-top: 7px;
    --brand-reserve: 138px;
    --brand-header-right: 18px;
  }
  .topbar { gap: 10px; }
  body[data-view=room] {
    --brand-width: 84px;
    --brand-left: 12px;
    --brand-reserve: 112px;
    --brand-header-right: 13px;
  }
  body[data-view=room] .topbar { gap: 8px; }
  .topbar .header-end { min-width: 0; }
  body[data-view=room] .room-heading { flex: 0 0 auto; }
}
@media(max-width:350px) {
  :root { --brand-width: 92px; --brand-left: 12px; --brand-reserve: 118px; --brand-header-right: 14px; }
  body[data-view=room] { --brand-width: 72px; --brand-reserve: 96px; }
  body[data-view=room] .room-heading { gap: 3px; }
  body[data-view=room] .topbar { gap: 5px; }
}
@media(max-width:850px) and (orientation:landscape) {
  :root { --brand-height: 44px; --brand-top: 5px; --brand-width: 90px; }
  body[data-view=room] { --brand-width: 84px; }
}
@media(prefers-reduced-motion:reduce) {
  #brandButton .brand-logo { animation: none; transform: rotate(var(--brand-tilt)); }
}

/* Creative Sky is a scoped navigation layer. Nothing touches room geometry,
   furniture, cat/claw logic, or save schemas. Fixed hit regions; moving art. */
:root { --sky-height: 219px; }
body[data-view=block] #stage { top: var(--sky-height); }
#creativeSky { position:absolute; left:340px; right:28px; top:4px; height:211px; z-index:4; pointer-events:none; }
#creativeSky .sky-heading { height:36px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 8px; }
.sky-eyebrow { font:700 9px/1.5 'Courier New',monospace; letter-spacing:1.6px; color:#776b82; }
.sky-heading-actions { display:flex; align-items:center; gap:8px; pointer-events:auto; }
.sky-directory-button { height:36px; padding:0 13px; display:inline-flex; align-items:center; gap:7px; border:1px solid #d4c8dc; background:#f8f4eb; border-radius:20px; color:#554b61; font-size:11px; font-weight:700; text-decoration:none; white-space:nowrap; }
.sky-directory-button svg { width:15px; height:15px; }
.sky-directory-button .sky-total { font:10px 'Courier New',monospace; color:#7d6f88; padding-left:2px; }
.sky-directory-button:hover { background:#e8dfed; }
.sky-motion-button { height:36px; width:36px; display:grid;place-items:center;border-radius:50%;color:#6b6275; }
.sky-motion-button:hover { background:#ece5ec; }
.sky-motion-button svg { width:16px;height:16px; }
#skyCloudTrack { display:grid; grid-template-columns:repeat(10,minmax(0,1fr)); grid-auto-rows:85px; column-gap:8px; row-gap:0; pointer-events:none; overflow:visible; padding:0 3px; }
.sky-page { display:contents; }
.sky-cloud { position:relative; display:block; grid-column:span 2; height:85px; border:0; border-radius:40%; padding:0; background:none; text-decoration:none; pointer-events:auto; color:#424052; cursor:pointer; isolation:isolate; touch-action:pan-x; -webkit-tap-highlight-color:transparent; }
.sky-cloud[data-app=hits] { grid-column:2 / span 2; }
.sky-cloud-surface { position:absolute; inset:-2px 0 0; display:block; pointer-events:none; transform:translateY(0); animation:sky-drift var(--sky-period,16s) ease-in-out var(--sky-delay,0s) infinite; }
.sky-cloud:nth-child(2n) .sky-cloud-surface { transform:translateY(3px); }
.sky-cloud-art { display:block; width:100%; height:100%; overflow:visible; }
.sky-cloud-art .cloud-shell { fill:var(--cloud-fill);stroke:var(--cloud-line);stroke-width:1.35; }
.sky-cloud-art .cloud-floor { fill:none;stroke:var(--cloud-line);stroke-width:2.5;opacity:.32; }
.sky-cloud-art .cloud-blush { fill:#e4b7bd; opacity:.6; }
.sky-cloud-art .cloud-expression { stroke:#65576e;fill:none;stroke-width:1.8;stroke-linecap:round; }
.sky-cloud-art .cloud-eye { fill:#65576e; }
.sky-cloud-label { position:absolute; top:45%; left:5%; right:5%; bottom:16%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; }
.sky-cloud-name { display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:750;white-space:nowrap;line-height:1.2; }
.sky-cloud-name svg { width:18px;height:18px;flex:none;color:var(--cloud-ink); }
.sky-cloud-caption { font-size:9px;white-space:nowrap;color:#74677c;line-height:1.25; }
.sky-cloud:hover, .sky-cloud:focus-visible { filter:none; }
.sky-cloud:focus-visible .sky-cloud-surface, .sky-cloud:active .sky-cloud-surface { animation-play-state:paused; }
.sky-cloud:hover .cloud-shell { stroke:var(--cloud-ink); stroke-width:1.7; }
.sky-cloud:focus-visible { outline:2px solid #4a614c;outline-offset:2px; }
[data-sky-tone=sage] { --cloud-fill:#eaf0dc;--cloud-line:#c0cbb2;--cloud-ink:#627956;--cloud-chip:#dce6c7; }
[data-sky-tone=lilac] { --cloud-fill:#eee6f3;--cloud-line:#cdbed8;--cloud-ink:#7d628e;--cloud-chip:#dfd3ee; }
[data-sky-tone=peach] { --cloud-fill:#f7e8df;--cloud-line:#dfc3be;--cloud-ink:#a16974;--cloud-chip:#f0d2cc; }
[data-sky-tone=sand] { --cloud-fill:#f6eed9;--cloud-line:#d9cba8;--cloud-ink:#917b4f;--cloud-chip:#ece1bf; }
@keyframes sky-drift { 0%,100% { transform:translate3d(0,2px,0) rotate(-.5deg); } 48% { transform:translate3d(1px,-3px,0) rotate(.5deg); } }
html[data-sky-calm=true] .sky-cloud-surface, html[data-sky-calm=true] #brandButton .brand-logo,
html[data-sky-suspended=true] .sky-cloud-surface, html[data-sky-suspended=true] #brandButton .brand-logo,
body[data-view=room] .sky-cloud-surface { animation-play-state:paused; }
body[data-view=room] #creativeSky { display:none!important; }
.sky-pager { display:none; }
/* One app sheet supports the directory, an honest missing-link state, and
   optional local URL configuration. Native dialogs preserve focus isolation. */
#skyDirectory { width:min(880px,calc(100vw - 32px)); max-width:calc(100vw - 32px); max-height:90dvh; border:1px solid #d9cfc0; border-radius:24px; background:#faf7ef; padding:0; color:#303446; }
#skyDirectory[open] { display:flex;flex-direction:column; }
#skyDirectory::backdrop { background:#37333d5c;backdrop-filter:blur(6px); }
.sky-modal-head { display:flex;align-items:center;justify-content:space-between;padding:25px 27px 19px;gap:16px;border-bottom:1px solid #ded7cb;flex:none; }
.sky-modal-head .sky-eyebrow { color:#82748d;font-size:9px; }
.sky-modal-head h2 { font-size:29px;line-height:1.1;letter-spacing:-1px;margin:9px 0 0; }
.sky-modal-close { flex:none;width:44px;height:44px;border-radius:13px;background:#efe9df;border:1px solid #ded7cb;font-size:24px; }
.sky-modal-body { min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 27px 24px;scrollbar-width:thin; }
.sky-directory-intro { display:flex;align-items:center;gap:15px;justify-content:space-between;margin-bottom:18px; }
.sky-directory-intro p { font-size:12px;color:#746b7b;line-height:1.6;margin:0; }
#skyAppSearch { width:225px;max-width:45%;height:42px;border-radius:10px;border:1px solid #d9cfc2;background:#fffdf7;color:#303446;font-size:12px;padding:9px 12px; }
.sky-app-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.sky-app-card { text-align:left;padding:17px 16px 15px;border-radius:16px;border:1px solid var(--cloud-line);background:var(--cloud-fill);text-decoration:none;color:#303446;display:flex;flex-direction:column;min-height:155px;transition:border-color .15s,transform .15s; }
.sky-app-card:hover { transform:translateY(-2px);filter:none;border-color:var(--cloud-ink); }
.sky-app-card-top { display:flex;align-items:center;justify-content:space-between;margin-bottom:11px; }
.sky-app-icon { width:34px;height:34px;display:grid;place-items:center;background:#fffaf3c7;border-radius:10px;color:var(--cloud-ink); }
.sky-app-icon svg { width:23px;height:23px; }
.sky-card-arrow { font-size:16px;color:var(--cloud-ink); }
.sky-app-card strong { font-size:16px;letter-spacing:-.25px; }
.sky-app-card .sky-card-caption { font-size:11px;line-height:1.6;color:#6c6575;margin:5px 0 12px; }
.sky-app-state { margin-top:auto;font:10px/1.4 'Courier New',monospace;color:#6e6179;display:flex;align-items:center;gap:6px; }
.sky-app-state::before { content:'';width:5px;height:5px;border-radius:50%;background:#a398aa;flex:none; }
.sky-app-card[data-connected=true] .sky-app-state::before { background:#64875c; }
.sky-app-card[data-private=true] .sky-app-state::before { background:#aa8d62; }
.sky-modal-foot { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 25px;border-top:1px solid #ded7cb;flex:none;background:#f5f0e6; }
.sky-modal-foot small { font-size:10px;color:#746a7c;line-height:1.5;max-width:55%; }
.sky-calm-control { display:inline-flex;gap:9px;align-items:center;font-size:12px;min-height:44px;color:#4d4357;cursor:pointer;white-space:nowrap; }
.sky-calm-control input { width:17px;height:17px;accent-color:#718967; }
.sky-empty { grid-column:1/-1;text-align:center;padding:38px 15px;font-size:13px;color:#756b7e; }
.sky-detail { max-width:520px;margin:10px auto 20px;text-align:center; }
.sky-detail-icon { width:80px;height:80px;border-radius:27px;background:var(--cloud-fill);border:1px solid var(--cloud-line);color:var(--cloud-ink);display:grid;place-items:center;margin:0 auto 22px; }
.sky-detail-icon svg { width:45px;height:45px; }
.sky-detail h3 { font-size:25px;letter-spacing:-.7px;margin:0 0 13px; }
.sky-detail p { font-size:14px;line-height:1.7;color:#756b7e; }
.sky-detail .sky-unconnected { display:inline-block;background:#eee7dd;border:1px solid #ded3c6;border-radius:8px;padding:6px 9px;font:10px 'Courier New',monospace;color:#756254; }
.sky-detail-actions { display:flex;gap:10px;justify-content:center;margin-top:22px; }
.sky-detail-actions button { min-height:44px;font-size:12px;padding:12px 17px;border:1px solid #d6cdbc;border-radius:10px;background:#fffaf0;color:#4f445a; }
.sky-detail-actions button:first-child { background:#dce6c7;border-color:#c5d3ae;color:#344b3b; }
.sky-links-notice { font-size:12px;line-height:1.65;color:#756b7e;margin:0 0 20px; }
.sky-link-row { display:grid;grid-template-columns:125px minmax(0,1fr);gap:8px 12px;padding:12px 0;border-bottom:1px solid #e4dbcf;align-items:center; }
.sky-link-row>span { font-size:13px;font-weight:700; }
.sky-link-row input { width:100%;min-width:0;padding:12px;border:1px solid #d9d0c2;border-radius:8px;background:#fffdf7;min-height:44px;font-size:12px; }
.sky-link-row input:invalid { border-color:#b66464; }
.sky-links-actions { display:flex;gap:10px;justify-content:flex-end;margin:20px 0 0;flex-wrap:wrap; }
.sky-links-actions button { min-height:44px;padding:10px 16px;border:1px solid #c8d2b6;border-radius:9px;background:#dce6c7;color:#344b3b;font-size:12px;font-weight:600; }
.sky-links-actions button.secondary { background:#faf7ef;border-color:#ded7cb;color:#514858; }
.sky-links-feedback { min-height:20px;font-size:12px;line-height:1.6;color:#4a614c;margin:14px 0 0; }
.sky-links-feedback[data-error=true] { color:#a14f4c; }
@media(min-width:1600px) { #creativeSky { left:400px;right:38px; } }
@media(min-width:851px) and (max-width:1150px) {
 #creativeSky { left:302px;right:14px; }
 .sky-cloud-name { font-size:11px;gap:3px; }.sky-cloud-name svg { width:14px;height:14px; }
 .sky-cloud-caption { font-size:7.5px; }
}
@media(max-width:850px) {
 #creativeSky { left:12px;right:12px;top:146px;height:133px; }
 #creativeSky .sky-heading { height:37px;padding:0 5px; }
 .sky-eyebrow { font-size:8px;letter-spacing:1px; }
 .sky-directory-button { height:36px; padding:0 10px;font-size:11px; }
 .sky-heading-actions { gap:2px; }
 .sky-motion-button { display:none; }
 #skyCloudTrack { display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;gap:0;padding:4px 0 5px;pointer-events:auto;touch-action:pan-x;overscroll-behavior-x:contain;height:89px; }
 #skyCloudTrack::-webkit-scrollbar { display:none; }
 .sky-page { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always; }
 .sky-cloud { height:78px;grid-column:auto!important; }
 .sky-cloud-art { transform:scaleY(1.14);transform-origin:50% 50%; }
 .sky-cloud-name { font-size:11px;gap:0; }
 .sky-cloud-name svg { display:none; }
 .sky-cloud-caption { display:none; }
 .sky-cloud-label { top:42%;bottom:16%;left:3%;right:3%; }
 .sky-pager { position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:13px;pointer-events:auto; }
 .sky-pager button { width:34px;height:25px;font-size:16px;color:#81718f;border-radius:8px; }
 .sky-pager button:hover { background:#e7dfec; }.sky-pager button:disabled { opacity:.3; }
 #skyPageNote { font:9px/1 'Courier New',monospace;color:#82768b;min-width:90px;text-align:center; }
 body[data-view=block] #stage { top:285px;bottom:99px; }
 body[data-view=block] .hero { padding-top:16px; }
 body[data-view=block] .hero h1 { font-size:38px;margin:11px 0 13px;letter-spacing:-1.9px; }
 body[data-view=block] .hero>p { font-size:10px; }
 #skyDirectory { width:100vw;max-width:100vw;margin:auto 0 0;border-radius:22px 22px 0 0;max-height:94dvh; }
 .sky-modal-head { padding:20px 19px 16px; }.sky-modal-head h2 { font-size:26px; }
 .sky-modal-body { padding:17px 18px 22px; }.sky-directory-intro { flex-direction:column;align-items:stretch;gap:10px; }
 #skyAppSearch { width:100%;max-width:100%; }
 .sky-app-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:9px; }
 .sky-app-card { padding:14px 12px;min-height:154px; }.sky-app-card strong { font-size:14px; }
 .sky-app-card .sky-card-caption { font-size:10px; }
 .sky-app-state { font-size:9px; }
 .sky-modal-foot { padding:8px 18px calc(8px + env(safe-area-inset-bottom,0px)); }
 .sky-modal-foot small { font-size:9px; }.sky-calm-control { font-size:11px; }
 .sky-link-row { grid-template-columns:1fr; }
}
@media(max-width:850px) and (max-height:760px) and (orientation:portrait) {
 #creativeSky { top:115px;height:126px; }
 body[data-view=block] .hero { padding-top:10px; }
 body[data-view=block] .hero h1 { font-size:32px;line-height:1.02;margin:7px 0 11px; }
 body[data-view=block] .hero>p { font-size:9px;line-height:1.5; }
 body[data-view=block] #stage { top:248px;bottom:92px; }
 .sky-pager { bottom:-3px; }
}
@media(max-width:350px) {
 .sky-cloud-name { font-size:10px; }.sky-eyebrow { font-size:7px;letter-spacing:.5px; }
 .sky-heading-actions { gap:0; }.sky-directory-button { padding:0 8px;font-size:10px; }
 .sky-app-card strong { font-size:13px; }
}
@media(max-width:850px) and (orientation:landscape) {
 #creativeSky { left:245px;right:12px;top:0;height:122px; }
 body[data-view=block] #stage { top:123px;bottom:0;left:210px; }
 body[data-view=block] .hero { width:230px;padding:21px; }
 body[data-view=block] .hero h1 { font-size:33px;margin:10px 0 12px; }
 body[data-view=block] .hero>p { font-size:10px; }
 .sky-cloud-caption { display:block;font-size:8px; }
 .sky-pager { bottom:-1px; }
 #skyDirectory { max-height:96dvh;width:94vw;max-width:94vw;margin:auto;border-radius:18px; }
 .sky-app-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(prefers-reduced-motion:reduce) { .sky-cloud-surface { animation:none!important;transform:none!important; } .sky-app-card { transition:none; } }
/* Keep the existing downstairs sign fully touchable in the shorter sky layout. */
@media(max-width:850px) {
 body[data-view=block] #clawWorldDoor { margin-top:-14px; }
 #skyAllApps { min-height:44px; }
}
@media(max-width:850px) {
 body[data-view=block] #clawWorldDoor { margin-top:-24px; }
}
/* A short landscape phone cannot fit both sky + block vertically. Keep the
   permanent directory beside the scene rather than shrinking the HDB to a toy
   thumbnail or covering its doors. Portrait restores the swipeable clouds. */
@media(max-width:850px) and (max-height:500px) and (orientation:landscape) {
 #creativeSky { left:21px;right:auto;top:220px;width:195px;height:48px; }
 #creativeSky .sky-heading { padding:0;height:44px; }
 #creativeSky .sky-eyebrow, #skyCloudTrack, .sky-pager { display:none; }
 .sky-heading-actions { width:100%; }
 #skyAllApps { width:100%;justify-content:center; }
 body[data-view=block] #stage { top:0;bottom:0;left:230px; }
}

/* 5.8 — a slow three-cloud carousel, living faces, and quiet unit plates.
   Layout remains independent of the room/editor. No scene meshes are moved. */
:root { --sky-height:230px; }
#creativeSky { height:224px; }
#skyCloudTrack {
 display:flex; overflow-x:auto; overflow-y:hidden; gap:0; padding:7px 0;
 height:146px; scroll-snap-type:x mandatory; scrollbar-width:none;
 pointer-events:auto; touch-action:pan-x; overscroll-behavior-x:contain;
}
#skyCloudTrack::-webkit-scrollbar { display:none; }
#skyCloudTrack .sky-page {
 display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px;
 flex:0 0 100%; min-width:0; scroll-snap-align:start; scroll-snap-stop:always;
}
#skyCloudTrack .sky-cloud { grid-column:auto!important;height:132px; }
#skyCloudTrack[data-moving=true] .sky-cloud { pointer-events:none; }
.sky-cloud-name { font-size:18px;gap:8px; }
.sky-cloud-name svg { width:21px;height:21px; }
.sky-cloud-caption { font-size:11px; }
.sky-cloud-label { top:46%;bottom:17%;gap:7px; }
.sky-pager { position:static;transform:none;display:flex;justify-content:center;align-items:center;gap:12px;height:36px;pointer-events:auto; }
.sky-pager button { width:44px;height:34px;min-height:34px;border-radius:10px;font-size:19px;color:#776184; }
.sky-pager button:hover { background:#e9e0ec; }
#skyPageNote { min-width:45px;font:10px/1 'Courier New',monospace;letter-spacing:2px;text-align:center;color:#82768b; }
.sky-cloud-art .cloud-happy-mouth { fill:#c58199;stroke:#65576e;stroke-width:1.4;stroke-linejoin:round; }
.sky-cloud-art .cloud-love { fill:#d995aa;opacity:0;transform-box:fill-box;transform-origin:center;animation:sky-love 12s ease-in-out var(--face-delay,0s) infinite; }
.cloud-face-neutral { animation:sky-face-neutral 12s ease-in-out var(--face-delay,0s) infinite; }
.cloud-face-cute { opacity:0;animation:sky-face-cute 12s ease-in-out var(--face-delay,0s) infinite; }
.cloud-blink { transform-box:fill-box;transform-origin:center;animation:sky-blink 4.9s ease-in-out var(--blink-delay,0s) infinite; }
.cloud-cheeks { animation:sky-cheeks 12s ease-in-out var(--face-delay,0s) infinite; }
@keyframes sky-blink {0%,40%,44%,93%,98%,100%{transform:scaleY(1)}42%,95%,96%{transform:scaleY(.08)}}
@keyframes sky-face-neutral {0%,36%,68%,100%{opacity:1}40%,64%{opacity:0}}
@keyframes sky-face-cute {0%,36%,68%,100%{opacity:0}40%,64%{opacity:1}}
@keyframes sky-cheeks {0%,32%,74%,100%{opacity:.65}40%,64%{opacity:1}}
@keyframes sky-love {0%,38%,69%,100%{opacity:0;transform:translate(0,3px) scale(.65)}47%,57%{opacity:.9;transform:translate(1px,-1px) scale(1)}66%{opacity:0;transform:translate(4px,-7px) scale(.8)}}
html[data-sky-suspended=true] .sky-cloud-art *,
body[data-view=room] .sky-cloud-art * { animation-play-state:paused!important; }
html[data-sky-calm=true] .sky-cloud-art * { animation:none!important; }
html[data-sky-calm=true] .cloud-face-cute,html[data-sky-calm=true] .cloud-love { opacity:0; }
html[data-sky-calm=true] .cloud-face-neutral { opacity:1; }
.hero h1.community-title { display:flex;flex-direction:column;align-items:flex-start;font-size:clamp(44px,4.1vw,60px);line-height:1.01;letter-spacing:-2.5px;margin:22px 0 28px; }
.community-title>span { display:block; }
.community-title .underlined::after { height:4px;bottom:-9px;width:103%; }
/* Larger invisible hit area; the only visible label is the small enamel plate. */
#unitLabels .unit-number-plate {
 width:53px;height:40px;min-height:40px;max-width:none;padding:0 4px;
 display:flex;align-items:center;justify-content:flex-start;gap:0;
 background:none;border:0;box-shadow:none;border-radius:6px;
 transform:translate(-4px,-50%);transition:none;
}
#unitLabels .unit-number-plate b {
 font:700 9px/1.1 'Courier New',monospace;letter-spacing:.6px;white-space:nowrap;
 padding:4px 6px;border:1px solid #cbbba4;border-radius:3px;
 background:#fff5e3f2;color:#66576d;box-shadow:0 1px 2px #68564b22;
}
#unitLabels .unit-number-plate:hover { background:none;box-shadow:none;filter:none; }
#unitLabels .unit-number-plate:hover b,#unitLabels .unit-number-plate:focus-visible b { border-color:#718763;background:#e9efdc;color:#364f39; }
#unitLabels .unit-number-plate[hidden] { display:none; }
#unitLabels .unit-number-plate::before { content:none; }
@media(min-width:851px) and (max-height:820px) {
 .hero h1.community-title { font-size:46px;letter-spacing:-2px;margin:12px 0 24px; }
 body[data-view=block] .hero { padding-top:22px; }
 body[data-view=block] .intro-note { display:none; }
 body[data-view=block] .prototype-note { margin-top:auto; }
}
@media(min-width:851px) and (max-width:1150px) {
 .sky-cloud-name { font-size:15px;gap:5px; }
 .sky-cloud-name svg { width:17px;height:17px; }
 .sky-cloud-caption { font-size:9px; }
 #skyCloudTrack .sky-page { gap:7px; }
}
@media(max-width:850px) {
 #creativeSky { top:147px;height:146px; }
 #creativeSky .sky-heading { height:36px; }
 #skyCloudTrack { height:82px;padding:3px 0 2px; }
 #skyCloudTrack .sky-page { gap:3px; }
 #skyCloudTrack .sky-cloud { height:77px; }
 .sky-cloud-name { font-size:11px;gap:0; }
 .sky-cloud-name svg,.sky-cloud-caption { display:none; }
 .sky-cloud-label { top:43%;bottom:16%;gap:0; }
 .sky-pager { height:28px;gap:8px; }
 .sky-pager button { height:28px;min-height:28px;width:44px;font-size:17px; }
 #skyPageNote { font-size:9px;min-width:40px; }
 .sky-motion-button { display:grid;height:36px;width:34px; }
 body[data-view=block] #stage { top:300px; }
 body[data-view=block] .hero h1.community-title { display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:0;max-width:400px;font-size:32px;letter-spacing:-1.5px;line-height:1.06;margin:9px 0 17px; }
 .community-title .underlined::after { height:3px;bottom:-7px; }
 #unitLabels .unit-number-plate b { font-size:8px;padding:4px 5px; }
}
@media(max-width:850px) and (max-height:760px) and (orientation:portrait) {
 #creativeSky { top:133px;height:144px; }
 body[data-view=block] #stage { top:280px;bottom:92px; }
 body[data-view=block] .hero h1.community-title { font-size:30px;line-height:1.04;margin:7px 0 15px; }
 body[data-view=block] .hero>p { font-size:9px;line-height:1.45; }
}
@media(max-width:350px) {
 .sky-cloud-name { font-size:10px; }
 body[data-view=block] .hero h1.community-title { font-size:28px;letter-spacing:-1.6px; }
}
@media(max-width:850px) and (orientation:landscape) {
 #creativeSky { top:0;height:148px; }
 body[data-view=block] #stage { top:150px;left:230px; }
 body[data-view=block] .hero h1.community-title { font-size:30px;max-width:195px;line-height:1.04;margin:7px 0 16px; }
 .sky-cloud-caption { display:none; }
}
@media(max-width:850px) and (max-height:500px) and (orientation:landscape) {
 #creativeSky { top:238px;height:44px; }
 #skyCloudTrack,.sky-pager { display:none; }
 body[data-view=block] #stage { top:0;bottom:0;left:230px; }
 #creativeSky .sky-motion-button { display:none; }
}
@media(prefers-reduced-motion:reduce) {
 .sky-cloud-art * { animation:none!important; }
 .cloud-face-cute,.cloud-love { opacity:0!important; }
 .cloud-face-neutral { opacity:1!important; }
 #skyCloudTrack { scroll-behavior:auto; }
}

/* 5.8.1 — continuous, one-node-per-app drift; no stepped paging or clones.
   All coordinates below are DOM transforms, never WebGL scene coordinates. */
#skyCloudTrack {
 position:relative;display:block;overflow:hidden;padding:0;scroll-snap-type:none;
 touch-action:pan-y;overscroll-behavior-x:contain;cursor:grab;
 mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent);
 -webkit-mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent);
}
#skyCloudTrack:active { cursor:grabbing; }
#skyCloudTrack .sky-cloud {
 position:absolute;left:0;top:7px;width:var(--sky-card-width,30%);height:132px;
 margin:0;will-change:transform;user-select:none;touch-action:pan-y;
}
#skyCloudTrack .sky-cloud-surface {
 inset:0;animation-name:sky-cloud-bob;--sky-bob-scale:1;
}
@keyframes sky-cloud-bob {
 0%,100% { transform:translate3d(0,calc(var(--sky-lift,5px) * var(--sky-bob-scale,1)),0); }
 50% { transform:translate3d(0,calc(var(--sky-lift,5px) * var(--sky-bob-scale,1) * -1),0); }
}
@media(max-width:850px) {
 #skyCloudTrack .sky-cloud { top:4px;height:74px; }
 #skyCloudTrack .sky-cloud-surface { --sky-bob-scale:.55; }
 #skyPageNote { letter-spacing:1px;min-width:50px; }
}
@media(max-width:850px) and (max-height:500px) and (orientation:landscape) {
 #skyCloudTrack { display:none; }
}

/* Quiet, stationary placement controls. No changes to the public homepage. */
#placementTools{display:none;position:absolute;top:65px;left:50%;transform:translateX(-50%);z-index:4;gap:4px;align-items:center;padding:4px;background:#faf7eff5;border:1px solid var(--line);border-radius:11px;box-shadow:0 3px 10px #50443c08;white-space:nowrap}
body[data-view=room][data-mode=edit] #placementTools{display:flex}
#placementTools button,#placementTools select{font:600 11px Arial,Helvetica,sans-serif;border:1px solid transparent;min-height:38px;padding:8px 12px;border-radius:7px;background:transparent;color:#5d5966}
#placementTools button.active{background:#dce6c7;color:#344b3b;border-color:#c5d3ae}
#placementTools select{background:#fffcf6;border-color:var(--line);padding:7px 5px;min-width:70px}
#placementTools button:focus-visible,#placementTools select:focus-visible{outline:2px solid #4a614c;outline-offset:2px}
body[data-view=room][data-mode=edit] .unit-label{top:127px}
.quality-button{font:600 10px Arial;border-radius:7px;min-height:35px;padding:6px 9px;background:var(--panel);border:1px solid var(--line);margin:0 3px;color:var(--green)}
.quality-options{display:grid;gap:10px;margin:14px 0}
.quality-options button{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);text-align:left;display:flex;flex-direction:column;gap:8px;min-height:80px}
.quality-options button b{font-size:14px;color:var(--ink)}.quality-options button span{font-size:12px;line-height:1.6;color:#6d6473}
.quality-options button.active{background:#e7eedb;border:2px solid #6a825c;padding:15px}
#infoContent .quality-status{font-size:12px;color:#435b47}
html[data-render-quality=light] dialog::backdrop,html[data-render-quality=light] .camera-tools{backdrop-filter:none}
html[data-render-quality=light] .sky-cloud-surface{filter:none!important}
html[data-render-quality=light] .catalog-item,html[data-render-quality=light] .look-presets button{box-shadow:none;transition:none}
@media(max-width:850px){
 #placementTools{top:49px;gap:3px;padding:3px;max-width:calc(100% - 16px)}
 #placementTools button,#placementTools select{min-height:44px;padding:7px 10px;font-size:11px}
 #placementTools select{min-width:65px;padding:7px 3px}
 body[data-view=room][data-mode=edit] .unit-label{display:none!important}
 .quality-button{min-height:35px;padding:5px 7px;font-size:10px;margin:0 1px}
 body[data-view=room] .camera-tools{max-width:calc(100% - 20px)}
}
@media(max-width:360px){#placementTools button{padding:7px 9px}.quality-button{padding:5px;font-size:9px}}

/* Visible on arrival, not hidden behind a camera icon. */
.responsiveness-control{display:flex;align-items:center;gap:9px;margin-left:auto;flex:none}
.responsiveness-control label{font:600 10px Arial,Helvetica,sans-serif;color:#5b6258}
.responsiveness-control select{font:600 11px Arial,Helvetica,sans-serif;color:#344b3b;background:#edf1e2;border:1px solid #c5d3ae;border-radius:9px;min-height:40px;padding:8px 22px 8px 10px;max-width:166px;cursor:pointer}
.responsiveness-control select:focus-visible{outline:2px solid #4a614c;outline-offset:3px}
body[data-view=block] .header-end{margin-left:12px}
@media(min-width:851px) and (max-width:1200px){
 .responsiveness-control{gap:5px}.responsiveness-control label{font-size:9px}
 .responsiveness-control select{max-width:139px;font-size:10px}
 body[data-view=block] .topbar{gap:13px}
 body[data-view=block] #aboutButton{display:none}
}
@media(max-width:850px){
 body[data-view=block] .topbar{position:relative;height:107px;min-height:107px;align-items:flex-start;padding-top:10px;padding-bottom:47px}
 body[data-view=block] .topbar nav{height:44px;align-items:center}
 body[data-view=block] .topbar .header-end{height:44px;align-items:center;margin-left:auto}
 body[data-view=block] .responsiveness-control{position:absolute;left:14px;right:14px;bottom:6px;margin:0;gap:10px;justify-content:space-between;height:43px;padding:0 0 0 2px}
 .responsiveness-control label{font-size:11px;letter-spacing:.15px}
 .responsiveness-control select{min-height:42px;width:176px;max-width:55%;font-size:12px}
}
@media(max-height:480px) and (orientation:landscape){
 body[data-view=block] .topbar{height:60px;min-height:60px;align-items:center;padding-top:0;padding-bottom:0;gap:9px}
 body[data-view=block] .responsiveness-control{position:static;height:auto;margin-left:auto;justify-content:flex-end;gap:5px}
 .responsiveness-control label{font-size:9px}.responsiveness-control select{width:130px;max-width:130px;font-size:10px;min-height:38px}
 body[data-view=block] .topbar .header-end{margin-left:0}
}

/* 5.10.1 — phone homepage: the neighbourhood is the screen.
 * Only block view is restyled. Interior editing and desktop remain unchanged.
 * A normal portrait viewport dedicates ~80% to the interactive scene.
 */
#mobileHomeMenuButton, #mobileAllApps, #mobileFitBlock, #mobilePanMode { display:none; }
#mobileHomeMenu { width:min(440px,calc(100vw - 24px)); }
.mobile-home-menu-body { padding:16px; display:grid; gap:8px; }
.mobile-home-menu-body button { min-height:46px; padding:12px 14px; border:1px solid var(--line); border-radius:10px; background:var(--panel); text-align:left; font-size:14px; }
.mobile-home-menu-body p { margin:0 0 8px; color:var(--green); font-size:12px; line-height:1.6; }
@media (max-width:850px), (max-height:500px) and (pointer:coarse) {
 body[data-view=block] {
  --phone-head:54px; --phone-title:23px; --phone-sky:76px;
  --brand-width:91px; --brand-height:44px; --brand-top:5px;
  --brand-left:12px; --brand-reserve:113px;
  min-height:0;
 }
 body[data-view=block] .topbar {
  height:calc(var(--phone-head) + env(safe-area-inset-top,0px));
  min-height:calc(var(--phone-head) + env(safe-area-inset-top,0px));
  flex:none; padding:0 112px 0 114px; gap:0; align-items:center;
  border:0; background:var(--paper); z-index:6;
 }
 body[data-view=block] .topbar > nav,
 body[data-view=block] .topbar .header-end { display:none!important; }
 body[data-view=block] #homeResponsiveness {
  position:static; height:48px; margin:0 0 0 auto; padding:2px 0;
  display:flex; flex-direction:column; align-items:stretch;
  justify-content:center; gap:2px; width:106px;
 }
 body[data-view=block] #homeResponsiveness label {
  font:600 9px/11px Arial,Helvetica,sans-serif; letter-spacing:0;
  color:#5b6258; padding-left:7px;
 }
 body[data-view=block] #responsivenessSelect {
  min-height:30px; height:30px; width:106px; max-width:none;
  font-size:12px; padding:4px 18px 4px 7px; border-radius:8px;
 }
 body[data-view=block] #mobileHomeMenuButton {
  position:fixed; display:grid; place-items:center;
  right:calc(8px + env(safe-area-inset-right,0px));
  top:calc(5px + env(safe-area-inset-top,0px));
  width:44px; height:44px; min-height:44px; border-radius:12px;
  color:var(--ink); z-index:8; font-size:22px;
 }
 body[data-view=block] #layout { flex:1; min-height:0; }
 body[data-view=block] .hero {
  left:0; top:0; bottom:auto; width:100%; height:var(--phone-title);
  padding:0 12px; text-align:center; align-items:center; z-index:3;
 }
 body[data-view=block] .hero h1.community-title {
  display:flex; flex-direction:row; flex-wrap:nowrap; justify-content:center;
  gap:0; width:auto; max-width:none; margin:0; font-size:clamp(14px,4.2vw,19px);
  line-height:1.2; letter-spacing:-.55px; white-space:nowrap;
 }
 body[data-view=block] .community-title .underlined::after { bottom:-3px; height:2px; }
 body[data-view=block] .hero>p,
 body[data-view=block] .hero>.micro,
 body[data-view=block] .intro-note,
 body[data-view=block] .prototype-note,
 body[data-view=block] .stage-sticker,
 body[data-view=block] .bottom-bar { display:none!important; }
 body[data-view=block] #creativeSky {
  left:4px; right:4px; top:var(--phone-title); width:auto;
  height:var(--phone-sky); z-index:4;
 }
 body[data-view=block] #creativeSky .sky-heading { height:0; padding:0; }
 body[data-view=block] .sky-eyebrow,
 body[data-view=block] .sky-pager,
 body[data-view=block] #skyMotion { display:none!important; }
 body[data-view=block] #skyAllApps { display:none!important; }
 body[data-view=block] #mobileAllApps {
  position:fixed; top:calc(5px + env(safe-area-inset-top,0px));
  right:calc(54px + env(safe-area-inset-right,0px)); z-index:8;
  height:44px; width:50px; min-height:44px; padding:3px;
  display:flex; flex-direction:column; justify-content:center; gap:2px;
  border:0; border-radius:10px; background:none; font-size:10px;
 }
 body[data-view=block] #mobileAllApps svg { width:17px; height:17px; }
 body[data-view=block] #mobileAllApps .sky-total { display:none; }
 body[data-view=block] #skyCloudTrack {
  display:block; position:relative; height:var(--phone-sky); padding:0;
  margin:0; overflow:hidden;
 }
 body[data-view=block] #skyCloudTrack .sky-cloud { top:3px; height:66px; min-height:44px; }
 body[data-view=block] #skyCloudTrack .sky-cloud-surface { --sky-bob-scale:.4; }
 body[data-view=block] .sky-cloud-name { font-size:11px; }
 body[data-view=block] .sky-cloud-caption { display:none; }
 body[data-view=block] .sky-cloud-art { transform:scaleY(1.1); }
 body[data-view=block] #stage {
  position:absolute; inset:calc(var(--phone-title) + var(--phone-sky)) 0 0;
  width:100%; height:auto; min-width:0; min-height:0;
  background:radial-gradient(ellipse at 55% 43%,#e5e2cf40,transparent 74%);
 }
 body[data-view=block] #world { width:100%; height:100%; }
 body[data-view=block] #startButton {
  position:fixed; left:calc(10px + env(safe-area-inset-left,0px));
  bottom:calc(10px + env(safe-area-inset-bottom,0px)); top:auto;
  margin:0; width:106px; min-height:44px; padding:10px 8px;
  font-size:12px; gap:8px; border-radius:12px;
  transform:none; box-shadow:0 3px 12px #50443c12; z-index:5;
 }
 body[data-view=block] .camera-tools {
  position:absolute; right:calc(10px + env(safe-area-inset-right,0px));
  bottom:calc(10px + env(safe-area-inset-bottom,0px)); left:auto;
  gap:0; padding:2px; border-radius:12px; z-index:5; backdrop-filter:none;
  background:#faf7eff7;
 }
 body[data-view=block] .camera-tools .icon-button { width:38px; height:44px; min-height:44px; }
 body[data-view=block] .camera-tools .divider { display:none; }
 body[data-view=block] #photoButton,
 body[data-view=block] #qualityButton { display:none!important; }
 body[data-view=block] #mobileFitBlock { display:flex; width:44px; font-size:11px; font-weight:700; }
 body[data-view=block] #mobilePanMode {
  display:flex; position:absolute; top:7px; right:10px;
  min-height:44px; padding:8px 10px; border:1px solid var(--line);
  border-radius:10px; background:#faf7efdc; color:#61536c;
  align-items:center; gap:6px; font:600 11px Arial; z-index:4;
 }
 body[data-view=block] #mobilePanMode[aria-pressed=true] { background:#dfd3ee; }
 body[data-view=block] .stage-hint {
  text-align:left; position:absolute; top:17px; bottom:auto; left:12px; right:90px;
  font-size:10px; color:#766b7d; line-height:1.5;
 }
 body[data-view=block] #clawWorldDoor {
  font-size:11px; padding:9px 12px; border-radius:13px;
  min-height:44px; max-width:155px; margin-top:-26px;
 }
 body[data-view=block] #clawWorldDoor small { font-size:8px; }
 #mobileHomeMenu { margin:auto 12px max(12px,env(safe-area-inset-bottom,0px)); width:calc(100vw - 24px); max-width:calc(100vw - 24px); }
}
@media (max-width:350px) {
 body[data-view=block] { --brand-width:77px; --brand-left:10px; --brand-reserve:96px; }
 body[data-view=block] .topbar { padding-left:98px; padding-right:109px; }
 body[data-view=block] #homeResponsiveness,body[data-view=block] #responsivenessSelect { width:104px; }
 body[data-view=block] #startButton { width:100px; }
 body[data-view=block] .camera-tools .icon-button { width:36px; }
 body[data-view=block] #mobileFitBlock { width:40px; }
}
/* Compact browser heights: keep controls reachable, not a giant headline. */
@media (max-width:850px) and (max-height:700px) and (orientation:portrait) {
 body[data-view=block] { --phone-head:52px; --phone-title:20px; --phone-sky:64px; }
 body[data-view=block] #skyCloudTrack .sky-cloud { height:57px; }
}
@media (max-width:850px) and (orientation:landscape), (max-height:500px) and (pointer:coarse) and (orientation:landscape) {
 body[data-view=block] { --phone-head:50px; --phone-title:0px; --phone-sky:0px; }
 body[data-view=block] .hero h1.community-title { display:none; }
 body[data-view=block] #skyCloudTrack { display:none; }
 body[data-view=block] #creativeSky { top:0; height:0; }
 body[data-view=block] #stage { inset:0; }
 body[data-view=block] .topbar { padding-right:120px; }
 body[data-view=block] #homeResponsiveness { flex-direction:row; align-items:center; width:auto; gap:8px; }
 body[data-view=block] #homeResponsiveness label { font-size:11px; }
 body[data-view=block] #responsivenessSelect { height:38px; }
 body[data-view=block] .stage-hint { top:15px; }
}

/* Cold Little World: intentionally lightweight HTML/SVG interior. */
#fridgeDialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:var(--paper);color:var(--ink);overflow:hidden;box-sizing:border-box;--fridge-colour:#b9cfc3;--fridge-accent:#e8c1ca;--shelf-cols:3;--shelf-rows:4}
#fridgeDialog[open]{display:flex;flex-direction:column}#fridgeDialog::backdrop{background:#f4f0e7;backdrop-filter:none}#fridgeDialog [hidden]{display:none!important}
#fridgeDialog button,#fridgeDialog input,#fridgeDialog select{font:inherit;box-sizing:border-box}#fridgeDialog button:focus-visible{outline:3px solid #657d62;outline-offset:2px}#fridgeDialog button{cursor:pointer}#fridgeDialog button:disabled{opacity:.42;cursor:default}
.fridge-header{display:flex;align-items:center;gap:20px;padding:12px 25px;min-height:83px;border-bottom:1px solid var(--line);background:var(--panel);flex:none;padding-top:max(12px,env(safe-area-inset-top))}.fridge-back{border:1px solid var(--line);border-radius:12px;background:#fffaf1;padding:12px 15px;font-size:13px!important;min-height:44px}.fridge-heading{flex:1;min-width:0}.fridge-kicker{font:700 9px/1.6 'Courier New',monospace;letter-spacing:1.4px;color:#74677d;display:block}.fridge-heading h1{font-size:25px;letter-spacing:-.8px;line-height:1.2;margin:5px 0 0}.fridge-mode{font:700 10px 'Courier New',monospace;padding:9px 13px;border:1px solid #d3c6df;border-radius:20px;background:#e9e0f0;white-space:nowrap}.fridge-sound{font-size:11px!important;min-height:44px;padding:8px 10px}.fridge-close{font-size:25px!important;width:44px;height:44px;border-radius:50%;background:#eee7dc;border:1px solid var(--line)}
.fridge-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,375px)}.fridge-main{min-width:0;min-height:0;display:flex;flex-direction:column;background:#f0ebe2}.fridge-scene{flex:1;min-height:0;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;padding:25px 30px 20px;background:radial-gradient(ellipse at 46% 44%,#f8f2df 8%,#e9e8df 58%,#e2dee9 100%)}.fridge-scene:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#a795b322 .7px,transparent .7px);background-size:22px 22px}.fridge-scene-caption{position:relative;align-self:stretch;z-index:1;flex:none;padding:0 6px 12px}.fridge-scene-caption>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.fridge-scene-caption b{font-size:15px;letter-spacing:-.2px}.fridge-scene-caption button{font-size:11px!important;border:1px solid #c9c8bb;background:#faf7edb8;border-radius:8px;min-height:36px;padding:7px 10px}
.fridge-appliance{position:relative;width:min(600px,90%);display:flex;flex-direction:column;flex:1;min-height:0;max-height:680px;padding:13px 15px 12px;background:var(--fridge-colour);border-radius:32px 32px 20px 20px;border:2px solid #67716f77;box-shadow:inset 5px 0 0 #ffffff38,inset -5px 0 0 #54536013,0 14px 0 -5px #6a607117,0 30px 36px -22px #51465438}.fridge-appliance:before,.fridge-appliance:after{content:'';position:absolute;bottom:-10px;width:28px;height:12px;border-radius:0 0 5px 5px;background:#6d7474;z-index:0}.fridge-appliance:before{left:28px}.fridge-appliance:after{right:28px}.fridge-crown{display:flex;align-items:center;gap:12px;padding:5px 8px 12px;color:#485853;flex:none}.fridge-crown>span{font-size:19px;font-weight:900;letter-spacing:-1px}.fridge-heart{color:#aa748e;padding:0 2px}.fridge-crown i{font:700 8px 'Courier New',monospace;letter-spacing:1.2px;font-style:normal}.fridge-crown>b{margin-left:auto;font:700 10px 'Courier New',monospace;background:#f5f6e7ac;border-radius:20px;padding:7px 9px;white-space:nowrap}
.fridge-cavity{position:relative;display:flex;gap:12px;padding:15px 12px 8px;background:#f5f4e7;border:2px solid #7b8b8180;box-shadow:inset 0 5px 14px #aebdac55;flex:1;min-height:0;border-radius:17px;isolation:isolate;overflow:visible}.fridge-shelves{background:#f5f4e7;display:grid;grid-template-rows:repeat(var(--shelf-rows),minmax(0,1fr));min-width:0;flex:1;gap:8px}.fridge-shelf-row{display:grid;grid-template-columns:repeat(var(--shelf-cols),minmax(0,1fr));gap:5px;position:relative;min-height:0;border-bottom:8px solid #d4e0d2;border-radius:0 0 6px 6px;box-shadow:0 3px 0 #b1c1b760,inset 0 -6px 10px #d6e4d02a;padding:0 4px 2px}.fridge-shelf-number{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);font:6px 'Courier New',monospace;color:#7f9585;pointer-events:none;z-index:2}.fridge-slot{position:relative;min-height:0;min-width:0;border:1.5px solid transparent;border-radius:12px;padding:1px 2px 4px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;background:transparent;transition:background .12s,border-color .12s;overflow:hidden}.fridge-slot:hover{background:#dfd3ee55}.fridge-slot.selected{background:#e6edd185;border-color:#91a47b}.fridge-slot img{width:100%;height:calc(100% - 18px);min-height:26px;max-height:100px;object-fit:contain;pointer-events:none;flex:1}.fridge-food-name{font-size:9px;line-height:1.15;max-width:100%;text-align:center;color:#534d58;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:none;min-height:12px}.fridge-empty-mark{font-size:21px;color:#9dae995f;margin:auto}.fridge-pockets{background:#f5f4e7;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;gap:7px;width:24%;border-left:1px solid #c8d5c4;padding-left:10px;min-width:0;min-height:0}.fridge-pocket-title{grid-column:1/-1;font:700 7px 'Courier New',monospace;letter-spacing:1.3px;text-align:center;color:#78907e}.fridge-pocket{border-bottom:6px solid #dce5d7;box-shadow:0 2px 0 #a6b7a875;background:#f9f8ec}.fridge-pocket .fridge-food-name{font-size:8px}.fridge-pocket img{max-height:65px}.fridge-plinth{display:flex;align-items:center;justify-content:center;padding:11px 5px 1px;gap:4px;flex:none}.fridge-plinth i{display:none}.fridge-plinth>span{font:700 7px 'Courier New',monospace;letter-spacing:1.4px;color:#51635b}
.fridge-door-cover{position:absolute;inset:-1px;pointer-events:none;display:flex;perspective:900px;z-index:5}.fridge-swing-door{position:relative;flex:1;background:var(--fridge-colour);border:2px solid #6b787c55;border-radius:15px;box-shadow:inset 3px 3px 0 #fff7ea44,2px 3px 4px #58636911;transition:transform .85s cubic-bezier(.2,.7,.18,1),opacity .65s;backface-visibility:hidden;transform-origin:left center}.fridge-swing-door.right{transform-origin:right center}.fridge-door-handle{position:absolute;width:12px;height:27%;right:12%;top:38%;border-radius:12px;background:var(--fridge-accent);border:1px solid #756f6d55;box-shadow:3px 0 0 #4a4b5733}.fridge-swing-door.right .fridge-door-handle{right:auto;left:12%}.fridge-door-face{position:absolute;left:40%;top:29%;font-size:50px;color:#556064;opacity:.7}#fridgeDialog[data-opened=true] .fridge-swing-door.left{transform:rotateY(-104deg);opacity:0}#fridgeDialog[data-opened=true] .fridge-swing-door.right{transform:rotateY(104deg);opacity:0}#fridgeDialog[data-opened=false] .fridge-shelves,#fridgeDialog[data-opened=false] .fridge-pockets{visibility:hidden}#fridgeDialog[data-editing=true] .fridge-slot{touch-action:none}#fridgeDialog[data-opened=false] #fridgeSelection{opacity:.5;pointer-events:none}
#fridgeDialog[data-style=cute] .fridge-appliance{margin-top:15px;max-height:640px}#fridgeDialog[data-style=cute] .fridge-appliance:before,#fridgeDialog[data-style=cute] .fridge-appliance:after{bottom:auto;top:-26px;width:30px;height:45px;border-radius:22px 22px 6px 6px;background:var(--fridge-colour);border:2px solid #83818866;box-shadow:inset 8px 3px #efd0d5;z-index:0}#fridgeDialog[data-style=cute] .fridge-appliance:before{left:22%}#fridgeDialog[data-style=cute] .fridge-appliance:after{right:22%}#fridgeDialog[data-style=cute] .fridge-crown{position:relative;z-index:1}
#fridgeDialog[data-style=industrial] .fridge-appliance,#fridgeDialog[data-style=restaurant] .fridge-appliance{border-radius:10px}#fridgeDialog[data-style=industrial] .fridge-swing-door{border-radius:3px}#fridgeDialog[data-style=industrial] .fridge-door-handle{height:15%;width:20px;border-radius:3px}#fridgeDialog[data-style=restaurant] .fridge-swing-door,#fridgeDialog[data-style=drinks] .fridge-swing-door{background:#bdd4cbcf;border-width:10px}#fridgeDialog[data-style=premium] .fridge-crown{color:#f3ecdb}#fridgeDialog[data-style=premium] .fridge-appliance{border-radius:17px}#fridgeDialog[data-style=mini] .fridge-appliance{max-height:410px;width:min(450px,85%);margin-top:auto;margin-bottom:auto}#fridgeDialog[data-style=chest] .fridge-appliance{max-height:440px;margin:auto 0;width:min(640px,94%)}#fridgeDialog[data-style=chest] .fridge-swing-door{transform-origin:center top}#fridgeDialog[data-style=chest][data-opened=true] .fridge-swing-door{transform:rotateX(108deg)}
.fridge-note{position:absolute;left:19px;bottom:18px;background:#f7e3ad;border:1px solid #c5ad7d55;width:185px;padding:24px 13px 14px;transform:rotate(-4deg);box-shadow:1px 4px 5px #77635215;z-index:4;pointer-events:none}.fridge-note>span{position:absolute;top:-7px;left:44%;font-size:24px;color:#b77e99;text-shadow:0 2px #d5a3b066}.fridge-note p{font-size:12px;line-height:1.5;margin:0;overflow-wrap:anywhere;color:#68564b}.fridge-selection{display:flex;align-items:center;gap:10px;min-height:74px;padding:10px 20px;flex:none;background:var(--panel);border-top:1px solid var(--line)}.fridge-selection>img{width:52px;height:52px;object-fit:contain;flex:none}.fridge-selected-label{flex:1;min-width:0}.fridge-selected-label b{font-size:13px;display:block;margin-top:3px}.fridge-selection>button{border:1px solid #d4cadb;background:#ede5f1;border-radius:9px;font-size:11px!important;min-height:40px;padding:8px 12px}.fridge-selection>button:not(.fridge-taste-button){background:#f3ede3}
.fridge-sidebar{border-left:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;min-height:0;min-width:0}.fridge-tabs{display:flex;padding:10px;gap:5px;border-bottom:1px solid var(--line);flex:none}.fridge-tabs button{font-size:12px!important;font-weight:700!important;border-radius:9px;min-height:40px;flex:1;background:#ece6db}.fridge-tabs button.active{background:var(--lilac);color:#594c6c}#fridgeStockPane{display:flex;flex-direction:column;min-height:0;flex:1}.fridge-stock-top{padding:17px 16px 11px;flex:none}.fridge-stock-heading h2{font-size:21px;letter-spacing:-.5px;margin:0 0 5px}.fridge-stock-heading>span{font-size:10px;color:#756b7d}.fridge-stock-top input{width:100%;background:#fffdf6;border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-size:12px!important;min-height:40px;margin:13px 0 9px}.fridge-food-groups{display:flex;gap:4px}.fridge-food-groups button{font-size:10px!important;padding:7px 5px;border:1px solid transparent;border-radius:7px;flex:1;min-height:33px;white-space:nowrap}.fridge-food-groups button.active{background:#dce6c7;color:#45634c;border-color:#bfcca8}.fridge-fill-row{display:flex;gap:6px;margin-top:10px}.fridge-fill-row select{font-size:11px!important;border-radius:7px;border:1px solid #d6cec2;background:#fffaf1;min-height:36px;padding:6px;width:0;flex:1}.fridge-fill-row button{font-size:11px!important;border:1px solid #c4cfac;background:#e5ecd7;border-radius:7px;padding:6px 10px}.fridge-food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:3px 15px 15px;align-content:start;overflow:auto;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:#c4b8d1 transparent}.fridge-food-card{display:flex;align-items:center;flex-direction:column;background:#fffdf7;border:1px solid #e1d8cb;border-radius:12px;padding:5px 6px 9px;min-width:0;min-height:108px}.fridge-food-card:hover{border-color:#b8c598;background:#f1f4e5}.fridge-food-card img{width:66px;height:66px;object-fit:contain;pointer-events:none}.fridge-food-card>span{font-size:11px;line-height:1.3;text-align:center;color:#615267}.fridge-empty-search{grid-column:1/-1;font-size:13px;color:#756d7a}.fridge-personalise{border-top:1px solid var(--line);padding:8px 16px;flex:none}.fridge-personalise summary{font-size:11px;min-height:24px;cursor:pointer;color:#6f617b;padding:4px 0}.fridge-personalise label{font-size:11px;display:flex;align-items:center;gap:10px;margin:7px 0}.fridge-personalise input,.fridge-personalise select{border:1px solid var(--line);border-radius:6px;background:#fffcf4;padding:8px;min-width:0;flex:1;font-size:12px!important}.fridge-draft-tools{display:flex;gap:5px;padding:7px 14px 10px;flex:none}.fridge-draft-tools button{font-size:11px!important;background:#eee8de;border:1px solid var(--line);border-radius:7px;min-height:35px;padding:5px 8px}.fridge-draft-tools button:last-child{margin-left:auto;color:#996862}
#fridgePlayPane{padding:22px 20px;overflow:auto;min-height:0;flex:1;scrollbar-width:thin}.fridge-play-intro h2{font-size:25px;line-height:1.18;letter-spacing:-.7px;margin:11px 0}.fridge-play-intro p{font-size:12px;line-height:1.65;color:#766d7b;margin:10px 0 21px}.fridge-activities{display:grid;gap:10px}.fridge-activities>button{display:flex;gap:12px;align-items:center;padding:16px 12px;border:1px solid #dbd2df;border-radius:12px;background:#f0e9f3;text-align:left}.fridge-activities>button:nth-child(2){background:#e8efdc;border-color:#cdd9be}.fridge-activities>button:nth-child(3){background:#f5e7dc;border-color:#e4d1bd}.fridge-activities>button:nth-child(4){background:#e9eee8;border-color:#d0dacf}.fridge-game-icon{font-size:26px;width:34px;text-align:center;flex:none;color:#867194}.fridge-activities b{font-size:13px;line-height:1.3;display:block}.fridge-activities small{font-size:10px;line-height:1.5;display:block;color:#7c7184;margin-top:4px}.fridge-activities i{margin-left:auto;font-size:17px;font-style:normal;color:#88759b}.fridge-game-task{position:relative;margin-top:18px;background:#e5ecd8;border:1px solid #b7c7a1;padding:18px 13px;border-radius:12px}.fridge-game-task h3{font-size:17px;line-height:1.35;margin:9px 0}.fridge-game-task p{font-size:12px;line-height:1.6;color:#66755d}.fridge-task-close{position:absolute;right:5px;top:3px;width:30px;height:30px;font-size:21px!important}.fridge-bento-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.fridge-bento-mini>div{border:1px dashed #a3b48f;border-radius:9px;background:#f9f8e8;min-height:67px;display:grid;place-items:center;font-size:26px;color:#91a57d}.fridge-bento-mini img{width:64px;height:64px;object-fit:contain}.fridge-bento-number{position:absolute;top:3px;right:3px;border-radius:50%;width:18px;height:18px;font:700 11px/18px Arial;font-style:normal;background:#6c825b;color:white}.fridge-slot.bento-picked{background:#dce7c7;border-color:#78925d}.fridge-slot.moving{border-style:dashed;border-color:#8d74ab}.fridge-drag-ghost{position:fixed;width:76px;height:76px;transform:translate(-50%,-65%) rotate(-8deg);z-index:50;pointer-events:none;background:#fff8eacb;border-radius:17px;border:1px solid #bdb0c6}.fridge-drag-ghost img{width:100%;height:100%;object-fit:contain}
.fridge-moment{position:absolute;inset:7% 7%;z-index:8;border:1px solid #d4c4d7;border-radius:25px;background:#fbf6ebf7;box-shadow:0 22px 70px #5a4b6930;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:28px;text-align:center;overflow:auto}.fridge-moment-close{position:absolute;right:9px;top:9px;width:38px;height:38px;font-size:24px!important;background:#eae1eb;border-radius:50%}.fridge-moment-art{display:flex;gap:7px;align-items:center;justify-content:center;max-width:100%;margin:10px 0}.fridge-moment-art img{width:clamp(60px,10vw,126px);height:clamp(60px,12vh,126px);object-fit:contain;animation:fridge-food-pop .8s cubic-bezier(.16,.7,.15,1) both}.fridge-moment h2{font-size:clamp(20px,2.4vw,34px);letter-spacing:-.8px;line-height:1.2;margin:14px 0 8px;max-width:440px}.fridge-moment p{font-size:14px;line-height:1.65;color:#79677f;max-width:400px;margin:0 0 10px}.fridge-moment>small{font-size:10px;line-height:1.5;color:#8a7d90}.fridge-moment-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:22px}.fridge-moment-actions .button{font-size:11px;min-height:40px;padding:10px 14px}.fridge-snack-face{position:relative;width:125px;height:94px;background:#efd0b6;border:2px solid #7c6a72;border-radius:44% 44% 46% 46%;margin-top:2px;animation:fridge-face-bounce .9s ease-in-out 2}.fridge-snack-face i{position:absolute;left:28px;top:34px;width:14px;height:8px;border-radius:0 0 12px 12px;border-bottom:3px solid #66526b}.fridge-snack-face i:nth-child(2){left:auto;right:28px}.fridge-snack-face b{position:absolute;top:55px;left:51px;width:20px;height:13px;border:2px solid #66526b;border-top:0;background:#c5808a;border-radius:0 0 15px 15px}.fridge-snack-face span{position:absolute;top:48px;left:17px;width:18px;height:9px;background:#e5a6b4;border-radius:50%}.fridge-snack-face span:last-child{left:auto;right:17px}.fridge-moment[data-mood=spicy] .fridge-snack-face{background:#e6a79b}.fridge-moment[data-mood=spicy] .fridge-snack-face i,.fridge-moment[data-mood=tangy] .fridge-snack-face i{border-radius:0;transform:rotate(20deg);border-bottom-width:4px}.fridge-moment[data-mood=spicy] .fridge-snack-face i:nth-child(2),.fridge-moment[data-mood=tangy] .fridge-snack-face i:nth-child(2){transform:rotate(-20deg)}.fridge-moment[data-mood=icy] .fridge-snack-face{background:#cbdde5}.fridge-moment[data-mood=icy] .fridge-snack-face b,.fridge-moment[data-mood=tangy] .fridge-snack-face b{height:6px;top:61px;background:none;border-top:2px solid #66526b;border-radius:0}.fridge-moment.is-bento .fridge-moment-art{border:9px solid #b9cba2;background:#d6e0c5;border-radius:15px;padding:7px;gap:5px}.fridge-moment.is-bento .fridge-moment-art img{background:#fff7e9;border-radius:8px}.fridge-big-heart{font-size:70px;color:#b98aa8}
.fridge-footer{display:flex;align-items:center;gap:10px;flex:none;min-height:69px;padding:10px 24px;padding-bottom:max(10px,env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line)}.fridge-footer p{font-size:12px;line-height:1.5;color:#71657b;margin:0;flex:1}.fridge-footer .button{font-size:12px;gap:6px;min-height:42px}.fridge-inspector-entry{padding:15px 0;margin:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fridge-inspector-entry .inspector-action{background:#dce6c7;margin-top:9px}.fridge-inspector-entry p{margin:8px 0 0}.claw-discovery-target{animation:none!important;opacity:0!important;pointer-events:none!important;border:0!important;background:none!important;box-shadow:none!important;font-size:0!important;width:44px!important;height:44px!important;min-width:44px!important;padding:0!important}.claw-discovery-target:focus-visible{opacity:1!important;outline:3px dashed #7f658b!important;outline-offset:2px}.claw-discovery-target small{display:none!important}
@keyframes fridge-food-pop{0%{transform:translateY(25px) scale(.7) rotate(-9deg);opacity:0}65%{transform:translateY(-9px) scale(1.05) rotate(5deg)}100%{transform:none;opacity:1}}@keyframes fridge-face-bounce{50%{transform:translateY(-4px) rotate(-3deg)}}
@media(max-width:850px){
 .fridge-header{min-height:58px;padding:7px 10px;gap:8px}.fridge-back{padding:7px;min-height:40px;font-size:17px!important}.fridge-back>span{display:none}.fridge-heading h1{font-size:17px;letter-spacing:-.4px;margin-top:2px}.fridge-heading .fridge-kicker{font-size:6px;letter-spacing:.5px}.fridge-mode{padding:5px 6px;font-size:7px;max-width:65px;white-space:normal;text-align:center}.fridge-sound{font-size:9px!important;min-height:40px;padding:4px}.fridge-close{width:32px;height:36px;flex:none}.fridge-layout{display:flex;flex-direction:column}.fridge-main{flex:none;height:52%;min-height:250px}.fridge-scene{padding:9px 12px 12px}.fridge-scene-caption{padding:0 3px 7px}.fridge-scene-caption>.fridge-kicker{display:none}.fridge-scene-caption b{font-size:11px;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fridge-scene-caption button{min-height:28px;padding:4px 8px;font-size:9px!important}.fridge-appliance{width:min(370px,92%);border-radius:22px 22px 12px 12px;padding:6px 8px 5px;max-height:none}.fridge-crown{padding:2px 5px 5px;gap:8px}.fridge-crown>span{font-size:13px}.fridge-crown i{font-size:5px;letter-spacing:.6px}.fridge-crown>b{font-size:8px;padding:4px 7px}.fridge-cavity{gap:6px;padding:7px 5px 5px;border-radius:9px;border-width:1px}.fridge-shelves{gap:4px}.fridge-shelf-row{gap:3px;padding:0 1px 0;border-bottom-width:5px}.fridge-shelf-number{display:none}.fridge-slot{padding:0 1px 2px;border-radius:7px;border-width:1px}.fridge-slot img{height:calc(100% - 11px);min-height:16px;max-height:50px}.fridge-food-name{font-size:6.5px;line-height:1.1;min-height:7px;-webkit-line-clamp:1}.fridge-pockets{width:24%;gap:3px;padding-left:5px}.fridge-pocket{border-bottom-width:4px}.fridge-pocket-title{font-size:5px;letter-spacing:.3px}.fridge-pocket .fridge-food-name{font-size:6px}.fridge-pocket img{max-height:40px}.fridge-plinth{padding:4px 0 1px}.fridge-plinth>span{font-size:5px;letter-spacing:.8px}.fridge-note{width:85px;padding:12px 5px 6px;left:4px;bottom:8px}.fridge-note p{font-size:7px;line-height:1.3;max-height:44px;overflow:hidden}.fridge-note>span{font-size:14px}.fridge-selection{min-height:45px;padding:3px 9px;gap:5px}.fridge-selection>img{width:36px;height:36px}.fridge-selected-label .fridge-kicker{font-size:6px;letter-spacing:.4px}.fridge-selected-label b{font-size:10px;margin-top:1px;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fridge-selection>button{min-height:34px;padding:5px 7px;font-size:10px!important}.fridge-sidebar{border-left:0;border-top:1px solid var(--line);flex:1;min-height:0}.fridge-tabs{padding:4px 9px;gap:5px}.fridge-tabs button{min-height:30px;font-size:11px!important;border-radius:6px}.fridge-stock-top{padding:5px 10px 6px}.fridge-stock-heading{display:none}.fridge-stock-top input{margin:0 0 4px;min-height:31px;padding:6px 9px;font-size:12px!important}.fridge-food-groups{gap:3px}.fridge-food-groups button{min-height:27px;padding:4px;font-size:9px!important}.fridge-fill-row{margin-top:4px;gap:5px}.fridge-fill-row select{min-height:29px;padding:4px;font-size:10px!important}.fridge-fill-row button{font-size:10px!important}.fridge-food-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:2px 10px 8px;gap:6px}.fridge-food-card{min-height:79px;padding:2px 4px 6px;border-radius:9px}.fridge-food-card img{width:49px;height:49px}.fridge-food-card>span{font-size:9px;line-height:1.2}.fridge-personalise{padding:2px 10px}.fridge-personalise summary{font-size:10px;padding:3px 0;min-height:21px}.fridge-personalise label{font-size:10px;margin:3px 0}.fridge-personalise input,.fridge-personalise select{padding:5px;font-size:11px!important}.fridge-draft-tools{padding:3px 10px 5px}.fridge-draft-tools button{min-height:27px;font-size:9px!important}.fridge-footer{min-height:58px;padding:7px 10px;gap:6px}.fridge-footer p{font-size:10px;line-height:1.35}.fridge-footer .button{font-size:10px;padding:8px 9px;min-height:38px}.fridge-footer .secondary{padding:7px}.fridge-play-intro h2{font-size:18px;margin:4px 0}.fridge-play-intro h2 br{display:none}.fridge-play-intro>.fridge-kicker{font-size:7px;letter-spacing:.8px}.fridge-play-intro p{font-size:11px;line-height:1.4;margin:5px 0 10px}#fridgePlayPane{padding:10px 12px}.fridge-activities{grid-template-columns:1fr 1fr;gap:7px}.fridge-activities>button{padding:10px 8px;gap:6px;align-items:flex-start}.fridge-game-icon{font-size:19px;width:21px}.fridge-activities b{font-size:11px}.fridge-activities small{font-size:8px;line-height:1.4}.fridge-activities i{display:none}.fridge-game-task{padding:11px;margin-top:10px}.fridge-game-task h3{font-size:15px;margin:6px 0}.fridge-game-task .fridge-kicker{font-size:8px}.fridge-bento-mini{margin:8px 0;max-width:210px}.fridge-bento-mini>div{min-height:42px}.fridge-bento-mini img{width:42px;height:42px}.fridge-game-task .button{font-size:11px;min-height:35px;padding:8px 12px}.fridge-game-task p{margin:4px 0;font-size:11px}.fridge-moment{inset:3px 8px;border-radius:15px;padding:20px 12px 12px;justify-content:center}.fridge-moment>.fridge-kicker{font-size:7px;letter-spacing:1px}.fridge-moment-art{margin:5px 0;gap:3px}.fridge-moment-art img{width:62px;height:62px;min-width:0}.fridge-moment h2{font-size:20px;margin:7px 0 5px;letter-spacing:-.4px}.fridge-moment p{font-size:10px;line-height:1.4;max-width:290px;margin-bottom:4px}.fridge-moment>small{font-size:8px}.fridge-moment-actions{margin-top:9px;gap:5px}.fridge-moment-actions .button{min-height:32px;font-size:9px;padding:7px 9px}.fridge-snack-face{width:72px;height:56px;flex:none}.fridge-snack-face i{width:9px;height:5px;top:18px;left:17px;border-bottom-width:2px}.fridge-snack-face i:nth-child(2){right:17px}.fridge-snack-face b{left:29px;top:32px;width:12px;height:9px}.fridge-snack-face span{left:9px;top:29px;width:12px;height:6px}.fridge-snack-face span:last-child{right:9px}.fridge-moment[data-mood=icy] .fridge-snack-face b,.fridge-moment[data-mood=tangy] .fridge-snack-face b{top:35px}.fridge-moment-close{width:29px;height:29px;font-size:20px!important;top:5px;right:5px}#fridgeDialog[data-style=cute] .fridge-appliance{margin-top:6px}#fridgeDialog[data-style=cute] .fridge-appliance:before,#fridgeDialog[data-style=cute] .fridge-appliance:after{top:-16px;height:25px;width:18px;box-shadow:inset 4px 2px #efd0d5}#fridgeDialog[data-style=mini] .fridge-appliance,#fridgeDialog[data-style=chest] .fridge-appliance{max-height:none;flex:1;width:min(350px,95%)}
}
@media(max-width:380px) and (min-height:600px){.fridge-mode{display:none}.fridge-main{height:49%;min-height:228px}.fridge-food-name{font-size:6px}.fridge-selected-label b{max-width:115px}.fridge-footer p{font-size:9px}.fridge-note{display:none}}
@media(max-height:520px) and (min-width:600px){.fridge-header{min-height:48px;padding:4px 10px}.fridge-heading h1{font-size:18px}.fridge-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px}.fridge-main{height:auto;min-height:0}.fridge-footer{min-height:47px;padding:5px 12px}.fridge-selection{min-height:40px}.fridge-scene{padding:7px 20px 11px}.fridge-note{display:none}.fridge-play-intro{display:none}.fridge-sidebar{border-top:0;border-left:1px solid var(--line)}.fridge-food-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.fridge-food-card{min-height:66px}.fridge-food-card img{width:40px;height:40px}.fridge-food-card>span{font-size:8px}.fridge-stock-top{padding:5px 10px}.fridge-personalise{display:none}.fridge-moment{inset:0 10px}.fridge-moment p{max-width:340px}.fridge-moment-art img{width:50px;height:50px}.fridge-snack-face{display:none}.fridge-moment h2{font-size:18px}.fridge-moment-actions{margin-top:7px}}
@media(prefers-reduced-motion:reduce){#fridgeDialog *,#fridgeDialog *:before,#fridgeDialog *:after{animation:none!important;transition:none!important}}#fridgeDialog.fridge-paused *{animation-play-state:paused!important}

/* 5.13 — a full-size fridge view and a genuinely usable food tray on phones. */
#fridgeDialog .fridge-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(340px,29vw,430px);flex:1;min-height:0;position:relative;overflow:hidden}
#fridgeDialog .fridge-main{display:flex;flex-direction:column;height:auto;min-width:0;min-height:0}
#fridgeDialog .fridge-scene{flex:1;min-height:0;display:flex;flex-direction:column;padding:16px 20px 8px;gap:0;background:radial-gradient(ellipse at 49% 46%,#f1ffff 0,#e7f1ed 41%,#eee7ec 82%,#f4f0e7 100%)}
#fridgeDialog .fridge-scene-caption{padding:0 3px 10px;flex:none}
#fridgeDialog .fridge-scene-caption .fridge-kicker{font-size:9px;color:#597c7c}
#fridgeDialog .fridge-scene-caption b{font-size:15px}
#fridgeDialog .fridge-appliance,#fridgeDialog[data-style] .fridge-appliance{flex:1;position:relative;min-height:120px;max-height:none;width:100%;padding:0;border:0;border-radius:0;margin:0;background:none;box-shadow:none;overflow:hidden}
#fridgeDialog .fridge-appliance::before,#fridgeDialog .fridge-appliance::after{display:none!important}
#fridgeCanvas3D{width:100%;height:100%;display:block;touch-action:none;outline-offset:-3px;cursor:grab}
#fridgeCanvas3D:active{cursor:grabbing}
.fridge-cold-badge{position:absolute;top:12px;left:12px;font:700 9px 'Courier New',monospace;letter-spacing:1.3px;color:#809495;padding:8px 11px;border:1px solid #bdd5d155;background:#f6fffa70;border-radius:20px;pointer-events:none}
.fridge-cold-badge.lit{color:#45797b;background:#edffffb0;box-shadow:0 0 22px #e7ffff70}
.fridge-3d-toolbar{align-self:stretch;display:flex;align-items:center;justify-content:space-between;gap:8px;z-index:1;flex:none;flex-wrap:wrap;margin-bottom:8px}
.fridge-camera-group,.fridge-nav-mode{display:flex;gap:3px;align-items:center;background:#faf7efe8;border:1px solid #d9d1c5;border-radius:11px;padding:3px}
#fridgeDialog .fridge-3d-toolbar button,#fridgeDialog .fridge-3d-toolbar select{font-size:12px;min-width:38px;min-height:42px;padding:7px 11px;border-radius:8px;color:#403e4d;white-space:nowrap}
#fridgeDialog .fridge-3d-toolbar select{background:transparent;border:0;max-width:130px;padding-right:2px}
#fridgeDialog [data-fridge-nav][aria-pressed=true]{background:#d7e5d0;color:#374f41;box-shadow:0 1px 3px #4a614c1c;font-weight:700}
#fridgeDialog .fridge-3d-toolbar button:hover{background:#e2d9e9}
.fridge-door-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;flex:none;position:relative;z-index:1;margin-bottom:1px}
#fridgeDialog .fridge-door-controls button{border:1px solid #c9d1c8;border-radius:18px;background:#f7f8ef;padding:7px 13px;min-height:36px;font-size:12px;white-space:nowrap}
.fridge-door-controls button[aria-pressed=true]{background:#dde9d7!important;color:#405f4e;border-color:#a6c2b5!important}
#fridgeDialog #fridgeLight[aria-pressed=true]{background:#e7fcf8!important;box-shadow:0 0 10px #e5ffff}
.fridge-3d-hint{font-size:11px;line-height:1.4;color:#5d7370;flex:none;text-align:center;position:relative;padding:7px 0 0}
.fridge-3d-count{position:absolute;right:20px;bottom:39px;border:1px solid #cad7ce;border-radius:18px;padding:7px 11px;background:#fafcf1dc;font:700 10px 'Courier New',monospace;color:#596c63;pointer-events:none}
#fridgeDialog .fridge-note{bottom:48px;left:15px;width:148px;padding:16px 12px 10px;opacity:.90;pointer-events:none}
#fridgeDialog .fridge-note p{font-size:11px}
#fridgeDialog .fridge-selection{flex:none;min-height:68px;padding:9px 16px;gap:10px;display:flex;align-items:center;border-top:1px solid #d7dfd1;background:#f9f7ef}
#fridgeDialog .fridge-selection>img{width:50px;height:50px;object-fit:contain}
#fridgeDialog .fridge-selected-label{flex:1;min-width:0}
#fridgeDialog .fridge-selected-label b{font-size:14px;line-height:1.3;max-width:none}
#fridgeDialog .fridge-selected-label .fridge-kicker{font-size:9px;color:#6c7c72}
#fridgeDialog .fridge-selection>button{min-height:42px;font-size:12px;padding:8px 12px;border:1px solid #d8d4ca;background:#eeeee2;border-radius:9px}
#fridgeDialog .fridge-sidebar{min-height:0;overflow:hidden;display:flex;flex-direction:column;border-left:1px solid var(--line);background:#faf7ef}
#fridgeDialog .fridge-tabs{flex:none;min-height:52px;padding:5px 12px;display:flex;gap:4px;border-bottom:1px solid var(--line)}
#fridgeDialog .fridge-tabs button{font-size:13px;font-weight:700;min-height:42px;padding:8px 10px;border-radius:8px;flex:1;white-space:nowrap}
#fridgeDialog .fridge-tabs button.active{background:#e4dced;color:#5d516c}
#fridgeDialog #fridgeStockPane{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}
#fridgeDialog .fridge-stock-top{flex:none;padding:14px 15px 11px;display:flex;flex-direction:column;gap:9px}
#fridgeDialog .fridge-stock-heading h2{font-size:20px;margin:0 0 5px;letter-spacing:-.5px}
#fridgeDialog .fridge-stock-heading span{font-size:11px;color:#746c7b}
#fridgeDialog #fridgeSearch{width:100%;min-height:44px;font-size:14px;padding:10px 12px;border-radius:10px;border:1px solid #d8d0c2;background:#fffdf7;color:#343445}
#fridgeDialog .fridge-food-groups{display:flex;gap:5px;margin:0}
#fridgeDialog .fridge-food-groups button{min-height:40px;padding:8px 10px;font-size:12px;border:1px solid #dad5c8;border-radius:9px;background:#f8f2e7;flex:1;white-space:nowrap}
#fridgeDialog .fridge-food-groups button.active{background:#dce8ce;color:#405a49;border-color:#bdcfae}
#fridgeDialog .fridge-fill-row{display:flex;gap:6px;margin:0}
#fridgeDialog .fridge-fill-row select,#fridgeDialog .fridge-fill-row button{min-height:40px;padding:7px 9px;font-size:12px;border:1px solid #d8d2c3;border-radius:8px;background:#f5eedf}
#fridgeDialog .fridge-fill-row select{flex:1;min-width:0}
.fridge-add-target{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700;color:#5a655b}
#fridgeDialog .fridge-add-target select{flex:1;min-width:0;min-height:40px;font-size:13px;padding:6px 8px;border:1px solid #c7d5c0;background:#f0f6e8;border-radius:8px}
#fridgeDialog .fridge-food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:10px;flex:1;min-height:100px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:3px 14px 16px;scrollbar-width:thin;scrollbar-color:#c5b6c9 #f9f5ed}
#fridgeDialog .fridge-food-card{min-height:132px;padding:9px 5px 11px;border:1px solid #ddd4c5;border-radius:13px;background:#fffdf6;display:flex;flex-direction:column;align-items:center;position:relative;gap:2px;box-shadow:0 2px 0 #e1d7c325}
#fridgeDialog .fridge-food-card img{width:94px;height:94px;max-width:100%;object-fit:contain;pointer-events:none}
#fridgeDialog .fridge-food-card>span{font-size:13px;font-weight:600;line-height:1.25;text-align:center;color:#484150;overflow-wrap:anywhere}
#fridgeDialog .fridge-food-card>i{position:absolute;right:6px;top:5px;font:700 18px Arial;color:#648d73;width:22px;height:22px;background:#e8f0dc;border-radius:50%;font-style:normal;text-align:center}
#fridgeDialog .fridge-food-card.just-added{background:#e2efda;border-color:#8faf7a}
#fridgeDialog .fridge-food-card.just-added>i{font-size:0}#fridgeDialog .fridge-food-card.just-added>i::after{content:'✓';font:700 16px Arial}
#fridgeDialog .fridge-food-card img:not([src]){background:radial-gradient(ellipse,#e4dce9 0,transparent 65%)}
#fridgeDialog .fridge-personalise{flex:none;margin:0 14px;padding:8px 0;border-top:1px solid var(--line);max-height:160px;overflow:auto}
#fridgeDialog .fridge-personalise summary{min-height:30px;font-size:12px;cursor:pointer}
#fridgeDialog .fridge-personalise input,#fridgeDialog .fridge-personalise select{min-height:40px;font-size:14px;padding:7px}
#fridgeDialog .fridge-draft-tools{flex:none;padding:8px 14px;display:flex;gap:7px;border-top:1px solid var(--line)}
#fridgeDialog .fridge-draft-tools button{font-size:12px;min-height:40px;padding:8px;border-radius:8px;background:#eee8df;border:1px solid #d9cfc3;flex:1}
.fridge-tray-top,.fridge-tray-scrim,.fridge-mobile-nav{display:none}
#fridgeDialog .fridge-slot-directory{flex:1;min-height:0;margin:0;padding:16px;overflow:auto;background:#faf7ef;border:0;border-radius:0;max-height:none;touch-action:pan-y}
#fridgeDialog .fridge-slot-directory h2{font-size:18px;margin:8px 0 6px}
#fridgeDialog .fridge-small-note{font-size:12px;line-height:1.55;color:#736879;margin:6px 0 12px}
#fridgeDialog #fridgeShelves{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0;background:none;border:0;box-shadow:none;width:100%}
#fridgeDialog .fridge-content-card{min-width:0;min-height:120px;border:1px solid #ddd4c8;border-radius:11px;background:#fffdf7;padding:7px 5px;display:flex;flex-direction:column;align-items:center;gap:4px}
#fridgeDialog .fridge-content-card img{width:74px;height:74px;object-fit:contain;max-width:100%}
#fridgeDialog .fridge-content-card b{font-size:12px;line-height:1.3}
#fridgeDialog .fridge-content-card small{font-size:10px;line-height:1.3;color:#7d7484}
#fridgeDialog .fridge-content-card.selected{border-color:#91ae84;background:#e4edda}
#fridgeDialog #fridgePlacementControls:not(:empty){padding:15px;margin:-3px -3px 19px;background:#eef2e6;border:1px solid #d2dfc4;border-radius:13px}
.fridge-food-field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;margin:10px 0 14px}
#fridgeDialog .fridge-food-field select{min-height:44px;padding:8px;border-radius:9px;border:1px solid #bacbad;background:#fcfcf3;font-size:14px}
.fridge-food-range{display:grid;grid-template-columns:1fr 60px;gap:6px;margin:8px 0;font-size:13px;align-items:center}
.fridge-food-range output{font:12px monospace;text-align:right;color:#486751}
.fridge-food-range input{grid-column:1/-1;width:100%;height:34px;accent-color:#69906f;margin:0;touch-action:pan-x}
.fridge-precise-actions{display:flex;gap:6px;margin-top:9px}
#fridgeDialog .fridge-precise-actions button{min-height:44px;padding:8px 9px;border:1px solid #bdcdb0;border-radius:9px;background:#fafbf1;font-size:12px;flex:1}
#fridgeDialog #fridgePlayPane{flex:1;min-height:0;overflow:auto;padding:14px;touch-action:pan-y}
#fridgeDialog .fridge-activities{display:grid;grid-template-columns:1fr;gap:9px}
#fridgeDialog .fridge-activities button{min-height:76px;padding:12px;border-radius:13px}
#fridgeDialog .fridge-activities b{font-size:14px}#fridgeDialog .fridge-activities small{font-size:12px;line-height:1.4}
#fridgeDialog .fridge-game-task{position:sticky;bottom:0;background:#f3ebf7;padding:14px;border-radius:13px}
#fridgeDialog .fridge-footer{flex:none;min-height:64px;padding:9px 18px;border-top:1px solid var(--line);background:#f4f0e7;display:flex;align-items:center;gap:9px}
#fridgeDialog .fridge-footer p{font-size:12px;color:#696575;line-height:1.4;flex:1;margin:0}
#fridgeDialog .fridge-footer button{min-height:44px;font-size:13px;padding:9px 17px}
.fridge-3d-status{position:absolute;inset:25% 15%;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;font-size:14px;line-height:1.6}
@media(max-width:850px) and (min-height:521px){
 #fridgeDialog .fridge-header{min-height:64px;padding:7px 10px;gap:7px}
 #fridgeDialog .fridge-heading h1{font-size:17px;margin-top:3px;letter-spacing:-.5px}
 #fridgeDialog .fridge-header .fridge-kicker{font-size:7px;letter-spacing:.5px}
 #fridgeDialog .fridge-mode{display:none}
 #fridgeDialog .fridge-back,#fridgeDialog .fridge-close,#fridgeDialog .fridge-sound{min-width:40px;min-height:44px;padding:6px;font-size:12px}
 #fridgeDialog .fridge-back span{display:none}
 #fridgeDialog .fridge-layout{display:flex;flex-direction:column;overflow:hidden}
 #fridgeDialog .fridge-main,#fridgeDialog[data-editing=false] .fridge-main{height:auto;min-height:0;flex:1}
 #fridgeDialog .fridge-scene{padding:6px 8px 3px}
 #fridgeDialog .fridge-scene-caption{padding:0 3px 5px;min-height:33px}
 #fridgeDialog .fridge-scene-caption .fridge-kicker{display:none}
 #fridgeDialog .fridge-scene-caption b{font-size:12px}
 #fridgeDialog .fridge-scene-caption button{min-height:34px;padding:6px 9px;font-size:11px}
 #fridgeDialog .fridge-3d-toolbar{gap:4px;margin-bottom:5px;flex-wrap:nowrap;justify-content:space-between}
 #fridgeDialog .fridge-nav-mode,#fridgeDialog .fridge-camera-group{gap:0;padding:2px;border-radius:9px;min-width:0}
 #fridgeDialog .fridge-3d-toolbar button{min-height:40px;min-width:31px;padding:5px 7px;font-size:12px;flex-shrink:0}
 #fridgeDialog .fridge-3d-toolbar select{min-height:40px;max-width:69px;min-width:50px;font-size:11px;padding:5px 0}
 #fridgeDialog .fridge-door-controls{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;gap:5px;scrollbar-width:none;padding-bottom:2px}
 #fridgeDialog .fridge-door-controls button{min-height:36px;padding:6px 11px;font-size:11px;flex:none}
 #fridgeDialog .fridge-appliance,#fridgeDialog[data-style] .fridge-appliance{min-height:80px;flex:1}
 #fridgeDialog .fridge-cold-badge{font-size:7px;left:6px;top:7px;padding:5px 8px}
 #fridgeDialog .fridge-note{display:none}
 #fridgeDialog .fridge-3d-hint{font-size:10px;min-height:20px;padding-top:3px}
 #fridgeDialog .fridge-3d-count{right:12px;bottom:26px;padding:5px 8px;font-size:9px}
 #fridgeDialog .fridge-selection{min-height:60px;padding:5px 9px;gap:6px}
 #fridgeDialog .fridge-selection>img{width:42px;height:42px}
 #fridgeDialog .fridge-selected-label b{font-size:12px;max-width:140px}
 #fridgeDialog .fridge-selected-label .fridge-kicker{font-size:8px;letter-spacing:.3px}
 #fridgeDialog .fridge-selection>button{min-height:40px;padding:6px 8px;font-size:11px}
 #fridgeDialog .fridge-mobile-nav{display:flex;min-height:55px;flex:none;gap:7px;padding:6px 10px;background:#f4f0e7;border-top:1px solid #d5d8c9;z-index:65}
 #fridgeDialog .fridge-mobile-nav button{flex:1;min-height:43px;border:1px solid #cfddc1;border-radius:11px;padding:6px;font-size:13px;font-weight:700;color:#435c4a;background:#e1ebd4;white-space:nowrap}
 #fridgeDialog .fridge-mobile-nav button:last-child{background:#e9dfed;color:#695775;border-color:#d7c9df}
 #fridgeDialog .fridge-footer{min-height:58px;padding:6px 10px;justify-content:flex-end;z-index:65}
 #fridgeDialog .fridge-footer p{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
 #fridgeDialog .fridge-footer button{min-height:44px;font-size:13px;padding:9px 16px}
 #fridgeDialog .fridge-sidebar{position:fixed;z-index:60;left:0;right:0;bottom:113px;height:calc(100dvh - 155px);max-height:calc(100dvh - 155px);border:1px solid #cfc6d9;border-bottom:0;border-radius:22px 22px 0 0;box-shadow:0 -16px 70px #4f49632b;visibility:hidden;pointer-events:none;transform:translateY(calc(100% + 120px));transition:transform .2s ease,visibility .2s}
 #fridgeDialog[data-tray=open] .fridge-sidebar{transform:translateY(0);visibility:visible;pointer-events:auto}
 #fridgeDialog .fridge-tray-top{display:flex;justify-content:space-between;align-items:center;min-height:62px;padding:11px 16px 7px;gap:10px;flex:none}
 #fridgeDialog .fridge-tray-top>div{display:flex;flex-direction:column;gap:4px}
 #fridgeDialog .fridge-tray-top .fridge-kicker{font-size:7px;color:#947e9f;letter-spacing:1.1px}
 #fridgeDialog .fridge-tray-top b{font-size:19px;letter-spacing:-.4px}
 #fridgeDialog #fridgeTrayClose{min-height:44px;padding:9px 14px;border:1px solid #c3d2b2;background:#e0ebcf;color:#4a614c;font-size:13px;font-weight:700;border-radius:12px}
 #fridgeDialog .fridge-tray-scrim{position:fixed;inset:0 0 113px;z-index:50;display:none;background:#443f5150;cursor:pointer}
 #fridgeDialog[data-tray=open] .fridge-tray-scrim{display:block}
 #fridgeDialog .fridge-tabs{min-height:48px;padding:3px 12px}
 #fridgeDialog .fridge-stock-heading{display:none}
 #fridgeDialog .fridge-stock-top{padding:10px 12px;gap:7px}
 #fridgeDialog .fridge-fill-row{display:none}
 #fridgeDialog .fridge-food-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:3px 12px 16px;gap:8px;min-height:140px}
 #fridgeDialog .fridge-food-card{min-height:135px;padding:7px 4px 9px}
 #fridgeDialog .fridge-food-card img{width:94px;height:94px}
 #fridgeDialog .fridge-food-card>span{font-size:13px;line-height:1.3}
 #fridgeDialog .fridge-draft-tools{padding:6px 12px}
 #fridgeDialog .fridge-personalise{display:block;padding:5px 0;max-height:130px}
 #fridgeDialog #fridgeShelves{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 #fridgeDialog .fridge-content-card img{width:82px;height:82px}
 #fridgeDialog .fridge-content-card{min-height:135px}
 #fridgeDialog .fridge-play-intro{display:block}
 #fridgeDialog .fridge-play-intro h2{font-size:24px}
 #fridgeDialog .fridge-play-intro p{font-size:12px}
 #fridgeDialog .fridge-moment{position:fixed;inset:78px 12px 135px;z-index:75;overflow:auto;padding:28px 18px;max-height:none;justify-content:center}
 #fridgeDialog .fridge-moment h2{font-size:26px;line-height:1.15}
 #fridgeDialog .fridge-moment p{font-size:14px;line-height:1.5}
 #fridgeDialog .fridge-moment-art img{width:85px;height:85px}
 #fridgeDialog .fridge-moment-actions .button{min-height:44px;font-size:12px;padding:9px 12px}
 #fridgeDialog .fridge-moment-close{width:44px;height:44px;font-size:25px!important}
}
@media(max-width:359px) and (min-height:521px){
 #fridgeDialog .fridge-food-grid,#fridgeDialog #fridgeShelves{grid-template-columns:repeat(2,minmax(0,1fr))}
 #fridgeDialog .fridge-food-card img{width:110px;height:100px}
 #fridgeDialog .fridge-3d-toolbar button{font-size:11px;padding:5px;min-width:27px}
 #fridgeDialog .fridge-3d-toolbar select{max-width:51px;min-width:46px;font-size:10px}
 #fridgeDialog .fridge-selection>button{padding:5px;font-size:10px}
 #fridgeDialog .fridge-selected-label b{max-width:95px}
 #fridgeDialog .fridge-heading h1{font-size:15px}
}
@media(max-height:520px){
 #fridgeDialog .fridge-header{min-height:46px;padding:4px 10px}
 #fridgeDialog .fridge-heading h1{font-size:18px}
 #fridgeDialog .fridge-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px}
 #fridgeDialog .fridge-main{height:auto;min-height:0}
 #fridgeDialog .fridge-scene{padding:3px 8px}
 #fridgeDialog .fridge-scene-caption{display:none}
 #fridgeDialog .fridge-3d-toolbar{gap:3px;flex-wrap:nowrap;margin-bottom:3px}
 #fridgeDialog .fridge-3d-toolbar button{min-height:34px;padding:5px;font-size:11px;min-width:27px}
 #fridgeDialog .fridge-3d-toolbar select{min-height:34px;max-width:61px;font-size:10px;padding:3px}
 #fridgeDialog .fridge-door-controls{flex-wrap:nowrap;justify-content:flex-start;overflow:auto;scrollbar-width:none}
 #fridgeDialog .fridge-door-controls button{min-height:30px;padding:4px 9px;font-size:10px;flex:none}
 #fridgeDialog .fridge-selection{min-height:48px;padding:3px 9px}
 #fridgeDialog .fridge-selection>img{width:36px;height:36px}
 #fridgeDialog .fridge-selection>button{min-height:35px;font-size:11px;padding:5px 7px}
 #fridgeDialog .fridge-note,#fridgeDialog .fridge-cold-badge,#fridgeDialog .fridge-stock-heading,#fridgeDialog .fridge-fill-row,#fridgeDialog .fridge-personalise{display:none}
 #fridgeDialog .fridge-stock-top{padding:6px 10px;gap:4px}
 #fridgeDialog #fridgeSearch,#fridgeDialog .fridge-food-groups button,#fridgeDialog .fridge-add-target select{min-height:34px;font-size:12px;padding:5px 7px}
 #fridgeDialog .fridge-tabs{min-height:40px;padding:3px 9px}
 #fridgeDialog .fridge-tabs button{min-height:34px;padding:5px;font-size:11px}
 #fridgeDialog .fridge-food-grid{grid-template-columns:repeat(2,minmax(0,1fr));min-height:60px;padding:5px 10px}
 #fridgeDialog .fridge-food-card{min-height:115px}
 #fridgeDialog .fridge-food-card img{width:83px;height:78px}
 #fridgeDialog .fridge-food-card>span{font-size:12px}
 #fridgeDialog .fridge-draft-tools{padding:4px 8px}
 #fridgeDialog .fridge-draft-tools button{min-height:32px;padding:4px;font-size:11px}
 #fridgeDialog .fridge-footer{min-height:48px;padding:5px 12px}
 #fridgeDialog .fridge-footer button{min-height:37px;font-size:12px}
 #fridgeDialog .fridge-footer p{font-size:10px}
}
@media(prefers-reduced-motion:reduce){#fridgeDialog .fridge-sidebar{transition:none}#fridgeDialog .fridge-food-card.just-added{transition:none}}

#fridgeDialog .fridge-content-card.bento-picked{box-shadow:inset 0 0 0 2px #b89acc;background:#eae0ef}
@media(max-width:850px) and (min-height:521px){
 #fridgeDialog[data-editing=false] .fridge-footer{display:none}
 #fridgeDialog[data-editing=false] .fridge-sidebar{bottom:55px;height:calc(100dvh - 97px);max-height:calc(100dvh - 97px)}
 #fridgeDialog[data-editing=false] .fridge-tray-scrim{bottom:55px}
}

/* Intentional touches on interface controls must not become browser double-tap zoom. */
#fridgeDialog button,#fridgeDialog select{touch-action:manipulation}

/* First release: quiet interface, block first. Existing interior tools remain. */
body[data-view=block] .hero{width:100%;height:22px;top:2px;left:0;bottom:auto;padding:0;text-align:center;align-items:center;pointer-events:none}
body[data-view=block] .hero h1.community-title{display:block;white-space:nowrap;font-size:15px;line-height:20px;letter-spacing:-.4px;margin:0}
body[data-view=block] .community-title>span{display:inline}
body[data-view=block] .hero>p,body[data-view=block] .hero>.micro,body[data-view=block] .intro-note,body[data-view=block] .prototype-note,body[data-view=block] .stage-sticker,body[data-view=block] .bottom-bar{display:none!important}
body[data-view=block] #stage{left:0;right:0;top:117px;bottom:0}
body[data-view=block] #startButton{position:fixed;bottom:15px;left:18px;pointer-events:auto;min-height:44px;margin:0;font-size:12px;padding:11px 17px;z-index:6}
body[data-view=block] #aboutButton,body[data-view=block] #navBlock,body[data-view=block] .save-status{display:none!important}
body[data-view=block] .topbar{height:68px;min-height:68px;gap:16px;border-bottom:0}
#residentHeader{display:flex;align-items:center;gap:8px;margin-left:4px;white-space:nowrap}
#residentHeader button{min-height:40px;border:1px solid #d8cfdf;border-radius:11px;padding:8px 14px;font-size:12px;background:#faf7ef}
#residentHeader #residentAccount{background:#dce6c7;color:#3f5647;border-color:#becda9;font-weight:700}
#residentEnvironment{font:10px 'Courier New',monospace;color:#7d7384;margin-right:6px}
body[data-view=room] #residentHeader{display:none}
#creativeSky{left:0!important;right:0!important;top:22px!important;height:92px!important;width:auto!important;overflow:hidden;pointer-events:none;isolation:isolate}
.resident-distant-sky{position:absolute;inset:0;overflow:hidden;z-index:0;opacity:.53;pointer-events:none}
.resident-small-cloud{position:absolute;left:-125px;width:125px;height:66px;color:#e5e9e3;animation:resident-cloud-travel 112s linear var(--cloud-delay) infinite;pointer-events:none;user-select:none}
.resident-small-cloud svg{width:100%;height:100%;animation:resident-cloud-bob var(--bob-time) ease-in-out var(--bob-delay) infinite}
.resident-small-cloud>span{position:absolute;top:37px;left:4px;right:4px;font-size:8px;white-space:nowrap;text-align:center;color:#726c7b}
.resident-live-sky{position:absolute;inset:0;z-index:1;display:flex;justify-content:center;gap:30px;align-items:center;pointer-events:none}
.resident-live-cloud{width:178px;height:88px;display:block;position:relative;color:#f2e8f6;pointer-events:auto;text-decoration:none;touch-action:manipulation;flex:none}
.resident-live-cloud:nth-child(2){color:#e4eddb}
.resident-live-art{display:block;position:absolute;inset:0;animation:resident-cloud-bob var(--bob-time) ease-in-out var(--bob-delay) infinite}
.resident-live-art svg{height:100%;width:100%;filter:drop-shadow(0 3px 0 #65705b0b)}
.resident-live-art>b{position:absolute;top:47px;left:3px;right:3px;text-align:center;font-size:14px;color:#51465e;line-height:1}
.resident-live-art>small{position:absolute;top:64px;left:0;right:0;text-align:center;font-size:8px;color:#766b7e}
.resident-live-cloud:focus-visible{outline:2px solid #577653;border-radius:40%;outline-offset:-3px}
.resident-live-cloud:focus-visible .resident-live-art,.resident-live-cloud:active .resident-live-art{animation-play-state:paused}
.resident-cloud-eyes{transform-origin:100px 45px;animation:resident-blink 5.9s infinite}
.resident-live-cloud:nth-child(2) .resident-cloud-eyes{animation-delay:-2.2s}
@keyframes resident-cloud-travel{from{transform:translateX(0)}to{transform:translateX(calc(100vw + 260px))}}
@keyframes resident-cloud-bob{0%,100%{transform:translateY(3px) rotate(-.6deg)}50%{transform:translateY(-3px) rotate(.6deg)}}
@keyframes resident-blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.12)}}
html[data-sky-calm=true] .resident-small-cloud,html[data-sky-calm=true] .resident-small-cloud svg,html[data-sky-calm=true] .resident-live-art,html[data-sky-calm=true] .resident-cloud-eyes,html[data-sky-suspended=true] #creativeSky *{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){#creativeSky *{animation-play-state:paused!important}}
#residentFloorTools{position:absolute;left:12px;top:9px;display:flex;gap:8px;align-items:center;z-index:3;padding:5px 8px;background:#faf7efe6;border:1px solid #ded7cb;border-radius:11px;max-width:calc(100% - 24px)}
#residentFloorTools span{font:10px 'Courier New',monospace;color:#6b6972}
#residentFloorTools select,#residentFloorTools button{font:12px Arial;min-height:34px;background:#f1ebf4;border:1px solid #d9cfdf;border-radius:8px;padding:5px 9px;cursor:pointer}
.resident-unit{position:absolute!important;left:0!important;top:0!important;padding:3px 5px!important;min-height:21px!important;font-size:8px!important;max-width:none!important;box-shadow:none!important;will-change:transform}
.resident-unit b{font-size:8px!important}.resident-unit.resident-demo{background:#d7e7df;border-color:#70968c}
#residentVisitBar{position:absolute;left:12px;bottom:55px;max-width:calc(100% - 24px);display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 10px;background:#faf7efee;border:1px solid #d8cfdf;border-radius:12px;z-index:4}
#residentVisitBar[hidden]{display:none}#residentVisitBar button,#residentVisitBar select{min-height:36px;border:1px solid #d8cfdf;border-radius:8px;padding:7px 9px;background:#eee7f2;font-size:11px;color:#554b60;cursor:pointer;max-width:210px}.resident-visit-name{font-size:11px;font-weight:700;color:#5a5263}
#residentDialog{width:min(840px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:92dvh;border-radius:18px;border:1px solid #cfc2d8;padding:0;background:#faf7ef;color:#303446}
#residentDialog[open]{display:flex;flex-direction:column}#residentDialog::backdrop{background:#35304055}
.resident-dialog-head{display:flex;justify-content:space-between;align-items:center;padding:23px 25px;border-bottom:1px solid #ded7cb;flex:none}.resident-dialog-head h2{font-size:25px;margin:8px 0 0;letter-spacing:-.6px}.resident-dialog-head small{font:9px 'Courier New',monospace;letter-spacing:1.5px;color:#87798e}.resident-dialog-head>button{width:44px;height:44px;border-radius:50%;background:#e8dfed;font-size:24px}
.resident-dialog-body{overflow:auto;padding:21px 25px;line-height:1.6;font-size:14px;min-height:0}.resident-dialog-body>p{margin:0 0 17px;color:#776e7e}.resident-dialog-body input:not([type=checkbox]),.resident-dialog-body select{width:100%;min-height:44px;font:14px Arial;padding:10px 13px;border:1px solid #d9cfdf;border-radius:9px;background:#fffcf6;color:#343849;box-sizing:border-box;margin:6px 0}
.resident-dialog-body input:focus-visible,.resident-dialog-body button:focus-visible,.resident-dialog-body select:focus-visible{outline:2px solid #4a614c;outline-offset:3px}
.resident-btn{min-height:44px;padding:10px 14px;border:1px solid #d7cfdb;border-radius:9px;background:#f4eef5;color:#594d63;font:600 12px Arial;text-align:center;margin:3px 0;cursor:pointer}.resident-primary{background:#dce6c7!important;color:#3e5542!important;border-color:#c1cea9!important}.resident-danger{color:#965d60;background:#f6e8e4}.resident-actions{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0}.resident-caption{font-size:11px!important;color:#81768a}.resident-notice{border-left:3px solid #bba2cb;background:#eee7f3;padding:13px 15px;color:#605069!important;line-height:1.6;margin:12px 0!important;font-size:13px}
.resident-version-list{display:grid;gap:12px}.resident-version-card{padding:16px;border:1px solid #dfd7cb;border-radius:12px;background:#fffcf6}.resident-version-card input{font-weight:700!important;background:#faf7ef!important}.resident-version-status{font-size:11px;color:#717c68}.resident-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;padding:12px 0}.resident-check input{width:20px;height:20px;accent-color:#7d9b77;flex:none}.resident-reactions{display:flex;flex-wrap:wrap;gap:8px}.resident-unit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.resident-app-row{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #ded7cb}.resident-app-row>span{color:#9b909e;font-size:12px}.resident-app-row a{color:#4a614c;text-decoration:none;font-weight:700}
@media(max-width:850px){
 body[data-view=block] .topbar{height:55px;min-height:55px;padding-left:111px;padding-right:104px;gap:0}
 body[data-view=block] #residentHeader{display:none}body[data-view=block] #homeResponsiveness{margin:0 auto;min-width:90px;width:99px}body[data-view=block] #responsivenessSelect{width:99px;font-size:11px}
 body[data-view=block] .hero{height:21px}body[data-view=block] .hero h1.community-title{font-size:14px}
 body[data-view=block] #creativeSky{height:82px!important;top:20px!important}body[data-view=block] #stage{inset:102px 0 0}
 .resident-live-sky{gap:12px}.resident-live-cloud{width:145px;height:79px}.resident-live-art>b{top:43px;font-size:12px}.resident-live-art>small{top:58px;font-size:7px}
 .resident-small-cloud{width:94px;height:51px}.resident-small-cloud>span{font-size:6px;top:29px}
 #residentCapacity{display:none}#residentFloorTools{padding:3px 5px;top:4px;left:6px;gap:5px;border-radius:9px}#residentFloorTools select,#residentFloorTools button{min-height:34px;font-size:11px;padding:5px 7px}
 #residentVisitBar{left:6px;bottom:55px;gap:5px;padding:6px;max-width:calc(100% - 12px)}.resident-visit-name{font-size:10px;width:100%}#residentVisitBar button,#residentVisitBar select{min-height:36px;font-size:10px;max-width:180px}
 #residentDialog{width:calc(100vw - 16px);max-height:94dvh}.resident-dialog-head{padding:17px 16px}.resident-dialog-head h2{font-size:21px}.resident-dialog-body{padding:16px;font-size:14px}.resident-version-card{padding:10px}.resident-unit-grid{grid-template-columns:1fr}.resident-actions{gap:5px}.resident-btn{font-size:12px;padding:10px 11px}
}
@media(max-height:500px){body[data-view=block] .topbar{height:48px;min-height:48px}body[data-view=block] .hero{display:none}body[data-view=block] #creativeSky{height:56px!important;top:0!important}body[data-view=block] #stage{top:56px}.resident-live-cloud{height:60px;width:128px}.resident-live-art>b{top:34px;font-size:11px}.resident-live-art>small{display:none}.resident-small-cloud{opacity:.5}#residentVisitBar{bottom:48px}.resident-visit-name{width:auto}}

body[data-view=room] .viewer-note{display:none!important}#residentCloudState{font-size:10px;color:#66785e}#residentVisitBar[hidden]{display:none!important}

.resident-unit.resident-available:after{content:'';position:absolute;right:-2px;top:-2px;width:4px;height:4px;border-radius:50%;background:#a8bd8c;border:1px solid #faf7ef}.resident-unit.resident-demo:after{content:'♡';position:absolute;right:-7px;top:-8px;font-size:10px;color:#b0759b;background:#faf7ef;border-radius:50%}

/* Familiar warm-paper palette. Progressive disclosure, not a new editor. */
.easy-button{min-height:44px;padding:11px 16px;border-radius:12px;border:1px solid #d8cedf;background:#eee6f3;color:#51475f;font:600 13px Arial,Helvetica,sans-serif;cursor:pointer;touch-action:manipulation}
.easy-button:hover:not(:disabled){background:#e7deed}.easy-button:disabled{opacity:.45;cursor:default}.easy-button:focus-visible{outline:3px solid #587955;outline-offset:3px}
.easy-button.easy-primary{background:#dce6c7;color:#354e3c;border-color:#bdcea9}.easy-button.easy-primary:hover:not(:disabled){background:#d1dfb9}
#easyHomeActions[hidden],#easyRoomActions[hidden],#easySelection[hidden],#easyGuide[hidden],#easyHistory[hidden]{display:none!important}
#easyHomeActions{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:1fr;gap:8px;z-index:7;padding:13px 16px;border:1px solid #ded7cb;border-radius:18px;background:#faf7eff5;box-shadow:0 5px 24px #4d3a4310;white-space:nowrap}
#easyHomeActions>p{grid-column:1/-1;text-align:center;font-size:12px;margin:0 0 4px;color:#6b6173}
body[data-view=block] #startButton{display:none!important}body[data-view=block] #residentHeader{display:none!important}body[data-view=block] #residentFloorTools{top:7px;left:12px}body[data-view=block] #residentFloorTools>button{display:none}
#easyMenuButton{flex:none;background:#faf7ef;border-color:#ded7cb;margin-left:auto;padding:7px 12px;font-size:20px;min-width:44px}
body[data-view=block] #easyMenuButton{position:absolute;right:18px;top:12px}body[data-view=block] .topbar{padding-right:78px}
body[data-view=room][data-easy=on] .topbar{height:68px;min-height:68px;padding-right:20px;gap:14px}
body[data-view=room][data-easy=on] .header-end,body[data-view=room][data-easy=on] #roomCode{display:none!important}
body[data-view=room][data-easy=on] .room-heading{position:relative;min-width:0;padding-bottom:15px}
body[data-view=room][data-easy=on] #roomHeading{font-size:14px}
#easySaveState{font-size:11px;color:#716e70;position:absolute;left:110px;bottom:0;white-space:nowrap;font-weight:400}
body[data-easy=off] #easySaveState{display:none}
body[data-view=room][data-easy=on] #layout{display:block!important}
body[data-view=room][data-easy=on] #stage{position:absolute!important;inset:0!important;display:block!important;width:100%;height:100%}
body[data-view=room][data-easy=on] .side-panel,body[data-view=room][data-easy=on] .editor-footer,body[data-view=room][data-easy=on] .mobile-tabs,body[data-view=room][data-easy=on] .stage-toolbar,body[data-view=room][data-easy=on] .unit-label,body[data-view=room][data-easy=on] .viewer-note,body[data-view=room][data-easy=on] #placementTools,body[data-view=room][data-easy=on] #stageHint{display:none!important}
#easyGuide{position:absolute;left:50%;top:14px;transform:translateX(-50%);text-align:center;z-index:3;pointer-events:none;width:min(560px,90%)}
#easySteps{display:inline-flex;gap:5px;padding:6px;border:1px solid #ded7cb;border-radius:30px;background:#faf7efe8;color:#7c7085;box-shadow:0 3px 18px #50443c08}
#easySteps span{padding:6px 13px;font-size:12px;border-radius:25px;display:flex;align-items:center;gap:7px;font-weight:600}#easySteps span.active{background:#e4ecd7;color:#456047}#easySteps i{font-style:normal;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#ece6db;font-size:11px}#easySteps .active i{color:#fffdf5;background:#557052}
#easyStageTitle{font-size:24px;letter-spacing:-.5px;margin:10px 0 4px;color:#4c4458}#easyStageHelp{font-size:13px;color:#776b7d;margin:0;line-height:1.5}
#easyHistory{position:absolute;top:16px;left:16px;z-index:4;display:flex;gap:5px}#easyHistory .easy-button{background:#faf7efb5;font-size:12px;padding:9px 11px;min-height:40px}
#easyRoomActions{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:8px;padding:8px;background:#faf7eff5;border:1px solid #ded7cb;border-radius:17px;box-shadow:0 6px 22px #50443c0a;z-index:7;max-width:calc(100% - 16px);white-space:nowrap}
body[data-easy=off] #easyRoomActions{bottom:92px}
body[data-view=room][data-easy=on] .camera-tools{right:18px;top:122px;bottom:auto;flex-direction:column;gap:1px;backdrop-filter:none;background:#faf7efe8}
body[data-view=room][data-easy=on] .camera-tools .divider,body[data-view=room][data-easy=on] #photoButton,body[data-view=room][data-easy=on] #qualityButton{display:none!important}
body[data-view=room][data-easy=on] #residentVisitBar[data-easy-role=other]{display:none!important}
body[data-view=room][data-easy=on] #residentVisitBar[data-easy-role=visitor]{left:16px;bottom:100px;width:auto;max-width:250px;font-size:12px}
body[data-view=room][data-easy=on] #residentVisitBar[data-easy-role=visitor]>button{display:none}
#easySelection{position:absolute;right:20px;bottom:100px;z-index:6;width:300px;max-width:calc(100% - 24px);border:1px solid #dacfe0;border-radius:16px;padding:10px 12px;background:#faf7eff5;box-shadow:0 5px 22px #59436410}
.easy-selected-head{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#564b60;min-width:0}.easy-selected-head>b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.easy-selected-head .easy-button{border:0;background:none;font-size:20px;min-width:36px;min-height:36px;padding:2px}
.easy-selection-actions{display:flex;flex-wrap:wrap;gap:5px}.easy-selection-actions .easy-button{font-size:12px;padding:9px 11px;min-height:42px}.easy-selection-actions #easy-remove{color:#985f65;background:#f3e5e2}
#easyDialog{width:min(750px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:92dvh;border-radius:22px;border:1px solid #ded7cb;background:#faf7ef;padding:0;overflow:hidden;color:#303446}
#easyDialog[open]{display:flex;flex-direction:column}#easyDialog::backdrop{background:#39344066;backdrop-filter:blur(3px)}
.easy-dialog-head{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #ded7cb;flex:none}.easy-dialog-head h2{font-size:26px;line-height:1.2;letter-spacing:-.7px;margin:7px 0 0}.easy-dialog-head small{font:9px 'Courier New',monospace;letter-spacing:1.6px;color:#877590}.easy-dialog-head .easy-button{font-size:24px;width:44px;padding:0;flex:none;background:#efe7dc}
.easy-dialog-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px 24px 24px;display:flex;flex-direction:column;gap:10px}.easy-intro{font-size:14px;line-height:1.65;color:#766c7d;margin:0 0 7px}
.easy-starters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.easy-starter{display:flex;flex-direction:column;text-align:left;white-space:normal;padding:12px;background:#f4eee9;gap:7px;border-color:#ded4cd}.easy-starter:nth-child(2){background:#eee5f1}.easy-starter:nth-child(3){background:#e6ebdd}.easy-starter img{width:100%;height:145px;object-fit:contain;pointer-events:none}.easy-starter>b{font-size:16px;line-height:1.3}.easy-starter>span{font-size:12px;font-weight:400;line-height:1.5;color:#746a79}.easy-starter>small{color:#49614a;padding-top:5px;font-size:12px}
.easy-add-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.easy-add-card{display:flex;flex-direction:column;align-items:center;background:#f5eee8;min-width:0;padding:8px;gap:6px}.easy-add-card img{width:100%;height:85px;object-fit:contain}.easy-add-card b{font-size:12px;line-height:1.4;font-weight:600}
.easy-name-label{font-size:14px;display:flex;flex-direction:column;gap:6px}.easy-name-label input{border:1px solid #d4cbd9;border-radius:10px;background:#fffcf6;padding:13px;font:16px Arial;min-height:46px;color:#303446}
.easy-notice{border-left:3px solid #b6a0c7;border-radius:5px;background:#f0e8f4;padding:13px 16px;font-size:14px;line-height:1.65;color:#60516d}
.easy-dialog-actions{display:flex;flex-wrap:wrap;gap:8px}.easy-dialog-actions>.easy-button{flex:1}.easy-save-note{font-size:12px;color:#83758b;text-align:center;line-height:1.6}
.easy-palette{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.easy-palette button{background:#faf5ee;font-size:12px;display:flex;flex-direction:column;gap:8px;align-items:center}.easy-palette button:before{content:'';width:36px;height:36px;border-radius:50%;background:var(--swatch);border:1px solid #9a8e7f40}.easy-colour-custom{font-size:14px;display:flex;align-items:center;justify-content:space-between}.easy-colour-custom input{width:70px;height:44px;padding:3px;border:1px solid #d6cbdc;border-radius:8px;background:#faf7ef}
@media(max-width:850px){
 body[data-view=block] #easyMenuButton{display:none}body[data-view=block] .topbar{padding-right:104px}
 #easyHomeActions{bottom:12px;padding:8px 10px;gap:6px;max-width:calc(100% - 20px);width:300px;box-sizing:border-box}#easyHomeActions>p{font-size:10px;white-space:normal;line-height:1.4;margin:0}#easyHomeActions .easy-button{font-size:12px;padding:10px 9px}
 body[data-view=block] .camera-tools{bottom:118px!important;right:10px!important}
 body[data-view=block] #mobilePanMode{bottom:118px!important}
 body[data-view=block] #stageHint{display:none!important}
 body[data-view=room][data-easy=on] .topbar{height:61px;min-height:61px;padding-left:113px;padding-right:10px;gap:7px}
 body[data-view=room][data-easy=on] .room-heading{gap:5px;padding-bottom:19px;overflow:hidden}
 body[data-view=room][data-easy=on] #backButton{font-size:0;min-width:24px;max-width:24px}body[data-view=room][data-easy=on] #backButton>span:first-child{font-size:20px}body[data-view=room][data-easy=on] #roomHeading{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #easySaveState{left:0;bottom:1px;font-size:8px;max-width:100%;overflow:hidden;text-overflow:ellipsis}
 body[data-view=room] #easyMenuButton{width:40px;min-width:40px;padding:4px;font-size:20px}
 #easyGuide{top:8px;width:95%}#easySteps{padding:4px;gap:2px}#easySteps span{font-size:10px;padding:5px 9px;gap:5px}#easySteps i{width:17px;height:17px;font-size:9px}#easyStageTitle{font-size:20px;margin-top:8px}#easyStageHelp{font-size:11px;max-width:88%;margin:auto}
 #easyHistory{top:114px;left:8px;gap:4px}#easyHistory .easy-button{font-size:10px;padding:6px 8px;min-height:36px}
 body[data-view=room][data-easy=on] .camera-tools{right:8px;top:114px;gap:0}body[data-view=room][data-easy=on] .camera-tools .icon-button{width:32px;height:32px;font-size:17px}body[data-view=room][data-easy=on] #topView{font-size:9px;width:42px}
 #easyRoomActions{bottom:max(9px,env(safe-area-inset-bottom));gap:5px;padding:6px;border-radius:14px;box-sizing:border-box}#easyRoomActions .easy-button{font-size:12px;padding:10px 12px}
 #easySelection{left:10px;right:10px;width:auto;bottom:80px;padding:7px 10px;max-width:none;border-radius:13px}.easy-selected-head>b{font-size:12px}.easy-selection-actions .easy-button{font-size:11px;min-height:40px;padding:7px 10px;flex:1;white-space:nowrap}
 body[data-view=room][data-easy=on] #residentVisitBar[data-easy-role=visitor]{left:10px;bottom:80px;max-width:calc(100% - 20px);right:10px;background:#faf7efe0}body[data-view=room][data-easy=on] #residentVisitBar .resident-visit-name{font-size:11px}body[data-view=room][data-easy=on] #residentVisitVersion{min-height:42px;width:100%;max-width:none;font-size:12px}
 #easyDialog{max-height:94dvh;border-radius:17px;width:calc(100vw - 18px);max-width:calc(100vw - 18px)}.easy-dialog-head{padding:17px 16px}.easy-dialog-head h2{font-size:22px}.easy-dialog-body{padding:16px;gap:9px}.easy-intro{font-size:13px}
 .easy-starters{gap:9px}.easy-starter{padding:9px}.easy-starter img{height:95px}.easy-starter>b{font-size:13px}.easy-starter>span{font-size:11px}.easy-add-grid{grid-template-columns:repeat(3,1fr);gap:8px}.easy-add-card img{height:68px}.easy-add-card b{font-size:11px}.easy-palette{gap:6px}.easy-palette .easy-button{padding:8px 4px;font-size:11px}
}
@media(max-width:359px){body[data-view=room][data-easy=on] .topbar{padding-left:98px}#easyRoomActions .easy-button{font-size:11px;padding:10px 9px}.easy-selection-actions .easy-button{padding:7px 6px;font-size:10px}.easy-dialog-head h2{font-size:20px}.easy-starter img{height:80px}}
@media(max-height:500px){
 body[data-view=room][data-easy=on] .topbar{height:49px;min-height:49px}
 #easyGuide{top:6px}#easySteps{padding:2px}#easySteps span{padding:3px 8px;font-size:10px}#easyStageTitle{font-size:16px;margin:5px 0 0}#easyStageHelp{font-size:10px}
 #easyHistory{top:8px;left:8px}body[data-view=room][data-easy=on] .camera-tools{top:8px}
 #easyRoomActions{bottom:6px;padding:5px}#easyRoomActions .easy-button{min-height:38px;padding:8px 12px;font-size:12px}
 #easySelection{right:9px;left:auto;bottom:68px;width:250px}.easy-selection-actions .easy-button{font-size:10px;min-height:34px;padding:6px 8px}
 body[data-view=room][data-easy=on] #residentVisitBar[data-easy-role=visitor]{left:10px;right:auto;bottom:70px;max-width:240px}
 #easyHomeActions{bottom:8px;width:auto;display:flex;align-items:center}#easyHomeActions>p{display:none}body[data-view=block] .camera-tools{bottom:12px!important}body[data-view=block] #mobilePanMode{bottom:65px!important}
 .easy-starters{grid-template-columns:repeat(4,1fr)}.easy-starter img{height:82px}.easy-starter>span{display:none}
}
/* Override the original phone panel selectors by ID, not only by class. */
body[data-view=room][data-easy=on] #catalogPanel,
body[data-view=room][data-easy=on] #inspector{display:none!important}
body[data-view=room][data-easy=on] #roomHeading{display:block!important;min-width:0;max-width:none}
body[data-view=room][data-easy=on] .room-heading{flex:1!important;align-self:center;height:44px;align-items:flex-start;padding-top:2px}
@media(max-width:850px){
 body[data-view=block] #mobilePanMode{top:7px!important;bottom:auto!important;height:44px}
 body[data-view=room][data-easy=on] .room-heading{height:44px;align-items:flex-start;padding-top:5px}
 body[data-view=room][data-easy=on] #backButton{height:25px;min-height:25px}
}

/* 5x3: discovery first; no featured-resident call-to-action. */
#easyHomeActions{box-shadow:none;padding:10px 15px;min-width:220px}
#easyHomeActions>p{font-size:14px;font-weight:600;margin:0;color:#50465c}
#easyHomeActions .easy-button{justify-self:center;min-width:180px}
@media(max-width:850px){#easyHomeActions{width:245px;bottom:10px;padding:9px 12px}#easyHomeActions>p{font-size:12px}body[data-view=block] .camera-tools{bottom:108px!important}}
@media(max-height:500px){#easyHomeActions{width:auto;display:flex;min-width:0;padding:5px 10px}#easyHomeActions>p{display:block;font-size:11px}#easyHomeActions .easy-button{min-width:120px}body[data-view=block] .camera-tools{bottom:12px!important}}

/* Host-editable cloud UI. Scoped rules; no layout changes to room or game tools. */
.resident-live-sky[data-many=true]{justify-content:flex-start;overflow-x:auto;scrollbar-width:thin;max-width:100%;pointer-events:auto;gap:12px;padding:0 max(12px,calc((100% - 720px)/2));box-sizing:border-box;touch-action:pan-x}
.resident-live-sky[data-many=true] .resident-live-cloud{width:158px}
#cloudSettingsDialog{width:min(900px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:92dvh;padding:0;border:1px solid #d7ceda;border-radius:20px;background:#faf7ef;color:#303446}
#cloudSettingsDialog[open]{display:flex;flex-direction:column}#cloudSettingsDialog::backdrop{background:#40384c66}
#cloudSettingsDialog button{min-height:44px;border:1px solid #d7ceda;background:#eee6f3;border-radius:9px;padding:9px 13px;font:600 13px Arial;color:#51465c;cursor:pointer}
#cloudSettingsDialog button:disabled{opacity:.4;cursor:default}#cloudSettingsDialog :focus-visible{outline:3px solid #557c63;outline-offset:2px}
.cloud-settings-head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #ded7cb;gap:14px;flex:none}.cloud-settings-head h2{font-size:25px;letter-spacing:-.5px;margin:8px 0 0}.cloud-settings-head small{font:9px 'Courier New',monospace;color:#82728d;letter-spacing:1.5px}#cloudSettingsClose{font-size:24px!important;width:44px;padding:0!important}
.cloud-settings-body{padding:18px 24px;overflow:auto;overscroll-behavior:contain;min-height:0}.cloud-settings-notice{margin:0 0 12px;padding:14px;border-left:3px solid #9fb68c;border-radius:6px;background:#eaf0df;color:#4c5e45;font:13px/1.65 Arial}.cloud-settings-help{font:13px/1.65 Arial;color:#74697e;margin:10px 0 18px}
.cloud-settings-row{border:1px solid #dfd6de;background:#fffcf6;border-radius:12px;padding:12px 14px;margin:0 0 12px}.cloud-settings-row-head{display:flex;gap:5px;align-items:center;margin-bottom:10px}.cloud-settings-row-head>span{margin-right:auto;font:700 13px 'Courier New',monospace;color:#93819f}.cloud-settings-row-head button{min-height:34px!important;padding:5px 10px!important;font-size:12px!important}
.cloud-settings-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cloud-settings-fields label{display:flex;flex-direction:column;gap:6px;font:12px Arial;color:#73677d}.cloud-settings-fields input,.cloud-settings-fields select{box-sizing:border-box;min-width:0;width:100%;height:44px;border:1px solid #d9d0d6;background:#faf7ef;border-radius:8px;padding:10px;font:14px Arial;color:#303446}.cloud-settings-fields input:disabled{opacity:.45}
.cloud-settings-utility{display:flex;gap:7px;flex-wrap:wrap}.cloud-settings-foot{display:flex;gap:10px;padding:14px 24px;border-top:1px solid #ded7cb;flex:none;justify-content:flex-end;background:#f5f0e7}.cloud-settings-foot button:last-child{background:#dce6c7!important;border-color:#bdcea9!important;color:#3e5643!important}#cloudSettingsStatus{font:13px/1.6 Arial;color:#4a614c;min-height:22px}#cloudSettingsStatus[data-error=true]{color:#984a57}
#cloudSettingsPreviewBar{position:fixed;bottom:8px;left:50%;transform:translateX(-50%);z-index:25;display:flex;align-items:center;gap:8px;border:1px solid #bca6ca;background:#f7edf9;padding:8px 12px;border-radius:13px;max-width:calc(100% - 20px);box-sizing:border-box;box-shadow:0 3px 20px #40324c15;font:12px Arial;color:#5d4a6c}#cloudSettingsPreviewBar button{min-height:38px;border:1px solid #b9a6c7;background:#fcf7ff;border-radius:8px;padding:8px 12px;color:#5d4a6c}
@media(max-width:600px){.cloud-settings-head{padding:16px}.cloud-settings-head h2{font-size:21px}.cloud-settings-body{padding:14px}.cloud-settings-fields{grid-template-columns:1fr;gap:9px}.cloud-settings-fields input,.cloud-settings-fields select{font-size:16px}.cloud-settings-foot{padding:10px;gap:7px}.cloud-settings-foot button{flex:1;font-size:12px!important;padding:8px!important}.cloud-settings-row{padding:10px}.cloud-settings-notice{font-size:12px}#cloudSettingsPreviewBar{font-size:11px}}

