:root{--ink:#f6f7fb;--muted:#ebf0faa1;--line:#ffffff1c;--line-strong:#fff3;--bg:#0a1014;--panel:#0d181f7a;--panel-strong:#0f1d25bd;--accent:#f2be68;--danger:#f77;--ok:#79e5bd;--radius:24px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%}body{color:var(--ink);letter-spacing:-.015em;background:radial-gradient(1000px 500px at 58% -20%,#689ab229,#0000 60%),#0a1014;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}::selection{background:#f2be6859}.app-frame{grid-template-columns:238px minmax(0,1fr);min-height:100vh;display:grid;position:relative;overflow:hidden}.app-frame:before{content:"";opacity:.35;pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:52px 52px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.side-rail{border-right:1px solid var(--line);z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#0b1319eb,#070d11bf);flex-direction:column;height:100vh;padding:25px 17px 18px;display:flex;position:sticky;top:0}.brand-mark{letter-spacing:.13em;align-items:center;gap:8px;padding:8px 12px 35px;font-size:15px;font-weight:800;display:flex}.brand-mark span:not(.brand-pulse){color:var(--accent)}.brand-pulse{background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 4px #f2be6824,0 0 20px var(--accent);border-radius:50%;animation:2.8s infinite pulse;display:inline-block}.side-rail nav{flex-direction:column;gap:6px;display:flex}.nav-item{height:44px;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:13px;align-items:center;gap:11px;padding:0 12px;transition:all .22s;display:flex}.nav-item:hover{color:var(--ink);border-color:var(--line);background:#ffffff0b}.nav-item.active{color:var(--ink);box-shadow:inset 3px 0 0 var(--accent);background:linear-gradient(100deg,#f2be682b,#ffffff09);border-color:#f2be6833}.rail-footer{gap:8px;margin-top:auto;display:grid}.user-chip{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);border-top:1px solid var(--line);padding:11px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;overflow:hidden}.nav-item.ghost{border:0;width:100%}.app-main{z-index:1;min-width:0;position:relative}.topbar{justify-content:space-between;align-items:flex-start;gap:20px;padding:32px clamp(22px,4vw,58px) 20px;display:flex}.topbar h1{letter-spacing:-.055em;margin:7px 0 6px;font-size:clamp(24px,3vw,35px);font-weight:700;line-height:1.08}.topbar p{color:var(--muted);max-width:650px;margin:0}.eyebrow{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;line-height:1.3}.icon-button{border:1px solid var(--line);width:42px;height:42px;color:var(--ink);background:#ffffff0d;border-radius:13px;place-items:center;display:grid}.mobile-menu{display:none}.experience{isolation:isolate;min-height:calc(100vh - 130px);padding:0 clamp(22px,4vw,58px) 55px;position:relative}.dashboard-stage{z-index:2;max-width:1570px;margin:0 auto;position:relative}.stage-toolbar{justify-content:space-between;align-items:flex-end;gap:26px;margin-bottom:18px;display:flex}.stage-toolbar h2{letter-spacing:-.05em;margin:5px 0;font-size:25px}.stage-toolbar p{color:var(--muted);margin:0}.toolbar-actions,.inline-actions{flex-wrap:wrap;gap:9px;display:flex}.primary-button,.subtle-button,.danger-button{min-height:39px;color:var(--ink);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:12px;font-weight:700;transition:all .2s;display:inline-flex}.primary-button{color:#22170a;background:linear-gradient(135deg,#f9d186,#d99845);box-shadow:0 12px 28px #d998452e}.primary-button:hover{filter:brightness(1.07);transform:translateY(-1px)}.primary-button.disabled{opacity:.45;pointer-events:none}.subtle-button{border-color:var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#070e1373}.subtle-button:hover{border-color:var(--line-strong);background:#ffffff17}.subtle-button.active{border-color:var(--accent);color:var(--accent);background:#f2be681f}.danger-button{color:#ffb5b5;background:#ff77771c;border-color:#ff777740}.danger-button:hover{background:#ff77772e}.compact-button{min-height:32px;padding:0 9px;font-size:11px}.editor-notice,.success-banner,.error-banner{color:#ffe2aa;background:#f2be681a;border:1px solid #f2be6838;border-radius:13px;align-items:center;gap:9px;margin:0 0 15px;padding:11px 13px;display:flex}.success-banner{color:#b8f5dc;background:#79e5bd1f;border-color:#79e5bd40}.error-banner{color:#ffc1c1;background:#ff77771c;border-color:#ff777740}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.widget-wrap{min-width:0;min-height:190px;transition:opacity .15s;position:relative}.widget-wrap.is-editable{cursor:grab}.widget-wrap.is-editable:active{cursor:grabbing}.widget-wrap.is-editable .three-card{outline-offset:4px;outline:1px dashed #f2be686b}.drag-handle{z-index:4;border:1px solid var(--line-strong);width:28px;height:28px;color:var(--accent);cursor:grab;background:#0a141bcc;border-radius:9px;place-items:center;display:grid;position:absolute;bottom:11px;right:11px}.widget{height:100%;min-height:190px;padding:17px;overflow:hidden}.three-card{border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(18px)saturate(110%);backdrop-filter:blur(18px)saturate(110%);transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform-style:preserve-3d;background:linear-gradient(135deg,#ffffff1d,#ffffff06 38%,#0000001f);transition:transform .35s cubic-bezier(.2,.75,.2,1),border-color .25s,background .25s;position:relative;box-shadow:0 20px 70px #00000036,inset 0 1px #ffffff1c}.three-card:before{content:"";border-radius:inherit;pointer-events:none;opacity:.65;background:radial-gradient(370px circle at var(--glow-x,50%) var(--glow-y,0%),#ffffff21,transparent 50%);position:absolute;inset:0}.three-card:hover{border-color:#ffffff38}.widget-heading{z-index:1;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.widget-title{min-width:0;color:var(--muted);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.widget-title input{min-width:40px;max-width:185px;color:var(--ink);border:0;border-bottom:1px solid var(--accent);text-transform:uppercase;background:0 0;outline:0;padding:2px;font-size:11px;font-weight:800}.widget-edit-actions{align-items:center;gap:6px;display:flex}.widget-edit-actions select{color:var(--muted);border:1px solid var(--line);background:#0a0f1480;border-radius:6px;padding:4px 5px;font-size:10px}.mini-delete{color:#ffb1b1;background:#ff77771a;border:1px solid #ff777752;border-radius:7px;place-items:center;width:26px;height:26px;display:grid}.hero-widget{background:linear-gradient(115deg,#0a141da6,#ffffff0e);min-height:298px}.hero-inner{z-index:1;grid-template-columns:minmax(0,1.45fr) minmax(170px,.55fr);gap:20px;padding:22px 4px 0;display:grid;position:relative}.hero-context{letter-spacing:.06em;color:var(--muted);align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;display:flex}.live-dot{background:#c3a87b;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 3px #c3a87b26}.live-dot.is-live{background:var(--ok);box-shadow:0 0 0 3px #79e5bd24,0 0 13px #79e5bdcc}.hero-temp{letter-spacing:-.095em;text-shadow:0 10px 50px #ffffff1f;margin:13px 0 8px;font-size:clamp(76px,10vw,132px);font-weight:400;line-height:.9}.hero-temp sup{vertical-align:top;margin-left:4px;font-size:.36em;line-height:1}.hero-condition{letter-spacing:-.055em;max-width:550px;font-size:clamp(22px,2.6vw,38px);font-weight:500;line-height:1.08}.hero-meta{color:#ffffffd4;gap:18px;margin-top:21px;font-size:12px;display:flex}.hero-meta span{align-items:center;gap:6px;display:inline-flex}.hero-side{align-self:end;gap:8px;display:grid}.hero-side-item{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:8px;padding:10px 0;font-size:11px;display:flex}.hero-side-item b{color:var(--ink);font-weight:700}.curve-widget{min-height:262px}.curve-content{z-index:1;grid-template-rows:auto 1fr auto;height:calc(100% - 25px);padding-top:13px;display:grid;position:relative}.curve-stat{align-items:baseline;gap:9px;display:flex}.curve-stat b{letter-spacing:-.06em;font-size:31px;font-weight:500}.curve-stat span{color:var(--muted);font-size:11px}.temperature-curve{width:100%;height:118px;margin-top:4px;overflow:visible}.curve-path{stroke-dasharray:210;stroke-dashoffset:0;animation:1.6s both draw-curve}.curve-node{filter:drop-shadow(0 0 6px #fffc);animation:.45s both node-in}.curve-days{color:var(--muted);text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;font-size:10px;display:grid}.curve-days span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.metric-widget{min-height:190px}.metric-body{z-index:1;justify-content:space-between;align-items:flex-end;gap:9px;height:calc(100% - 26px);padding-top:13px;display:flex;position:relative}.metric-body span{color:var(--muted);margin-bottom:6px;font-size:11px;display:block}.metric-body strong{letter-spacing:-.075em;font-size:37px;font-weight:500;line-height:.9;display:block}.metric-body small{letter-spacing:0;color:var(--muted);margin-left:4px;font-size:12px}.metric-ring{background:conic-gradient(var(--accent) var(--ring,64%),#ffffff1f 0);border-radius:50%;place-items:center;width:66px;height:66px;display:grid;transform:rotate(-35deg);box-shadow:inset 0 0 12px #00000059}.metric-ring i{border:1px solid var(--line);background:#0d171de6;border-radius:50%;width:52px;height:52px;display:block}.forecast-widget{min-height:250px}.forecast-strip{z-index:1;grid-template-columns:repeat(7,minmax(68px,1fr));gap:8px;height:calc(100% - 28px);padding-top:17px;display:grid;position:relative;overflow-x:auto}.forecast-day{text-align:center;min-width:70px;color:var(--muted);border:1px solid #0000;border-radius:15px;align-content:start;gap:8px;padding:13px 7px;transition:all .22s;display:grid}.forecast-day:hover,.forecast-day.today{border-color:var(--line);background:#ffffff13}.forecast-day svg{color:var(--accent);filter:drop-shadow(0 5px 10px #f2be6833);margin:auto}.forecast-day b{color:var(--ink);letter-spacing:-.07em;font-size:25px;font-weight:500;line-height:1}.forecast-day small{font-size:11px}.forecast-day em{color:var(--accent);margin-top:3px;font-size:10px;font-style:normal}.devices-widget,.alerts-widget{min-height:250px}.device-list,.alert-list{z-index:1;gap:4px;margin-top:11px;display:grid;position:relative}.device-row,.alert-row{border-radius:11px;justify-content:space-between;align-items:center;gap:10px;min-height:46px;padding:7px 8px;transition:all .2s;display:flex}.device-row:hover,.alert-row:hover{background:#ffffff0e}.device-ident{align-items:center;gap:9px;min-width:0;display:flex}.device-ident b,.alert-row b{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.device-ident small,.alert-row small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:10px;display:block;overflow:hidden}.device-orb{color:#231808;background:linear-gradient(145deg,#f2be68d9,#674823bf);border-radius:11px;flex:0 0 29px;place-items:center;width:29px;height:29px;font-size:12px;font-weight:800;display:grid;box-shadow:0 6px 16px #00000040}.device-orb.large{border-radius:15px;flex-basis:44px;width:44px;height:44px;font-size:16px}.toggle{border:1px solid var(--line-strong);background:#ffffff1a;border-radius:100px;width:39px;height:22px;padding:2px;transition:all .2s}.toggle i{background:#ffffffa6;border-radius:50%;width:16px;height:16px;transition:all .2s;display:block}.toggle.on{background:var(--accent);border-color:var(--accent)}.toggle.on i{background:#2d1e0a;transform:translate(16px)}.device-reading{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px}.alert-row{justify-content:flex-start}.alert-row>svg{color:var(--muted);margin-left:auto}.alert-signal{color:#ffc38a;background:#ffa56621;border-radius:10px;place-items:center;width:28px;height:28px;display:grid}.clock-widget{min-height:190px}.clock-value{z-index:1;letter-spacing:-.08em;margin-top:27px;font-size:51px;font-weight:500;line-height:1;position:relative}.clock-date{z-index:1;color:var(--muted);text-transform:capitalize;margin-top:9px;font-size:11px;position:relative}.headline-widget{min-height:210px}.headline-copy{z-index:1;padding:21px 4px 0;position:relative}.headline-copy strong{letter-spacing:-.055em;font-size:25px;line-height:1.05}.headline-copy p{color:var(--muted);margin:10px 0 0;line-height:1.55}.headline-copy textarea{width:100%;min-height:80px;color:var(--ink);border:1px solid var(--line);resize:vertical;background:#00000026;border-radius:11px;margin-top:10px;padding:9px}.empty-state{color:var(--muted);padding:20px;line-height:1.45}.empty-state.compact{padding:12px;font-size:12px}.atmosphere{z-index:-1;pointer-events:none;opacity:var(--contrast,.74);border-radius:0 0 45px 45px;position:absolute;inset:-100px -5vw -40px;overflow:hidden}.atmo-gradient{background:radial-gradient(900px 510px at 72% 4%,#83b9d461,#0000 62%),linear-gradient(160deg,#162b37 0%,#0f1b23 42%,#0a1116 100%);position:absolute;inset:0}.mode-sun .atmo-gradient{background:radial-gradient(800px 480px at 77% 7%,#ffd17be6,#0000 59%),linear-gradient(160deg,#356b8c 0%,#739bb0 43%,#cf8851 100%)}.mode-rain .atmo-gradient{background:radial-gradient(950px 620px at 69% -5%,#6096a654,#0000 55%),linear-gradient(160deg,#112630,#1d353b 39%,#101b22 100%)}.mode-storm .atmo-gradient{background:radial-gradient(700px 480px at 75% 5%,#7798a738,#0000 60%),linear-gradient(165deg,#101b24,#273941 38%,#0a1116 90%)}.atmo-sun{filter:blur(2px);opacity:.75;background:radial-gradient(circle,#fff9d6f2 0 3%,#face6a8c 14%,#fabb5d1f 43%,#0000 67%);border-radius:50%;width:390px;height:390px;animation:8s ease-in-out infinite sun-breathe;position:absolute;top:-165px;right:12%}.mode-storm .atmo-sun,.mode-rain .atmo-sun{opacity:.08}.atmo-cloud{filter:blur(35px);opacity:.7;mix-blend-mode:screen;background:radial-gradient(at 32% 62%,#e6f2f3bf 0 10%,#0000 34%),radial-gradient(at 55% 45%,#9fb8bebf 0 13%,#0000 37%),radial-gradient(at 74% 68%,#ccdedf8c 0 10%,#0000 34%);border-radius:50%;width:70vw;max-width:1040px;height:32vw;max-height:470px;position:absolute}.mode-rain .atmo-cloud,.mode-storm .atmo-cloud{mix-blend-mode:normal;opacity:.62;filter:blur(26px)}.cloud-a{animation:30s ease-in-out infinite cloud-drift-a;top:3%;left:-15%}.cloud-b{opacity:.5;animation:35s ease-in-out infinite cloud-drift-b;top:30%;right:-25%;transform:scale(.78)}.cloud-c{opacity:.42;animation:42s ease-in-out infinite cloud-drift-c;bottom:-11%;left:11%;transform:scale(.98)}.mode-storm .cloud-a{opacity:.85;background:radial-gradient(at 32% 62%,#0f1b22d9,#0000 34%),radial-gradient(at 55% 45%,#212d34e6,#0000 37%),radial-gradient(at 74% 68%,#404d52cc,#0000 34%)}.atmo-rain{opacity:0;transition:opacity .7s;position:absolute;inset:0}.mode-rain .atmo-rain,.mode-storm .atmo-rain{opacity:.62}.atmo-rain i{background:linear-gradient(#0000,#e1f4ffd1,#0000);width:1px;height:40px;animation:linear infinite rain-fall;position:absolute;top:-12%;transform:rotate(14deg)}.atmo-lightning{opacity:0;background:radial-gradient(500px 260px at 65% 30%,#ecf6ffd9,#0000 50%);position:absolute;inset:0}.mode-storm .atmo-lightning{animation:10s linear infinite lightning}.atmo-motes i{opacity:.5;background:#fffc;border-radius:50%;width:2px;height:2px;animation:7s ease-in-out infinite mote;position:absolute}.atmo-vignette{background:linear-gradient(90deg,#060a0d85,#0000 44%,#060a0d3d),linear-gradient(#0000 60%,#05090ccc);position:absolute;inset:0}.catalogue{max-width:1700px;margin:0 auto;padding:0 clamp(22px,4vw,58px) 55px}.catalogue-toolbar{justify-content:space-between;gap:10px;margin-bottom:18px;display:flex}.search-box{border:1px solid var(--line);max-width:410px;height:42px;color:var(--muted);background:#ffffff0a;border-radius:13px;flex:1;align-items:center;gap:9px;padding:0 13px;display:flex}.search-box input{color:var(--ink);background:0 0;border:0;outline:0;width:100%;min-width:0}.device-catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.catalogue-card{min-height:215px;padding:16px}.catalogue-head{align-items:center;gap:10px;display:flex}.catalogue-head>div{min-width:0}.catalogue-head h3{letter-spacing:-.035em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:15px;overflow:hidden}.catalogue-head p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;font-size:11px;overflow:hidden}.catalogue-head .toggle{margin-left:auto}.capability-pills{z-index:1;flex-wrap:wrap;gap:5px;margin:18px 0 12px;display:flex;position:relative}.capability-pills span{border:1px solid var(--line);background:#0000001f;border-radius:8px;gap:4px;max-width:100%;padding:4px 6px;font-size:10px;display:inline-flex}.capability-pills b{color:var(--muted);text-overflow:ellipsis;font-weight:500;overflow:hidden}.capability-pills em{color:var(--accent);white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-style:normal}.catalogue-actions{z-index:1;gap:7px;margin-top:auto;display:flex;position:relative}.spin{animation:1s linear infinite spin}.p2000-layout{grid-template-columns:minmax(330px,1.1fr) minmax(410px,.9fr);gap:14px;max-width:1700px;margin:0 auto;padding:0 clamp(22px,4vw,58px) 55px;display:grid}.p2000-radar,.p2000-list-panel{min-height:600px;padding:20px}.radar-header,.panel-header{z-index:1;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:relative}.radar-header h2,.panel-header h2{letter-spacing:-.05em;margin:5px 0 0;font-size:24px}.radar-field{background:radial-gradient(circle,#79e5bd36 0 1px,#0000 2px),repeating-radial-gradient(circle,#79e5bd2b 0 1px,#0000 2px 26%),linear-gradient(135deg,#1b49458c,#09171c57);border:1px solid #79e5bd52;border-radius:50%;max-width:520px;height:430px;margin:32px auto 8px;position:relative;overflow:hidden;box-shadow:inset 0 0 80px #79e5bd1a,0 0 55px #79e5bd12}.radar-field:before,.radar-field:after{content:"";background:#79e5bd24;position:absolute}.radar-field:before{height:1px;top:50%;left:0;right:0}.radar-field:after{width:1px;top:0;bottom:0;left:50%}.radar-ring{border:1px solid #79e5bd38;border-radius:50%;position:absolute;inset:50%;transform:translate(-50%,-50%)}.ring-one{width:26%;height:26%}.ring-two{width:52%;height:52%}.ring-three{width:78%;height:78%}.radar-sweep{transform-origin:50%;background:conic-gradient(#79e5bd52,#0000 30deg 360deg);animation:5.5s linear infinite radar;position:absolute;inset:0}.radar-origin{color:#0f3329;z-index:2;background:#c0ffe5;border-radius:50%;place-items:center;width:37px;height:37px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 6px #79e5bd26,0 0 26px #79e5bdd9}.radar-event{left:var(--x);top:var(--y);z-index:3;color:#f4fffa;justify-items:center;gap:3px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;display:grid;position:absolute;transform:translate(-50%,-50%)}.radar-event i{width:12px;height:12px;animation:incident-pulse 2.2s ease infinite var(--delay);background:#ff8f75;border-radius:50%;box-shadow:0 0 0 5px #ff8f7529,0 0 17px #ff8f75d9}.radar-footer{z-index:1;color:var(--muted);text-align:center;justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex;position:relative}.p2000-list-panel{border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0e171d66}.incident-list{gap:7px;margin-top:16px;display:grid}.incident{border:1px solid #0000;border-radius:14px;gap:11px;padding:13px;transition:all .2s;display:flex}.incident:hover{border-color:var(--line);background:#ffffff0b}.incident-icon{color:#ffb19e;background:#ff8f7521;border-radius:10px;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.incident h3{margin:0;font-size:13px;line-height:1.35}.incident p{color:var(--muted);margin:5px 0;font-size:11px;line-height:1.45}.incident small{color:#ffffff80;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:9px}.settings-shell{max-width:1550px;margin:0 auto;padding:0 clamp(22px,4vw,58px) 55px}.settings-tabs{flex-wrap:wrap;gap:7px;margin-bottom:17px;display:flex}.settings-tabs button{border:1px solid var(--line);height:40px;color:var(--muted);background:#ffffff09;border-radius:12px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.settings-tabs button.active{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent);background:#f2be681c;border-color:#f2be685c}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-card{border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(145deg,#ffffff14,#ffffff06);min-height:230px;padding:21px}.settings-card.span-two{grid-column:span 2}.settings-card-head{justify-content:space-between;gap:16px;margin-bottom:13px;display:flex}.settings-card-head h2{letter-spacing:-.05em;margin:5px 0 0;font-size:22px}.settings-card-head>svg{color:var(--accent)}.muted{color:var(--muted);margin:0 0 17px;font-size:12px;line-height:1.55}.muted code{color:#ffe1a5;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:16px 0;display:grid}.form-grid label,.settings-card>label{color:var(--muted);gap:6px;font-size:11px;font-weight:700;display:grid}.form-grid label.full{grid-column:span 2}.form-grid input,.form-grid select,.form-grid textarea,.mapping-row select{width:100%;color:var(--ink);border:1px solid var(--line);background:#040a0e61;border-radius:10px;outline:0;min-height:39px;padding:10px 11px;transition:all .2s}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.mapping-row select:focus{border-color:#f2be68a6;box-shadow:0 0 0 3px #f2be681a}.form-grid textarea{resize:vertical;min-height:82px}.form-grid input[type=range]{accent-color:var(--accent);padding:0}.form-grid input[type=color]{height:39px;padding:4px}.toggle-setting{justify-content:space-between;align-items:center;grid-template-columns:none!important;display:flex!important}.toggle-setting input{accent-color:var(--accent);width:38px!important;min-height:auto!important}.homey-flow{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin-top:17px;padding-top:16px;display:flex}.flow-step{color:var(--muted);border:1px solid var(--line);border-radius:9px;padding:7px 9px;font-size:11px}.flow-step.done{color:#c6f8df;background:#79e5bd1a;border-color:#79e5bd5e}.homey-choices{gap:8px;margin-bottom:16px;display:grid}.homey-choice{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:#0000001f;border-radius:12px;justify-content:space-between;align-items:center;padding:11px;display:flex}.homey-choice:hover,.homey-choice.selected{background:#f2be6817;border-color:#f2be6870}.homey-choice b{display:block}.homey-choice small{color:var(--muted);margin-top:3px;display:block}.mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0;display:grid}.mapping-row{color:var(--muted);gap:5px;font-size:10px;font-weight:700;display:grid}.forecast-mapping-table{gap:12px;margin:16px 0;display:grid}.forecast-map-row{border:1px solid var(--line);background:#0000001f;border-radius:14px;grid-template-columns:90px repeat(4,minmax(145px,1fr));align-items:end;gap:8px;padding:12px;display:grid}.forecast-map-row>b{color:var(--accent);padding:10px 4px}.advanced-settings{border-top:1px solid var(--line);margin:17px 0;padding-top:13px}.advanced-settings summary{cursor:pointer;color:var(--accent);font-size:12px;font-weight:800}.advanced-settings .form-grid{padding-top:4px}.auth-page{background:radial-gradient(700px 420px at 60% 15%,#659dbc47,#0000 65%),#0a1116;place-items:center;min-height:100vh;padding:25px;display:grid;position:relative;overflow:hidden}.auth-ambient{filter:blur(45px);opacity:.6;background:conic-gradient(from 150deg,#f2be6857,#0000 25%,#79e5bd2e,#0000 54%,#497e9d3d);border-radius:50%;width:80vw;max-width:900px;height:80vw;max-height:900px;animation:22s linear infinite ambient-turn;position:absolute}.auth-card{-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);background:linear-gradient(145deg,#ffffff1f,#ffffff09);border:1px solid #ffffff2b;border-radius:28px;width:min(100%,430px);padding:33px;position:relative;box-shadow:0 35px 100px #0000005c}.auth-mark{color:#2c1d0a;background:linear-gradient(145deg,#ffe2a0,#be7e38);border-radius:18px;place-items:center;width:59px;height:59px;margin-bottom:24px;display:grid;box-shadow:0 12px 32px #f2be683b}.auth-card h1{letter-spacing:-.065em;margin:7px 0;font-size:31px}.auth-card>p{color:var(--muted);margin:0 0 23px;line-height:1.5}.auth-card label{color:var(--muted);gap:6px;margin:13px 0;font-size:11px;font-weight:700;display:grid}.auth-card input{border:1px solid var(--line);min-height:44px;color:var(--ink);background:#0000002e;border-radius:11px;outline:0;padding:0 11px}.auth-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f2be681f}.full-button{width:100%;margin-top:10px}.loading-stage,.empty-stage{border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;min-height:310px;color:var(--muted);background:#ffffff06;place-content:center;justify-items:center;gap:10px;padding:28px;display:grid}.empty-stage h2{color:var(--ink);letter-spacing:-.05em;margin:0}.empty-stage p{max-width:460px;margin:0;line-height:1.5}.loader{border:2px solid #ffffff2b;border-top-color:var(--accent);border-radius:50%;width:27px;height:27px;animation:1s linear infinite spin}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0106099e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line-strong);background:#142029;border-radius:23px;width:min(100%,400px);padding:26px;position:relative;box-shadow:0 35px 100px #0000008c}.modal-card h2{letter-spacing:-.05em;margin:5px 0 20px}.modal-card label{color:var(--muted);gap:5px;margin:12px 0;font-size:11px;display:grid}.modal-card input,.modal-card select{border:1px solid var(--line);min-height:42px;color:var(--ink);background:#0000002b;border-radius:10px;padding:0 10px}.modal-card .primary-button{width:100%;margin-top:8px}.modal-close{border:1px solid var(--line);width:31px;height:31px;color:var(--muted);background:0 0;border-radius:9px;place-items:center;display:grid;position:absolute;top:12px;right:12px}@keyframes pulse{50%{box-shadow:0 0 0 7px #f2be6800,0 0 11px var(--accent);transform:scale(.78)}}@keyframes draw-curve{0%{stroke-dashoffset:210px}}@keyframes node-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cloud-drift-a{50%{transform:translate(9%,4%)scale(1.06)}}@keyframes cloud-drift-b{50%{transform:translate(-11%,3%)scale(.84)}}@keyframes cloud-drift-c{50%{transform:translate(7%,-8%)scale(.95)}}@keyframes rain-fall{to{transform:translate(-32px,130vh)rotate(14deg)}}@keyframes lightning{0%,4%,7%,to{opacity:0}5%,6%{opacity:.7}}@keyframes sun-breathe{50%{opacity:.9;transform:scale(1.1)}}@keyframes mote{50%{opacity:.95;transform:translate(15px,-20px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes radar{to{transform:rotate(360deg)}}@keyframes incident-pulse{50%{box-shadow:0 0 0 10px #ff8f7500,0 0 18px #ff8f75d9}}@keyframes ambient-turn{to{transform:rotate(360deg)}}@media (max-width:1200px){.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.widget-wrap[style*=span\ 4],.widget-wrap[style*=span\ 3]{grid-column:span 3!important}.device-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.forecast-map-row{grid-template-columns:80px repeat(2,minmax(145px,1fr))}.forecast-map-row>b{grid-row:span 2}.p2000-layout{grid-template-columns:1fr}.p2000-radar,.p2000-list-panel{min-height:auto}}@media (max-width:900px){.app-frame{grid-template-columns:1fr}.side-rail{width:255px;height:auto;transition:transform .28s;position:fixed;top:0;bottom:0;left:0;transform:translate(-104%);box-shadow:20px 0 60px #00000059}.side-rail.is-open{transform:translate(0)}.mobile-menu{display:grid}.topbar{padding:24px 22px 18px}.experience,.catalogue,.p2000-layout,.settings-shell{padding-left:22px;padding-right:22px}.settings-grid{grid-template-columns:1fr}.settings-card.span-two{grid-column:auto}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.widget-wrap[style*=span\ 3],.widget-wrap[style*=span\ 4],.widget-wrap[style*=span\ 2]{grid-column:span 2!important}.settings-card{padding:17px}.mapping-grid,.forecast-map-row{grid-template-columns:1fr}.forecast-map-row>b{grid-row:auto;padding:0}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.homey-flow{flex-direction:column;align-items:flex-start}.homey-flow svg{transform:rotate(90deg)}.stage-toolbar{flex-direction:column;align-items:flex-start}.catalogue-toolbar{flex-direction:column;align-items:stretch}.search-box{max-width:none}.device-catalogue-grid{grid-template-columns:1fr}}@media (max-width:600px){.topbar h1{font-size:27px}.topbar p{font-size:12px}.experience{min-height:0}.dashboard-grid{grid-template-columns:1fr}.widget-wrap,.widget-wrap[style*=span]{grid-column:span 1!important}.hero-inner{grid-template-columns:1fr}.hero-side{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.hero-side-item{gap:4px;padding:8px 0;display:grid}.hero-temp{font-size:87px}.hero-condition{font-size:27px}.hero-meta{gap:11px;font-size:11px}.forecast-strip{padding-bottom:5px}.p2000-layout{display:block}.p2000-list-panel{margin-top:14px}.radar-field{height:min(78vw,380px)}.settings-tabs{flex-wrap:nowrap;padding-bottom:3px;overflow:auto}.settings-tabs button{white-space:nowrap}.auth-card{padding:26px 21px}.widget{padding:15px}.curve-days{font-size:8px}.metric-widget{min-height:165px}.stage-toolbar h2{font-size:23px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.three-card{transform:none!important}}.reduced-motion *{transition-duration:.01ms!important;animation:none!important}
