*{box-sizing:border-box}:root{--bg:#07100e;--panel:#0d1715;--panel2:#111d1a;--line:#20302b;--text:#edf7f2;--muted:#81928b;--green:#55e6a5;--green2:#25b77c}body{margin:0;background:var(--bg);color:var(--text);font:15px Inter,system-ui,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.auth-page{min-height:100vh;background:radial-gradient(circle at 20% 30%,#123329 0,transparent 34%),#07100e}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.hero{padding:9vh 9vw;display:flex;flex-direction:column;justify-content:center}.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.7px}.brand b,.mobile-brand b{color:var(--green)}.ant-logo{display:grid;place-items:center;width:35px;height:35px;border:1px solid #2f745b;background:#102b22;color:var(--green);border-radius:10px}.hero h1{font-size:clamp(48px,6vw,86px);line-height:.98;margin:70px 0 28px;letter-spacing:-4px}.hero h1 em{font-style:normal;color:var(--green)}.hero>p{max-width:620px;color:#9aaba4;font-size:18px;line-height:1.7}.hero-stats{display:flex;gap:35px;margin-top:60px;color:var(--muted)}.hero-stats span{border-left:2px solid #285444;padding-left:14px}.hero-stats b{display:block;color:#d9e9e2;margin-bottom:5px}.auth-card{align-self:center;width:min(460px,90%);background:#0d1715;border:1px solid #20332c;border-radius:24px;padding:34px;margin:auto}.mobile-brand{display:none}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#08110f;border-radius:11px;padding:5px;margin-bottom:30px}.tabs a{text-align:center;padding:11px;color:var(--muted);border-radius:8px}.tabs a.active{background:#15251f;color:var(--green)}
h2{margin:0 0 8px;font-size:27px}.muted{color:var(--muted)}label{display:block;color:#a9b8b2;font-size:13px;margin:19px 0 7px}input,select{width:100%;background:#09120f;border:1px solid #263a33;color:white;border-radius:10px;padding:13px 14px;outline:none}input:focus,select:focus{border-color:#46c994}button,.section-title>a,.empty a{border:0;background:var(--green2);color:#04110c;font-weight:800;border-radius:10px;padding:13px 17px;cursor:pointer}form>button{width:100%;margin-top:24px;display:flex;justify-content:space-between}.secure{text-align:center;color:#667970;font-size:12px;margin-top:25px}.alert{padding:11px 13px;border-radius:9px;margin:15px 0}.alert.error{background:#3b171b;color:#ff9ca5}.alert.success{background:#123225;color:#72e8ad}.app{display:grid;grid-template-columns:245px 1fr;min-height:100vh}aside{border-right:1px solid var(--line);padding:25px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;background:#09120f}aside nav{margin-top:45px;display:grid;gap:8px}aside nav a{padding:12px 14px;color:#899b94;border-radius:9px}aside nav a.active,aside nav a:hover{background:#14231e;color:var(--green)}.side-foot{margin-top:auto;color:#82948c;display:grid;gap:10px;font-size:12px}.side-foot small{font-size:10px;color:#50645c}.side-foot span{color:#4f615a}.online-dot{display:inline-block;width:8px;height:8px;background:var(--green);border-radius:50%;margin-right:5px}main{padding:0 38px 30px;max-width:1500px;width:100%;margin:auto}header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #182721}header h2{font-size:25px}header p{margin:4px 0;color:var(--muted)}.user{display:flex;align-items:center;gap:10px}.user>span{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#17362a;color:var(--green);font-weight:800}.user a{color:#72847d;margin-left:8px;font-size:12px}
.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:28px 0}.summary article{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:20px;display:flex;gap:16px}.ico,.device-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:11px;background:#123126;color:var(--green);font-weight:900}.summary small,.control small{display:block;color:#71847c;font-size:10px;font-weight:800;letter-spacing:.7px}.summary strong{display:block;font-size:28px;margin:5px 0}.summary strong sup{font-size:14px}.summary em{font-style:normal;color:#788b83;font-size:12px}.green{color:var(--green)}.section-title{display:flex;align-items:end;justify-content:space-between;margin:38px 0 16px}.section-title h3{margin:0;font-size:20px}.section-title p{margin:5px 0 0;color:var(--muted)}.section-title>a{font-size:13px}.device-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.device,.empty{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:20px}.device-head{display:flex;justify-content:space-between}.badge{font-size:10px;color:#83958d}.badge.on{color:var(--green)}.device h3{margin-bottom:5px}.device>p{color:var(--muted);font-size:12px}.device-data{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:18px;padding-top:15px}.device-data span{color:var(--muted);font-size:12px}.device-data b{display:block;color:white;font-size:18px;margin-top:4px}.empty{text-align:center;grid-column:1/-1;padding:40px}.empty>div{font-size:30px;color:var(--green)}.empty p{color:var(--muted);margin-bottom:25px}.control{margin-top:25px;background:linear-gradient(120deg,#0d1815,#10231c);border:1px solid #234537;border-radius:15px;padding:22px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:30px}.control h3{margin:5px 0}.control p{margin:0;color:var(--muted)}.temp-control{display:flex;align-items:center;gap:13px}.temp-control button{padding:8px 12px}.temp-control strong{font-size:24px}.mode{display:flex;background:#09120f;padding:4px;border-radius:9px}.mode span{padding:9px 12px;color:#71847c}.mode span.active{background:#173429;color:var(--green);border-radius:7px}footer{text-align:center;color:#4e6159;font-size:11px;margin-top:35px}footer b{color:#58b68f}.simple-page{min-height:100vh}.simple-wrap{max-width:900px;margin:50px auto;padding:20px}.back{color:var(--green)}.device-form{display:grid;grid-template-columns:2fr 1fr 2fr auto;gap:10px;margin:30px 0}.device-form button{margin:0}.list>div{display:flex;justify-content:space-between;background:var(--panel);border:1px solid var(--line);padding:15px;border-radius:10px;margin:8px 0}.list span{color:var(--muted);font-size:12px}
@media(max-width:900px){.auth-shell{grid-template-columns:1fr}.hero{display:none}.auth-card{margin:40px auto}.mobile-brand{display:block;text-align:center;margin-bottom:25px;font-weight:800}.app{grid-template-columns:70px 1fr}aside{padding:20px 10px}aside .brand span:not(.ant-logo),aside nav span,.side-foot{display:none}aside nav a{text-align:center}.summary{grid-template-columns:1fr}.device-grid{grid-template-columns:1fr}.control{grid-template-columns:1fr}.device-form{grid-template-columns:1fr}main{padding:0 18px 25px}header .user b{display:none}}@media(max-width:560px){.app{display:block}aside{height:64px;position:fixed;z-index:10;bottom:0;top:auto;left:0;right:0;width:100%;border:0;border-top:1px solid var(--line);display:block}aside .brand{display:none}aside nav{margin:0;display:flex;justify-content:space-around}aside nav a{padding:10px 14px}main{padding-bottom:90px}.summary{margin-top:18px}header{height:85px}.user a{font-size:0}.user a:after{content:'↪';font-size:18px}.hero-stats{display:none}.auth-card{padding:25px}}

.scan-status{align-self:center;color:#91a2b8;font-size:13px}.available-grid{margin-bottom:26px}.device.available{border-color:#244e43;position:relative}.device.available:before{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 35px rgba(62,207,142,.035);pointer-events:none}
.setup-btn{margin-top:18px;width:100%;border:1px solid #2b755e;background:#12372e;color:#72e3b3;border-radius:10px;padding:11px 15px;font-weight:700;cursor:pointer}.setup-btn:hover{background:#194a3d}.device-manager{margin-bottom:30px}
nav form{display:contents}.nav-btn{width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px}.nav-btn:hover,.nav-btn.active{background:#13231f;color:#6fe0ae}.link-button{border:0;background:transparent;color:#61dca7;font:inherit;font-weight:700;cursor:pointer;padding:0}.link-button:hover{text-decoration:underline}
.setup-panel{margin:28px 0;background:linear-gradient(120deg,#0d1815,#10271f);border:1px solid #2b6852;border-radius:16px;padding:24px;display:grid;grid-template-columns:1fr 1.2fr;gap:35px;align-items:start}.setup-panel small{color:var(--green);font-size:10px;font-weight:800;letter-spacing:.8px}.setup-panel h3{font-size:22px;margin:7px 0}.setup-panel p{color:var(--muted);font-size:12px}.setup-form label{margin-top:0}.setup-form label+input,.setup-form label+select{margin-bottom:14px}.setup-form button{margin-top:8px}.device form{margin:0}.device form .setup-btn{display:block}
@media(max-width:900px){.setup-panel{grid-template-columns:1fr}}
.system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.system-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:21px}.system-card.paired{border-color:#285444}.system-card.unpaired{border-style:dashed}.system-head{display:flex;justify-content:space-between;gap:15px;align-items:start}.system-head small,.system-main small{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.7px}.system-head h3{margin:6px 0 0}.system-main{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.system-main strong{display:block;font-size:22px;margin-top:5px}.system-main sup{font-size:11px}.system-devices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.system-devices span{background:#09120f;border-radius:9px;padding:11px;color:#a6b5af;font-size:12px}.system-devices b{color:white;margin-right:5px}.system-devices em{float:right;color:var(--green);font-style:normal;font-size:9px}.system-foot{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:14px}@media(max-width:1000px){.system-grid{grid-template-columns:1fr}}@media(max-width:600px){.system-main{grid-template-columns:1fr 1fr}.system-devices{grid-template-columns:1fr}.system-foot{display:grid;gap:6px}}

/* Rendszerkartya - az eredeti dashboard csempes stilusaban */
.system-grid{grid-template-columns:1fr!important}.system-card{background:linear-gradient(135deg,#0d1715,#101f1a)!important;border:1px solid #203a31!important;border-radius:15px!important;padding:0!important;overflow:hidden}.system-card.paired{border-color:#285444!important}.system-head{padding:20px 22px 16px;align-items:center}.system-head h3{font-size:20px;margin:5px 0 0}.system-head .badge{background:#102d23;border:1px solid #235541;padding:7px 10px;border-radius:20px}.system-main{margin:0!important;padding:0 22px 20px!important;border:0!important;grid-template-columns:repeat(4,1fr)!important;gap:12px!important}.system-main>div{background:#09120f;border:1px solid #1d3029;border-radius:12px;padding:16px}.system-main strong{font-size:27px!important;color:#edf7f2}.system-main>div:first-child strong{color:var(--green)}.system-devices{padding:18px 22px;border-top:1px solid var(--line);grid-template-columns:1fr 1fr!important}.system-devices span{padding:14px 16px!important;border:1px solid #1b3028}.system-devices em{background:#102d23;padding:3px 7px;border-radius:10px}.system-foot{margin:0!important;padding:0 22px 18px}.system-foot span:first-child{color:var(--green);font-weight:700}@media(max-width:700px){.system-main{grid-template-columns:1fr 1fr!important}.system-devices{grid-template-columns:1fr!important}}

.monitor-card{background:linear-gradient(145deg,#0d1715,#101f1b);border:1px solid var(--line);border-radius:18px;padding:20px;margin:22px 0}.monitor-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.monitor-head h3{margin:0}.monitor-head span{color:var(--muted);font-size:12px}.chart-wrap{height:320px}.state-history{display:grid;gap:8px}.state-history>div{display:grid;grid-template-columns:70px 1fr auto;gap:14px;align-items:center;background:#09120f;border:1px solid #1b2c26;border-radius:10px;padding:11px 13px}.state-history b{color:var(--green)}.state-history span,.state-history small{color:var(--muted)}.system-monitor-btn{margin-left:auto;padding:7px 11px!important;width:auto!important;background:#17362a!important;color:var(--green)!important;border:1px solid #285444!important}@media(max-width:700px){.chart-wrap{height:260px}.state-history>div{grid-template-columns:1fr}.system-foot{flex-wrap:wrap}}
