
:root{color-scheme:dark;--bg:#090d16;--muted:#8d9aaf;--text:#f0f5ff;--blue:#57ccff;--line:rgba(176,204,255,.12)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.32}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:5px}button{color:inherit}a{text-decoration:none;color:inherit}[hidden]{display:none!important}.ambient{position:fixed;width:650px;height:650px;filter:blur(130px);border-radius:50%;opacity:.15;pointer-events:none;z-index:-1}.ambient.a{background:#1c71bc;top:-330px;left:-170px}.ambient.b{background:#4c3288;bottom:-350px;right:-240px}.shell{max-width:1180px;padding:0 44px;margin:auto}header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:32px;font-weight:700;letter-spacing:-1.5px;display:flex;align-items:center}.brand-dot{color:var(--blue)}.mark{font-size:42px;display:inline-block;color:var(--blue);margin-right:12px;transform:rotate(-14deg)}.header-right{display:flex;align-items:center;gap:20px;font-size:10px;letter-spacing:2px;color:var(--muted)}.intro{display:flex;justify-content:space-between;align-items:end;padding:58px 0 32px}.eyebrow{font-size:10px;letter-spacing:3px;font-weight:650;color:var(--blue)}h1{font-size:clamp(28px,4vw,44px);font-weight:550;letter-spacing:-1.5px;margin:17px 0 12px}h1 span{color:var(--blue)}p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.quiet{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:12px;padding:11px 16px;font-size:12px;transition:background .2s}.quiet:hover{background:rgba(255,255,255,.09)}.summary{display:flex;align-items:center;gap:24px;margin-bottom:28px;font-size:12px;color:var(--muted)}.summary .quiet{margin-left:auto}.live-dot{display:inline-block;width:6px;height:6px;background:var(--blue);border-radius:50%;margin-right:8px;box-shadow:0 0 12px #57ccff55}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.glass{background:linear-gradient(140deg,rgba(44,58,76,.48),rgba(17,22,31,.88) 55%);border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 24px 60px #0003;backdrop-filter:blur(24px)}.card{border-radius:30px;padding:29px 30px 18px;position:relative;overflow:hidden;animation:arrive .6s both;transition:border-color .5s,box-shadow .5s}.card:nth-child(2){animation-delay:.08s}.card:nth-child(3){animation-delay:.16s}.card:nth-child(4){animation-delay:.24s}.card.running{border-color:#57ccff32;box-shadow:inset 0 1px 0 #a8daff15,0 24px 60px #0003,0 0 45px #1872c008}.card.heating{--blue:#ffb77b}.card-head{display:flex;justify-content:space-between;align-items:center}.model{font-size:9px;letter-spacing:1.7px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.room-name{border:0;background:none;font-size:22px;font-weight:550;padding:0;text-align:left;letter-spacing:-.5px;max-width:280px;overflow-wrap:anywhere}.room-temp{font-size:11px;margin-top:7px;color:var(--muted)}.power{border:1px solid #ffffff12;background:#ffffff06;width:53px;height:53px;border-radius:50%;font-size:29px;line-height:1;transition:all .4s;flex-shrink:0}.running .power{background:var(--blue);color:#10273a;box-shadow:0 0 28px #57ccff33}.visual{height:173px;padding-top:40px;perspective:600px;position:relative}.ac{width:77%;height:72px;margin:auto;border-radius:15px 15px 20px 20px;background:linear-gradient(174deg,#fff,#c9d0d7 74%,#88919b);box-shadow:0 15px 20px #0008,inset 0 2px 2px #fff;position:relative;z-index:2;transform:rotateX(-5deg)}.artcool .ac{background:linear-gradient(150deg,#5a6871,#1b232c 27%,#34424e 58%,#0d121a);box-shadow:0 15px 20px #0008,inset 0 1px 2px #99acb5;border:1px solid #75828d44;border-radius:9px 9px 15px 15px}.ac-shine{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 20%,#ffffff22 32%,transparent 42%)}.ac-brand{position:absolute;font-size:7px;color:#58636f;top:24px;left:21px}.artcool .ac-brand{color:#a8b5bf}.ac-display{position:absolute;right:23px;top:22px;font-size:12px;letter-spacing:1px;color:#287292;font-weight:650;opacity:.25}.running .ac-display{opacity:1;color:var(--blue);text-shadow:0 0 9px #57ccff66}.vent{position:absolute;bottom:6px;height:9px;background:#151c26;left:8%;right:8%;border-radius:5px;border-bottom:2px solid #98a3ad;transition:height .7s}.running .vent{height:14px}.air-stream{position:absolute;left:22%;right:22%;top:113px;height:66px;display:flex;justify-content:space-between;perspective:100px;opacity:0;transition:opacity 1s;overflow:hidden;mask-image:linear-gradient(transparent,#000 20%,transparent)}.running .air-stream{opacity:.7}.air-stream i{width:1px;height:35px;background:linear-gradient(transparent,var(--blue),transparent);animation:flow 1.8s linear infinite;animation-play-state:paused;box-shadow:0 0 7px var(--blue)}.running .air-stream i{animation-play-state:running}.air-stream i:nth-child(2n){animation-delay:-.6s}.air-stream i:nth-child(3n){animation-delay:-1.3s}.temperature{display:flex;align-items:center;justify-content:space-between;margin-top:3px}.target{font-size:76px;line-height:1.15;letter-spacing:-5px;font-weight:350;font-variant-numeric:tabular-nums}.degree{vertical-align:top;display:inline-block;margin:12px 0 0 9px;color:var(--muted);font-size:24px;font-weight:300}.target-label{font-size:8px;letter-spacing:2px;color:var(--muted);line-height:1.8;text-align:right}.temperature-controls{display:flex;align-items:center;gap:18px;margin-top:20px}.minus,.plus{border:1px solid var(--line);background:#ffffff04;width:42px;height:42px;border-radius:50%;font-size:25px;flex-shrink:0;transition:background .2s}.minus:hover,.plus:hover{background:#ffffff12}.slider{width:100%;height:9px;appearance:none;border-radius:10px;background:linear-gradient(to right,#3579ef,var(--blue) var(--fill,50%),#ffffff0e var(--fill,50%));cursor:pointer;touch-action:pan-y}.slider::-webkit-slider-thumb{appearance:none;width:23px;height:23px;background:#f8fbff;border-radius:50%;box-shadow:0 0 18px #57ccff45;border:3px solid #dcecff}.slider::-moz-range-thumb{width:20px;height:20px;background:#fff;border:0;border-radius:50%}.range-labels{display:flex;justify-content:space-between;padding:9px 60px 0;font-size:10px;color:#67758a}.quick-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.control{border:1px solid var(--line);background:linear-gradient(150deg,#ffffff06,#ffffff01);border-radius:17px;padding:15px;min-width:0}.control label{display:block;font-size:10px;color:var(--muted);margin-bottom:9px}.control select,.control input{width:100%;background:transparent;color:var(--text);border:0;font-size:13px;min-height:25px}.control select option{background:#152030}.control button{border:1px solid var(--line);background:#ffffff0a;border-radius:8px;padding:6px 9px;font-size:11px;margin-top:8px}.control .read-value{font-size:14px;overflow-wrap:anywhere}.extras{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.extras summary{list-style:none;cursor:pointer;font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.extras summary::-webkit-details-marker{display:none}.extra-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:18px;font-size:9px;color:var(--muted);min-height:26px;gap:12px}.status{line-height:1.5}.refresh-one{border:0;background:none;color:var(--muted);font-size:23px;padding:5px}.busy .refresh-one{animation:spin 1.5s linear infinite}.error .status{color:#ffc295}.login{max-width:440px;padding:35px;border-radius:28px;margin:15px auto 50px}.login h2{font-size:28px;font-weight:500;letter-spacing:-1px}.login form{margin-top:28px}.login label{display:block;font-size:12px;color:var(--muted);margin-bottom:10px}.login input{border:1px solid var(--line);background:#090f1b;width:100%;padding:15px;border-radius:12px;color:white}.primary{display:flex;justify-content:space-between;width:100%;margin:15px 0;background:var(--blue);color:#0b2230;border:0;padding:16px;border-radius:12px;font-weight:600}.login>.quiet{width:100%;margin-top:15px}.banner{border:1px solid #7fa9db44;border-radius:14px;padding:16px;margin:0 0 25px;color:#afc5df;font-size:12px;line-height:1.7}.banner button{background:transparent;color:var(--blue);border:0;text-decoration:underline;cursor:pointer}.empty,.history{padding:30px;border-radius:24px}.history{margin-top:25px}.history-row{padding:12px 0;border-top:1px solid var(--line);font-size:12px;line-height:1.6;overflow-wrap:anywhere}.history-row small{color:var(--muted)}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin:52px 0 0;padding:24px 0 35px;font-size:9px;letter-spacing:1px;color:#617086}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#203449;border:1px solid #7794b255;border-radius:15px;box-shadow:0 12px 40px #0008;padding:16px 23px;z-index:20;max-width:calc(100% - 30px);font-size:13px;line-height:1.5;width:max-content}@keyframes flow{from{transform:translateY(-40px) scaleY(.6)}to{transform:translateY(90px) scaleY(1.5)}}@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1500px){.shell{max-width:1300px}.card{padding:32px 38px 20px}.visual{height:185px}.ac{height:79px}.air-stream{top:120px}}@media(max-width:740px){.shell{padding:0 20px}header{height:85px}.brand{font-size:29px}.header-right{font-size:8px;letter-spacing:1px;gap:10px}.intro{padding:35px 0 25px;display:block}.intro>.quiet{margin-top:20px}.intro p{font-size:12px}.grid{grid-template-columns:1fr;gap:20px}.card{padding:26px 25px 17px}.summary{gap:12px;font-size:11px;flex-wrap:wrap}.summary .quiet{font-size:10px;padding:9px}.target{font-size:78px}.visual{height:175px}.login{padding:28px 23px}.eyebrow{font-size:9px;letter-spacing:2px}footer{font-size:8px;gap:15px;line-height:1.6}.room-name{max-width:225px}.header-right .quiet{font-size:10px;padding:9px}.temperature-controls{gap:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.home-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 26px}.view-switch{display:flex;border:1px solid var(--line);border-radius:14px;background:#ffffff03;padding:4px;gap:4px}.view-switch button{border:0;background:none;color:var(--muted);padding:12px 18px;border-radius:10px;font-size:12px}.view-switch .active{background:#57ccff16;color:var(--blue);box-shadow:inset 0 0 0 1px #57ccff25}.home-grid{display:block}.device-section{margin:0 0 42px}.section-head{display:flex;gap:14px;align-items:center;margin:18px 0}.section-head h2{font-size:24px;font-weight:500;letter-spacing:-.7px;margin:0}.section-count{color:var(--muted);font-size:11px}.group-controls{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin:0 0 18px}.group-controls>span{font-size:10px;color:var(--muted);margin-right:7px}.group-controls .quiet{font-size:10px;padding:9px 11px}.room-assignment{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:0 0 13px;margin-bottom:19px;gap:10px}.room-assignment span{font-size:8px;color:var(--muted);letter-spacing:2px}.room-assignment select{font-size:11px;background:#142132;color:#a8bed5;border:1px solid var(--line);border-radius:8px;padding:6px;max-width:75%}.blind-symbol{font-size:36px;color:#d2b892;font-weight:200}.blind-card{--blue:#e0c398}.blind-visual{position:relative;width:75%;height:165px;margin:30px auto 20px;overflow:visible;perspective:600px}.window-sky{position:absolute;inset:4px;background:linear-gradient(#5185a329,#c9b69310),linear-gradient(140deg,#4b788d,#152530 70%);box-shadow:inset 0 0 30px #0006}.window-frame{position:absolute;inset:0;border:6px solid #3d4855;box-shadow:0 15px 35px #0008,inset 0 0 0 2px #647381;border-radius:3px}.window-frame:after{content:'';position:absolute;left:49%;top:0;bottom:0;width:5px;background:#404c58}.slat-pack{position:absolute;left:6px;right:6px;top:5px;height:var(--closure,50%);max-height:calc(100% - 10px);display:flex;flex-direction:column;overflow:hidden;transition:height 1.5s cubic-bezier(.2,.65,.3,1);filter:drop-shadow(0 8px 4px #0005);border-bottom:3px solid #aeb6b9}.slat-pack i{display:block;flex:0 0 10px;background:linear-gradient(#c1c6c7,#677682);border-bottom:1px solid #26313e;transform:rotateX(var(--slat-angle));transition:transform 1s;box-shadow:0 2px 3px #0006}.window-sill{position:absolute;bottom:-5px;left:-8px;right:-8px;height:7px;background:linear-gradient(#81909a,#35414d);border-radius:2px}.unknown .blind-visual{opacity:.35}.blind-readouts{display:flex;justify-content:space-between}.blind-readouts>div{display:flex;flex-direction:column;gap:6px}.blind-readouts>div:last-child{text-align:right}.blind-readouts strong{font-size:38px;font-weight:350;letter-spacing:-1.5px}.blind-readouts span{font-size:8px;letter-spacing:2px;color:var(--muted)}.blind-sliders{display:flex;flex-direction:column;gap:22px;margin:23px 0 27px}.blind-sliders label{font-size:11px;display:block}.blind-sliders small{float:right;color:var(--muted);font-size:9px}.blind-sliders input{display:block;margin:15px 0 0}.blind-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.blind-buttons button{border:1px solid var(--line);background:#ffffff05;border-radius:12px;padding:14px 7px;font-size:11px}.blind-buttons button:nth-child(2){color:#e0c398;border-color:#e0c39833}.combined{width:100%;margin-top:12px;font-size:11px}.empty-room{padding:18px 0;font-size:12px}.room-dialog{color:var(--text);background:#111d2c;border:1px solid #536981;border-radius:24px;padding:28px;width:420px;max-width:calc(100% - 30px)}.room-dialog::backdrop{background:#030916b8;backdrop-filter:blur(6px)}.room-dialog h2{font-weight:500;margin-top:0;font-size:22px}.room-dialog label{display:block;font-size:12px;margin:15px 0;color:var(--muted)}.room-dialog input{display:block;width:100%;background:#0a1422;color:white;border:1px solid var(--line);padding:12px;margin-top:8px;border-radius:10px}.room-dialog .quiet{width:100%}@media(max-width:740px){.home-bar{flex-wrap:wrap}.view-switch button{font-size:11px;padding:11px 14px}.home-bar>.quiet{font-size:10px;padding:10px}.section-head h2{font-size:22px}.group-controls>span{width:100%;margin-bottom:2px}.blind-visual{height:160px}}
