*{box-sizing:border-box}:root{--primary: #25f4b8;--primary-dark: #1db98b;--bg-dark: #0a0a0c;--card-bg: #16161a;--border: #2a2a30;--text-muted: #8a8a90}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:justify-end}.flex-1{flex:1 1 0%}.flex-none{flex:none}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pt-4{padding-top:1rem}.pt-8{padding-top:2rem}.pb-0{padding-bottom:0}.m-0{margin:0}.relative{position:relative}.absolute{position:absolute}.right-3{right:.75rem}.top-1\/2{top:50%}.-translate-y-1\/2{transform:translateY(-50%)}.pr-12{padding-right:3rem!important}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.ml-2{margin-left:.5rem}.mr-auto{margin-right:auto}.w-full{width:100%}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.border{border:1px solid var(--border)}.border-t{border-top:1px solid var(--border)}.border-dashed{border-style:dashed}.border-white\/5{border-color:#ffffff0d}.bg-\[\#202026\]{background-color:#202026}.bg-\[\#1a1a20\]{background-color:#1a1a20}.border-\[\#2a2a30\]{border-color:#2a2a30}.bg-black\/20{background-color:#0003}.bg-black\/40{background-color:#0006}.hover\:border-primary:hover{border-color:var(--primary)}.hover\:bg-black\/40:hover{background-color:#0006}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-5xl{font-size:3rem;line-height:1}.text-\[10px\]{font-size:10px}.text-white{color:#fff}.text-primary{color:var(--primary)}.text-gray-300{color:#d1d5db}.text-gray-400{color:#9ca3af}.hover\:text-white:hover{color:#fff}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-red-500{color:#ef4444}.text-yellow-500{color:#f59e0b}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-black{font-weight:900}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.tracking-tighter{letter-spacing:-.05em}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leading-relaxed{line-height:1.625}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.space-y-2>*+*{margin-top:.5rem}.space-y-6>*+*{margin-top:1.5rem}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-\[\#1a1a20\]{--tw-gradient-from: #1a1a20;--tw-gradient-to: rgba(26, 26, 32, 0);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}body{background-color:var(--bg-dark);color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;margin:0;overflow:hidden;height:100vh;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable=true]{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}.object-cover{object-fit:cover}.lock-scroll{overflow:hidden}.glow{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 50% -20%,rgba(37,244,184,.15),transparent 70%);pointer-events:none;z-index:-1}.login-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-dark);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.login-card{position:relative;background:var(--card-bg);padding:2.5rem;border-radius:1.5rem;border:1px solid var(--border);width:100%;max-width:400px;box-shadow:0 20px 50px #00000080}.login-mqtt-credential-btn{position:absolute;top:1rem;right:1rem;width:2.2rem;height:2.2rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#ffffff09;color:var(--text-muted);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease}.login-card h2{font-size:1.5rem;font-weight:700;margin-bottom:.2rem;text-align:center;letter-spacing:-.03em}.login-subtitle{color:var(--text-muted);font-size:.875rem;text-align:center;margin-bottom:2rem}.login-card input{width:100%;background:#202026;border:1px solid var(--border);padding:.75rem 1rem;border-radius:.75rem;color:#fff;margin-bottom:1rem;outline:none;transition:border-color .2s}.login-card input:focus{border-color:var(--primary)}.login-kontrol-block{margin-bottom:1.1rem}.login-kontrol-button{width:100%;border:1px solid rgba(255,255,255,.08);background:#ffffff06;color:#fff;border-radius:1rem;padding:.95rem 1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease,opacity .2s ease;text-align:center;opacity:.92;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.login-kontrol-button:hover{transform:translateY(-1px);border-color:#25f4b838;background:#ffffff0a;opacity:1}.login-kontrol-button-value{font-size:1.02rem;font-weight:800;letter-spacing:-.02em;text-align:center}.login-kontrol-list{display:flex;flex-direction:column;gap:.5rem;padding:0 1.5rem}.login-kontrol-option{width:100%;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#fff;border-radius:.85rem;padding:.85rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;text-align:left;cursor:pointer;transition:all .2s ease}.login-kontrol-option:hover{border-color:#25f4b859;background:#25f4b814}.login-kontrol-option.active{border-color:#25f4b88c;background:#25f4b81f;box-shadow:0 0 0 1px #25f4b826 inset}.login-kontrol-option-label{font-weight:700;line-height:1.25}.login-kontrol-option-state{flex:0 0 auto;font-size:.72rem;font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:.08em}.login-kontrol-empty{padding:.9rem 1rem;border-radius:.85rem;border:1px dashed rgba(255,255,255,.12);color:var(--text-muted);text-align:center;font-size:.85rem}.login-kontrol-form{margin-top:1.25rem;padding-top:1.25rem;padding:0 1.5rem 1.5rem;border-top:1px solid rgba(255,255,255,.06)}.login-error{color:#ff6b6b;font-size:.75rem;margin-bottom:1rem;min-height:1rem;opacity:0;transition:opacity .2s}.login-error.visible{opacity:1}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;gap:.5rem}.btn.primary{background:var(--primary);color:#000}.btn.login-online{background:#25f4b8;color:#000}.btn.login-online:hover{background:#1db98b;transform:translateY(-1px)}.btn.login-offline{background:#ef4444;color:#fff}.btn.login-offline:hover{background:#dc2626;transform:none}.btn.primary:hover{background:var(--primary-dark);transform:translateY(-1px)}.btn.primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.login-offline:disabled,.btn.login-online:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.ghost{background:transparent;color:#fff;border:1px solid var(--border)}.btn.ghost:hover{background:#ffffff0d}.btn.ghost.active{background:var(--primary);border-color:var(--primary);color:#000;font-weight:700}.btn.ghost.active:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:#000}.btn.small{padding:.5rem 1rem;font-size:.875rem}.login-spinner{width:.95rem;height:.95rem;border-radius:9999px;border:2px solid rgba(0,0,0,.22);border-top-color:currentColor;display:inline-block;animation:login-spin .8s linear infinite}@keyframes login-spin{to{transform:rotate(360deg)}}.btn.icon-btn{padding:.5rem;width:2.5rem;height:2.5rem;border-radius:.5rem;background:#ffffff0d;color:#fff}.btn.icon-btn:hover{background:#ffffff1a}.app{max-width:1200px;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;height:100vh;max-height:100vh}.task-view{flex:1;overflow-y:auto;min-height:0;padding-right:4px}.task-view::-webkit-scrollbar{width:4px}.task-view::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-shrink:0}@media(max-width:640px){.app{padding:1rem}.top-bar{flex-direction:column;text-align:center;gap:.75rem;margin-bottom:1rem}.app-footer{padding:.5rem;margin-top:.5rem}.task-card-body{padding:.75rem}.task-main-btn{width:126px;height:126px;border-width:7px;gap:.08rem}.label-top{max-width:92%;font-size:.5rem;margin-bottom:0}.task-main-btn .value{font-size:1.75rem}.task-main-btn .unit{font-size:.55rem}.label-bottom{max-width:92%;font-size:.56rem;padding:.16rem .38rem;margin-top:.15rem}.status-inline{font-size:.68rem;padding:.3rem .65rem}.status-inline-icon{width:.9rem;height:.9rem;font-size:.58rem}}.app-footer{text-align:center;padding:.75rem 1rem;margin-top:auto;border-top:1px solid rgba(255,255,255,.05);color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:lowercase;flex-shrink:0}.pagination-container{display:flex;align-items:center;justify-content:center;gap:1.5rem}.pagination-dots{display:flex;gap:.5rem}.pagination-dots .dot{width:8px;height:8px;border-radius:50%;background:#ffffff1a;cursor:pointer;transition:all .3s ease}.pagination-dots .dot.active{background:var(--primary);transform:scale(1.3);box-shadow:0 0 10px var(--primary)}.eyebrow{font-size:1.25rem;letter-spacing:-.02em;color:var(--primary);margin:0;font-weight:800}@media(max-width:640px){.eyebrow{font-size:1.75rem;font-weight:900}}.status-stack{display:flex;align-items:center;gap:.75rem}@media(max-width:640px){.status-stack{width:100%;justify-content:center;gap:.5rem}}.status-inline{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;font-size:.75rem;font-weight:800;padding:.35rem .8rem;border-radius:1rem;background:#ffffff0d;white-space:nowrap;line-height:1.2;border:1px solid rgba(255,255,255,.08);overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 12px #0000001f}.status-inline-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1rem;height:1rem;border-radius:999px;font-size:.65rem;line-height:1;font-weight:900;background:#ffffff14}.status-inline-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge-success{color:#25f4b8;background:#25f4b81a}.badge-danger{color:#ff6b6b;background:#ff6b6b1a}.badge-warn{color:#ffd93d;background:#ffd93d1a}.badge-info{color:#4dabf7;background:#4dabf71a}.badge-muted{color:var(--text-muted);background:#ffffff0d}.task-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}@media(max-width:640px){.task-grid{margin-bottom:1rem;gap:.75rem}}@media(min-width:768px){.task-grid{gap:1.5rem}}.task-card{background:var(--card-bg);border:1px solid var(--border);border-radius:.75rem;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:200px;transition:transform .2s}@media(min-width:768px){.task-card{min-height:280px}}.task-card:hover{transform:translateY(-4px)}.task-card-header{background:var(--primary);color:#000;padding:.4rem .75rem;font-weight:800;letter-spacing:.05em;font-size:.875rem;text-align:center;cursor:pointer;transition:opacity .2s;height:3rem;display:flex;align-items:center;justify-content:center;line-height:1.1;overflow:hidden}.task-card-header:hover{opacity:.9}.task-card-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem}.task-main-btn{width:140px;height:140px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#1a1a1e,#0a0a0c);border:8px solid #333;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:inset 0 0 20px #000c,0 10px 30px #00000080}.task-main-btn:after{content:"";position:absolute;top:5%;left:15%;width:70%;height:40%;background:linear-gradient(to bottom,rgba(255,255,255,.05) 0%,transparent 100%);border-radius:50%/100% 100% 0 0;pointer-events:none}@media(min-width:640px){.task-main-btn{width:180px;height:180px;border-width:10px}}@media(min-width:1024px){.task-main-btn{width:200px;height:200px}}.glow-ring{position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:50%;background:conic-gradient(var(--primary) var(--progress, 0%),transparent 0);-webkit-mask:radial-gradient(transparent 65%,black 67%);mask:radial-gradient(transparent 65%,black 67%);opacity:.1;filter:none;transition:opacity .3s;pointer-events:none;z-index:0}.glow-ring:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid rgba(255,255,255,.05);box-sizing:border-box}.status-btn-on .glow-ring{opacity:.8;filter:none;animation:rotate-glow 10s linear infinite}@keyframes rotate-glow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.value-container{display:flex;align-items:baseline;gap:2px;z-index:1}.label-top{max-width:calc(100% - 1rem);font-size:.54rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.1rem;z-index:1;font-weight:900;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-main-btn .value{font-size:2rem;font-weight:900;line-height:1;color:#fff}@media(min-width:640px){.task-main-btn .value{font-size:3rem}}@media(min-width:1024px){.task-main-btn .value{font-size:4rem}}.task-main-btn .unit{font-size:.6rem;font-weight:900;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase}.label-bottom{display:inline-flex;align-self:center;max-width:calc(100% - 1rem);width:fit-content;font-size:.62rem;color:var(--text-muted);margin-top:.25rem;padding:.2rem .45rem;border-radius:999px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);z-index:1;font-weight:900;letter-spacing:.08em;text-transform:uppercase;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-main-btn .spinner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0006;border-radius:50%}.task-main-btn .spinner-inner{width:2rem;height:2rem;border:2px solid rgba(255,255,255,.1);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media(min-width:640px){.task-main-btn .unit{font-size:.68rem}}@media(max-width:640px){.theme-light .status-inline{padding:.28rem .6rem}.theme-light .label-bottom{background:#fffffff2}}.status-btn-on{border-color:#00ff45!important;box-shadow:inset 0 0 18px #00ff453d,0 0 12px #00ff45ad,0 8px 34px #00ff4552!important}.status-btn-on .glow-ring{opacity:1;filter:drop-shadow(0 0 4px rgba(0,255,69,.9))}.status-btn-on-auto .glow-ring{background:#00ff45!important;animation:none!important;transform:none!important}.status-btn-on-manual .glow-ring{background:conic-gradient(from -90deg,#ff002b 0 var(--progress, 0%),#00ff45 var(--progress, 0%) 100%)!important;animation:rotate-glow 10s linear infinite;filter:drop-shadow(0 0 4px rgba(0,255,69,.85))}.status-btn-on .value,.status-btn-on .unit,.status-btn-on .label-top,.status-btn-on .label-bottom{color:#fff!important;opacity:1;font-weight:900;text-shadow:none!important}.status-btn-on .label-bottom{border-color:#00ff459e!important;background:#00ff4529!important}.status-btn-on-manual .label-bottom{border-color:#ff002b94!important;background:#ff002b29!important}.status-btn-off{border-color:#ff002b!important;box-shadow:inset 0 0 18px #ff002b3d,0 0 12px #ff002bb8,0 8px 34px #ff002b57!important}.status-btn-off .glow-ring{background:#ff002b!important;opacity:1;filter:drop-shadow(0 0 4px rgba(255,0,43,.95));animation:pulse-red-ring 1.45s ease-in-out infinite}@keyframes pulse-red-ring{0%,to{opacity:.9}50%{opacity:1}}.status-btn-off .value,.status-btn-off .unit,.status-btn-off .label-top,.status-btn-off .label-bottom{color:#fff!important;opacity:1;font-weight:900;text-shadow:none!important}.status-btn-off .label-bottom{border-color:#ff002b9e!important;background:#ff002b29!important}.status-btn-offline{border-color:#555!important;cursor:not-allowed;opacity:.8}.status-btn-offline .glow-ring{display:none}.status-btn-offline .value,.status-btn-offline .unit,.status-btn-offline .label-top,.status-btn-offline .label-bottom{color:#666!important;text-shadow:none!important;font-weight:800}.theme-light{--bg-dark: #f3f4f6;--card-bg: #ffffff;--border: #dbe3ee;--text-muted: #475569;--surface-strong: #ffffff;--surface-soft: #f8fafc;--surface-muted: #e2e8f0;--text-strong: #0f172a;color:var(--text-strong);background:linear-gradient(180deg,#f8fafc,#eef2f7)}.theme-light .text-white{color:var(--text-strong)}.theme-light .text-gray-300{color:#334155}.theme-light .text-gray-400{color:#475569}.theme-light .text-gray-500{color:#64748b}.theme-light .text-gray-600{color:#334155}.theme-light .hover\:text-white:hover{color:var(--text-strong)}.theme-light .bg-\[\#202026\],.theme-light .bg-\[\#1a1a20\],.theme-light .bg-black\/20,.theme-light .bg-black\/40,.theme-light .bg-white\/5,.theme-light .bg-white\/10{background-color:var(--surface-strong);color:var(--text-strong)}.theme-light .border-\[\#2a2a30\],.theme-light .border-white\/5,.theme-light .border-white\/10{border-color:var(--surface-muted)}.theme-light .bg-gradient-to-br{background-image:linear-gradient(135deg,#fff,#f1f5f9)}.theme-light .from-\[\#1a1a20\]{--tw-gradient-from: #ffffff;--tw-gradient-to: rgba(255, 255, 255, 0);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.theme-light .hover\:bg-white\/5:hover,.theme-light .hover\:bg-white\/10:hover,.theme-light .hover\:bg-black\/40:hover,.theme-light .hover\:bg-\[\#25252c\]:hover{background-color:#e2e8f0}.theme-light .login-screen{background:linear-gradient(180deg,#f8fafc,#eef2f7)}.theme-light .modal{background:#0f172a3d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.theme-light .global-spinner{background:#f8fafcd1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.theme-light .btn.ghost{color:var(--text-strong);border-color:var(--surface-muted);background:#ffffffd9}.theme-light .btn.ghost:hover{background:#0f172a14}.theme-light .btn.icon-btn{background:#fff;border:1px solid var(--surface-muted);color:var(--text-strong);box-shadow:0 6px 18px #0f172a14}.theme-light .btn.icon-btn:hover{background:#f1f5f9;box-shadow:0 8px 22px #0f172a1f}.theme-light .task-setup-btn{background:#0f172a0a;color:#334155}.theme-light .task-setup-btn:hover{background:#0f172a14;color:var(--text-strong)}.theme-light .task-select select{color:var(--text-strong)}.theme-light .login-subtitle,.theme-light .help,.theme-light .modal-header .meta,.theme-light .item .meta,.theme-light .app-footer,.theme-light .schedule-add-btn,.theme-light .schedule-add-btn .label,.theme-light .schedule-item-btn .duration,.theme-light .tab-btn,.theme-light .modal-close{color:#475569}.theme-light .item .title{color:var(--text-strong)}.theme-light .login-card,.theme-light .task-card,.theme-light .modal-card,.theme-light .status-card,.theme-light .item,.theme-light .schedule-item-btn,.theme-light .schedule-add-btn,.theme-light .toast{background:var(--surface-strong);color:var(--text-strong);box-shadow:0 12px 30px #0f172a14}.theme-light .login-mqtt-credential-btn{position:absolute;top:1rem;right:1rem;width:2.2rem;height:2.2rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#ffffff09;color:var(--text-muted);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease}.login-mqtt-credential-btn:hover,.login-mqtt-credential-btn:focus-visible{color:var(--primary);border-color:#25f4b859;background:#25f4b814;transform:translateY(-1px);outline:none}.login-mqtt-credential-btn svg{width:1.15rem;height:1.15rem;fill:currentColor}.theme-light .login-mqtt-credential-btn{border-color:#94a3b847;background:#ffffffa6;color:#475569}.login-card h2{color:var(--text-strong)}.theme-light .login-kontrol-button{background:#0f172a09;border-color:#94a3b847;color:var(--text-strong);box-shadow:0 8px 18px #0f172a0d}.theme-light .login-kontrol-button:hover{background:#0f172a0f;border-color:#25f4b852}.theme-light .login-kontrol-button-value{color:var(--text-strong)}.theme-light .login-kontrol-button-label{color:#64748b}.theme-light .login-kontrol-option{background:#0f172a08;border-color:#94a3b833;color:var(--text-strong)}.theme-light .login-kontrol-option:hover{background:#25f4b814;border-color:#25f4b847}.theme-light .login-kontrol-option.active{background:#25f4b81f;border-color:#25f4b866}.theme-light .login-kontrol-option-state{color:#0f766e}.theme-light .login-kontrol-empty{color:#64748b;border-color:#94a3b83d;background:#0f172a05}.theme-light .login-kontrol-form{border-top-color:#94a3b829}@media(max-width:640px){.login-kontrol-modal{width:min(100vw - 1rem,560px);max-height:calc(100vh - 1rem)}.login-kontrol-modal .modal-header,.login-kontrol-list,.login-kontrol-form{padding-left:1rem;padding-right:1rem}}.theme-light .task-card-header{color:var(--text-strong)}.theme-light .task-card-header:hover{opacity:1;background:#dbeafe}.theme-light .task-main-btn{background:radial-gradient(circle at 30% 30%,#fff,#e2e8f0);border-color:#cbd5e1;box-shadow:inset 0 0 20px #94a3b826,0 10px 30px #0f172a14}.theme-light .task-main-btn:after{background:linear-gradient(to bottom,rgba(255,255,255,.65) 0%,transparent 100%)}.theme-light .task-main-btn .value{color:#020617;text-shadow:0 1px 0 rgba(255,255,255,.95),0 0 10px rgba(255,255,255,.45);-webkit-text-stroke:.5px rgba(15,23,42,.12)}.theme-light .task-main-btn .unit,.theme-light .label-top,.theme-light .label-bottom{color:#334155}.theme-light .label-bottom{background:#0f172a0f;border-color:#94a3b847;color:#0f172a}.theme-light .status-btn-on .label-bottom{color:#047857;background:#10b98124;border-color:#10b9812e}.theme-light .status-btn-off .label-bottom{color:#b91c1c;background:#ef444424;border-color:#ef44442e}.theme-light .status-btn-offline .label-bottom{color:#475569!important;background:#94a3b82e;border-color:#94a3b83d}.theme-light .status-btn-on{box-shadow:inset 0 0 10px #00ff4524,0 0 0 2px #00ff452e!important}.theme-light .status-btn-off{box-shadow:inset 0 0 10px #ff002b24,0 0 0 2px #ff002b2e!important}.theme-light .status-btn-on .glow-ring,.theme-light .status-btn-on-manual .glow-ring,.theme-light .status-btn-off .glow-ring{filter:none!important}.theme-light .status-btn-on .value,.theme-light .status-btn-on .unit,.theme-light .status-btn-on .label-top,.theme-light .status-btn-on .label-bottom,.theme-light .status-btn-off .value,.theme-light .status-btn-off .unit,.theme-light .status-btn-off .label-top,.theme-light .status-btn-off .label-bottom{color:#020617!important;text-shadow:none!important}.theme-light .task-main-btn .spinner{background:#ffffff8c}.theme-light .task-main-btn .spinner-inner{border-color:#0f172a1f;border-top-color:var(--primary)}.theme-light .top-bar .btn.icon-btn{color:var(--text-strong)}.theme-light .modal-header,.theme-light .tab-bar,.theme-light .modal-footer,.theme-light .app-footer,.theme-light .top-bar{border-color:#94a3b838}.theme-light .app-footer{border-top:1px solid rgba(148,163,184,.22)}.theme-light .modal-card{background:var(--surface-strong);color:var(--text-strong)}.theme-light input,.theme-light select,.theme-light .login-card input,.theme-light .login-card select,.theme-light .form-group input,.theme-light .form-group select{background:var(--surface-soft);color:var(--text-strong);border-color:var(--surface-muted)}.theme-light .status-inline,.theme-light .badge-muted{background:#0f172a14;color:#1e293b}.theme-light .status-inline{background:#fffffff5;color:#0f172a;border:1px solid rgba(148,163,184,.42);box-shadow:0 8px 18px #0f172a14}.theme-light .status-inline-icon{background:#0f172a1a;color:#0f172a}.theme-light .status-inline.badge-success .status-inline-icon{background:#10b98133;color:#047857}.theme-light .status-inline.badge-danger .status-inline-icon{background:#ef444433;color:#b91c1c}.theme-light .status-inline.badge-warn .status-inline-icon{background:#f59e0b38;color:#a16207}.theme-light .status-inline.badge-info .status-inline-icon{background:#3b82f633;color:#1d4ed8}.theme-light .badge-success{color:#065f46;background:#10b9812e;border:1px solid rgba(16,185,129,.2)}.theme-light .badge-danger{color:#991b1b;background:#ef44442e;border:1px solid rgba(239,68,68,.2)}.theme-light .badge-warn{color:#92400e;background:#f59e0b2e;border:1px solid rgba(245,158,11,.22)}.theme-light .badge-info{color:#1e40af;background:#3b82f62e;border:1px solid rgba(59,130,246,.2)}html.theme-light body.has-custom-bg .status-inline{background:#fffffffa;color:#0f172a;border-color:#94a3b880;box-shadow:0 10px 24px #0f172a2e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}html.theme-light body.has-custom-bg .status-inline-text{color:#0f172a}html.theme-light body.has-custom-bg .status-inline-icon{background:#0f172a1f;color:#0f172a}html.theme-light body.has-custom-bg .status-inline.badge-success{color:#065f46;background:#dcfce7fa;border-color:#10b9814d}html.theme-light body.has-custom-bg .status-inline.badge-danger{color:#991b1b;background:#fee2e2fa;border-color:#ef44444d}html.theme-light body.has-custom-bg .status-inline.badge-warn{color:#92400e;background:#fef3c7fa;border-color:#f59e0b4d}html.theme-light body.has-custom-bg .status-inline.badge-info{color:#1e40af;background:#dbeafefa;border-color:#3b82f64d}html.theme-light body.has-custom-bg .status-inline.badge-success .status-inline-icon{background:#10b98138;color:#047857}html.theme-light body.has-custom-bg .status-inline.badge-danger .status-inline-icon{background:#ef444438;color:#b91c1c}html.theme-light body.has-custom-bg .status-inline.badge-warn .status-inline-icon{background:#f59e0b3d;color:#a16207}html.theme-light body.has-custom-bg .status-inline.badge-info .status-inline-icon{background:#3b82f638;color:#1d4ed8}.theme-light .log-chart-panel{border-color:#94a3b847;background:#ffffffe6;box-shadow:0 12px 30px #0f172a14}.theme-light .log-chart-title{color:var(--text-strong)}.theme-light .log-chart-legend-item{border-color:#94a3b838;background:#f8fafcf0;color:#334155}.theme-light .log-chart-legend-item:hover{border-color:#25f4b861}.theme-light .log-chart-legend-item.is-hidden{opacity:.5}.theme-light .log-chart-legend-item.is-active{border-color:#25f4b880;background:#25f4b81f;color:#0f766e}.theme-light .log-chart-legend-item i{box-shadow:0 0 0 3px #25f4b814}.theme-light .log-chart-subtitle{color:#64748b}.theme-light .log-chart-surface{border-color:#94a3b84d;background:radial-gradient(circle at top left,rgba(37,244,184,.12),transparent 34%),radial-gradient(circle at bottom right,rgba(59,130,246,.08),transparent 30%),linear-gradient(180deg,#f8fafc,#e2e8f0);box-shadow:inset 0 1px #ffffffb3,0 10px 24px #0f172a14}.theme-light .log-chart-line{filter:drop-shadow(0 0 4px rgba(37,244,184,.22))}.theme-light .log-chart-line.series-temperature{filter:drop-shadow(0 0 4px rgba(249,115,22,.22))}.theme-light .log-chart-line.series-humidity{filter:drop-shadow(0 0 4px rgba(56,189,248,.22))}.theme-light .log-chart-line.series-soil{filter:drop-shadow(0 0 4px rgba(34,197,94,.22))}.theme-light .log-chart-point{fill:#fff;stroke:var(--primary-dark)}.theme-light .log-chart-point:hover,.theme-light .log-chart-point.is-selected{filter:drop-shadow(0 0 6px rgba(37,244,184,.25))}.theme-light .log-chart-title-empty{color:#ef4444}.theme-light .log-chart-title-has-data{color:#0f172a}.theme-light .log-chart-grid line{stroke:#64748b38}.theme-light .log-chart-tooltip{border-color:#25f4b82e;background:#fffffffa;color:#0f172a;box-shadow:0 14px 28px #0f172a24}.theme-light .log-chart-tooltip:after{border-right-color:#25f4b824;border-bottom-color:#25f4b824}.theme-light .log-chart-tooltip-subtitle,.theme-light .log-chart-meta-row{color:#475569}.theme-light .log-chart-meta-row span{border-color:#94a3b838;background:#f8fafceb}.theme-light .log-chart-point-hint{border-color:#25f4b838;background:#fffffff0;color:#0f172a}.theme-light .log-chart-point-hint span{background:#0f172a0a}.theme-light .log-chart-summary{color:#475569}.theme-light .log-chart-summary span{border-color:#94a3b838;background:#f8fafceb}.theme-light .log-chart-y-axis,.theme-light .log-chart-x-axis{color:#64748b}.theme-light .tag.status-on{color:#047857;background:#10b98124}.theme-light .tag.status-off{color:#b91c1c;background:#ef444424}.theme-light .tag.status-offline,.theme-light .tag.off{color:#475569;background:#94a3b82e}.theme-light .tag{border:1px solid rgba(148,163,184,.2);letter-spacing:.08em;padding-inline:.75rem;line-height:1.2}.theme-light .label-top{color:#0f172a}.theme-light .label-bottom{color:#0f172a;background:#ffffffe6;border-color:#94a3b842}.theme-light .tag.status-on{box-shadow:0 0 0 1px #10b9811f}.theme-light .tag.status-off{box-shadow:0 0 0 1px #ef44441f}.theme-light .tag.status-offline{box-shadow:0 0 0 1px #94a3b81f}.theme-light .task-view::-webkit-scrollbar-thumb,.theme-light .pagination-dots .dot,.theme-light .schedule-item-btn .status-dot{background:#cbd5e1}.theme-ocean{--bg-dark: #0f172a;--card-bg: #1e293b;--border: #334155;--primary: #38bdf8}.theme-sunset{--bg-dark: #1a0f0f;--card-bg: #2d1a1a;--border: #4a2a2a;--primary: #f59e0b}.theme-forest{--bg-dark: #061a06;--card-bg: #0d2a0d;--border: #1a3a1a;--primary: #22c55e}.task-setup-btn{position:absolute;bottom:1rem;right:1rem;background:#ffffff0d;border:1px solid var(--border);color:var(--text-muted);width:2.5rem;height:2.5rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.task-setup-btn:hover{background:#ffffff1a;color:#fff}.task-nav{display:flex;align-items:center;justify-content:center;gap:1.5rem}.task-select select{background:transparent;border:none;color:#fff;font-weight:600;font-size:1rem;cursor:pointer;outline:none}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.modal.calibration-layer{z-index:2400}.modal-card{background:var(--card-bg);border:1px solid var(--border);border-radius:1.5rem;width:100%;max-width:600px;height:80vh;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.modal-card.settings{max-width:800px;width:min(800px,calc(100vw - 2rem));height:80vh;max-height:80vh;min-height:640px}.modal-card.settings .tab-panel{min-height:0}.modal-card.settings .modal-footer{margin-top:auto}.modal-card.credential{max-width:480px;width:min(480px,calc(100vw - 1.5rem));height:auto;max-height:calc(100vh - 2rem)}.modal-card.credential .modal-body{overflow-y:auto}.touch-sensitivity-row{border:1px solid rgba(255,255,255,.08);background:#00000029;border-radius:.75rem;padding:.9rem}.touch-sensitivity-head,.touch-sensitivity-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.touch-sensitivity-head{margin-bottom:.75rem}.touch-sensitivity-footer{margin-top:.75rem;flex-wrap:wrap}.touch-scale-label{min-width:2.5rem;font-size:.68rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.theme-light .touch-sensitivity-row{border-color:#94a3b83d;background:#0f172a08}.modal-card.credential .modal-footer{gap:.75rem}.modal-card.credential .modal-footer .btn{flex:1}@media(max-width:640px){.modal-card.settings{height:80vh;min-height:80vh}.modal-card.credential{width:min(100vw - 1rem,480px)}.modal-card.credential .modal-footer{flex-direction:column-reverse}.modal-card.credential .modal-footer .btn{width:100%}}.modal-card.log{max-width:820px;width:min(820px,calc(100vw - 2rem));height:80vh;max-height:80vh;min-height:640px}.modal-card.log .modal-body{min-height:0;overflow-y:auto}.modal-card.log .modal-footer{margin-top:auto}.log-chart-panel{display:flex;flex-direction:column;gap:1rem;padding:1rem;border-radius:1rem;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,#ffffff08,#ffffff04);box-shadow:inset 0 1px #ffffff0a}.log-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.log-chart-legend{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.log-chart-legend-item{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .7rem;border-radius:9999px;border:1px solid rgba(148,163,184,.18);background:#ffffff08;color:var(--text-muted);font-size:.78rem;white-space:nowrap;cursor:pointer;transition:opacity .15s ease,transform .15s ease,border-color .15s ease,background .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.log-chart-legend-item:hover{transform:translateY(-1px);border-color:#25f4b852}.log-chart-legend-item.is-hidden{opacity:.45;text-decoration:line-through}.log-chart-legend-item.is-active{border-color:#25f4b873;background:#25f4b81f;color:var(--primary);font-weight:700}.log-chart-legend-item i{width:.8rem;height:.8rem;border-radius:9999px;display:inline-block;background:var(--primary);box-shadow:0 0 0 3px #25f4b824}.log-chart-legend-item.series-temperature i{background:#f97316;box-shadow:0 0 0 3px #f9731624}.log-chart-legend-item.series-humidity i{background:#38bdf8;box-shadow:0 0 0 3px #38bdf824}.log-chart-legend-item.series-soil i{background:#22c55e;box-shadow:0 0 0 3px #22c55e24}.log-chart-title{font-size:1rem;font-weight:800;letter-spacing:-.02em;color:var(--primary)}.log-chart-subtitle{margin-top:.2rem;font-size:.875rem;color:var(--text-muted)}.log-chart-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.log-chart-toolbar .btn.small{border-radius:9999px;padding-inline:.85rem}.log-chart-frame{width:100%}.log-chart-surface{position:relative;min-height:180px;border-radius:1rem;overflow:hidden;border:1px solid rgba(42,42,48,.9);background:radial-gradient(circle at top left,rgba(37,244,184,.12),transparent 36%),radial-gradient(circle at bottom right,rgba(37,244,184,.08),transparent 32%),linear-gradient(180deg,#101014f0,#0c0c0ffa);box-shadow:inset 0 1px #ffffff0a,0 10px 24px #0000003d}.log-chart-canvas{width:100%;height:180px;display:block;cursor:crosshair;background:#0d0d12}.log-chart-point-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2}.log-chart-point-marker{position:absolute;width:10px;height:10px;padding:0;border-radius:9999px;border:2px solid transparent;background:transparent;transform:translate(-50%,-50%);box-shadow:0 0 #25f4b800;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease;cursor:pointer}.log-chart-point-marker:hover,.log-chart-point-marker.is-selected{transform:translate(-50%,-50%) scale(1.45);box-shadow:0 0 0 5px #25f4b829}.log-chart-point-marker-inner{display:block;width:100%;height:100%;border-radius:inherit;background:currentColor;border:1px solid rgba(255,255,255,.85)}.log-chart-point-marker.series-temperature{color:#f97316}.log-chart-point-marker.series-humidity{color:#38bdf8}.log-chart-point-marker.series-soil{color:#22c55e}.log-chart-point-marker.series-default{color:#25f4b8}.log-chart-line{fill:none;stroke:var(--primary);stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(37,244,184,.28))}.log-chart-line.series-temperature{stroke:#f97316;filter:drop-shadow(0 0 5px rgba(249,115,22,.26))}.log-chart-line.series-humidity{stroke:#38bdf8;filter:drop-shadow(0 0 5px rgba(56,189,248,.26))}.log-chart-line.series-soil{stroke:#22c55e;filter:drop-shadow(0 0 5px rgba(34,197,94,.24))}.log-chart-title{font-size:.875rem;font-weight:700;margin-bottom:.75rem;transition:color .15s ease}.log-chart-title-empty{color:#f87171}.log-chart-title-has-data{color:#d1fae5}.log-chart-grid line{stroke:#94a3b82e;stroke-width:.6;stroke-dasharray:2.5 2.5}.log-chart-tooltip{position:absolute;z-index:2;min-width:132px;max-width:200px;padding:.65rem .75rem;border-radius:.9rem;border:1px solid rgba(37,244,184,.24);background:#0a0a0ceb;color:#f8fafc;box-shadow:0 12px 28px #0000004d;pointer-events:none;transform:translate(-50%,-115%)}.log-chart-tooltip-fixed{left:.75rem;top:.75rem;transform:none}.log-chart-tooltip-fixed:after{display:none}.log-chart-tooltip:after{content:"";position:absolute;left:50%;bottom:-7px;width:12px;height:12px;background:inherit;border-right:1px solid rgba(37,244,184,.18);border-bottom:1px solid rgba(37,244,184,.18);transform:translate(-50%) rotate(45deg)}.log-chart-tooltip-title{font-size:.9rem;font-weight:800;color:var(--primary)}.log-chart-tooltip-subtitle{margin-top:.2rem;font-size:.75rem;color:#f8fafcc7}.log-chart-meta-row{display:flex;flex-wrap:wrap;gap:.5rem .75rem;font-size:.82rem;color:var(--text-muted)}.log-chart-summary{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:-.25rem;color:var(--text-muted);font-size:.82rem}.log-chart-summary span,.log-chart-meta-row span{padding:.35rem .6rem;border-radius:9999px;border:1px solid rgba(148,163,184,.14);background:#ffffff08}.log-chart-point-hint{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.75rem;padding:.75rem .9rem;border-radius:.9rem;border:1px solid rgba(37,244,184,.34);background:#0f172ab8;color:#f8fafc;font-size:.88rem;font-weight:600;box-shadow:0 8px 20px #0000002e}.log-chart-point-hint span{padding:.25rem .5rem;border-radius:9999px;background:#ffffff14}@media(max-width:640px){.modal-card.log{height:80vh;max-height:80vh;min-height:80vh}}.modal-card.calibration{max-width:760px;width:min(760px,calc(100vw - 2rem));height:80vh;max-height:80vh;min-height:620px}.login-kontrol-modal{max-width:560px;width:min(560px,calc(100vw - 2rem));height:auto;max-height:calc(100vh - 2rem);overflow:auto;padding:0}.login-kontrol-modal .modal-header{align-items:center;padding:1.25rem 1.5rem 1rem}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start}.modal-header h3{margin:0;font-size:1.25rem}.modal-header .meta{font-size:.875rem;color:var(--text-muted);margin:.25rem 0 0}.modal-close{background:transparent;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1}.tab-bar{display:flex;padding:0 2rem;border-bottom:1px solid var(--border);gap:1.5rem}.tab-btn{padding:1rem 0;background:transparent;border:none;color:var(--text-muted);font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.theme-swatches{display:flex;gap:.35rem;flex-wrap:nowrap;overflow:hidden}.theme-swatch{display:inline-flex;align-items:center;justify-content:center;flex:1 1 0;min-width:0;padding:.55rem .45rem;border-radius:.65rem;border:1px solid transparent;color:inherit;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,filter .2s ease}.theme-swatch:hover{transform:translateY(-1px);filter:brightness(1.05)}.theme-swatch.active{border-color:#25f4b8cc;box-shadow:0 0 0 2px #25f4b826 inset}.theme-swatch-label{font-size:.78rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.bg-preview-thumb{width:5rem;height:5rem;max-width:5rem;max-height:5rem;flex:0 0 auto}.bg-action-group{display:flex;flex-direction:column;gap:.5rem}.bg-action-btn{min-height:2.75rem;width:100%;display:inline-flex;align-items:center;justify-content:center}.tab-panel{padding:2rem;overflow-y:auto;flex:1}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}@media(min-width:640px){.modal-body{padding:2rem}}.modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.calibration-action{width:100%;min-height:76px;padding:.45rem .65rem;border-radius:1.25rem;border:1px solid rgba(255,255,255,.08);background:#202026cc;color:inherit;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.calibration-action:hover{transform:translateY(-1px);border-color:#7dd3fc73;background:#202026f2}.calibration-action-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.11em;color:var(--text-muted)}.calibration-action-value{font-size:1.2rem;font-weight:900;line-height:1;color:var(--text-strong)}.calibration-action-hint{font-size:.7rem;color:var(--text-muted);line-height:1.35}.modal-card.calibration .modal-body{padding-top:1.25rem;padding-bottom:1.75rem}.modal-card.calibration .modal-header,.modal-card.calibration .modal-footer{padding-left:1.5rem;padding-right:1.5rem}.modal-card.calibration .modal-footer{padding-top:1rem;padding-bottom:1rem}.modal-card.calibration .modal-header h3{font-size:1.1rem}.theme-light .calibration-action{background:#fff;border-color:#0f172a1f}.theme-light .calibration-action:hover{background:#f8fafc;border-color:#0ea5e973}input[type=range]{display:block;width:100%;margin:0;padding:0;cursor:pointer}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--text-muted);margin-bottom:.5rem}.form-group input,.form-group select{width:100%;background:#202026;border:1px solid var(--border);padding:.75rem 1rem;border-radius:.75rem;color:#fff;outline:none}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1}.items-center{align-items:center}.time-sep{padding:0 .25rem;font-size:1.25rem;font-weight:700;color:var(--text-muted)}.help{font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.checkbox-row{display:flex;align-items:center;gap:.75rem;font-size:.875rem;cursor:pointer}.list{display:flex;flex-direction:column}.item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border)}.item:last-child{border-bottom:none}.item .title{font-weight:600}.item .meta{font-size:.75rem;color:var(--text-muted)}.tag{font-size:.625rem;font-weight:700;text-transform:uppercase;padding:.25rem .5rem;border-radius:.25rem;background:var(--primary);color:#000}.tag.off{background:#2a2a30;color:var(--text-muted)}.schedule-item-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;background:#1a1a20;border:1px solid var(--border);border-radius:1rem;min-width:90px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.schedule-item-btn:hover{border-color:var(--primary);background:#202026;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.schedule-item-btn .time{font-size:1.25rem;font-weight:800;color:#fff;line-height:1;margin-bottom:.25rem}.schedule-item-btn .duration{font-size:.7rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.schedule-item-btn .status-dot{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:#444}.schedule-item-btn .status-dot.active{background:var(--primary);box-shadow:0 0 8px var(--primary)}.schedule-add-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;background:#ffffff05;border:2px dashed var(--border);border-radius:1rem;min-width:90px;cursor:pointer;transition:all .2s;color:var(--text-muted)}.schedule-add-btn:hover{border-color:var(--primary);color:var(--primary);background:#25f4b80d}.schedule-add-btn .plus{font-size:1.5rem;font-weight:400;line-height:1;margin-bottom:.25rem}.schedule-add-btn .label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:#16161a;border:1px solid var(--primary);padding:.75rem 1.5rem;border-radius:1rem;z-index:3000;box-shadow:0 10px 30px #00000080;font-weight:600;font-size:.875rem}.global-spinner{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;z-index:9999;pointer-events:auto}.spinner-ring{width:3.5rem;height:3.5rem;border:4px solid rgba(37,244,184,.1);border-top-color:var(--primary);border-radius:50%;animation:spin 1s cubic-bezier(.4,0,.2,1) infinite;box-shadow:0 0 20px #25f4b833}.spinner-text{font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;text-shadow:0 0 10px rgba(37,244,184,.3)}@keyframes spin{to{transform:rotate(360deg)}}[x-cloak]{display:none!important}.gh-root{background:#0f172a;border-radius:1.5rem;padding:2rem;color:#f8fafc;border:1px solid #1e293b}.gh-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.gh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.gh-card{background:#1e293b;padding:1.5rem;border-radius:1rem;border:1px solid #334155}.gh-card h4{margin:0 0 1rem;font-size:.875rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.gh-value{font-size:2.5rem;font-weight:700;color:#25f4b8}.gh-unit{font-size:1rem;color:#64748b;margin-left:.25rem}.gh-controls{margin-top:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.gh-btn{background:#334155;border:none;color:#fff;padding:1rem;border-radius:.75rem;cursor:pointer;font-weight:600;transition:all .2s}.gh-btn.active{background:#25f4b8;color:#0f172a}.gh-btn:hover:not(.active){background:#475569}
