
:root{--paper:#f6f2e8;--ink:#414b38;--muted:#838575;--green:#68794f;--line:#dfdfd0;--soft:#e9eddf;--peach:#d5a487;--mono:'Courier New',monospace;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.65;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.scene:focus-visible{outline:3px solid #aa704f;outline-offset:4px}a{color:inherit;text-decoration:none}p{line-height:1.7}button{border:0}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-1.8px}h1{font-size:50px;line-height:1.15;margin-bottom:13px}h2{font-size:33px;line-height:1.2;margin-bottom:19px;letter-spacing:-1px}h3{font-family:var(--serif);font-size:24px;font-weight:400;margin:10px 0}em{font-family:var(--serif);font-size:18px}.site-header{height:91px;margin:0 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;font:700 25px var(--serif);letter-spacing:-1px}.brand img{image-rendering:pixelated}.brand-dot{color:#bf8c69}.header-caption{font:10px var(--mono);letter-spacing:2px;color:var(--muted);margin-right:auto;margin-left:30px}.site-header nav{display:flex;gap:28px;align-items:center}.primary,.secondary{padding:15px 21px;display:inline-flex;justify-content:center;align-items:center;gap:18px;font-size:12px;font-weight:600;border:1px solid var(--green);border-radius:3px;line-height:1.4}.primary{background:var(--green);color:#fffdf3;box-shadow:0 3px 0 #4a593b}.primary:hover{background:#586b43;transform:translateY(-1px)}.secondary{background:transparent;color:var(--green)}.secondary:hover{background:var(--soft)}.small{padding:12px 17px}.text-btn{background:none;padding:9px 0;font-size:12px;display:inline-flex;gap:14px;align-items:center}.text-btn:hover{text-decoration:underline}.eyebrow{font:10px var(--mono);letter-spacing:1.5px;line-height:1.6}.room-heading{text-align:center;padding:42px 16px 0}.room-heading .eyebrow{display:block;margin-bottom:17px}.tiny-star{color:#a58456;margin-right:8px}.room-heading p{color:#7c8072;font-size:14px;margin:0}.experience{max-width:1250px;margin:auto}.scene-wrap{position:relative;margin:0 auto;max-width:1160px;height:457px}.scene{position:relative;width:640px;height:480px;max-width:100%;margin:0 auto;outline-offset:-25px!important}.scene canvas{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;display:block;filter:drop-shadow(0 20px 14px #65583d16)}.scene-wrap:before{content:'';position:absolute;width:620px;height:140px;left:50%;bottom:5px;transform:translateX(-50%);background:radial-gradient(ellipse,#d4c9a938,transparent 65%);border-radius:50%}.delivery-tag{position:absolute;top:121px;left:38px;z-index:1;width:156px;padding:25px 19px 15px;background:#edead9;box-shadow:2px 4px 0 #dad8c545;transform:rotate(-6deg);border:1px solid #dedbc4;display:flex;flex-direction:column;gap:9px}.delivery-tag:before{content:'';position:absolute;width:1px;height:80px;background:#b9b49a;top:-65px;left:80px;transform:rotate(15deg)}.tag-hole{position:absolute;top:8px;left:77px;width:5px;height:5px;border-radius:50%;background:#b1b09b}.delivery-tag strong{font:italic 29px var(--serif)}.delivery-tag>span:not(.eyebrow):not(.tag-hole):not(.tag-heart){font:11px var(--serif)}.tag-heart{font-size:25px;color:#ad8064;text-align:right;margin-top:0}.delivery-tag .eyebrow{font-size:8px}.scene-note{position:absolute;right:20px;top:165px;transform:rotate(4deg);text-align:center;width:165px}.scene-note p{font:italic 18px/1.5 var(--serif);margin:14px 0;color:#8d907a}.scene-note>span:last-child{font:8px/1.7 var(--mono);letter-spacing:1.5px;color:#949783}.pixel-spark{font:38px var(--serif);color:#b89b70}.room-tools{display:flex;justify-content:center;gap:12px;position:absolute;right:40px;bottom:23px}.tool{background:none;color:#81856f;font:18px var(--mono);display:flex;gap:7px;align-items:center;padding:9px}.tool span{font:9px var(--mono);max-width:60px;text-align:left}.hotspots{position:absolute;inset:0;pointer-events:none}.hotspot{position:absolute;width:48px;height:48px;transform:translate(-50%,-75%);background:transparent;pointer-events:auto;border:1px solid transparent;border-radius:8px}.hotspot:hover,.hotspot:focus-visible{background:#ffffdf33;border-color:#fff4cb}.hotspot span{display:none;position:absolute;bottom:105%;left:50%;transform:translateX(-50%);white-space:nowrap;background:#fffbee;padding:6px 10px;box-shadow:2px 2px 0 #726e54;font:11px var(--mono)}.hotspot:hover span,.hotspot:focus-visible span{display:block}.walking-hint{display:flex;justify-content:center;align-items:center;gap:12px;margin:18px 15px 31px;color:#878a78;font-size:11px}.keys{font:10px var(--mono);padding:5px;border:1px solid #d9ddcf;border-radius:3px;letter-spacing:2px}.hint-flower{font-size:17px;color:#bba583;margin-left:8px}.gift-shelf{margin:0 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:21px 0 17px}.shelf-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.shelf-top .eyebrow{color:#7e846e;font-size:9px}.shelf-top #progress{font:10px var(--mono);display:flex;align-items:center;gap:12px;color:#858876}.progress-dots{display:flex;gap:4px}.progress-dots i{width:5px;height:5px;background:#dddccc;display:block}.progress-dots i.filled{background:var(--green)}.gift-list{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.gift-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;background:#efeee3;border:1px solid #e6e5d8;min-height:96px;padding:12px 6px;font:10px var(--mono);border-radius:3px;transition:background .2s,transform .2s}.gift-item:hover{background:#e5e9da;transform:translateY(-3px)}.gift-number{position:absolute;left:9px;top:9px;font:8px var(--mono);color:#a0a38f}.gift-icon{font-size:28px;line-height:35px;color:#7f8a67;min-height:35px}.icon-plush{font-size:17px;color:#a27b5c}.icon-flowers{color:#b68b72}.icon-coffee{font-size:25px}.gift-check{position:absolute;right:7px;bottom:6px;color:#a6ab93;font-size:9px}.discovered{background:#e6eada;border-color:#d3dbc4}.demo-note{display:flex;align-items:center;justify-content:center;gap:13px;margin:18px 10px 28px;color:#929480;font-size:10px}.demo-note .text-btn{color:var(--green);font-size:11px}.sample-pill{font:8px var(--mono);letter-spacing:.7px;border:1px solid #dedecb;padding:5px 7px;border-radius:3px;color:#909479}footer{border-top:1px solid var(--line);margin:0 5%;padding:23px 0;display:flex;justify-content:space-between;font-size:10px;color:#9a9c8a}footer>span:last-child{font:8px var(--mono);letter-spacing:1px}.heart{color:#af8b76;margin-left:8px}dialog{border:1px solid #737d5e;border-radius:3px;padding:0;width:min(540px,calc(100% - 32px));max-height:90dvh;background:#fcf8ed;color:var(--ink);box-shadow:6px 6px 0 #65724f,0 25px 80px #343c3a40}dialog::backdrop{background:#414a384f;backdrop-filter:blur(3px)}.window-bar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;background:#e8eadc;border-bottom:1px solid #bdc5ad;padding:7px 12px;font:10px var(--mono)}.close{font-size:24px;width:35px;height:35px;background:transparent}.modal-content{padding:32px;text-align:center}.modal-content h2{font-size:32px;margin-bottom:20px}.modal-content .primary{margin:8px 0}.gift-note{font-family:var(--serif);font-size:20px;line-height:1.6;margin:24px 0;white-space:pre-wrap;overflow-wrap:anywhere}.letter-copy{text-align:left;font-size:15px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.letter-sign{font:italic 28px var(--serif);display:block;text-align:right;color:#8b9975}.music-card,.book-card{display:flex;align-items:center;gap:22px;text-align:left;padding:20px;background:#ebe9db}.music-card h3,.book-card h3{font-size:23px}.music-card p,.book-card p{font-size:12px;margin-bottom:0;color:#7f8470}.vinyl{width:105px;height:105px;border-radius:50%;flex-shrink:0;background:repeating-radial-gradient(circle,#474b41 0 2px,#5c5e4f 3px 4px);display:grid;place-items:center}.vinyl i{width:30px;height:30px;background:#c89273;border:12px solid #c89273;border-radius:50%;box-shadow:inset 0 0 0 3px #f1d8a6}.album-cover{width:100px;height:100px;object-fit:contain}.personal-image{max-width:100%;max-height:400px;object-fit:contain;display:block;margin:auto;border:7px solid #eee0c3;box-shadow:2px 3px 0 #b69870}.sample-photo{height:220px;position:relative;background:#c5d1be;border:12px solid #f0e6ca;overflow:hidden}.sun{height:55px;width:55px;background:#efd9aa;border-radius:50%;position:absolute;right:50px;top:25px}.hills{position:absolute;bottom:-70px;left:-30px;width:270px;height:170px;border-radius:50%;background:#8e9e79;transform:rotate(-20deg);box-shadow:180px -10px 0 #a4ac84}.sample-photo>span{position:absolute;bottom:20px;left:0;right:0;font:10px var(--mono);letter-spacing:2px;color:#fff9e3}.bouquet{height:190px;padding-top:35px;position:relative}.bouquet span{display:inline-block;font-size:70px;transform:rotate(calc((var(--i) - 1)*20deg));margin:-10px;animation:bloom .6s both}.bouquet i{font-size:58px;display:block;line-height:40px;color:#879d70}.bear{font:45px var(--mono);color:#aa8460;margin:45px 0;animation:hug 1s ease-in-out}.coffee-card{background:#e4e9d7;padding:25px;border:1px dashed #a9b68e;border-radius:6px;display:flex;flex-direction:column;align-items:center}.coffee-cup{font-size:50px;margin:10px}.coffee-card b{font:9px var(--mono);margin-top:20px;letter-spacing:1px}.book-art{font:17px/1.5 var(--serif);background:#a9b391;color:#fff5da;padding:18px 15px;border-left:5px solid #85916d;flex-shrink:0;box-shadow:3px 4px 0 #d5caad}.book-art b{display:block;margin-top:14px;text-align:center}.book-cover{width:90px;max-height:150px;object-fit:contain}blockquote{font:italic 19px/1.6 var(--serif);margin:20px 0;padding:20px;border-left:2px solid #b6bf9d}.muted{font-size:11px;color:#858a76;line-height:1.6}.final-heart{font-size:68px;color:#b5826c;animation:hug 1s}.how-list{text-align:left;line-height:1.8;padding-left:20px}.how-list li{padding:10px 0 10px 5px}.characters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.character{border:1px solid var(--line);background:#f0eedf;font:10px var(--mono);padding:15px 8px}.character.selected{border:2px solid var(--green);background:#e2e8d4;padding:14px 7px}.character>span{display:block;width:28px;height:48px;position:relative;margin:0 auto 12px;background:linear-gradient(transparent 0 24px,var(--shirt) 24px 40px,transparent 40px)}.character>span:before{content:'';position:absolute;left:3px;top:2px;width:23px;height:24px;background:var(--skin);border-top:7px solid #715640;box-shadow:-3px 25px 0 -8px #675844,8px 25px 0 -8px #675844}.character>span i{position:absolute;top:16px;left:8px;background:#5a4d3e;width:3px;height:3px;box-shadow:10px 0 #5a4d3e}.arrival{position:absolute;inset:0;background:var(--paper);display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:5;animation:fadeAway .8s 3.4s both}.arrival>p{font:italic 22px var(--serif);margin-top:40px}.arrival>.eyebrow{color:#879177}.skip{position:absolute;top:20px;right:20px}.parcel{width:140px;height:130px;position:relative;perspective:400px}.parcel-body{position:absolute;inset:30px 0 0;background:#bd9a6f;border:3px solid #9a7953;box-shadow:6px 6px 0 #96774e;animation:parcelFloor 1.6s 1.8s both}.parcel-body:before{content:'';position:absolute;left:58px;top:0;width:22px;height:100%;background:#859666}.parcel-body span{position:absolute;left:46px;top:25px;background:#f1e3bd;padding:10px;color:#b78466;transform:rotate(-9deg)}.parcel-lid{position:absolute;top:17px;left:-7px;width:154px;height:25px;background:#d3b187;border:3px solid #9a7953;z-index:2;animation:lidOpen 1.3s 1s both}.parcel-lid:after{content:'୨୧';position:absolute;bottom:14px;left:45px;font-size:44px;color:#8b9c6c}.parcel-side{position:absolute;left:0;top:40px;width:70px;height:85px;background:#c5a078;z-index:-1}.parcel-side.left{transform-origin:left;animation:foldLeft 1.3s 1.8s both}.parcel-side.right{left:70px;transform-origin:right;animation:foldRight 1.3s 1.8s both}.unfolding canvas,.unfolding .hotspots{animation:roomReveal 1s 3.1s both}.editor{max-width:1400px;padding:40px 5% 55px;margin:auto}.editor-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.editor-heading h1{margin-top:13px}.editor-heading p{color:var(--muted)}#save-state{font:10px var(--mono);color:#82906d}.editor-layout{display:grid;grid-template-columns:190px minmax(290px,1fr) minmax(260px,340px);gap:28px}.editor-nav{display:flex;flex-direction:column;gap:6px;align-self:start}.editor-nav button{display:flex;gap:12px;align-items:center;padding:12px 10px;text-align:left;background:transparent;border-radius:3px;font-size:12px;min-height:44px}.editor-nav button.selected{background:#e5ead9;color:#536841}.editor-nav button:hover{background:#ececdf}.editor-nav button>span{font:12px var(--mono);min-width:20px;color:#90997f}.editor-nav i{margin-left:auto;font-style:normal;color:#8a9876}.nav-label{font:9px var(--mono);letter-spacing:1px;display:flex;justify-content:space-between;padding:18px 10px 8px;color:#959984}.editor-form{background:#fffaf0;border:1px solid #e7e3d5;padding:30px;min-width:0;border-radius:5px}.editor-form>.eyebrow{display:block;color:#8b9776;margin-bottom:15px}.editor-form>p{font-size:12px;color:#8a8b78;margin-bottom:25px}.field{display:flex;flex-direction:column;gap:9px;margin:20px 0;text-align:left}.field>span{font-size:12px;color:#677458}.field b{font-weight:400;color:#a47760}input:not([type=checkbox]):not([type=color]):not([type=file]),textarea,select{width:100%;min-width:0;padding:13px 12px;border:1px solid #d9dccb;border-radius:3px;background:#fffdf5;color:var(--ink);font-size:13px;line-height:1.5}textarea{resize:vertical}input::placeholder{color:#acae9d}input[readonly]{font-size:11px!important}.form-tip{background:#eef0e1;border-radius:3px;padding:16px;font:italic 15px var(--serif);color:#8a9476;margin:25px 0}.editor-preview{align-self:start;text-align:center;padding:22px 0}.editor-preview canvas{width:100%;height:auto;image-rendering:pixelated}.editor-preview>p{font-size:12px;color:#899275;line-height:1.7}.editor-preview .primary,.editor-preview .secondary{width:100%}.publish-note{margin:22px 8px 18px;font-size:11px;line-height:1.7;color:#8c917d}.palettes{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0}.palette{padding:12px;background:#f2efdf;border:1px solid #dcdcca;font-size:10px}.palette>span{display:flex;margin-bottom:10px}.palette i{width:33.3%;height:45px}.color-inputs{display:flex;gap:16px;margin:25px 0}.color-inputs label{display:flex;flex-direction:column;gap:8px;align-items:center;flex:1;font-size:10px}.color-inputs input{width:44px;height:44px;cursor:pointer;border:1px solid #c7cbb9;background:none;padding:3px}.sample-warning{font-size:11px;line-height:1.6;background:#f4e7ce;color:#937450;padding:12px 14px;border:1px dashed #dbc495;margin-bottom:20px}.upload{position:relative;padding:22px 12px;border:1px dashed #b8c3a2;background:#eff0e2;display:flex;flex-direction:column;gap:10px;text-align:center;font-size:12px;margin:20px 0;cursor:pointer}.upload small{font-size:9px;color:#8a937a}.upload input{width:100%;margin-top:8px;font-size:11px}.upload-preview{max-width:100%;max-height:180px;object-fit:contain;display:block;margin:auto}.field-row{display:flex;gap:15px}.field-row>*{flex:1;min-width:0}.ready-check{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6;margin:25px 0;text-align:left}.ready-check input{accent-color:var(--green);width:18px;height:18px;flex-shrink:0;margin:0}#publish-error{font-size:12px;line-height:1.7;color:#a05f45;padding:15px 0}.empty{padding:90px 25px;max-width:650px;min-height:75vh;text-align:center;margin:auto}.empty p{color:var(--muted)}.empty .text-btn{display:block;margin:20px auto}.empty .ready-check{justify-content:center}.big-symbol{font-size:65px;display:block;margin-bottom:20px;color:#a5ad8b}details{margin-top:25px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;text-align:left}summary{cursor:pointer;padding:5px 0}details .secondary{margin-top:12px}#toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);background:#46543b;color:#fff8e8;padding:15px 22px;font-size:12px;max-width:calc(100% - 32px);width:max-content;z-index:20;opacity:0;pointer-events:none;transition:.2s;box-shadow:0 5px 15px #34422620;border-radius:3px}#toast.visible{opacity:1;transform:translate(-50%,0)}@keyframes bloom{from{opacity:0;scale:.6}to{opacity:1;scale:1}}@keyframes hug{50%{transform:scale(1.1) rotate(-4deg)}}@keyframes lidOpen{to{transform:translateY(-90px) rotate(-15deg);opacity:0}}@keyframes foldLeft{to{transform:rotateY(-155deg)}}@keyframes foldRight{to{transform:rotateY(155deg)}}@keyframes parcelFloor{to{transform:rotateX(65deg) rotateZ(45deg) scale(2.5);opacity:0}}@keyframes fadeAway{to{opacity:0;pointer-events:none}}@keyframes roomReveal{from{opacity:0;transform:scale(.3) translateY(60px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.room-heading{padding-top:55px}.scene-wrap{height:505px}.scene{width:690px;height:517px}.walking-hint{margin-top:24px}}@media(max-width:1050px){.header-caption{display:none}.delivery-tag{left:12px;width:135px;top:120px}.scene-note{right:0;width:130px}.scene{width:580px;height:435px}.scene-wrap{height:430px}.scene-note p{font-size:16px}.room-tools{right:5px;bottom:0}.editor-layout{grid-template-columns:155px minmax(260px,1fr);gap:20px}.editor-preview{grid-column:2}.editor-preview canvas{max-width:330px}.editor-form{padding:25px}}@media(max-width:760px){.site-header{height:75px;margin:0 6%;gap:8px}.brand{font-size:22px;gap:8px}.brand img{width:24px;height:24px}.site-header nav{gap:0}.site-header nav>.text-btn{display:none}.site-header .small{font-size:10px;padding:10px 12px;gap:6px}.room-heading{padding:35px 15px 0}.room-heading .eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:14px}h1{font-size:36px;letter-spacing:-1.4px}.room-heading p{font-size:12px}.delivery-tag{left:19px;top:21px;transform:rotate(-6deg) scale(.8);transform-origin:top left;padding:17px 14px 10px;width:135px}.delivery-tag:before{height:35px;top:-25px}.delivery-tag strong{font-size:24px}.tag-heart{display:none}.scene-note{display:none}.scene-wrap{height:auto;padding-top:52px;padding-bottom:18px}.scene{width:560px;height:auto;aspect-ratio:4/3}.scene-wrap:before{width:90%;bottom:20px}.room-tools{bottom:0;right:18px;gap:4px}.tool{font-size:16px;padding:8px}.tool span{font-size:8px}.walking-hint{font-size:10px;line-height:1.6;margin:20px 16px 25px;gap:8px;text-align:center}.keys{display:none}.hint-flower{display:none}.gift-shelf{margin:0 6%;padding:18px 0}.shelf-top .eyebrow{font-size:8px;letter-spacing:.6px}.shelf-top #progress{font-size:9px}.progress-dots{display:none}.gift-list{grid-template-columns:repeat(4,1fr);gap:8px}.gift-item{min-height:84px;padding:8px 3px;gap:5px;font-size:9px}.gift-icon{font-size:25px}.icon-plush{font-size:14px}.gift-item:last-child{grid-column:auto}.demo-note{flex-wrap:wrap;gap:4px 10px;font-size:9px;margin:15px 20px 24px}.demo-note .text-btn{font-size:10px}footer{padding:20px 0;gap:12px;flex-direction:column;align-items:center;font-size:9px}.modal-content{padding:24px 20px}.modal-content h2{font-size:29px}.gift-note{font-size:18px}.music-card,.book-card{padding:15px;gap:15px}.vinyl{width:75px;height:75px}.music-card h3,.book-card h3{font-size:20px}.book-art{font-size:14px;padding:15px 10px}.editor{padding:30px 5%}.editor-heading{display:block;margin-bottom:20px}.editor-heading h1{font-size:38px}.editor-heading p{font-size:12px}#save-state{font-size:9px}.editor-layout{display:flex;flex-direction:column;gap:18px}.editor-nav{flex-direction:row;overflow-x:auto;width:100%;padding:0 0 10px;gap:7px}.editor-nav button{white-space:nowrap;padding:10px;font-size:11px;border:1px solid var(--line)}.editor-nav button>span{min-width:auto}.editor-nav .nav-label{display:none}.editor-nav button i{display:none}.editor-form{padding:24px 20px}.editor-preview{width:100%;padding:20px 15px}.editor-preview canvas{max-width:400px}.editor-preview .publish-note{max-width:370px;margin:20px auto}.color-inputs{gap:6px}.empty{padding-top:65px}.arrival>p{font-size:19px}.parcel{transform:scale(.8)}.hotspot{width:44px;height:44px}.hotspot span{font-size:9px}.characters{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* The room is a little game, with a warm CRT-era interface. */
:root{--paper:#f3dba5;--ink:#523728;--muted:#806047;--green:#65814f;--line:#b68b58;--soft:#e7ca8e;--peach:#c67852;--serif:'Courier New',monospace;--sans:'Courier New',monospace}
body{background-color:#f3dba5;background-image:radial-gradient(#bb8e5030 1px,transparent 1px);background-size:8px 8px;font-family:var(--mono)}
h1,h2{font-family:var(--mono);font-weight:700;letter-spacing:-2px}h1{font-size:35px;text-shadow:2px 2px #fff0c4}h2{font-size:27px;letter-spacing:-1px}h3{font-family:var(--mono);font-weight:bold;font-size:20px}.site-header{height:77px;border-bottom:2px solid #9c784c;margin:0 5%}.brand{font-family:var(--mono);font-size:25px;text-shadow:2px 2px #fff3cb}.brand-dot{color:#bd593d}.header-caption{font:11px var(--mono);letter-spacing:0;color:#806047;margin-left:18px}.primary,.secondary{border:2px solid #594a2c;border-radius:0;box-shadow:3px 3px 0 #6d5133;font-family:var(--mono);font-size:12px}.primary{background:#778b50;color:#fff6cd}.primary:hover{background:#687e43;transform:translate(-1px,-1px)}.secondary{background:#e7cb8a;color:#65482d}.text-btn{font-family:var(--mono);font-size:11px;font-weight:bold}.experience{max-width:1150px;padding:0 30px}.room-heading{padding:28px 0 22px}.room-heading .eyebrow{margin-bottom:9px;color:#95603e;font-size:10px;font-weight:bold;letter-spacing:1px}.room-heading h1{margin-bottom:10px}.room-heading p{color:#8c6848;font-size:12px}.game-titlebar{display:flex;justify-content:space-between;align-items:center;background:#956e49;color:#fff0c3;border:3px solid #6a492e;border-bottom:0;padding:9px 14px;font:11px var(--mono);box-shadow:5px 0 #a68050}.game-titlebar>span:last-child{letter-spacing:8px}.scene-wrap{height:470px;background:#e9c78d;border:3px solid #6a492e;border-top:2px solid #bc9664;box-shadow:5px 5px #a68050;margin:0;max-width:none;overflow:hidden;background-image:radial-gradient(#bd945229 1px,transparent 1px);background-size:6px 6px}.scene{width:650px;height:487px;top:-12px}.scene canvas{filter:drop-shadow(0 12px 0 #86542d13)}.scene-wrap:before{background:radial-gradient(ellipse,#a7773c33,transparent 65%);height:170px;bottom:0}.delivery-tag{background:#ffe8b1;border:2px solid #9f7348;box-shadow:3px 3px #b18956;transform:rotate(-4deg);top:65px;left:24px;width:143px;padding:23px 16px 16px;color:#704d32}.delivery-tag:before{background:#855c37}.delivery-tag strong{font:bold 25px var(--mono)}.delivery-tag>span:not(.eyebrow):not(.tag-hole):not(.tag-heart){font:10px/1.6 var(--mono)}.tag-heart{color:#b86647}.scene-note{top:175px;right:10px;width:140px;transform:none}.scene-note p{font:bold 12px/1.8 var(--mono);color:#997046}.scene-note>span:last-child{font-size:8px;color:#997046;letter-spacing:0}.pixel-spark{color:#b57842}.room-tools{bottom:14px;right:12px;gap:8px}.tool{color:#795b36;background:#f4daa5;border:1px solid #b98b50;box-shadow:2px 2px #b98b50;padding:8px}.tool span{font-size:8px}.walking-hint{margin:20px 0;color:#8b6947;font-size:10px}.keys{border:1px solid #ab8753;box-shadow:1px 1px #ab8753;background:#fbe6b6;color:#725334}.gift-shelf{margin:0;padding:17px 0;border-top:2px solid #c09a64;border-bottom:2px solid #c09a64}.shelf-top .eyebrow{font-size:10px;color:#80603d;font-weight:bold}.shelf-top #progress{color:#80603d}.progress-dots i{background:#d0ac70}.progress-dots i.filled{background:#71894d}.gift-item{background:#f8e6b9;border:2px solid #b18b55;border-radius:0;box-shadow:3px 3px #c09a64;min-height:86px;color:#765334;font-weight:bold}.gift-item:hover{background:#fff0ca}.gift-item.discovered{background:#d9dc9f;border-color:#8a9659}.gift-number,.gift-check{color:#a68150}.gift-icon{color:#916a42}.icon-flowers{color:#b85c57}.demo-note{color:#886640}.sample-pill{border:1px solid #b9975e;color:#946e42}.demo-note .text-btn{color:#71572e}footer{color:#93764e;border-color:#c39e67;margin-top:0}.window-bar{background:#947245;color:#fff0ba;border-bottom:2px solid #5f462e;font-size:11px}.close{background:#e8ce94;border:2px solid #6e512f;color:#725333;width:28px;height:27px;font-size:22px;line-height:18px;box-shadow:1px 1px #4c3b29}dialog{background:#fff0cb;border:3px solid #65492f;border-radius:0;box-shadow:6px 6px #503b2b,0 25px 80px #33211366}dialog::backdrop{background:#3d281f70;backdrop-filter:none}.modal-content h2{font-family:var(--mono);font-size:26px}.gift-note{font-family:Arial,sans-serif;font-size:16px;line-height:1.8}.letter-copy{font-family:Arial,sans-serif}.music-card,.book-card{background:#e8d09e;border:2px solid #b79562}.coffee-card{background:#dce0ae;border:2px dashed #8e9d5a;border-radius:0}.sample-photo{border-color:#e4be84}.eyebrow{letter-spacing:1px}.characters .character{background:#e8c892;border:2px solid #a47c47;border-radius:0;color:#765334}.character.selected{background:#c5ce8f;border:2px solid #75864b}.editor-form{background:#fff0ca;border:2px solid #a47e4d;box-shadow:4px 4px #c7a36d;border-radius:0}.editor-nav button.selected{background:#d6d9a3;color:#4b6636}.editor-nav button:hover{background:#e7ca8c}.editor-nav button,.palette,.upload{border-radius:0}.editor-form>p,.editor-heading p,.editor-preview>p,.publish-note,.muted{color:#826748}.editor-nav button>span,.editor-nav i{color:#92723f}.field>span{color:#735935}.field input,.field textarea,.field select{background:#fff6dc!important;border:2px solid #c6aa76!important;border-radius:0!important}.form-tip{background:#e8ddb1;color:#7c794c;font-family:var(--mono);font-style:normal;font-size:12px}.nav-label{color:#927341}.palette{background:#efdaad;border:2px solid #b6975e}.upload{background:#eee3b7;border:2px dashed #aaa269}.upload small{color:#8d784a}.editor-form>.eyebrow,#save-state{color:#79804d}.editor-preview em{font-family:var(--mono);font-size:14px}.sample-warning{color:#916c42}.arrival{background:#ecd099;background-image:radial-gradient(#bf955330 1px,transparent 1px);background-size:6px 6px}.arrival>p{font:bold 20px var(--mono);color:#76502f;margin-top:48px}.arrival>.eyebrow{color:#997144;font-size:10px}.parcel{width:155px;height:145px;transform:rotate(-3deg);animation:boxAnticipation 1s ease-in-out}.parcel-body{background:repeating-linear-gradient(0deg,#c58b4f 0 5px,#ce9658 5px 10px);border:4px solid #765032;box-shadow:8px 8px #9c693b;inset:30px 0 0}.parcel-body:before{background:#bc6254;border-left:3px solid #924536;border-right:3px solid #924536;left:60px;width:24px}.parcel-body span{left:50px;top:30px;background:#ffe3a0;border:2px solid #b28748;box-shadow:2px 2px #805930;color:#ac4b3d}.parcel-lid{background:#e1ab64;border:4px solid #765032;width:172px;height:30px;left:-8px;top:12px;box-shadow:4px 4px #9f6d3c}.parcel-lid:after{color:#ad5649;left:49px;bottom:17px;font-size:52px}.parcel-bow{display:none}.parcel-side{background:#d6a260;border:3px solid #946538}.skip{background:#ffe4a7;border:2px solid #a47a43;padding:9px 12px;box-shadow:2px 2px #ba925b;color:#815a34}.hotspot:hover,.hotspot:focus-visible{border:2px dashed #fff2ba;border-radius:0;background:#fff1af22}.hotspot span{background:#fff0ba;color:#77512d;border:2px solid #805b37}.bear{font-family:var(--mono)}.final-heart{color:#b55b46}@keyframes boxAnticipation{0%,100%{rotate:0deg}25%{rotate:-4deg}75%{rotate:4deg}}
@media(min-width:1500px){.scene-wrap{height:500px}.scene{width:690px;height:517px}.room-heading{padding-top:30px}}
@media(max-width:1050px){.scene{width:580px;height:435px;top:12px}.scene-wrap{height:455px}.delivery-tag{left:15px;top:50px;width:115px}.scene-note{right:0;width:110px}.scene-note p{font-size:10px}.header-caption{display:none}}
@media(max-width:760px){.site-header{height:69px}.brand{font-size:19px}.brand img{width:21px;height:21px}.site-header .small{font-size:9px;padding:9px;max-width:156px}.experience{padding:0 12px}.room-heading{padding:26px 4px 20px}.room-heading h1{font-size:24px;line-height:1.35;letter-spacing:-1.5px}.room-heading p{font-size:10px;max-width:300px;margin:auto}.room-heading .eyebrow{font-size:8px}.game-titlebar{font-size:9px;padding:8px;border-width:2px}.game-titlebar>span:last-child{letter-spacing:4px}.scene-wrap{height:auto;padding-top:60px;padding-bottom:48px;border-width:2px;overflow:hidden}.scene{width:560px;max-width:100%;height:auto;aspect-ratio:4/3;top:0}.delivery-tag{top:12px;left:16px;width:auto;min-width:100px;transform:none;padding:8px 12px;gap:3px;z-index:0;box-shadow:2px 2px #b18956}.delivery-tag strong{font-size:17px}.delivery-tag .eyebrow{font-size:7px}.delivery-tag>span:not(.eyebrow):not(.tag-hole):not(.tag-heart){font-size:8px}.delivery-tag:before,.tag-hole{display:none}.room-tools{bottom:10px;right:12px}.walking-hint{font-size:9px;line-height:1.6;margin:17px 10px}.gift-shelf{padding:16px 0;margin:0 2px}.shelf-top .eyebrow{font-size:9px}.gift-list{gap:8px}.gift-item{min-height:82px;font-size:8px}.gift-icon{font-size:24px}.icon-plush{font-size:13px}.demo-note{font-size:8px;margin:18px 10px}.demo-note .text-btn{font-size:9px}footer{font-size:8px;text-align:center}.editor-heading h1{font-size:31px}.editor-nav button{border-color:#baa174}.editor-preview canvas{background:#e9c78d}.modal-content h2{font-size:23px}.arrival>p{font-size:15px;max-width:90%;text-align:center}.arrival>.eyebrow{font-size:8px}.arrival .skip{top:8px;right:8px;font-size:9px}.parcel{scale:.75}.scene .arrival{inset:-58px 0 -45px}}
.loading-art,.loading-art *{animation-play-state:paused!important}.scene canvas{image-rendering:pixelated}.scene-note{display:none}.scene{width:685px;height:514px;top:-15px}.scene-wrap{height:490px}.delivery-tag{top:38px;left:23px;transform:rotate(-4deg)}.gift-item .gift-icon{filter:drop-shadow(1px 1px #fff0bc)}@media(min-width:1500px){.scene{width:725px;height:544px}.scene-wrap{height:520px}}@media(max-width:1050px){.scene{width:635px;height:476px;top:10px}.scene-wrap{height:480px}.delivery-tag{left:13px;top:25px;width:112px}}@media(max-width:760px){.scene{width:560px;max-width:100%;height:auto;aspect-ratio:4/3;top:0}.scene-wrap{height:auto;padding-top:72px;padding-bottom:49px}.delivery-tag{top:10px;left:13px;width:auto;transform:none;min-width:90px}.scene .arrival{inset:-70px 0 -48px}}
.parcel-lid:before,.parcel-lid:after{content:'';position:absolute;bottom:23px;width:24px;height:17px;border:5px solid #a95444;background:#d58261;box-shadow:2px 2px #784733}.parcel-lid:before{left:48px;transform:rotate(20deg)}.parcel-lid:after{left:76px;transform:rotate(-20deg)}
@media(max-width:760px){.editor-header nav>.text-btn{display:inline-flex;font-size:9px;max-width:100px;line-height:1.5}}
/* An uncluttered stage: only the room remains visible while exploring. */
body.room-only{background:#f7f5f0;background-image:none}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.room-experience{max-width:none;margin:0;padding:0;min-height:100svh;height:100dvh;display:grid;place-items:center;overflow:hidden}
.room-experience .scene-wrap{width:min(96vw,1020px,calc((100dvh - 48px)*1.333333));height:auto;aspect-ratio:4/3;margin:0;padding:0;border:0;box-shadow:none;background:none;overflow:visible}
.room-experience .scene-wrap:before{display:none}
.room-experience .scene{position:relative;top:auto;width:100%;height:100%;max-width:none;margin:0;aspect-ratio:4/3}
.room-experience .scene canvas{filter:none;image-rendering:pixelated}
.room-experience .arrival{inset:0;background:#f7f5f0;background-image:none}
.room-experience .skip{top:12px;right:12px;background:transparent;border:0;box-shadow:none;font-weight:400;color:#918373}
.room-experience .arrival>p{font:14px/1.6 var(--mono);font-weight:400;color:#75624e}
.room-experience .arrival>.eyebrow{display:none}
.room-menu{position:fixed;z-index:4;right:max(22px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));padding:0;margin:0;border:0;text-align:left;font-family:Arial,sans-serif}
.room-menu>summary{display:grid;place-items:center;width:44px;height:44px;padding:0;list-style:none;border:0;background:transparent;color:#9a8e7a;font:bold 24px/1 var(--mono);cursor:pointer;border-radius:50%}
.room-menu>summary::-webkit-details-marker{display:none}
.room-menu>summary:hover,.room-menu[open]>summary{background:#eae4d9;color:#645641}
.room-menu-panel{position:absolute;right:0;bottom:55px;width:290px;max-width:calc(100vw - 40px);padding:22px;background:#fffaf0;border:1px solid #d9cbb4;border-radius:8px;box-shadow:0 8px 35px #6b52371a}
.menu-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;color:#67533e}.menu-heading>span:first-child{font-weight:bold}.menu-heading #progress{font-size:10px;color:#928572}.menu-heading .progress-dots{display:none}.menu-hint{font-size:11px;color:#a08e78;margin:10px 0 15px}.menu-gifts{display:grid;grid-template-columns:1fr 1fr;gap:3px 13px}.menu-gift{background:none;display:flex;align-items:center;justify-content:space-between;min-height:44px;border-bottom:1px solid #ece3d4;font:12px Arial,sans-serif;color:#75624c}.menu-gift .gift-check{position:static;font:12px var(--mono);color:#a48f6e}.menu-gift.discovered{color:#788655;background:none}.menu-gift:hover{color:#4c5d39}.menu-actions{display:flex;flex-direction:column;gap:3px;margin-top:16px}.menu-actions .text-btn{min-height:35px;font:11px Arial,sans-serif;color:#7e715d;text-align:left}.menu-actions .text-btn:last-child{color:#5e7448}
dialog[data-kind="character"]{width:min(650px,calc(100% - 32px));border:1px solid #cbbb9e;background:#faf4e7;box-shadow:0 18px 70px #4b392d33;border-radius:10px}
dialog[data-kind="character"] .window-bar{background:transparent;color:#a38e6d;border:0;padding:11px 16px;font-size:9px;letter-spacing:1px}
dialog[data-kind="character"] .close{border:0;box-shadow:none;background:transparent;color:#927a5c;width:36px;height:36px;font-size:26px}
dialog[data-kind="character"] .modal-content{padding:0 30px 26px}
dialog[data-kind="character"] h2{font:24px/1.3 var(--mono);font-weight:bold;letter-spacing:-1px;color:#6e5038;margin:3px 0 10px;text-shadow:none}
.character-intro{font:12px/1.6 Arial,sans-serif;color:#9b866a;margin:0 0 23px}
.characters{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}
.characters .character{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;padding:13px 8px 14px;background:#f0e8d8;border:1px solid #e5d8c0;border-radius:6px;color:#785d3e;font:11px var(--mono);transition:background .15s,border-color .15s}
.characters .character:hover{background:#ebe4d1;border-color:#b6bb90}
.characters .character.selected{background:#e6e8d3;border:1px solid #9aa872;box-shadow:inset 0 0 0 1px #9aa872;padding:13px 8px 14px}
.characters .character canvas{width:90px;height:105px;max-width:100%;image-rendering:pixelated}
.characters .character b{font-weight:bold;font-size:12px}
.characters .character small{font:9px/1.4 Arial,sans-serif;color:#99866d;min-height:25px}
.characters .character>.character-selected{position:absolute;top:8px;right:8px;left:auto;width:auto;height:auto;display:block;margin:0;background:none;font-size:12px;color:#71814c}
.characters .character>.character-selected:before{display:none}
dialog[data-kind="character"] .primary{background:#748451;border:1px solid #5f7041;border-radius:3px;box-shadow:0 2px 0 #55653b;padding:13px 25px;font-size:11px}
@media(max-width:760px){.room-experience .scene-wrap{width:min(calc(100vw - 8px),calc((100dvh - 72px)*1.333333));height:auto;padding:0;aspect-ratio:4/3}.room-experience .scene{width:100%;height:100%;top:auto;max-width:none}.room-experience .arrival{inset:0}.room-experience .parcel{scale:.72}.room-menu{right:12px;bottom:12px}.room-menu-panel{max-height:calc(100dvh - 90px);overflow:auto;max-width:calc(100vw - 24px)}dialog[data-kind="character"] .modal-content{padding:0 16px 22px}.characters{gap:8px}.characters .character{padding:10px 5px}.characters .character.selected{padding:10px 5px}.characters .character canvas{width:75px;height:88px}.characters .character small{font-size:8px;min-height:24px}dialog[data-kind="character"] h2{font-size:21px}}
.room-experience{grid-template-rows:auto auto;align-content:center;justify-items:center;gap:8px;padding:14px 0 24px}
.room-experience .scene-wrap{width:min(94vw,1020px,calc((100dvh - 152px)*1.333333))}
.inventory-box{position:relative;width:min(470px,calc(100vw - 32px));padding:10px 11px 13px;background:#bb905a;border:3px solid #775232;box-shadow:inset 0 3px #e3bd83,inset 0 -5px #9e7446,3px 3px #593f2520;image-rendering:pixelated}
.inventory-box:before,.inventory-box:after{content:'';position:absolute;bottom:10px;width:5px;height:6px;background:#c5a576;border:1px solid #7c5b36}.inventory-box:before{left:3px}.inventory-box:after{right:3px}
.inventory-lip{position:absolute;left:-3px;right:-3px;top:-9px;height:10px;background:#d1ac75;border:3px solid #775232;box-shadow:inset 0 2px #edcd93}
.inventory-slots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.inventory-slot{position:relative;display:grid;place-items:center;aspect-ratio:1;background:#cbb38b;border:2px solid #987650;box-shadow:inset 1px 1px #85613d;padding:0;min-width:0;min-height:44px;border-radius:0}
.inventory-slot canvas{width:100%;height:auto;image-rendering:pixelated;filter:grayscale(1);opacity:.43;transition:filter .25s,opacity .25s}
.inventory-slot.discovered{background:#dec79e;border-color:#9b7549}.inventory-slot.discovered canvas{filter:none;opacity:1}
.inventory-slot:hover{background:#e2cda8}.inventory-slot .gift-check{position:absolute;right:2px;bottom:1px;color:#5b733e;background:#eddfb8;font:bold 9px var(--mono);padding:0 2px}.inventory-slot .gift-check:empty{display:none}
.inventory-label{display:none;position:absolute;bottom:calc(100% + 14px);left:50%;transform:translateX(-50%);font:10px var(--mono);color:#69503b;background:#fff8e9;border:1px solid #c8b695;white-space:nowrap;padding:6px 8px;z-index:6;box-shadow:2px 2px #6c4c2920}.inventory-slot:hover .inventory-label,.inventory-slot:focus-visible .inventory-label{display:block}
@media(max-width:760px){.room-experience{gap:16px;padding:20px 0 75px}.room-experience .scene-wrap{width:min(calc(100vw - 8px),calc((100dvh - 185px)*1.333333))}.inventory-box{width:calc(100vw - 18px);max-width:420px;padding:9px 5px 11px;border-width:2px}.inventory-lip{left:-2px;right:-2px;border-width:2px;top:-8px}.inventory-slots{gap:2px}.inventory-slot{border-width:1px}.inventory-slot .gift-check{font-size:8px}.inventory-label{font-size:8px;padding:5px}.inventory-slot:first-child .inventory-label{left:0;transform:none}.inventory-slot:last-child .inventory-label{left:auto;right:0;transform:none}}
.room-only.opening .inventory-box,.room-only.opening .room-menu{visibility:hidden}
/* A hinged cardboard parcel, drawn as pixels rather than a ribboned CSS gift. */
.room-experience .carton-arrival{inset:0;display:block;animation:none!important;background:#f7f5f0}
.carton-arrival .carton-canvas{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;object-fit:contain;filter:none}
.parcel-opening>#room,.parcel-opening>.hotspots{visibility:hidden}
.carton-arrival .skip{position:absolute;top:4px;right:6px;z-index:2;min-height:44px;padding:8px;font:11px var(--mono);color:#85745d}
dialog[data-kind="welcome note"]{width:min(490px,calc(100% - 32px));background:#f5e6c5;border:2px solid #ae8d5c;box-shadow:5px 5px #8c694133,0 15px 50px #52392633;border-radius:2px}
dialog[data-kind="welcome note"] .window-bar{background:transparent;border:0;color:#a48860;font:9px var(--mono)}
dialog[data-kind="welcome note"] .close{background:transparent;box-shadow:none;border:0;color:#947650}
dialog[data-kind="welcome note"] .modal-content{position:relative;padding:8px 29px 27px}
dialog[data-kind="welcome note"] h2{font:bold 20px/1.5 var(--mono);letter-spacing:-.7px;color:#715333;max-width:280px;margin:0 auto 13px}
.instruction-stamp{width:30px;height:35px;border:2px dashed #b8905c;color:#aa7650;display:grid;place-items:center;position:absolute;right:21px;top:6px;transform:rotate(9deg);font:22px var(--mono)}
.instruction-greeting{font:italic 14px/1.6 Georgia,serif;color:#977749;margin-bottom:26px}
.instruction-lines{text-align:left}.instruction-lines p{display:grid;grid-template-columns:69px 1fr;gap:15px;align-items:center;margin:0 0 22px;font:13px/1.7 Arial,sans-serif;color:#7c6342}
.instruction-keys{font:bold 12px/1.7 var(--mono);color:#8d7047;letter-spacing:2px}.instruction-symbol{text-align:center;font-size:26px;color:#ae8750}.instruction-signoff{font:italic 14px Georgia,serif;color:#a28253;margin:26px 0 14px}
@media(max-width:760px){.instruction-keys{font-size:10px;letter-spacing:0;white-space:nowrap}}
@media(max-width:760px){.carton-arrival .skip{top:-28px;right:3px;font-size:9px}dialog[data-kind="welcome note"] .modal-content{padding:8px 18px 22px}.instruction-lines p{grid-template-columns:53px 1fr;gap:10px;font-size:12px}.instruction-stamp{display:none}dialog[data-kind="welcome note"] h2{font-size:19px}}

/* A nearby gift has a steady pixel frame and an explicit interaction prompt. */
.hotspot.nearby,.hotspot:hover,.hotspot:focus-visible{border:2px solid #fff0ac;border-radius:0;background:#ffda791f;box-shadow:0 0 0 2px #98613288,inset 0 0 0 1px #ab7c4155;z-index:2}
.hotspot.nearby:after{content:'';position:absolute;inset:-6px;border:2px solid #f9d58b;clip-path:polygon(0 0,25% 0,25% 8%,8% 8%,8% 25%,0 25%,0 0,100% 0,100% 25%,92% 25%,92% 8%,75% 8%,75% 0,100% 0,100% 100%,75% 100%,75% 92%,92% 92%,92% 75%,100% 75%,100% 100%,0 100%,0 75%,8% 75%,8% 92%,25% 92%,25% 100%,0 100%);pointer-events:none}
.hotspot.nearby span{display:block}
.hotspot span{font-size:10px;padding:7px 9px;line-height:1.35;text-align:center;pointer-events:none;box-shadow:2px 2px #6c482f55}
.hotspot span small{display:block;font:8px/1.4 Arial,sans-serif;margin-top:4px;color:#967346}
.hotspot span .touch-prompt,.hotspot span .desktop-prompt{display:none}
.hotspot.nearby span .desktop-prompt{display:block}.hotspot.nearby span .approach-prompt{display:none}
.inventory-slot.nearby{border-color:#f5df9b;box-shadow:0 0 0 2px #937039,inset 0 0 0 1px #fff0ba}
@media(pointer:coarse){.hotspot span .desktop-prompt,.hotspot.nearby span .desktop-prompt,.hotspot span .approach-prompt{display:none}.hotspot span .touch-prompt{display:block}}

/* Small visual base choices, with a larger live color preview. */
dialog[data-kind="character"]{width:min(670px,calc(100% - 28px));max-height:calc(100dvh - 24px)}
dialog[data-kind="character"] h2{margin-bottom:22px}
.characters{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 20px}
.characters .character,.characters .character.selected{padding:7px 2px;gap:0;border-radius:3px}
.characters .character canvas{width:64px;height:75px}
.characters .character>.character-selected{top:4px;right:4px;font-size:9px}
.look-customizer{display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;text-align:left;padding:0 10px 16px}
.look-preview{display:grid;place-items:center;align-self:stretch;background:linear-gradient(#f2eadc,#eae4d3);border:1px solid #dfd3bd;border-radius:3px;position:relative}
.look-preview:before{content:'';position:absolute;bottom:12px;width:76px;height:8px;background:#bba68544;border-radius:50%}
.look-preview canvas{position:relative;width:150px;height:220px;image-rendering:pixelated}
.look-colors fieldset{padding:0;margin:0 0 13px;border:0;min-width:0}
.look-colors fieldset:last-child{margin-bottom:0}
.look-colors legend{font:10px var(--mono);color:#917553;margin-bottom:7px}
.color-swatches{display:flex;gap:7px;flex-wrap:wrap}
.color-swatch{display:grid;place-items:center;width:27px;height:27px;min-height:27px;border:2px solid #f9f3e7;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #cbbda6;position:relative;padding:0}
.color-swatch.selected{box-shadow:0 0 0 2px #71814e}
.color-swatch span{color:#fff9e9;text-shadow:0 1px 2px #382d23;font:12px Arial,sans-serif}
.color-swatch.original{background:#ede3d1}.color-swatch.original span{color:#9d8764;text-shadow:none}
.color-swatch:focus-visible{outline:2px solid #69482f;outline-offset:4px}
.look-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:7px}
.look-actions>.text-btn{font-size:9px;color:#9b8568}
@media(max-width:760px){
 dialog[data-kind="character"] .modal-content{padding:0 15px 20px}
 dialog[data-kind="character"] h2{font-size:20px;margin-bottom:18px}
 .characters{gap:4px;margin-bottom:17px}
 .characters .character,.characters .character.selected{padding:6px 0}
 .characters .character canvas{width:44px;height:58px}
 .look-customizer{grid-template-columns:90px minmax(0,1fr);gap:16px;padding:0 0 12px}
 .look-preview canvas{width:90px;height:158px;object-fit:contain}
 .look-preview:before{width:42px;bottom:17px}
 .look-colors legend{font-size:9px;margin-bottom:6px}
 .look-colors fieldset{margin-bottom:12px}
 .color-swatches{gap:5px}
 .color-swatch{width:22px;height:22px;min-height:22px}
 .color-swatch span{font-size:10px}
 .hotspot span{font-size:9px}.hotspot span small{font-size:8px}
}
@media(min-width:481px) and (max-width:760px){.look-customizer{grid-template-columns:minmax(130px,.7fr) 1fr;gap:26px}.look-preview canvas{width:135px;height:200px}.color-swatch{width:25px;height:25px;min-height:25px}}

/* Shared desktop-window chrome for every popup. */
dialog[data-kind]{padding:5px;border:2px solid #4d3b30;border-radius:0;background:#efd4b1;box-shadow:inset 2px 2px #fff6d8,inset -2px -2px #b58b6a,6px 6px 0 #59494370;max-height:calc(100dvh - 30px)}
dialog::backdrop{background:#33291f42;backdrop-filter:none}
dialog[data-kind] .window-bar{display:flex;align-items:center;gap:7px;padding:3px 3px 7px;border:0;background:#efd4b1;color:#4f382a;min-height:30px;font:11px/1.3 var(--mono);letter-spacing:0}
.window-icon{flex:none;display:block;width:14px;height:15px;border:1px solid #8b5747;box-shadow:inset 1px 1px #fff5d4,inset -1px -1px #bb8b72;background:#f4dec0}
.window-title{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-width:0;white-space:nowrap;font-weight:bold}
.window-title:before,.window-title:after{content:'';height:13px;flex:1;background:repeating-linear-gradient(to bottom,#a76e59 0 1px,transparent 1px 3px);min-width:10px}
.window-controls{display:flex;gap:5px;flex:none}
dialog[data-kind] .close,dialog[data-kind] .window-expand{display:grid;place-items:center;width:22px;height:22px;min-height:22px;padding:0;background:#efd4b1;border:1px solid #9f6b53;border-radius:0;box-shadow:inset 1px 1px #fff3d5,inset -1px -1px #bd9274;color:#74503c;font:19px/1 Arial,sans-serif}
dialog[data-kind] .window-expand{font-size:18px}
dialog[data-kind] .close:hover,dialog[data-kind] .window-expand:hover{background:#fff0c8}
dialog[data-kind] .close:active,dialog[data-kind] .window-expand:active{box-shadow:inset 1px 1px #b68e70}
dialog[data-kind] .modal-content{margin:0;padding:25px 28px 28px;border:1px solid #674d35;background:#fff1bd;box-shadow:inset 1px 1px #fffbdc,inset -1px -1px #d5b780}
dialog[data-kind] h2{font:bold 23px/1.4 var(--mono);letter-spacing:-1px;color:#513e2b;text-shadow:none}
dialog[data-kind] .primary,dialog[data-kind] .secondary{border:2px solid #79543d;border-radius:0;background:#efd0a9;color:#513a2a;box-shadow:inset 2px 2px #fff5d8,inset -2px -2px #be9270,2px 2px 0 #a87e60;font:bold 12px/1.4 var(--mono);min-height:43px;padding:11px 24px}
dialog[data-kind] .primary:hover,dialog[data-kind] .secondary:hover{background:#f8dcb5;transform:none}
dialog[data-kind] .primary:active,dialog[data-kind] .secondary:active{box-shadow:inset 2px 2px #be9270,inset -1px -1px #fff5d8;transform:translate(1px,1px)}
dialog[data-kind] .music-card,dialog[data-kind] .book-card,dialog[data-kind] .coffee-card{border-radius:0;border:1px solid #b79867;background:#f0dfb0;box-shadow:inset 1px 1px #c3a777,inset -1px -1px #fff7d8}
dialog[data-kind] .eyebrow{font-family:var(--mono)}
dialog[data-kind="character"] h2{margin-top:0}
.characters .character,.characters .character.selected{border-radius:0;border-color:#b8a67b;background:#ede1bb;box-shadow:inset 1px 1px #fff9d9,inset -1px -1px #c8b488}
.characters .character.selected{background:#dbe0b0;border-color:#78814e;box-shadow:inset 1px 1px #7b8553,inset -1px -1px #f5f4ce}
.look-preview{border-radius:0;background:#e9ddb6;border-color:#b2a071;box-shadow:inset 1px 1px #b2a071,inset -1px -1px #fff4d2}
.color-swatch{border-radius:0;border-color:#fff2cf;box-shadow:0 0 0 1px #ac926e}
.color-swatch.selected{box-shadow:0 0 0 2px #6d7547}
.color-swatch.original{background:#ead4ad}
.gift-pixel-art{display:block;width:156px;height:156px;margin:18px auto 22px;image-rendering:pixelated;object-fit:contain}
.gift-pixel-art.coffee-pixel{width:85px;height:85px;margin:12px auto}
dialog[data-kind="welcome note"] h2{max-width:340px}
dialog.is-maximized[open]{display:flex;flex-direction:column;width:calc(100vw - 28px)!important;max-width:none!important;height:calc(100dvh - 28px);max-height:calc(100dvh - 28px)}
dialog.is-maximized .modal-content{flex:1;overflow:auto;display:flex;flex-direction:column;justify-content:flex-start}
dialog.is-maximized .look-customizer{width:min(560px,100%);margin:0 auto}
dialog.is-maximized .characters{width:min(650px,100%);margin:0 auto 20px}
dialog.is-maximized .look-actions{width:min(560px,100%);margin:15px auto 0}
@media(max-width:760px){dialog[data-kind] .modal-content{padding:20px 15px 22px}dialog[data-kind] h2{font-size:20px}dialog[data-kind] .window-bar{font-size:9px;gap:5px}.window-title{gap:6px}.window-title:before,.window-title:after{height:10px;min-width:4px}.window-icon{width:11px;height:13px}.window-controls{gap:4px}dialog[data-kind] .primary,dialog[data-kind] .secondary{font-size:11px;padding:10px 18px}.instruction-stamp{display:none}}
#toast{border:2px solid #76553d;border-radius:0;background:#f4dfb1;color:#5c432e;box-shadow:inset 1px 1px #fff8d7,inset -1px -1px #c5a779,3px 3px #59443355;font:11px/1.5 var(--mono)}
.inventory-label{border:1px solid #7e5a3f;border-radius:0;background:#ffedbc;box-shadow:inset 1px 1px #fff8da,2px 2px #79563955}

.window-title:empty{gap:0}
dialog[data-kind="welcome note"] h2{max-width:none;margin-bottom:18px}
.instruction-greeting{font:14px/1.75 Arial,sans-serif;color:#806343;margin-bottom:25px}
/* Nearby objects keep their pixel outline; their names remain accessible labels. */
.hotspot span{display:none!important}
.record-scene{max-width:440px;margin:12px auto 22px}
.record-animation{display:block;width:100%;padding:0;background:none;border:0;box-shadow:none;cursor:pointer}
.record-animation canvas{display:block;width:100%;height:auto;image-rendering:pixelated}
.record-animation:focus-visible{outline:2px dashed #9b7248;outline-offset:3px}
dialog[data-gift="flowers"]{width:min(740px,calc(100vw - 24px))}
dialog[data-gift="flowers"] .modal-content{padding:20px}
.garden-stage{position:relative;border:2px solid #887a52;box-shadow:inset 1px 1px #fff5c8;line-height:0;background:#b0bea0}
.garden-stage>canvas{display:block;width:100%;height:auto;image-rendering:pixelated}
.garden-targets{position:absolute;inset:0;pointer-events:none}
.garden-flower{position:absolute;transform:translate(-50%,-40%);width:11%;height:20%;min-width:32px;min-height:38px;background:none;border:2px solid transparent;padding:0;pointer-events:auto;border-radius:0}
.garden-flower:hover,.garden-flower:focus-visible{border-color:#fff3b2;outline:1px solid #b39c61;background:#fff0b510}
.garden-flower:disabled{pointer-events:none;opacity:0}
.garden-status{font:11px/1.5 var(--mono);color:#7e6744;margin:16px 0 12px;min-height:17px}
.garden-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.garden-actions button:disabled{opacity:.45;cursor:default;transform:none}
.garden-actions .secondary{min-width:75px}
.photo-caption{font:15px/1.7 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;color:#71583a}
.photo-caption:empty{display:none}
.caption-editor{margin:18px auto 0;max-width:430px;border-top:1px solid #c7b084;padding-top:10px;text-align:left}
.caption-editor summary{font:11px var(--mono);color:#856646}
.caption-editor .field{margin-top:15px}
.caption-status{font:11px Arial,sans-serif;color:#7b7950}
.hug-sprite{display:block;width:min(290px,90%);height:auto;max-height:340px;object-fit:contain;margin:10px auto;image-rendering:pixelated}
dialog[data-gift="plush"] h2{font-size:21px;max-width:390px;margin:0 auto 17px}
.pixel-book-recommendation{text-align:center;margin:16px auto}
.book-stack{display:block;width:160px;height:160px;object-fit:contain;image-rendering:pixelated;margin:0 auto 22px}
.pixel-book-recommendation h3{max-width:390px;margin:0 auto 8px;font: bold 18px/1.5 var(--mono);color:#674c32}
.book-author{font:12px/1.6 var(--mono);color:#927951;margin:0}
/* The computer opens a quiet early-web browser, with the letter as its only page. */
dialog[data-kind="letter browser"]{width:min(780px,calc(100vw - 24px));background:#c8d4de;border-color:#36475d;box-shadow:inset 2px 2px #eaf3f8,inset -2px -2px #8497ac,6px 6px #34445b66}
dialog[data-kind="letter browser"] .window-bar{background:linear-gradient(90deg,#356698,#769abf);color:#fff6da;padding:4px 5px 5px;margin-bottom:4px}
dialog[data-kind="letter browser"] .window-title{justify-content:flex-start;font: bold 12px Arial,sans-serif}
dialog[data-kind="letter browser"] .window-title:before,dialog[data-kind="letter browser"] .window-title:after{display:none}
dialog[data-kind="letter browser"] .window-icon{background:#e5eddd;border-color:#244869;box-shadow:inset 2px 2px #abc5c9}
dialog[data-kind="letter browser"] .close,dialog[data-kind="letter browser"] .window-expand{background:#d6dedc;border-color:#55728b;color:#345575;box-shadow:inset 1px 1px #f7fbec,inset -1px -1px #93a8b0}
dialog[data-kind="letter browser"] .modal-content{padding:0;background:#e0e3d9;border-color:#8c9a9a;box-shadow:none}
.browser-menu{padding:6px 10px;border-bottom:1px solid #b5bdb5;text-align:left;font:11px Arial,sans-serif;color:#4e5b60}
.browser-navigation{display:flex;align-items:center;gap:13px;padding:9px 10px;border-bottom:2px solid #a3b0b1;background:#d9e0d9}
.browser-arrows{font:20px Arial,sans-serif;color:#748b9b;white-space:nowrap}
.browser-address{flex:1;text-align:left;min-width:0;overflow:hidden;background:#f9faf1;border:1px solid #8e9b9e;box-shadow:inset 1px 1px #c0c9c4;padding:6px 9px;color:#6a7978;font:11px var(--mono);white-space:nowrap}
.browser-address>span{color:#9c6970;margin-right:7px}
.browser-note{background:#fffdf1;margin:20px;padding:27px 34px;border:1px solid #c4c8b8;text-align:left;max-height:55dvh;overflow:auto;box-shadow:2px 2px #b5bcb333}
.letter-envelope{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font:11px/1.6 var(--mono);color:#8e8870;padding-bottom:15px;border-bottom:1px solid #e7e1ca}
dialog[data-kind="letter browser"] h2{font-size:23px;margin:22px 0 18px;color:#52606a}
.browser-note .letter-copy{font:15px/1.9 Arial,sans-serif;margin:0;color:#5f665e;white-space:pre-wrap;overflow-wrap:anywhere}
.browser-status{padding:5px 10px;text-align:left;border-top:1px solid #bbc4b8;color:#71817f;font:10px Arial,sans-serif}
/* A pixel card with a real sender-provided number or barcode on the reverse. */
.gift-card-wrap{margin:24px auto 20px;width:min(370px,100%);perspective:1000px}
.gift-card-flip{display:block;width:100%;height:224px;background:none;padding:0;border:0;box-shadow:none;perspective:1000px;text-align:center}
.gift-card-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.65,.2,1)}
.gift-card-flip.is-flipped .gift-card-inner{transform:rotateY(180deg)}
.gift-card-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px;border:4px solid #6d5134;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:inset 3px 3px #eedbb0,inset -3px -3px #8f6944,4px 4px #b4986a;clip-path:polygon(0 8px,8px 8px,8px 0,calc(100% - 8px) 0,calc(100% - 8px) 8px,100% 8px,100% calc(100% - 8px),calc(100% - 8px) calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,8px calc(100% - 8px),0 calc(100% - 8px))}
.gift-card-front{background:#b6bd87;color:#46543d}
.gift-card-front:before{content:'';position:absolute;inset:9px;border:1px solid #e9e6b5;pointer-events:none}
.card-corner{position:absolute;left:20px;top:17px;color:#e7e4b2;font-size:16px}
.card-merchant{display:block;font:bold 17px/1.3 var(--mono);max-width:90%;overflow-wrap:anywhere;z-index:1}
.card-value{font:14px var(--mono);color:#626442}
.card-demo{position:absolute;bottom:13px;right:18px;font:8px var(--mono);letter-spacing:1px;color:#71754d}
.pixel-cup{display:block;position:relative;width:52px;height:38px;margin:2px 12px 4px 0;background:#fff0ce;border:3px solid #657254;box-shadow:4px 4px #90996b}
.pixel-cup:before{content:'';position:absolute;right:-17px;top:4px;width:13px;height:18px;border:4px solid #fff0ce;border-left:0;box-shadow:3px 0 #657254,0 3px #657254}
.pixel-cup:after{content:'';position:absolute;top:1px;left:2px;right:2px;height:4px;background:#92714e}
.pixel-cup i{position:absolute;top:15px;left:17px;width:6px;height:9px;background:#bd7a6c;box-shadow:6px 0 #bd7a6c,3px 6px #bd7a6c,-3px -3px #bd7a6c,9px -3px #bd7a6c}
.gift-card-back{transform:rotateY(180deg);background:#f4e4bb;color:#5f4b32;gap:6px}
.card-back-heading{font:bold 11px var(--mono);margin-bottom:4px}
.card-back-heart{font:32px var(--mono);color:#9e9e69;margin:4px 0}
.card-number-label{font:9px var(--mono);color:#92795a}
.card-digits{font:bold 14px/1.3 var(--mono);overflow-wrap:anywhere;max-width:100%;user-select:all}
.card-pin{font:11px var(--mono)}
.card-barcode{display:block;max-width:100%;height:70px;object-fit:contain;background:white;padding:5px;image-rendering:auto}
.card-flip-hint{font:10px/1.6 var(--mono);color:#937b56;margin:15px 0 8px}
.barcode-full{font-size:10px}
@media(prefers-reduced-motion:reduce){.gift-card-inner{transition:none}}
@media(max-width:760px){
 dialog[data-gift="flowers"] .modal-content{padding:17px 10px}
 .garden-actions{gap:6px}.garden-actions .primary,.garden-actions .secondary{padding:9px 10px;font-size:10px;min-width:0}
 .garden-status{font-size:10px;margin-top:12px}
 .instruction-greeting{font-size:13px;line-height:1.7}
 .browser-note{margin:10px;padding:18px;max-height:57dvh}
 .browser-navigation{gap:8px;padding:7px}.browser-arrows{font-size:15px}.browser-address{font-size:9px;padding:7px}
 dialog[data-kind="letter browser"] .window-title{font-size:11px}dialog[data-kind="letter browser"] h2{font-size:20px}
 .browser-note .letter-copy{font-size:14px;line-height:1.8}
 .gift-card-flip{height:220px}.gift-card-face{padding:18px}.card-merchant{font-size:16px}
 .pixel-book-recommendation h3{font-size:16px}.book-stack{width:135px;height:135px}
}

.record-scene{max-width:270px;margin:0 auto 12px}.record-song{text-align:center;margin:0 0 24px}.record-song h3{margin:0 0 8px;font-size:20px}.record-song p{margin:0;font-size:14px;color:#786549}

/* A little early-2000s desktop, with the sender's note front and center. */
dialog[data-kind="letter browser"]{width:min(960px,calc(100vw - 24px));background:#afc3d6}
dialog[data-kind="letter browser"]>.window-bar{background:#3b68b1}
dialog[data-kind="letter browser"] .close{background:#c45847;color:white;border-color:#6e352f}
dialog[data-kind="letter browser"] .modal-content{border:0;background:transparent}
.retro-desktop{position:relative;padding:22px 26px 58px 106px;isolation:isolate;background:radial-gradient(ellipse at 80% 5%,#eee5a0 0,transparent 42%),linear-gradient(145deg,#89b5d2 10%,#c5a4bc 45%,#e6bfba 57%,#a8ba66 58%,#bdd580 100%);overflow:hidden;text-align:left}
.retro-desktop:before{content:"";position:absolute;z-index:-1;width:160%;height:190px;border-radius:50%;background:#9fbc62;left:-30%;bottom:-105px;border-top:2px solid #5f8752;transform:rotate(-8deg)}
.desktop-shortcuts{position:absolute;top:24px;left:9px;width:82px;display:grid;gap:26px;text-align:center;font:11px/1.4 Arial;color:#273b43;text-shadow:1px 1px #dce1c4}
.desktop-shortcuts i{display:block;margin:0 auto 8px;position:relative}.desktop-folder{width:30px;height:22px;background:#f4dd63;border:2px solid #655b31;box-shadow:inset 2px 2px #fff0a7;transform:skewY(-7deg)}.desktop-folder:before{content:"";position:absolute;top:-7px;left:-2px;width:13px;height:6px;background:#eed26d;border:2px solid #655b31;border-bottom:0}.desktop-pc{width:29px;height:23px;border:4px ridge #e2dfbe;background:#8dbac0;box-shadow:2px 2px #424e50}.desktop-pc:after{content:"";position:absolute;top:21px;left:-6px;width:32px;height:6px;border:2px ridge #d4d4b7;background:#cccdb0}
.messenger-window{background:#efeddb;border:2px solid #3c4e62;box-shadow:inset 1px 1px white,4px 4px #354d7040;border-radius:5px 5px 0 0;overflow:hidden}
.messenger-title{display:flex;align-items:center;gap:6px;background:#769bd2;color:#132d47;padding:7px 9px;font:bold 12px Arial;border-bottom:2px solid #3b4f70;box-shadow:inset 1px 1px #c2d9ee}.buddy-icon{color:#527e40;font-size:18px}.messenger-dots{margin-left:auto;font:16px monospace;white-space:nowrap}
.messenger-menu{padding:4px 8px;font:11px Arial;border-bottom:1px solid #aea995;color:#343e43}.messenger-tools{display:flex;gap:22px;padding:10px 14px;border-bottom:2px groove #fffdf0;align-items:center}.messenger-tools>span{font-size:25px;color:#6b874d;text-align:center}.messenger-tools small{display:block;font:10px Arial;color:#354147;margin-top:4px}.messenger-tools b{margin-left:auto;font:italic bold 17px Arial;color:#3e566f}
.messenger-recipient{font:12px Arial;padding:9px 14px;color:#3d4547}.messenger-recipient span{float:right;color:#527d47;font-size:10px}
.messenger-body{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:10px;padding:0 10px 12px}.messenger-body .browser-note{margin:0;padding:20px;background:#fffef5;border:2px inset #d5d4ba;max-height:49dvh;min-height:270px;box-shadow:none}.note-from{font:12px Arial;color:#647891;margin-bottom:14px}
dialog[data-kind="letter browser"] .messenger-body h2{font-size:19px;margin:0 0 18px;color:#384b61}.messenger-body .letter-copy{font:14px/1.75 Arial;color:#343f47}
.messenger-profile{font:11px Arial;text-align:center;color:#4c5c63}.profile-picture{height:96px;border:4px ridge #c9c9ae;border-radius:8px;background:linear-gradient(145deg,#c0d7b2,#85bcb0);font:58px/85px Georgia;color:#fff3d8}.messenger-profile>span{display:block;margin:8px 0}.messenger-profile small{font-size:10px}.profile-sticker{margin-top:25px;border:4px ridge #d5d3b9;border-radius:8px;color:#c39148;background:#fbebae;font-size:58px;line-height:80px}.messenger-footer{padding:7px 12px;border-top:2px groove #fffdf1;font:10px Arial;color:#64726c}
.desktop-taskbar{position:absolute;bottom:0;left:0;right:0;height:33px;display:flex;align-items:center;gap:12px;background:#82a4cf;border-top:2px solid #d5dfdb;font:11px Arial;color:#203548}.desktop-taskbar b{align-self:stretch;background:#95b866;border-right:2px solid #445f47;border-radius:0 12px 12px 0;padding:7px 16px;font-style:italic}.desktop-taskbar>span{border:2px inset #b8c9dc;background:#b4c6dd;padding:4px 20px}.desktop-taskbar small{margin-left:auto;margin-right:15px}
@media(max-width:600px){.retro-desktop{padding:70px 8px 48px}.desktop-shortcuts{top:14px;left:12px;display:flex;width:auto;gap:24px;font-size:9px}.desktop-shortcuts i{margin-bottom:4px}.desktop-shortcuts .desktop-pc{height:19px;width:24px}.desktop-pc:after{top:17px}.desktop-folder{width:25px;height:17px}.messenger-tools{gap:16px;padding:6px 10px}.messenger-tools b{font-size:12px}.messenger-profile{display:none}.messenger-body{grid-template-columns:1fr;padding:0 7px 8px}.messenger-body .browser-note{padding:15px;max-height:45dvh;min-height:160px}.messenger-title{font-size:10px}.messenger-dots{font-size:12px}.messenger-tools>span{font-size:20px}}

/* Messenger desktop: offset windows, strong outlines and tiny illustrated icons. */
dialog[data-kind="letter browser"]{width:min(1040px,calc(100vw - 24px));border:2px solid #354a6b;background:#89a7ce}
.retro-desktop{padding:108px 185px 61px 25px;background:radial-gradient(ellipse at 63% 20%,#f5dc99 0,transparent 32%),radial-gradient(ellipse at 7% 49%,#ddadbb 0,transparent 52%),linear-gradient(160deg,#88aaca 5%,#b6b9bd 35%,#d9bab7 58%,#a8c667 59%,#b4d079 100%)}
.retro-desktop:after{content:"";pointer-events:none;position:absolute;inset:0;z-index:-1;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23463c49' filter='url(%23n)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.desktop-shortcuts{top:20px;left:20px;width:auto;display:flex;gap:28px;font:11px/1.4 Tahoma,Arial;color:#263540}.desktop-shortcuts>div{width:65px}.desktop-shortcuts i{margin-bottom:8px}
.messenger-window{position:relative;z-index:2;border:2px solid #243b62;border-radius:5px;box-shadow:inset 0 0 0 3px #88a8d1,3px 3px #4a526d55;background:#e8e5c9;padding:0 4px 4px}
.messenger-title{margin:0 -4px;background:#80a6dc;border-bottom:2px solid #30415c;color:#152c47;font: bold 12px Tahoma,Arial;padding:5px 7px;min-height:26px}.messenger-dots{border:1px solid #345074;border-radius:3px;background:#94b3dd;padding:0 3px;line-height:17px}
.messenger-menu{font:11px Tahoma,Arial;border-bottom:1px solid #9d9f89}.messenger-tools{padding:8px 10px;gap:24px}.messenger-tools>span{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:43px}.messenger-tools i{display:block;position:relative;margin:0 auto 3px}.messenger-tools .desktop-folder{width:23px;height:16px;margin-bottom:6px}.messenger-tools small{font:10px Tahoma,Arial}.messenger-tools b{font:italic bold 18px Tahoma,Arial;color:#24334a}
.messenger-body{grid-template-columns:minmax(0,1fr) 86px;gap:8px;padding:0 5px 9px}.messenger-body .browser-note{border:2px solid #626653;border-radius:7px 7px 0 0;padding:17px;background:#fffdee;max-height:44dvh;min-height:245px}.messenger-body .letter-copy{font:14px/1.75 Tahoma,Arial;color:#333a35}.messenger-recipient{font:11px Tahoma,Arial}.messenger-body h2{font-family:Tahoma,Arial!important;font-size:18px!important}.note-from{font:11px Tahoma,Arial;color:#647b96}
.pixel-buddy{display:inline-block;position:relative;width:16px;height:22px;background:linear-gradient(#6a924a,#98bb6a);clip-path:polygon(31% 0,69% 0,81% 10%,81% 33%,69% 43%,88% 52%,100% 76%,100% 100%,0 100%,0 76%,12% 52%,31% 43%,19% 33%,19% 10%);filter:drop-shadow(1px 1px #334e31)}
.pixel-envelope{width:27px;height:19px;border:2px solid #4c623d;background:linear-gradient(145deg,transparent 45%,#638350 46%,#638350 51%,transparent 52%),linear-gradient(215deg,#d9e7a5 45%,#638350 46%,#638350 51%,#adc180 52%);box-shadow:1px 1px #b8c4a3}
.portrait-tile,.profile-sticker{border:4px ridge #dad8b8;border-radius:9px;background:#c2d6ae;height:87px;margin:0 0 8px;display:grid;place-items:center}.portrait-tile .pixel-buddy{width:43px;height:57px;background:linear-gradient(135deg,#8cadcf,#487399)}.profile-sticker{margin-top:24px;background:#f4e5a1}.profile-sticker svg{width:65px;height:65px;image-rendering:pixelated}
.desktop-contacts{position:absolute;z-index:1;top:22px;right:19px;width:238px;height:calc(100% - 90px);background:#e9e5c7;border:2px solid #263d63;box-shadow:inset 0 0 0 3px #88a8d1,3px 3px #5d65804d;border-radius:5px;font:11px Tahoma,Arial;color:#34413d}.contacts-title{display:flex;align-items:center;gap:5px;padding:4px 6px;background:#7ba4d9;border-bottom:2px solid #354967;color:#15324c;font-weight:bold}.contacts-title .pixel-buddy{width:12px;height:17px}.contacts-title span{margin-left:auto}.contacts-menu{padding:6px;border-bottom:1px solid #969c86;font-size:10px}.contacts-me{padding:16px 10px;display:grid;grid-template-columns:34px 1fr;gap:4px}.contacts-me i{grid-row:span 2;width:23px;height:30px}.contacts-me small{font-size:10px}.contacts-group{border-block:1px solid #a7ac90;padding:6px;font-weight:bold}.contact-person{display:flex;gap:7px;align-items:center;padding:12px}.contact-person i{height:18px;width:12px}.contact-preview{padding:0 12px;color:#697659;font-size:10px}.contacts-brand{position:absolute;bottom:12px;right:10px;font:italic bold 20px Tahoma;color:#485a6d}.desktop-taskbar{background:#8aa9d2;border-color:#d7dfe0}.desktop-taskbar b{background:#a6c879;color:#203528;border-color:#4b6246}
@media(max-width:700px){.retro-desktop{padding:94px 9px 48px}.desktop-contacts{display:none}.desktop-shortcuts{left:17px;top:19px;gap:17px}.messenger-body{grid-template-columns:minmax(0,1fr) 70px}.messenger-profile{display:block}.portrait-tile,.profile-sticker{height:68px}.portrait-tile .pixel-buddy{height:43px;width:33px}.profile-sticker svg{width:49px;height:49px}.messenger-body .browser-note{padding:13px;max-height:42dvh}.messenger-tools{gap:18px}.messenger-tools b{font-size:14px}.messenger-title{font-size:10px}.messenger-body .letter-copy{font-size:13px}.messenger-body h2{font-size:16px!important}}
@media(max-width:420px){.messenger-body{grid-template-columns:1fr}.messenger-profile{display:none}}

.garden-stage>canvas{image-rendering:auto}.garden-flower{border-radius:50%;transition:background .2s,box-shadow .2s,border-color .2s}.garden-flower:hover,.garden-flower:focus-visible{border-color:#fff5c58c;outline:0;background:#fff9d812;box-shadow:0 0 15px 5px #fff0b538}.garden-flower:active{background:#fff7cb38}

.garden-flower{width:8.7%;height:16%;min-width:0;min-height:0;transform:translate(-50%,-42%);cursor:grab;touch-action:manipulation;z-index:2}.garden-flower:hover,.garden-flower:focus-visible{border:1px solid #fff4c8;background:#fff7cf28;box-shadow:0 0 10px #fff1b355}.garden-flower:active{cursor:grabbing}.garden-targets{z-index:2}

/* Click targets correspond to the visible flower heads in the reference artwork. */
dialog[data-gift="flowers"]{width:min(960px,calc(100vw - 24px))}.garden-stage>canvas{image-rendering:pixelated}.garden-flower{width:3.65%;height:5.28%;border-radius:50%;transform:translate(-50%,-50%);border:1px solid transparent;cursor:pointer;background:transparent;box-shadow:none;min-width:0;min-height:0}.garden-flower:hover,.garden-flower:focus-visible{outline:1px solid #fff7c0;border-color:#a48035;background:#fff2b833;box-shadow:0 0 0 2px #fff0aa55}.garden-retry[hidden]{display:none}.garden-stage{overflow:hidden}
.garden-stage{width:min(100%,max(380px,calc((100dvh - 260px)*1.44444)));margin-inline:auto}

/* The computer gift follows the proportions of the supplied MSN desktop. */
dialog[data-kind="letter browser"]{width:min(880px,calc(100vw - 24px),calc(100dvh - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;border:2px solid #30382d;border-radius:1px;background:#afba97;box-shadow:7px 7px #302e3b55;overflow:auto}
dialog[data-kind="letter browser"] .modal-content{display:block!important;padding:0!important;border:0;box-shadow:none;max-height:none;background:transparent;overflow:visible}
.msn-desktop{position:relative;isolation:isolate;width:100%;aspect-ratio:1;container-type:inline-size;overflow:hidden;color:#263026;font:clamp(10px,1.6vw,12px)/1.2 Tahoma,Arial,sans-serif;text-align:left;background:radial-gradient(ellipse at 64% 34%,#f3ed9e 0,transparent 27%),radial-gradient(ellipse at 39% 29%,#c1b9c8 0,transparent 45%),linear-gradient(138deg,#86a6c8 3%,#b4bfae 25%,#e2c1ab 53%,#b6c47a 70%,#d8b3ad 100%)}
.msn-desktop:before{content:"";position:absolute;z-index:-2;left:-12%;bottom:9%;width:145%;height:31%;background:linear-gradient(12deg,#bdd665,#bbcf70 45%,#9fb76c 85%);border-top:2px solid #586a3b;border-radius:43% 65% 0 0;transform:rotate(-7deg)}
.msn-desktop:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:8;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23grain)' opacity='.65' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}
.msn-icon{display:inline-block;width:28px;height:28px;flex:none;vertical-align:middle}.msn-desktop-icons{position:absolute;inset:0}.msn-shortcut{position:absolute;width:10%;text-align:center;font:clamp(8px,1.35cqw,11px)/1.2 Tahoma,Arial;color:#24342c;text-shadow:1px 1px #f5ecc366}.msn-shortcut>.msn-icon{display:block;width:4.6cqw;height:4.6cqw;min-width:24px;min-height:24px;margin:0 auto 3px;filter:drop-shadow(1px 1px #f5edac)}
.shortcut-computer{left:0;top:2%}.shortcut-messenger{left:10%;top:7%}.shortcut-bin{left:0;top:12%}.shortcut-memories{left:21%;top:3%}.shortcut-songs{left:31%;top:4%}.shortcut-winamp{left:42%;top:6%}.shortcut-photos{left:20%;top:14%}.shortcut-new{left:51%;top:84%}.shortcut-sad{left:68%;top:85%}.shortcut-lime{left:79%;top:87%}.shortcut-internet{left:90%;top:85%}
.msn-contacts,.msn-note-window{position:absolute;border:2px solid #28362c;background:#dcdcbc;box-shadow:inset 0 0 0 4px #8fa7c8,2px 3px #3a453b55;border-radius:5px;padding:3px;overflow:hidden}.msn-contacts{left:58%;top:4.5%;width:38.5%;height:72.5%;display:flex;flex-direction:column;z-index:1}.msn-note-window{left:3.5%;top:23%;width:61.5%;height:57.5%;display:flex;flex-direction:column;z-index:3;border-radius:7px}
.msn-caption{display:flex;align-items:center;gap:4px;min-height:20px;height:3.65cqw;background:#789bce;margin:-3px -3px 0;padding:2px 4px;border-bottom:2px solid #303c32;color:#182d32;font:bold clamp(9px,1.45cqw,12px) Tahoma,Arial;flex:none;overflow:hidden}.msn-caption>.msn-icon{width:16px;height:16px}.msn-caption>b,.msn-conversation-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msn-controls,.msn-dummy-controls{display:flex;gap:3px;margin-left:auto;flex:none}
dialog[data-kind="letter browser"] .msn-controls button,.msn-dummy-controls i{all:unset;box-sizing:border-box;display:grid;place-items:center;width:clamp(16px,2.6cqw,21px);height:clamp(16px,2.6cqw,21px);border:1.5px solid #2d3a2f;border-radius:3px;background:#86a8d0;font:16px/1 Arial;color:#253a39;box-shadow:inset 1px 1px #b9c4cd}.msn-dummy-controls i{font-size:14px}
dialog[data-kind="letter browser"] .msn-controls .close,.msn-dummy-controls i:last-child{background:#d45442;color:#152b2b;box-shadow:inset 1px 1px #ea7b60}dialog[data-kind="letter browser"] .msn-controls button{cursor:pointer}dialog[data-kind="letter browser"] .msn-controls button:hover{filter:brightness(1.13)}dialog[data-kind="letter browser"] .msn-controls button:focus-visible{outline:2px solid #fff1af;outline-offset:1px}
.msn-menu{font:clamp(8px,1.45cqw,12px)/1.25 Tahoma,Arial;border-bottom:1px solid #606951;padding:2px 3px;white-space:nowrap;flex:none}.msn-toolbar{display:flex;align-items:center;gap:2%;height:8.4cqw;min-height:40px;flex:none;padding:3px 4px 5px;border-bottom:2px solid #8b9276;box-shadow:0 1px #f4ecc5}.msn-toolbar>span{width:12%;text-align:center;flex:none}.msn-toolbar .msn-icon{display:block;width:3.6cqw;height:3.6cqw;min-height:20px;min-width:20px;margin:auto}.msn-toolbar small{font:clamp(7px,1.3cqw,10px) Tahoma,Arial;white-space:nowrap;display:block;margin-top:2px}.msn-toolbar-logo{flex:1;text-align:center;align-self:stretch;font:italic bold clamp(10px,1.8cqw,15px) Tahoma,Arial}.msn-toolbar-logo>div{border:1px solid #71775f;border-radius:2px;transform:skew(-22deg);font:clamp(8px,1.5cqw,12px) Arial;margin-top:5px;display:flex;justify-content:space-evenly}.msn-toolbar-logo i:first-child{color:#b44b3a}.msn-toolbar-logo i{font-style:normal}
.msn-note-layout{display:grid;grid-template-columns:minmax(0,1fr) 24%;gap:2%;padding:7px 5px 4px;min-height:0;flex:1}.msn-note-column{display:flex;flex-direction:column;gap:7px;min-height:0}.msn-transcript{border:2px solid #5d664f;border-radius:7px 7px 1px 1px;display:flex;flex-direction:column;min-height:0;flex:1;background:#e7e6c9}.msn-to{padding:3px 5px;border-bottom:1px solid #6d745c;font:clamp(10px,1.55cqw,12px) Tahoma,Arial}.msn-letter{padding:7px;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#a7b394 #e1e1c6;overscroll-behavior:contain}.msn-letter:focus-visible{outline:2px solid #7f9cc3;outline-offset:-2px}.msn-says{margin:0 0 5px;font:clamp(10px,1.55cqw,12px) Tahoma,Arial;color:#465959}
dialog[data-kind="letter browser"] .msn-letter h2{font:bold clamp(12px,1.85cqw,15px)/1.3 Tahoma,Arial;color:#26372e;text-align:left;margin:0 0 8px;letter-spacing:0}
dialog[data-kind="letter browser"] .msn-letter .letter-copy{font:clamp(12px,1.8cqw,14px)/1.45 Tahoma,Arial;white-space:pre-wrap;color:#2c372e;margin:0;overflow-wrap:anywhere}
.msn-compose{height:30%;min-height:65px;max-height:112px;border:2px solid #626b52;flex:none;border-radius:5px 5px 1px 1px;background:#e4e3c6;display:flex;flex-direction:column}.msn-formatting{display:flex;align-items:center;gap:4%;height:22px;border-bottom:1px solid #626b52;padding:1px 4px;font:clamp(7px,1.35cqw,11px) Tahoma,Arial;white-space:nowrap}.msn-formatting .msn-icon{width:16px;height:16px}.msn-format-a{font:17px Georgia}.msn-compose-body{display:flex;flex:1;min-height:0}.msn-compose-body>div{flex:1}.msn-compose-body>aside{width:23%;border-left:1px solid #7b8468;display:grid;padding:3px;gap:3px}.msn-compose-body>aside span{border:1px solid #626e57;box-shadow:inset 1px 1px #f7efce;display:grid;place-items:center;font:bold clamp(7px,1.3cqw,10px) Tahoma,Arial}.msn-compose-status{font:clamp(6px,1.1cqw,9px) Tahoma,Arial;border-top:1px solid #7c846a;padding:2px 4px;overflow:hidden;white-space:nowrap}
.msn-portraits{display:flex;flex-direction:column;justify-content:space-between;gap:10px}.msn-display-picture{aspect-ratio:1;border:2px solid #58654c;box-shadow:inset 0 0 0 4px #dadbbd,0 0 0 2px #f1ebca;border-radius:9px;background:#c9d0ad;padding:8%;position:relative}.msn-display-picture:after{content:"";position:absolute;top:12%;right:-8px;width:5px;height:20%;border:1px solid #5c6952;border-left:0;border-radius:0 4px 4px 0}.msn-portrait{display:block;width:100%;height:100%}.msn-duck>.msn-icon{width:100%;height:100%}.msn-duck{background:#e4dea9}
.msn-account{border:1.5px solid #667152;border-radius:5px;margin:4px 2px;padding:3px}.msn-brand{font:italic bold clamp(12px,2cqw,16px) Tahoma,Arial;display:flex;align-items:center;gap:0}.msn-brand .msn-icon{width:17px;height:17px}.msn-brand>span{font:clamp(9px,1.4cqw,12px) Tahoma,Arial;margin-left:2px}.msn-account-row{display:grid;grid-template-columns:20% 1fr;gap:5px;align-items:center;margin-top:4px;font-size:clamp(8px,1.4cqw,11px);min-width:0}.msn-small-portrait{border:1px solid #57634d;border-radius:5px;background:#cfd3b3;padding:3px;aspect-ratio:1}.msn-account-row p{margin:2px 0}.msn-account-row b{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.msn-mail-line{display:flex;align-items:center;font-size:clamp(7px,1.25cqw,10px)}.msn-mail-line .msn-icon{height:17px;width:17px;margin-right:3px}.msn-contact-links{font:clamp(8px,1.35cqw,11px)/1.5 Tahoma,Arial;border-block:1px solid #6e775a;margin:1px 2px;padding:3px}.msn-contact-list{margin:0 3px;padding:6px 3px;border:1px solid #6e785b;border-top:0;flex:1;font-size:clamp(9px,1.45cqw,12px)}.msn-contact-list>div{display:flex;gap:4px;align-items:center;padding:5px 0}.msn-contact-list .msn-icon{width:15px;height:18px}.msn-contact-away{margin:0 0 16px 19px;color:#7c8669;font-size:.85em}.msn-offline-heading{display:block;color:#657051}.msn-contact-logo{display:flex;align-items:center;height:9.5%;min-height:35px;gap:5px;padding:4px 6px}.msn-contact-logo>.msn-icon{width:38px;height:38px}.msn-contact-logo>span{font:italic bold clamp(14px,2.6cqw,20px) Tahoma,Arial;position:relative}.msn-contact-logo>span>.msn-icon{width:23px;height:23px}.msn-contact-logo small{display:block;font:clamp(8px,1.3cqw,11px) Tahoma,Arial}.msn-contact-logo>i{margin-left:auto;align-self:flex-end;font:bold 13px Tahoma,Arial}
.msn-taskbar{position:absolute;bottom:0;left:0;right:0;height:4.5%;min-height:26px;background:#91abd0;border-top:2px solid #344733;display:flex;align-items:center;gap:5px;z-index:4;font:clamp(8px,1.2cqw,10px) Tahoma,Arial}.msn-start{height:100%;display:flex;align-items:center;gap:4px;font:bold italic clamp(12px,2.5cqw,19px) Tahoma,Arial;background:#b5d66d;border-right:2px solid #3b5333;border-radius:0 16px 16px 0;padding:0 9px 0 4px}.msn-start .msn-icon{width:21px;height:21px}.msn-quicklaunch{display:flex;gap:3px}.msn-quicklaunch .msn-icon{width:21px;height:21px}.msn-background-task,.msn-note-task{border:1.5px solid #3c523e;border-radius:5px;background:#a9bedb;box-shadow:inset 1px 1px #d1d7db;height:83%;padding:1px 5px;display:flex;align-items:center;gap:4px;white-space:nowrap;overflow:hidden;flex:1;min-width:0;font:inherit;color:#233729}.msn-note-task{background:#cad7e0;cursor:pointer}.msn-note-task:focus-visible{outline:2px solid #f4e9a5}.msn-taskbar .msn-background-task>.msn-icon,.msn-note-task>.msn-icon{width:13px;height:13px}.msn-tray{display:flex;align-items:center;gap:6px;padding:0 6px;border-left:1px solid #4b664c;height:100%;font-size:clamp(7px,1.2cqw,10px)}.msn-tray>.msn-icon{width:17px;height:17px}.note-minimized .msn-note-window{display:none}
dialog[data-kind="letter browser"].is-maximized{width:min(960px,calc(100vw - 24px),calc(100dvh - 24px));height:auto;min-height:0}dialog[data-kind="letter browser"].is-maximized .msn-note-window{inset:2% 2% 6%;width:auto;height:auto}dialog[data-kind="letter browser"].is-maximized .msn-compose{height:20%}dialog[data-kind="letter browser"].is-maximized .msn-letter .letter-copy{font-size:clamp(13px,2cqw,17px)}
@media(max-width:540px){dialog[data-kind="letter browser"]{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.msn-desktop{aspect-ratio:.7}.msn-note-window{left:3%;top:24%;width:94%;height:65%}.msn-contacts{top:3%;left:52%;width:45%;height:55%}.msn-note-layout{grid-template-columns:minmax(0,1fr) 20%}.msn-letter{padding:6px}.msn-letter .letter-copy{font-size:12px!important}.msn-compose{height:23%;min-height:65px}.msn-toolbar{height:45px}.msn-toolbar small{font-size:8px}.msn-shortcut{width:13%}.shortcut-messenger{left:14%}.shortcut-memories{left:31%}.shortcut-songs{left:31%;top:11%}.shortcut-winamp,.shortcut-photos,.shortcut-sad,.shortcut-new,.shortcut-lime,.shortcut-internet{display:none}.msn-background-task{display:none}.msn-tray{gap:2px}.msn-tray>span{display:none}.msn-note-task{font-size:10px}.msn-caption{height:23px}.msn-menu{font-size:10px}.msn-contacts .msn-dummy-controls{display:none}dialog[data-kind="letter browser"].is-maximized{width:calc(100vw - 16px)}.msn-desktop:after{opacity:.07}}
dialog[data-kind="letter browser"].is-maximized[open]{height:calc(100dvh - 28px)}
dialog[data-kind="letter browser"].is-maximized .modal-content{height:100%;min-height:0;overflow:hidden}
dialog[data-kind="letter browser"].is-maximized .msn-desktop{height:100%;aspect-ratio:auto}
dialog[data-kind="letter browser"].is-maximized .msn-display-picture{max-height:46%;min-height:0}
.msn-note-layout{grid-template-rows:minmax(0,1fr);overflow:hidden}.msn-portraits{min-height:0}.msn-display-picture{max-height:46%;min-height:0}

/* Quiet recipient loading state. */
.room-loading{position:fixed;inset:0;z-index:100;background:#f7f6f1;display:grid;place-items:center;padding:24px}.room-loading p{margin:0;text-align:center;font:20px/1.5 var(--mono);color:#795f45}

.saved-rooms{display:grid;gap:12px;margin-top:24px;text-align:left}.saved-room{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px;border:2px inset #dec497;background:#fff5d4}.saved-room h3{font:700 18px var(--mono);margin:0 0 6px}.saved-room p{margin:0 0 6px;font-size:14px;overflow-wrap:anywhere}.saved-room small,.rooms-help{font-size:13px}.saved-room-actions{display:grid;gap:8px;flex:none}.saved-room-actions .secondary{padding:10px 14px}@media(max-width:500px){.saved-room{align-items:stretch;flex-direction:column}.saved-room-actions{display:flex;flex-wrap:wrap}}
