.os{-webkit-user-select:none;user-select:none;font-family:var(--font-sarabun), system-ui, sans-serif;color:#1f2328;position:fixed;inset:0;overflow:hidden}.os input,.os textarea,.os .win-body p,.os .win-body li,.os .win-body td,.os .win-body h1{-webkit-user-select:text;user-select:text}.app-icon{--size:56px;width:var(--size);height:var(--size);color:#fff;border-radius:28%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;box-shadow:inset 0 1px 1px #ffffff8c,inset 0 -2px 4px #0000001f,0 6px 14px -4px #00000059}.app-icon:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff52,#0000 48%);position:absolute;inset:0}.app-icon svg{filter:drop-shadow(0 1px 1px #0000002e);width:56%;height:56%}.app-icon.tiny{--size:18px;box-shadow:none;border-radius:6px}.wallpaper{transition:filter .8s;position:absolute;inset:0;overflow:hidden}.wp-sky{transition:opacity .8s;position:absolute;inset:0}.wp-scene{width:100%;height:78%;position:absolute;bottom:0;left:0;right:0}.wp-scene *{transition:fill .9s,opacity .9s}.wp-orb{border-radius:50%;width:150px;height:150px;transition:all .9s;animation:9s ease-in-out infinite floaty;position:absolute;top:14%;left:16%}.wp-cloud{filter:blur(1px);background:#ffffffbf;border-radius:40px;height:38px;transition:opacity .9s;position:absolute}.wp-cloud:before,.wp-cloud:after{content:"";background:inherit;border-radius:50%;position:absolute}.wp-cloud:before{width:60px;height:60px;top:-30px;left:22px}.wp-cloud:after{width:44px;height:44px;top:-20px;left:70px}.wp-cloud.c1{width:150px;animation:70s linear infinite drift;top:20%}.wp-cloud.c2{width:120px;animation:95s linear -40s infinite drift;top:34%;transform:scale(.8)}.wp-cloud.c3{opacity:.6;width:170px;animation:120s linear -80s infinite drift;top:10%}.wp-stars{opacity:0;background-image:radial-gradient(1.5px 1.5px at 10% 20%,#fff,#0000),radial-gradient(1px 1px at 25% 45%,#fff,#0000),radial-gradient(1.5px 1.5px at 40% 12%,#fff,#0000),radial-gradient(1px 1px at 55% 35%,#fff,#0000),radial-gradient(2px 2px at 68% 18%,#fff,#0000),radial-gradient(1px 1px at 80% 40%,#fff,#0000),radial-gradient(1.5px 1.5px at 90% 10%,#fff,#0000),radial-gradient(1px 1px at 33% 28%,#fff,#0000),radial-gradient(1px 1px at 72% 52%,#fff,#0000),radial-gradient(1.5px 1.5px at 5%,#fff,#0000);transition:opacity 1s;animation:4s ease-in-out infinite alternate twinkle;position:absolute;inset:0 0 40%}.roof{fill:#c2410c}.bldg{fill:#fff4e6}.bldg-shade{fill:#0000}.sign{fill:#fff;stroke:#f97316;stroke-width:3px}.sign-text{font:700 17px var(--font-kanit), sans-serif;fill:#c2410c}.sign-heart{fill:#f43f5e}.wnd{fill:#bfe3f5}.wnd-frame{stroke:#fff;stroke-width:2.5px;fill:none}.sill{fill:#e7d3bd}.door{fill:#9a5b33}.trunk{fill:#8b5a3c}.path{fill:#f3dcc0}.wp-day .wp-sky{background:linear-gradient(#8fd0ff 0%,#c9ecff 45%,#ffe9d4 100%)}.wp-day .wp-orb{background:radial-gradient(circle,#fff6c9 0%,#ffd66b 55%,#ffc24080 70%,#0000 72%);box-shadow:0 0 120px 40px #ffe39a88}.wp-day .hill-far{fill:#a7dca0}.wp-day .hill-near{fill:#7cc47a}.wp-day .leaf,.wp-day .bush circle{fill:#4fa35a}.wp-sunset .wp-sky{background:linear-gradient(#5b3b8c 0%,#c0569a 35%,#ff8a5c 68%,#ffc48a 100%)}.wp-sunset .wp-orb{background:radial-gradient(circle,#fff1c2 0%,#ffb35c 55%,#0000 72%);width:190px;height:190px;top:34%;left:22%;box-shadow:0 0 160px 60px #ff9a5c77}.wp-sunset .wp-cloud{background:#ffd6c88c}.wp-sunset .hill-far{fill:#b0587e}.wp-sunset .hill-near{fill:#7a3b6b}.wp-sunset .leaf,.wp-sunset .bush circle{fill:#5e2d5c}.wp-sunset .trunk{fill:#4a2140}.wp-sunset .bldg{fill:#ffd8bd}.wp-sunset .bldg-shade{fill:#7a285a1f}.wp-sunset .wnd{fill:#f7b690}.wp-sunset .wnd.lit{fill:#ffe39a}.wp-sunset .path{fill:#c7778a}.wp-night .wp-sky{background:linear-gradient(#070b22 0%,#16204d 50%,#3b2c6e 100%)}.wp-night .wp-stars{opacity:1}.wp-night .wp-orb{background:radial-gradient(circle at 35% 35%,#fffbe8,#e6e0c8 60%);width:90px;height:90px;top:10%;left:70%;box-shadow:0 0 60px 10px #fff5c455}.wp-night .wp-cloud{opacity:.08}.wp-night .hill-far{fill:#1d2350}.wp-night .hill-near{fill:#121634}.wp-night .leaf,.wp-night .bush circle{fill:#0f1a33}.wp-night .trunk{fill:#0b1024}.wp-night .bldg{fill:#3d3a66}.wp-night .roof{fill:#5b2b4a}.wp-night .sill{fill:#2c2a4e}.wp-night .wnd{fill:#232244}.wp-night .wnd.lit{fill:#ffd476;filter:drop-shadow(0 0 8px #ffc44d)}.wp-night .wnd-frame{stroke:#4a4775}.wp-night .door{fill:#ffcf73}.wp-night .sign{fill:#1c1b3a;stroke:#ff8a3d;filter:drop-shadow(0 0 10px #ff8a3d)}.wp-night .sign-text{fill:#ffb070}.wp-night .path{fill:#2a2a55}.menubar{z-index:9000;-webkit-backdrop-filter:blur(24px)saturate(1.6);color:#111;background:#ffffff47;justify-content:space-between;align-items:center;height:30px;font-size:14px;display:flex;position:absolute;top:0;left:0;right:0;box-shadow:0 1px #0000000f}:is(.os:has(.wp-night) .menubar,.os:has(.wp-sunset) .menubar){color:#fff;background:#14102847}.menu-btn{white-space:nowrap;border-radius:6px;align-items:center;height:100%;padding:0 10px;display:flex}.menu-btn:hover,.menu-btn.on{background:#ffffff4d}.menu-logo svg{fill:currentColor;width:17px;height:17px;margin-left:6px}.battery{opacity:.9;border:1.5px solid;border-radius:3px;width:24px;height:11px;position:relative}.battery:after{content:"";background:currentColor;border-radius:0 1px 1px 0;width:2px;height:4px;position:absolute;top:2.5px;right:-4px}.battery i{background:currentColor;border-radius:1px;position:absolute;inset:1.5px 6px 1.5px 1.5px}.dropdown{-webkit-backdrop-filter:blur(30px)saturate(1.8);color:#1f2328;z-index:9500;transform-origin:0 0;background:#f6f6f8d1;border:1px solid #ffffff80;border-radius:10px;min-width:220px;padding:5px;animation:.14s ease-out menu-in;position:absolute;top:calc(100% + 2px);left:0;box-shadow:0 16px 40px -8px #00000059,0 0 0 .5px #00000026}.dropdown.ctx{position:fixed}.dropdown-item{text-align:left;border-radius:6px;justify-content:space-between;gap:16px;width:100%;padding:5px 10px;font-size:14px;display:flex}.dropdown-item:hover{color:#fff;background:#f97316}.dropdown-sep{background:#0000001a;height:1px;margin:4px 8px}.swatch{border:2px solid #0000;border-radius:7px;width:40px;height:28px;transition:transform .15s;box-shadow:0 0 0 1px #0000001a}.swatch:hover{transform:scale(1.08)}.swatch.on{border-color:#f97316}.desk{position:absolute;inset:30px 0 0}.icons{pointer-events:none;grid-template-rows:repeat(auto-fill,104px);grid-auto-columns:96px;grid-auto-flow:column;gap:4px 6px;display:grid;position:absolute;top:14px;bottom:100px;left:14px}.desk-icon{pointer-events:auto;opacity:0;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:8px 4px 6px;display:flex;transform:translateY(12px)scale(.9)}.desk-icon.in{animation:.55s cubic-bezier(.2,.9,.3,1.2) forwards icon-in;animation-delay:calc(var(--i) * 55ms + .12s)}.desk-icon .app-icon{transition:transform .2s cubic-bezier(.3,1.4,.5,1)}.desk-icon:hover .app-icon{transform:translateY(-3px)scale(1.06)}.desk-icon:active .app-icon{transform:scale(.94)}.desk-icon.sel{background:#ffffff38;box-shadow:inset 0 0 0 1px #ffffff59}.desk-label{text-align:center;color:#fff;text-shadow:0 1px 2px #0006;-webkit-backdrop-filter:blur(8px);background:#14141e47;border-radius:7px;padding:2px 8px;font-size:12.5px;font-weight:600;line-height:1.25}.desk-icon.sel .desk-label{text-shadow:none;background:#f97316}.widgets{flex-direction:column;gap:14px;width:250px;display:none;position:absolute;top:18px;right:22px}@media (min-width:1100px){.widgets{display:flex}}.widget{opacity:0;border-radius:22px;padding:16px 18px;transform:translate(30px)}.widgets.in .widget{animation:.7s cubic-bezier(.2,.9,.3,1.1) forwards widget-in}.widgets.in .widget:nth-child(2){animation-delay:.12s}.widgets.in .widget:nth-child(3){animation-delay:.24s}.clock-widget{color:#fff;-webkit-backdrop-filter:blur(20px)saturate(1.5);text-shadow:0 1px 8px #0003;background:#ffffff29;border:1px solid #ffffff4d}.sticky{text-align:left;color:#5b4300;background:linear-gradient(170deg,#fff6a8,#ffe36b);border-radius:4px 4px 22px;transition:rotate .25s,translate .25s;position:relative;rotate:-2deg;box-shadow:0 14px 30px -12px #00000073}.sticky:hover{translate:0 -3px;rotate:none}.sticky .pin{background:radial-gradient(circle at 35% 35%,#ff8a8a,#d61f3c);border-radius:50%;width:14px;height:14px;position:absolute;top:-7px;left:50%;box-shadow:0 2px 3px #00000059}.news-widget{color:#fff;-webkit-backdrop-filter:blur(16px);background:linear-gradient(145deg,#3b82f6bf,#2563ebd9);border:1px solid #ffffff40}.win{-webkit-backdrop-filter:blur(30px)saturate(1.6);will-change:transform;background:#fcfcfceb;border-radius:14px;flex-direction:column;transition:left .36s cubic-bezier(.2,.9,.3,1),top .36s cubic-bezier(.2,.9,.3,1),width .36s cubic-bezier(.2,.9,.3,1),height .36s cubic-bezier(.2,.9,.3,1),box-shadow .25s;display:flex;position:absolute;overflow:hidden;box-shadow:0 0 0 .5px #00000038,0 28px 70px -18px #00000080,0 10px 24px -12px #0000004d}.win:not(.active){box-shadow:0 0 0 .5px #0000002e,0 16px 40px -18px #0006}.win.dragging{transition:box-shadow .25s}.win.max{border-radius:0 0 14px 14px;width:100%;height:calc(100% - 88px);top:0;left:0}.win.hidden-win{visibility:hidden;pointer-events:none}.win-bar{cursor:default;touch-action:none;background:linear-gradient(#ffffffe6,#f3f3f5e6);border-bottom:1px solid #00000014;flex-shrink:0;justify-content:space-between;align-items:center;height:42px;padding:0 14px;display:flex}.win-title{color:#3a3d42;align-items:center;gap:8px;min-width:0;font-size:13.5px;font-weight:600;display:flex}.win-title span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.win:not(.active) .win-title{opacity:.55}.lights{gap:8px;width:56px;display:flex}.light{border-radius:50%;place-items:center;width:13px;height:13px;display:grid;box-shadow:inset 0 0 0 .5px #0003}.light svg{stroke:#0000008c;stroke-width:1.6px;fill:none;opacity:0;width:8px;height:8px;transition:opacity .12s}.lights:hover .light svg{opacity:1}.light.close{background:#ff5f57}.light.min{background:#febc2e}.light.max-btn{background:#28c840}.win:not(.active) .light:not(:hover){background:#d5d5d8}.win-body{background:#fff;flex:1;min-height:0;position:relative;container-type:inline-size}.win-resize{cursor:nwse-resize;touch-action:none;width:18px;height:18px;position:absolute;bottom:0;right:0}.app-scroll{scrollbar-width:thin;scrollbar-color:#0003 transparent}.dock-wrap{z-index:8000;pointer-events:none;justify-content:center;display:flex;position:absolute;bottom:10px;left:0;right:0;transform:translateY(120px)}.dock-wrap.in{animation:.7s cubic-bezier(.2,.9,.3,1.15) .1s forwards dock-in}.dock{pointer-events:auto;-webkit-backdrop-filter:blur(26px)saturate(1.7);background:#ffffff38;border:1px solid #ffffff59;border-radius:24px;align-items:flex-end;gap:6px;padding:8px 10px;display:flex;box-shadow:0 18px 40px -14px #00000073,inset 0 1px #fff6}.dock-item{--mag:1;width:calc(54px * var(--mag));flex-direction:column;align-items:center;transition:width .14s ease-out;display:flex;position:relative}.dock-item .app-icon{--size:calc(54px * var(--mag));transition:width .14s ease-out,height .14s ease-out}.dock-item:active .app-icon{filter:brightness(.8)}.dock-item.bounce .app-icon{animation:.75s cubic-bezier(.3,0,.3,1) dock-bounce}.dock-dot{background:0 0;border-radius:50%;width:4px;height:4px;margin-top:3px;transition:background .3s}.dock-dot.on{background:#fffffff2;box-shadow:0 0 4px #0006}.dock-sep{background:#fff6;align-self:stretch;width:1px;margin:6px 4px 10px}.dock-tip{white-space:nowrap;color:#222;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;pointer-events:none;background:#f5f5f7eb;border-radius:8px;padding:4px 10px;font-size:13px;transition:opacity .15s,translate .15s;position:absolute;bottom:calc(100% + 12px);left:50%;translate:-50% 4px;box-shadow:0 6px 16px -6px #00000059}.dock-item:hover .dock-tip{opacity:1;translate:-50%}.boot{z-index:10000;background:radial-gradient(circle at 50% 40%,#2a1a12,#0b0706 70%);flex-direction:column;justify-content:center;align-items:center;transition:opacity .6s,transform .6s;display:flex;position:absolute;inset:0}.boot.fade{opacity:0;pointer-events:none;transform:scale(1.08)}.boot-logo{background:linear-gradient(145deg,#ffb36b,#f25f1c);border-radius:28px;place-items:center;width:96px;height:96px;animation:.9s cubic-bezier(.2,.9,.3,1.3) both boot-pop,1.4s ease-in-out .9s infinite heartbeat;display:grid;box-shadow:0 0 80px -10px #f97316aa}.boot-logo svg{fill:#fff;width:52px;height:52px}.boot-bar{background:#ffffff26;border-radius:9px;width:200px;height:5px;margin-top:36px;overflow:hidden}.boot-bar i{border-radius:inherit;background:#fff;height:100%;animation:2s cubic-bezier(.6,.1,.3,1) forwards boot-load;display:block}.stagger{opacity:0;animation:.55s cubic-bezier(.2,.9,.3,1) forwards rise;animation-delay:calc(var(--i,0) * 60ms + .18s)}.fade-in{animation:.35s ease-out both rise}.welcome-hero{background:linear-gradient(125deg,#ff9a52 0%,#f25f1c 45%,#d9366b 100%);position:relative;overflow:hidden}.welcome-glow{background:radial-gradient(circle,#ffe6b4b3,#0000 65%);border-radius:50%;width:420px;height:420px;animation:7s ease-in-out infinite floaty;position:absolute;top:-160px;right:-120px}.welcome-hero:after{content:"";opacity:.6;background:repeating-linear-gradient(90deg,#0000 0 26px,#ffffff40 26px 48px),repeating-linear-gradient(0deg,#0000 0 22px,#ffffff1f 22px 44px);border-radius:40px;width:200px;height:200px;position:absolute;bottom:-30px;right:40px;transform:rotate(-10deg)}.chip-glass{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff3;border:1px solid #ffffff59;border-radius:99px;padding:5px 14px;font-size:13px;font-weight:600;display:inline-flex}.os-h2{font-family:var(--font-kanit), sans-serif;color:#1f2328;margin-bottom:12px;font-size:17px;font-weight:600}.tile{background:#faf8f5;border:1px solid #0000000d;border-radius:14px;align-items:flex-start;gap:12px;padding:14px;transition:transform .2s,box-shadow .2s;display:flex}.tile:hover{transform:translateY(-2px);box-shadow:0 10px 20px -12px #00000040}.list-row{background:#faf8f5;border-radius:12px;align-items:center;gap:12px;padding:11px 14px;transition:background .15s;display:flex}.list-row:hover{background:#fff1e6}.cta-card{background:linear-gradient(120deg,#fff4e8,#ffe6f0);border:1px solid #f9731626;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;display:flex}.btn-os,.btn-os-light,.btn-os-ghost,.btn-os-soft{border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-weight:600;transition:transform .15s,filter .15s,box-shadow .15s,background .15s;display:inline-flex}.btn-os:active,.btn-os-light:active,.btn-os-ghost:active,.btn-os-soft:active{transform:scale(.97)}.btn-os{color:#fff;background:linear-gradient(135deg,#fb8a3c,#ea580c);box-shadow:0 8px 18px -8px #ea580cb3,inset 0 1px #ffffff4d}.btn-os:hover{filter:brightness(1.06)}.btn-os-light{color:#c2410c;background:#fff;box-shadow:0 10px 22px -10px #0006}.btn-os-light:hover{transform:translateY(-1px)}.btn-os-ghost{color:#fff;background:#ffffff29;border:1px solid #ffffff73}.btn-os-ghost:hover{background:#ffffff42}.btn-os-soft{color:#333;background:#f3f1ee}.btn-os-soft:hover{background:#e9e5e0}.room-card{background:#fff;border:1px solid #0000000f;border-radius:18px;flex-direction:column;transition:transform .25s cubic-bezier(.2,.9,.3,1.2),box-shadow .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 20px -14px #0000004d}.room-card:hover{transform:translateY(-4px);box-shadow:0 20px 36px -18px #00000059}.room-badge{z-index:1;color:#fff;background:linear-gradient(135deg,#f43f5e,#f97316);border-radius:99px;padding:3px 10px;font-size:12px;font-weight:700;position:absolute;top:12px;right:12px;box-shadow:0 4px 10px -3px #f43f5e99}.room-art{height:120px;padding:10px 16px 0}.tone-peach{background:linear-gradient(160deg,#ffe4cc,#ffc8a8)}.tone-mint{background:linear-gradient(160deg,#d8f5ec,#a9e6d3)}.tone-sky{background:linear-gradient(160deg,#dcecff,#b4d4fb)}.ra-window{fill:#fff;opacity:.85}.ra-line{stroke:#00000026;stroke-width:2px;fill:none}.ra-bed{fill:#fff}.ra-pillow{fill:#ffffffb3;stroke:#00000014}.ra-wood{fill:#b98a62}.ra-plant{fill:#4fa35a}.rate-pill{color:#555;background:#fff;border:1px solid #0000000f;border-radius:14px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.rate-pill b{color:#111}.side-list{background:#f3f1eee6;border-right:1px solid #0000000f;flex-direction:column;flex-shrink:0;gap:2px;width:200px;padding:14px 10px;overflow-y:auto}.side-head{color:#8a8f98;letter-spacing:.04em;padding:0 8px 6px;font-size:11px;font-weight:700}.side-item{text-align:left;color:#333;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:14px;display:flex}.side-item:hover{background:#0000000d}.side-item.on{color:#fff;background:#e0457b}.seg{color:#444;white-space:nowrap;background:#f1efec;border-radius:99px;flex-shrink:0;padding:5px 12px;font-size:13px}.seg.on{color:#fff;background:#1f2328}.photo-thumb{aspect-ratio:1;background:#f1efec;border-radius:10px;position:relative;overflow:hidden}.photo-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s cubic-bezier(.2,.9,.3,1)}.photo-thumb:hover img{transform:scale(1.07)}.photo-cap{color:#fff;text-align:left;opacity:0;background:linear-gradient(#0000,#0009);padding:18px 10px 8px;font-size:12px;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0}.photo-thumb:hover .photo-cap{opacity:1}.lightbox{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0a0ce6;flex-direction:column;justify-content:center;align-items:center;padding:24px 60px;animation:.2s ease-out fade;display:flex;position:absolute;inset:0}.lightbox-img{border-radius:10px;max-width:100%;max-height:calc(100% - 40px);animation:.35s cubic-bezier(.2,.9,.3,1.1) zoom-in;box-shadow:0 20px 60px #0009}.lightbox-cap{color:#fff;margin-top:12px;font-size:14px}.lb-nav{color:#fff;background:#ffffff26;border-radius:50%;width:40px;height:40px;font-size:26px;line-height:1;position:absolute;top:50%;translate:0 -50%}.lb-nav:hover{background:#ffffff4d}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:60px 20px;display:flex}.mail-list{background:#fafafa;border-right:1px solid #0000000f;width:100%;overflow-y:auto}@container (min-width:672px){.mail-list{flex-shrink:0;width:320px}}.mail-row{text-align:left;border-radius:10px;width:calc(100% - 16px);margin:2px 8px;padding:11px 12px;display:block}.mail-row:hover{background:#0000000a}.mail-row.on{background:#dbeafe}.contact-card{background:#fff;border:1px solid #0000000f;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,transform .15s;display:flex}a.contact-card:hover{transform:translate(3px)}.contact-emoji{background:#f0fdf4;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.field{display:block}.field span{color:#666;margin-bottom:5px;font-size:13px;display:block}.field input,.field textarea{background:#fbfbfa;border:1px solid #e3e1dd;border-radius:10px;width:100%;padding:10px 13px;font-size:15px;transition:border-color .15s,box-shadow .15s,background .15s}.field input:focus,.field textarea:focus{background:#fff;border-color:#fb923c;outline:none;box-shadow:0 0 0 4px #f9731626}.success-check{width:84px;height:84px;margin:0 auto}.success-check svg{fill:none;stroke:#16a34a;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.success-check circle{stroke-dasharray:160;stroke-dashoffset:160px;animation:.6s ease-out forwards draw}.success-check path{stroke-dasharray:40;stroke-dashoffset:40px;animation:.35s ease-out .5s forwards draw}.map-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe6;border-radius:16px;max-width:320px;padding:16px 18px;animation:.5s cubic-bezier(.2,.9,.3,1) .3s both rise;position:absolute;bottom:16px;left:16px;box-shadow:0 16px 36px -14px #0006}.calc-bg{color:#fff;background:linear-gradient(#1d1631,#2a1f47)}.calc-display{text-align:right;background:linear-gradient(135deg,#7c3aed,#c026d3);border-radius:20px;margin-bottom:18px;padding:20px 22px;box-shadow:0 16px 34px -14px #c026d3b3,inset 0 1px #ffffff40}.calc-label{color:#ffffffb3;margin-bottom:8px;font-size:13px;display:block}.calc-room{background:#ffffff12;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:2px;padding:10px;transition:background .15s,transform .15s;display:flex}.calc-room:hover{background:#ffffff1f}.calc-room.on{background:#a78bfa4d;border-color:#a78bfa;transform:translateY(-2px)}.calc-range{accent-color:#c084fc;width:100%}.calc-breakdown{background:#ffffff0f;border-radius:14px;margin-top:18px;padding:12px 16px;font-size:14px}.calc-breakdown div{color:#fffc;justify-content:space-between;padding:5px 0;display:flex}.notes-list{background:#f6f3ea;border-right:1px solid #0000000f;flex-shrink:0;width:230px;padding:10px;overflow-y:auto}.note-row{text-align:left;color:#3b3222;border-radius:10px;width:100%;padding:10px 12px;font-size:14px}.note-row.on{background:#fde68a}.notes-paper{color:#3b3222;background:repeating-linear-gradient(#0000 0 31px,#b4963c1f 31px 32px),#fffdf3;line-height:32px}.note-title{font-family:var(--font-kanit), sans-serif;margin-bottom:12px;font-size:24px;font-weight:700}.note-check{color:#ca8a04;font-weight:700}@media (max-width:767px){.icons{grid-template-rows:none;grid-template-columns:repeat(4,1fr);grid-auto-columns:auto;grid-auto-flow:row;row-gap:10px;padding:0 12px;inset:20px 0 auto}.desk-icon .app-icon{--size:58px}.wp-scene{width:138.462dvh;height:50%;left:50%;right:auto;transform:translate(-70.8%)}.win,.win.max{border-radius:0 0 22px 22px;width:100%!important;height:calc(100% - 84px)!important;top:0!important;left:0!important}.win-bar{height:46px}.light{width:16px;height:16px}.light svg{opacity:1;width:9px;height:9px}.dock{border-radius:22px;gap:4px;padding:7px 8px}.dock-item{width:44px}.dock-item .app-icon{--size:44px}.dock-tip,.dock-sep{display:none}.dock-item:nth-child(n){flex-shrink:0}.welcome-hero:after{display:none}}@media (max-width:420px){.dock .contents:nth-child(6),.dock .contents:nth-child(7){display:none}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}}@keyframes zoom-in{0%{opacity:0;transform:scale(.92)}}@keyframes menu-in{0%{opacity:0;transform:scale(.96)translateY(-4px)}}@keyframes icon-in{to{opacity:1;transform:none}}@keyframes widget-in{to{opacity:1;transform:none}}@keyframes dock-in{to{transform:none}}@keyframes dock-bounce{0%,to{transform:translateY(0)}25%{transform:translateY(-22px)}50%{transform:translateY(0)}70%{transform:translateY(-9px)}}@keyframes floaty{0%,to{translate:0}50%{translate:0 -14px}}@keyframes drift{0%{left:-220px}to{left:110%}}@keyframes twinkle{0%{opacity:.55}to{opacity:1}}@keyframes boot-pop{0%{opacity:0;transform:scale(.4)}}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.08)}30%{transform:scale(.98)}45%{transform:scale(1.05)}}@keyframes boot-load{0%{width:0}40%{width:45%}70%{width:62%}to{width:100%}}@keyframes draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.os *,.os :before,.os :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tenant-hero{background:linear-gradient(125deg,#818cf8 0%,#4f46e5 50%,#7c3aed 100%);position:relative;overflow:hidden}.tenant-hero:after{content:"";background:radial-gradient(circle,#ffffff59,#0000 65%);border-radius:50%;width:300px;height:300px;animation:7s ease-in-out infinite floaty;position:absolute;top:-80px;right:-60px}.tenant-card{background:#fff;border:1px solid #4f46e51a;border-radius:16px;align-items:center;gap:14px;padding:16px;transition:transform .2s cubic-bezier(.3,1.4,.5,1),box-shadow .2s;display:flex}.tenant-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px -16px #4f46e573}.tenant-ico{background:#eef2ff;border-radius:14px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:22px;display:grid}.tenant-strip{background:linear-gradient(120deg,#eef2ff,#f5f3ff);border:1px solid #4f46e526;border-radius:18px;align-items:center;gap:14px;width:100%;padding:16px 20px;transition:transform .2s;display:flex}.tenant-strip:hover{transform:translateY(-2px)}
.badge{color:#fff;z-index:2;background:#ff3b30;border-radius:99px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11.5px;font-weight:700;animation:.3s cubic-bezier(.3,1.5,.5,1) zoom-in;display:grid;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 6px #0000004d}.dock-item .badge{top:-4px;right:-2px}.toasts{z-index:9600;pointer-events:none;flex-direction:column;gap:8px;width:min(340px,100vw - 28px);display:flex;position:absolute;top:40px;right:14px}.toast{-webkit-backdrop-filter:blur(30px)saturate(1.8);color:#1f2328;background:#f6f6f8e6;border-radius:16px;align-items:flex-start;gap:12px;padding:12px 14px;animation:.45s cubic-bezier(.2,.9,.3,1.15) toast-in;display:flex;box-shadow:0 16px 36px -12px #0006,0 0 0 .5px #0000001f}.toast-ico{color:#fff;background:linear-gradient(145deg,#4ade80,#16a34a);border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.toast.error .toast-ico{background:linear-gradient(145deg,#f87171,#dc2626)}@keyframes toast-in{0%{opacity:0;transform:translate(40px)scale(.96)}}.admin-chip{white-space:nowrap;background:#ffffff40;border-radius:99px;padding:2px 9px;font-size:12px}@media (max-width:640px){.admin-chip{display:none}}.room-art.room-photo{padding:0}.room-photo img{object-fit:cover;width:100%;height:100%;display:block}.room-card.sold-out .room-art{filter:grayscale(.7);opacity:.75}.room-badge.gray{box-shadow:none;background:#6b7280}.admin-list{background:#f7f6f3;border-right:1px solid #0000000f;flex-shrink:0;width:250px;overflow-y:auto}.admin-list.wide{width:300px}@container (max-width:560px){.admin-list,.admin-list.wide{width:150px}}.admin-row{color:#1f2328;border-radius:10px;align-items:center;gap:6px;margin:3px 8px;padding:9px 10px;transition:background .15s;display:flex}button.admin-row{width:calc(100% - 16px)}.admin-row:hover{background:#0000000a}.admin-row.on{background:#ffedd5;box-shadow:inset 0 0 0 1px #f973164d}.order-btns{flex-direction:column;gap:1px;display:inline-flex}.order-btns button{color:#666;background:#0000000a;border-radius:4px;padding:3px 5px;font-size:9px;line-height:1}.order-btns button:hover:not(:disabled){background:#0000001a}.order-btns button:disabled{opacity:.25}.select,.mini-input{background:#fbfbfa;border:1px solid #e3e1dd;border-radius:10px;padding:8px 12px;font-size:14px}.mini-input{padding:5px 9px}.field select{background:#fbfbfa;border:1px solid #e3e1dd;border-radius:10px;width:100%;padding:10px 13px;font-size:15px}.btn-danger{color:#dc2626;background:#fef2f2;border-radius:12px;justify-content:center;align-items:center;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.btn-danger:hover{background:#fee2e2}.btn-danger.armed{color:#fff;background:#dc2626;animation:.3s nudge}.btn-danger:disabled,.btn-os:disabled,.btn-os-soft:disabled{opacity:.5}@keyframes nudge{30%{transform:translate(-3px)}60%{transform:translate(3px)}}.link{color:#ea580c;font-weight:600}.link:hover{text-decoration:underline}.image-picker{background:#f5f4f1;border:2px dashed #e3ded6;border-radius:14px;width:100%;transition:border-color .15s;position:relative;overflow:hidden}.image-picker img{object-fit:cover;width:100%;height:100%}.image-picker-empty{color:#999;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:13px;display:flex;position:absolute;inset:0}.image-picker:hover{border-color:#fb923c}.image-picker-remove{z-index:2;color:#fff;background:#0009;border-radius:99px;padding:4px 10px;font-size:12px;position:absolute;bottom:8px;right:8px}.switch-row{color:#444;cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex;position:relative}.switch-row input{opacity:0;pointer-events:none;position:absolute}.switch{background:#d4d4d8;border-radius:99px;flex-shrink:0;width:42px;height:25px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s cubic-bezier(.3,1.4,.5,1);position:absolute;top:2.5px;left:2.5px;box-shadow:0 2px 4px #00000040}.switch-row input:checked+.switch{background:#34c759}.switch-row input:checked+.switch:after{transform:translate(17px)}.switch-row input:focus-visible+.switch{box-shadow:0 0 0 3px #34c75959}.tone-pick{position:relative}.tone-pick input{opacity:0;position:absolute}.tone-pick span{cursor:pointer;border:3px solid #0000;border-radius:10px;width:34px;height:34px;display:block;box-shadow:0 0 0 1px #00000014}.tone-pick input:checked+span{border-color:#ea580c}.seg-bar{border-bottom:1px solid #0000000f;flex-shrink:0;gap:6px;padding:12px 16px;display:flex;overflow-x:auto}.info-row{background:#fff;border:1px solid #0000000f;border-radius:12px;align-items:center;gap:8px;padding:8px;display:flex}.info-row.new{background:0 0;border-style:dashed;border-color:#00000026}.info-row input{background:0 0;border:1px solid #0000;border-radius:8px;min-width:0;padding:8px 10px;font-size:14px}.info-row input:hover{background:#f7f6f3}.info-row input:focus{background:#fff;border-color:#fb923c;outline:none}.info-row .info-icon{text-align:center;flex-shrink:0;width:46px;font-size:20px}@container (max-width:560px){.info-row{flex-wrap:wrap}}.dropzone{background:#fff7fa;border:2px dashed #f0c3d5;border-radius:16px;flex-wrap:wrap;align-items:center;gap:14px;margin:14px 16px 0;padding:14px 18px;transition:background .15s,border-color .15s,transform .15s;display:flex}.dropzone.over{background:#ffe4ef;border-color:#e0457b;transform:scale(1.01)}.progress{background:#f3d6e1;border-radius:9px;height:8px;overflow:hidden}.progress i{background:linear-gradient(90deg,#f472b6,#e0457b);height:100%;transition:width .3s;display:block}.photo-thumb.admin.sel{outline-offset:2px;outline:3px solid #e0457b}.inspector{background:#f7f6f3;border-left:1px solid #0000000f;flex-shrink:0;width:260px;padding:14px;overflow-y:auto}@container (max-width:620px){.inspector{z-index:4;width:min(280px,90%);position:absolute;inset:0 0 0 auto;box-shadow:-10px 0 30px -10px #0000004d}}.stat-card{color:#fff;text-align:left;border-radius:18px;flex-direction:column;align-items:flex-start;gap:2px;padding:16px;transition:transform .2s cubic-bezier(.3,1.4,.5,1);display:flex;box-shadow:0 12px 24px -14px #00000080,inset 0 1px #ffffff40}.stat-card:hover{transform:translateY(-3px)}.stat-card.tone-green{background:linear-gradient(145deg,#4ade80,#16a34a)}.stat-card.tone-teal{background:linear-gradient(145deg,#5eead4,#0f9f8a)}.stat-card.tone-blue{background:linear-gradient(145deg,#93c5fd,#2563eb)}.stat-card.tone-pink{background:linear-gradient(145deg,#f9a8d4,#e0457b)}.panel{background:#fff;border:1px solid #0000000d;border-radius:18px;padding:16px 18px}.notice{color:#854d0e;background:#fef9c3;border:1px solid #fde68a;border-radius:12px;padding:11px 14px;font-size:14px}.notice.error{color:#991b1b;background:#fee2e2;border-color:#fecaca}.check-row{text-align:left;color:#333;border-radius:10px;align-items:center;gap:10px;width:100%;padding:7px 8px;font-size:14px;display:flex}.check-row:hover{background:#f7f6f3}.check-row.done{color:#9ca3af;text-decoration:line-through}.check-box{border:2px solid #d4d4d8;border-radius:6px;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:12px;font-weight:800;display:grid}.check-row.done .check-box{color:#fff;background:#22c55e;border-color:#22c55e}.pill{border-radius:99px;flex-shrink:0;padding:1px 8px;font-size:11px;font-weight:700}.pill.gray{color:#4b5563;background:#e5e7eb}.pill-link{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:99px;padding:6px 12px;font-size:14px}.pill-link:hover{background:#dcfce7}.bubble{color:#1f2328;background:#f3f4f6;border-radius:4px 18px 18px;padding:16px 18px;line-height:1.7}.avatar{color:#fff;background:linear-gradient(145deg,#c4b5fd,#7c3aed);border-radius:50%;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:24px;font-weight:700;display:grid;box-shadow:0 8px 20px -8px #7c3aed99}.avatar.big{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;width:84px;height:84px;font-size:36px;box-shadow:0 10px 30px -10px #0006}.side-item.settings.on{background:#64748b}.browser-bar{background:#f3f3f5;border-bottom:1px solid #00000014;align-items:center;gap:8px;padding:8px 10px;display:flex}.browser-btn{color:#444;border-radius:8px;place-items:center;width:30px;height:30px;font-size:16px;display:grid}.browser-btn:hover{background:#00000012}.browser-url{text-align:center;color:#555;background:#fff;border-radius:8px;flex:1;padding:5px 12px;font-size:13px;box-shadow:inset 0 0 0 1px #0000000f}.os.lock{-webkit-user-select:auto;user-select:auto}.lock-veil{-webkit-backdrop-filter:blur(18px)saturate(1.2);background:#0a081440;animation:.6s ease-out fade;position:absolute;inset:0}.lock-inner{z-index:2;color:#fff;text-shadow:0 2px 16px #00000040;flex-direction:column;align-items:center;height:100%;padding:9vh 16px 24px;display:flex;position:relative}.lock-date{opacity:.9;font-size:18px;font-weight:500;animation:.6s both rise}.lock-time{letter-spacing:-.02em;font-size:clamp(64px,14vw,112px);font-weight:600;line-height:1.05;animation:.6s 80ms both rise}.lock-card{flex-direction:column;align-items:center;gap:10px;width:min(300px,100%);margin-top:auto;margin-bottom:8vh;animation:.7s .2s both rise;display:flex}.lock-card.shake{animation:.45s shake}.lock-input{-webkit-backdrop-filter:blur(20px);color:#fff;text-align:center;background:#fff3;border:1px solid #ffffff59;border-radius:99px;width:100%;padding:10px 44px 10px 16px;font-size:15px}.lock-input::placeholder{color:#ffffffbf}.lock-input:focus{background:#ffffff4d;border-color:#ffffffb3;outline:none}.lock-go{color:#333;width:32px;height:32px;text-shadow:none;background:#ffffffe6;border-radius:50%;font-weight:800;position:absolute;top:50%;right:5px;translate:0 -50%}.lock-error{background:#dc2626bf;border-radius:99px;padding:5px 12px;font-size:13px}.lock-back{opacity:.8;font-size:13px}.lock-back:hover{opacity:1;text-decoration:underline}@keyframes shake{20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}
