:root{
  --bg:#070d18;--surface:#0d1626;--surface2:#111c31;--surface3:#16233a;--line:#24334f;
  --text:#e9f0ff;--muted:#93a4c3;--muted2:#6f819f;--primary:#5b8cff;--primary2:#7a5cff;
  --green:#28d17c;--red:#ff5570;--yellow:#ffbe4d;--shadow:0 18px 55px rgba(0,0,0,.28);--radius:18px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% 0%,rgba(91,140,255,.18),transparent 34%),linear-gradient(135deg,#070d18,#0b1322 55%,#0a1020);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:15px}.app-shell{display:flex;min-height:100vh}.sidebar{width:264px;position:sticky;top:0;height:100vh;padding:22px 18px;background:rgba(10,18,32,.88);backdrop-filter:blur(18px);border-right:1px solid rgba(36,51,79,.85);display:flex;flex-direction:column;gap:22px}.brand{display:flex;align-items:center;gap:12px;min-height:44px}.brand strong{display:block;font-size:18px;letter-spacing:.2px}.brand small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.brand-mark{width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,rgba(91,140,255,.22),rgba(122,92,255,.18));border:1px solid rgba(91,140,255,.28);display:grid;place-items:center;box-shadow:0 10px 28px rgba(91,140,255,.12)}.brand-mark span{width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 18px var(--green)}.side-nav{display:grid;gap:8px}.side-nav a,.logout{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:14px;color:#dbe6fb;text-decoration:none;font-weight:750;letter-spacing:.1px;border:1px solid transparent}.side-nav a:hover,.logout:hover{background:rgba(91,140,255,.1);border-color:rgba(91,140,255,.16)}.side-nav a.active{background:linear-gradient(135deg,rgba(91,140,255,.22),rgba(122,92,255,.12));border-color:rgba(91,140,255,.26);box-shadow:inset 3px 0 0 var(--primary)}.icon{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.045);color:#bcd0f4;font-size:14px}.sidebar-footer{margin-top:auto;display:grid;gap:9px}.user-mini{display:flex;align-items:center;gap:10px;padding:11px;border-radius:16px;background:rgba(17,28,49,.7);border:1px solid var(--line)}.user-mini b{display:block;font-size:13px}.user-mini small{display:block;color:var(--muted);font-size:12px}.avatar{width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--primary2));display:grid;place-items:center;font-weight:900}.main{flex:1;padding:30px;min-width:0}.mobile-header{display:none}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-title{display:flex;gap:14px;align-items:center}.page-title .page-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:rgba(91,140,255,.12);border:1px solid rgba(91,140,255,.18);font-size:22px}.page-title h1{margin:0;font-size:30px;letter-spacing:-.5px}.page-title p{margin:7px 0 0;color:var(--muted);line-height:1.45}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.btn{border:0;min-height:42px;background:linear-gradient(135deg,var(--primary),#6e8dff);color:white;border-radius:13px;padding:10px 15px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:800;box-shadow:0 12px 28px rgba(91,140,255,.22)}.btn.secondary{background:var(--surface3);box-shadow:none;color:#e6eeff}.btn.ghost{background:transparent;border:1px solid var(--line);box-shadow:none;color:#dbe6fb}.btn.small{min-height:36px;padding:8px 11px}.panel,.card{background:linear-gradient(180deg,rgba(17,28,49,.94),rgba(12,22,39,.94));border:1px solid rgba(36,51,79,.9);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:18px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}.stat-card{position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;right:-24px;top:-26px;width:88px;height:88px;border-radius:50%;background:rgba(91,140,255,.08)}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-weight:750}.stat-icon{width:36px;height:36px;border-radius:13px;display:grid;place-items:center;background:rgba(91,140,255,.12);border:1px solid rgba(91,140,255,.18)}.metric{font-size:34px;font-weight:900;margin-top:12px;letter-spacing:-.7px}.metric.small{font-size:24px;line-height:1.25}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:18px 0}.input,.select,textarea{background:rgba(7,13,24,.78);border:1px solid var(--line);border-radius:13px;color:var(--text);padding:11px 12px;min-height:42px;outline:none}.input{min-width:260px}.select{min-width:160px}.input:focus,.select:focus,textarea:focus{border-color:rgba(91,140,255,.86);box-shadow:0 0 0 3px rgba(91,140,255,.13)}textarea{width:100%;min-height:92px;resize:vertical}.table-card{overflow:hidden}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:980px}th,td{text-align:left;padding:14px 15px;border-bottom:1px solid rgba(36,51,79,.82);vertical-align:middle}th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#99abc9;background:rgba(18,30,52,.88);font-weight:900}td{font-size:14px}tbody tr:hover td{background:rgba(91,140,255,.045)}tbody tr:last-child td{border-bottom:0}.status{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;font-weight:900;font-size:12px;text-transform:lowercase;white-space:nowrap}.status:before{content:"";width:8px;height:8px;border-radius:50%}.online{background:rgba(40,209,124,.13);color:#76f0ad}.online:before{background:var(--green);box-shadow:0 0 14px var(--green)}.offline{background:rgba(255,85,112,.13);color:#ff9bad}.offline:before{background:var(--red);box-shadow:0 0 14px var(--red)}.unknown{background:rgba(255,190,77,.13);color:#ffd58b}.unknown:before{background:var(--yellow);box-shadow:0 0 14px var(--yellow)}.chip{display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:rgba(91,140,255,.12);border:1px solid rgba(91,140,255,.14);color:#cfe0ff;padding:6px 10px;font-weight:750;white-space:nowrap}.chip.muted{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.06);color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.alert{padding:13px 15px;border-radius:14px;margin:0 0 15px;background:rgba(255,85,112,.12);border:1px solid rgba(255,85,112,.35);color:#ffc2ca}.alert.ok{background:rgba(40,209,124,.12);border-color:rgba(40,209,124,.35);color:#b7ffd8}.empty{padding:28px;text-align:center;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.form-row{display:grid;gap:8px;margin-bottom:12px}.form-row label{font-weight:850;color:#c8d8f5;font-size:13px}.field-wide{grid-column:1/-1}.checkbox-row{display:flex;align-items:center;gap:10px;background:rgba(7,13,24,.78);border:1px solid var(--line);border-radius:13px;padding:11px 12px}.checkbox-row input{width:18px;height:18px}.section-title{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:21px}.help{font-size:13px;color:var(--muted);line-height:1.45;margin-top:-3px}.detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.info-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.info-item{padding:12px;border:1px solid rgba(36,51,79,.72);border-radius:14px;background:rgba(7,13,24,.38);min-width:0}.info-item b{display:block;color:#97aac9;font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.info-item span{word-break:break-word}.login-body{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{max-width:430px;width:100%;background:rgba(17,28,49,.95);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.login-card h1{margin-top:0}.login-card .input{width:100%}.login-card .btn{width:100%;margin-top:8px}@media(max-width:1080px){.sidebar{width:230px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){body{background:#08101d}.app-shell{display:block}.sidebar{position:relative;width:auto;height:auto;padding:12px;background:rgba(10,18,32,.96);border-right:0;border-bottom:1px solid var(--line)}.sidebar>.brand,.sidebar-footer{display:none}.side-nav{display:flex;gap:8px;overflow-x:auto}.side-nav a{white-space:nowrap;min-width:max-content;padding:10px 12px}.main{padding:14px}.mobile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.brand.compact .brand-mark{width:30px;height:30px;border-radius:11px}.brand.compact strong{font-size:15px}.mobile-logout{color:#dce7fb;text-decoration:none;background:var(--surface3);border:1px solid var(--line);border-radius:12px;padding:8px 10px;font-weight:800}.page-head{display:block}.page-title{align-items:flex-start}.page-title .page-icon{width:44px;height:44px;border-radius:15px}.page-title h1{font-size:25px}.page-head .actions{margin-top:14px}.stats-grid{grid-template-columns:1fr}.toolbar{display:grid;grid-template-columns:1fr;gap:9px}.input,.select,.toolbar .btn{width:100%;min-width:0}.table-card{background:transparent;border:0;box-shadow:none}.table-scroll{overflow:visible}.responsive-table{min-width:0}.responsive-table thead{display:none}.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%}.responsive-table tr{background:linear-gradient(180deg,rgba(17,28,49,.94),rgba(12,22,39,.94));border:1px solid rgba(36,51,79,.9);border-radius:17px;margin-bottom:12px;box-shadow:0 12px 35px rgba(0,0,0,.18);overflow:hidden}.responsive-table td{border-bottom:1px solid rgba(36,51,79,.62);display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:right;padding:12px 14px}.responsive-table td:last-child{border-bottom:0}.responsive-table td:before{content:attr(data-label);color:#91a4c3;font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;text-align:left}.responsive-table td.actions-cell{display:block;text-align:stretch}.responsive-table td.actions-cell:before{display:none}.responsive-table td.actions-cell .btn{width:100%}.form-grid{grid-template-columns:1fr}.info-list{grid-template-columns:1fr}.metric{font-size:30px}}@media(max-width:430px){.main{padding:11px}.card{padding:15px}.page-title h1{font-size:22px}.chip{max-width:100%;overflow:hidden;text-overflow:ellipsis}.responsive-table td{align-items:flex-start;flex-direction:column;text-align:left}.responsive-table td:before{margin-bottom:3px}}

/* v1.8 advanced filtering */
.filter-panel{background:linear-gradient(180deg,rgba(17,28,49,.95),rgba(12,22,39,.94));border:1px solid rgba(36,51,79,.9);border-radius:var(--radius);padding:16px;margin:18px 0;box-shadow:0 14px 42px rgba(0,0,0,.18)}
.filter-search{display:grid;gap:8px;margin-bottom:13px}.filter-search label{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#9fb1ce;font-weight:900}.filter-search small{color:var(--muted);line-height:1.45}.searchbox{position:relative}.searchbox>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted);z-index:1}.searchbox .input{width:100%;padding-left:38px;min-width:0}.filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.filter-grid .select,.filter-grid .btn{width:100%;min-width:0}.filter-summary{margin-top:12px;color:#a7b8d3;font-weight:800;font-size:13px}.filter-summary span{color:#fff;background:rgba(91,140,255,.22);border:1px solid rgba(91,140,255,.26);padding:4px 8px;border-radius:999px;margin-right:4px}.truncate{display:inline-block;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;color:#dce7fb}
@media(max-width:1180px){.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.filter-panel{padding:13px;margin:14px 0}.filter-grid{grid-template-columns:1fr}.filter-search small{font-size:12px}.truncate{max-width:100%;white-space:normal}.responsive-table td[data-label="Açıklama"]{display:flex}}

/* v1.9 sortable columns */
.sort-link{display:inline-flex;align-items:center;gap:7px;color:#99abc9;text-decoration:none;font:inherit;text-transform:inherit;letter-spacing:inherit;white-space:nowrap}
.sort-link b{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:8px;background:rgba(255,255,255,.045);color:#bfd2f4;font-size:12px;line-height:1}
.sort-link:hover{color:#e7efff}.sort-link:hover b{background:rgba(91,140,255,.16)}.sort-link.active{color:#fff}.sort-link.active b{background:rgba(91,140,255,.28);color:#fff;border:1px solid rgba(91,140,255,.28)}
th:last-child{white-space:nowrap}

/* v2.0 login and focus improvements */
.login-body{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 25% 10%,rgba(91,140,255,.24),transparent 34%),radial-gradient(circle at 80% 20%,rgba(40,209,124,.10),transparent 30%),#07101e;color:var(--text)}
.login-shell{width:min(980px,100%);display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch}
.login-hero,.login-card.professional{background:linear-gradient(180deg,rgba(17,28,49,.92),rgba(10,19,35,.95));border:1px solid rgba(50,70,105,.7);border-radius:28px;box-shadow:0 30px 90px rgba(0,0,0,.38)}
.login-hero{padding:42px;min-height:430px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}
.login-hero:after{content:"";position:absolute;right:-80px;bottom:-90px;width:260px;height:260px;border-radius:50%;background:linear-gradient(135deg,rgba(91,140,255,.24),rgba(40,209,124,.10));filter:blur(2px)}
.login-brand{display:flex;align-items:center;gap:12px;position:relative;z-index:1}.login-brand strong{display:block;font-size:18px}.login-brand small{display:block;color:var(--muted);margin-top:2px}
.login-hero h1{font-size:44px;line-height:1.05;letter-spacing:-1.2px;margin:40px 0 14px;max-width:620px;position:relative;z-index:1}.login-hero p{color:#afbed5;font-size:16px;line-height:1.65;max-width:560px;position:relative;z-index:1}.login-benefits{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1}.login-benefits span{padding:9px 12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);border-radius:999px;color:#cdddff;font-weight:800;font-size:13px}
.login-card.professional{padding:30px;align-self:center}.login-card-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}.login-card-head h2{font-size:28px;letter-spacing:-.5px;margin:0 0 5px}.login-lock{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:rgba(91,140,255,.14);border:1px solid rgba(91,140,255,.22);font-weight:900;color:#d7e5ff}.login-form{display:grid;gap:14px}.login-form .form-row{margin:0}.input-wrap{position:relative}.input-wrap>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.7}.input-wrap .input{width:100%;padding-left:40px;min-width:0}.login-submit{width:100%;margin-top:4px;min-height:48px;font-size:15px}.login-card.professional .alert{margin-bottom:14px}.login-card.professional .muted{margin:0;color:var(--muted);line-height:1.45}
tr.row-focus td{background:rgba(91,140,255,.18)!important;box-shadow:inset 3px 0 0 rgba(91,140,255,.95)}
@media(max-width:850px){.login-body{padding:18px;place-items:start center}.login-shell{grid-template-columns:1fr;gap:14px}.login-hero{min-height:auto;padding:28px}.login-hero h1{font-size:31px;margin:28px 0 10px}.login-hero p{font-size:14px}.login-card.professional{padding:22px}.login-card-head h2{font-size:24px}}
@media(max-width:520px){.login-body{padding:12px}.login-hero{display:none}.login-card.professional{border-radius:22px;margin-top:12vh}.login-card-head{display:block}.login-lock{margin-bottom:12px}.login-benefits{display:none}}
.login-card.professional{max-width:none;width:auto;box-sizing:border-box}

/* v2.1 focus and locked inline editor */
tr.row-focus td{background:linear-gradient(90deg,rgba(91,140,255,.20),rgba(91,140,255,.075))!important;box-shadow:none!important;border-top:1px solid rgba(91,140,255,.55);border-bottom:1px solid rgba(91,140,255,.35)}
tr.row-focus td:first-child{box-shadow:inset 5px 0 0 #74a2ff!important;border-left:1px solid rgba(116,162,255,.65);border-top-left-radius:12px;border-bottom-left-radius:12px}
tr.row-focus td:last-child{border-right:1px solid rgba(116,162,255,.38);border-top-right-radius:12px;border-bottom-right-radius:12px}
tr.row-focus{animation:pmFocusPulse 2.6s ease both}
@keyframes pmFocusPulse{0%{filter:brightness(1.35)}35%{filter:brightness(1.08)}100%{filter:brightness(1)}}
.device-head{align-items:center}.device-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.device-editor{padding:22px}.editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.editor-head .section-title{margin-bottom:6px}.editor-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.lock-state{min-height:36px;display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;background:rgba(255,190,77,.12);border:1px solid rgba(255,190,77,.22);color:#ffd58b;font-weight:900;font-size:12px}.device-editor:not(.is-locked) .lock-state{background:rgba(40,209,124,.12);border-color:rgba(40,209,124,.25);color:#86f0b8}.icon-btn{width:42px;height:42px;border-radius:14px;border:1px solid rgba(48,67,101,.95);background:rgba(22,35,58,.95);color:#eaf1ff;display:inline-grid;place-items:center;cursor:pointer;font-size:17px;font-weight:900;transition:.18s ease;box-shadow:0 10px 24px rgba(0,0,0,.16)}.icon-btn:hover{transform:translateY(-1px);border-color:rgba(91,140,255,.65);background:rgba(91,140,255,.16)}.icon-btn:disabled{opacity:.42;cursor:not-allowed;transform:none;filter:grayscale(.2)}.save-toggle:not(:disabled){background:linear-gradient(135deg,var(--primary),#6e8dff);border-color:rgba(110,141,255,.8);box-shadow:0 12px 30px rgba(91,140,255,.24)}.device-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.info-field{border:1px solid rgba(36,51,79,.78);border-radius:16px;background:rgba(7,13,24,.38);padding:12px;min-width:0;transition:.18s ease}.info-field label:first-child{display:flex;align-items:center;gap:8px;color:#97aac9;font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-weight:900}.info-field label i{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:8px;background:rgba(91,140,255,.10);color:#bfd2ff;font-style:normal}.info-field input:not([type="checkbox"]),.info-field textarea{width:100%;min-width:0;border:0;background:transparent;color:#eef4ff;padding:0;border-radius:0;font:inherit;font-weight:750;outline:none}.info-field textarea{min-height:78px;line-height:1.5}.info-field input[readonly],.info-field textarea[readonly]{cursor:default;color:#e6efff}.device-editor.is-locked .info-field{background:rgba(7,13,24,.32)}.device-editor:not(.is-locked) .info-field:not(.read-only-field){background:rgba(91,140,255,.055);border-color:rgba(91,140,255,.30)}.device-editor:not(.is-locked) .info-field:focus-within{border-color:rgba(91,140,255,.85);box-shadow:0 0 0 3px rgba(91,140,255,.11)}.field-value{color:#eef4ff;font-weight:800;min-height:22px;word-break:break-word}.field-wide{grid-column:1/-1}.switch-field{display:flex!important;align-items:center!important;gap:11px!important;margin:0!important;text-transform:none!important;letter-spacing:0!important;color:#e8efff!important}.switch-field input{position:absolute;opacity:0;pointer-events:none}.switch-field span{width:46px;height:26px;border-radius:999px;background:rgba(255,85,112,.18);border:1px solid rgba(255,85,112,.28);position:relative;transition:.18s ease}.switch-field span:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;left:3px;top:3px;background:#ff8a9b;transition:.18s ease}.switch-field input:checked + span{background:rgba(40,209,124,.16);border-color:rgba(40,209,124,.28)}.switch-field input:checked + span:before{left:23px;background:#6ff0a8}.switch-field b{font-size:14px;color:#dce8fb;text-transform:none;letter-spacing:0}.device-editor.is-locked .switch-field{opacity:.75}.read-only-field{background:rgba(255,255,255,.035)!important}.device-editor:not(.is-locked) .help:after{content:" Düzenleme açık.";color:#86f0b8;font-weight:900}
@media(max-width:1080px){.device-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.device-stats .stat-card[style]{grid-column:span 2!important}.device-info-grid{grid-template-columns:1fr}}
@media(max-width:760px){tr.row-focus{outline:2px solid rgba(116,162,255,.62);outline-offset:2px}.device-head .actions{display:flex}.device-stats .stat-card[style]{grid-column:auto!important}.editor-head{position:sticky;top:0;z-index:5;margin:-15px -15px 16px;padding:14px 15px;background:rgba(12,22,39,.96);border-bottom:1px solid rgba(36,51,79,.7);border-radius:16px 16px 0 0;backdrop-filter:blur(12px)}.device-editor{padding:15px}.editor-actions{margin-left:auto}.lock-state{display:none}.icon-btn{width:44px;height:44px}.device-info-grid{gap:10px}.info-field{padding:11px}.info-field textarea{min-height:110px}}

/* v2.2 - cleaner focus and per-column filters */
.responsive-table th{position:relative;overflow:visible}.th-tools{display:inline-flex;align-items:center;gap:6px;min-width:max-content}.th-tools .sort-link{display:inline-flex;align-items:center;gap:5px}.column-search-toggle{width:24px;height:24px;border:1px solid rgba(148,163,184,.18);background:rgba(148,163,184,.08);color:#a8bbd9;border-radius:8px;display:inline-grid;place-items:center;cursor:pointer;font-weight:900;line-height:1;transition:.16s ease}.column-search-toggle:hover,.column-search-toggle.is-active{background:rgba(91,140,255,.20);border-color:rgba(91,140,255,.42);color:#e7efff}.column-search-toggle.is-active:after{content:"";width:6px;height:6px;background:#5b8cff;border-radius:50%;position:absolute;margin-top:-22px;margin-left:18px;box-shadow:0 0 10px rgba(91,140,255,.85)}.column-filter-pop{display:none;position:absolute;top:calc(100% + 8px);left:8px;z-index:40;width:240px;padding:12px;border-radius:14px;background:rgba(8,15,28,.98);border:1px solid rgba(91,140,255,.30);box-shadow:0 18px 50px rgba(0,0,0,.42);backdrop-filter:blur(14px)}.column-filter-pop.is-open{display:block}.column-filter-title{font-size:12px;color:#aabbd5;margin-bottom:8px;font-weight:900;text-transform:none;letter-spacing:.2px}.column-filter-input{height:38px;width:100%;font-size:13px}.column-filter-clear{margin-top:8px;width:100%;height:32px;border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.04);color:#c9d8ee;border-radius:10px;font-weight:800;cursor:pointer}.column-filter-clear:hover{background:rgba(255,255,255,.075)}.column-filter-pop.has-value{border-color:rgba(91,140,255,.55)}
tr.row-focus td{background:rgba(91,140,255,.065)!important;border-top-color:rgba(91,140,255,.16)!important;border-bottom-color:rgba(91,140,255,.16)!important;box-shadow:none!important}tr.row-focus td:first-child{box-shadow:inset 3px 0 0 rgba(91,140,255,.9)!important;border-left:0!important;border-top-left-radius:0!important;border-bottom-left-radius:0!important}tr.row-focus td:last-child{border-right:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important}tr.row-focus{animation:pmSoftFocus 2.4s ease both!important;outline:none!important}@keyframes pmSoftFocus{0%{filter:brightness(1.12)}35%{filter:brightness(1.08)}100%{filter:brightness(1)}}
@media(max-width:760px){.responsive-table thead{display:none}.column-filter-pop{position:fixed;left:16px;right:16px;top:90px;width:auto}.th-tools{width:100%;justify-content:space-between}tr.row-focus{outline:none!important}.responsive-table tr.row-focus{box-shadow:inset 4px 0 0 rgba(91,140,255,.95),0 0 0 1px rgba(91,140,255,.20)!important;background:rgba(91,140,255,.045)!important}}

/* v2.3 - professional filter area and larger controls/icons */
:root{--control-h:46px}
.icon{width:28px;height:28px;border-radius:10px;font-size:16px;background:rgba(91,140,255,.10);border:1px solid rgba(91,140,255,.14)}
.side-nav a .icon,.logout .icon{width:30px;height:30px;font-size:16px;border-radius:10px}.btn{min-height:46px;border-radius:15px;padding:11px 16px}.btn.small{min-height:40px;padding:8px 13px;border-radius:13px}.btn.small .icon{width:24px;height:24px;font-size:15px}.page-title .page-icon{width:56px;height:56px;border-radius:19px;font-size:24px}.stat-icon{width:42px;height:42px;border-radius:15px;font-size:18px}.icon-btn{width:48px;height:48px;border-radius:16px;font-size:20px}.login-lock{width:52px;height:52px;font-size:20px}

.filter-panel{position:relative;margin:18px 0 22px;padding:18px;border:1px solid rgba(55,75,110,.82);border-radius:22px;background:linear-gradient(180deg,rgba(14,25,44,.96),rgba(10,19,34,.96));box-shadow:0 18px 45px rgba(0,0,0,.18)}
.filter-panel:before{content:"";position:absolute;inset:0;border-radius:22px;background:radial-gradient(circle at 8% 0%,rgba(91,140,255,.12),transparent 28%);pointer-events:none}.filter-panel>*{position:relative}.filter-search{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:12px;margin-bottom:14px}.filter-search label{grid-column:1/-1;color:#aebfde;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.09em}.filter-search small{grid-column:1/-1;margin-top:-4px;color:#7f91b0;font-size:12px}.filter-search small b{color:#cbd9f1}.searchbox{position:relative;display:flex;align-items:center}.searchbox>span{position:absolute;left:16px;width:24px;height:24px;border-radius:9px;display:grid;place-items:center;background:rgba(91,140,255,.12);border:1px solid rgba(91,140,255,.16);color:#bfd1ef;font-size:17px;z-index:2}.searchbox .input{width:100%;min-width:0;height:var(--control-h);padding-left:50px;border-radius:16px;background:rgba(5,10,19,.82);font-weight:750}.filter-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr)) minmax(145px,.65fr);gap:10px;align-items:center}.filter-grid .select,.filter-grid .btn{height:var(--control-h);min-height:var(--control-h);width:100%;min-width:0;border-radius:15px}.filter-grid .select{appearance:none;background-color:rgba(6,12,23,.86);background-image:linear-gradient(45deg,transparent 50%,#9fb2d4 50%),linear-gradient(135deg,#9fb2d4 50%,transparent 50%);background-position:calc(100% - 18px) 19px,calc(100% - 13px) 19px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px;font-weight:800;color:#dce7fb}.filter-grid .select:hover,.searchbox .input:hover{border-color:rgba(91,140,255,.36)}.filter-grid .btn.ghost{background:rgba(255,255,255,.035);border-color:rgba(148,163,184,.14);color:#d8e5fb;box-shadow:none}.filter-grid .btn.ghost:hover{background:rgba(255,85,112,.09);border-color:rgba(255,85,112,.20)}.filter-summary{display:inline-flex;align-items:center;gap:7px;margin-top:14px;padding:8px 11px;border-radius:999px;background:rgba(91,140,255,.10);border:1px solid rgba(91,140,255,.18);color:#cbd9f1;font-weight:900;font-size:13px}.filter-summary [data-result-count]{min-width:30px;text-align:center;border-radius:999px;background:linear-gradient(135deg,rgba(91,140,255,.55),rgba(122,92,255,.35));color:#fff;padding:3px 8px}

.th-tools{gap:8px}.sort-link{color:#aebfde;text-decoration:none;font-weight:950}.sort-link span{font-size:12px}.sort-link b{width:24px;height:24px;border-radius:9px;display:inline-grid;place-items:center;background:rgba(91,140,255,.10);color:#cde0ff;font-size:14px;line-height:1}.sort-link.active b{background:rgba(91,140,255,.26);color:#fff}.column-search-toggle{width:30px;height:30px;border-radius:11px;font-size:16px;background:rgba(91,140,255,.09);border-color:rgba(91,140,255,.16);color:#c5d6f2}.column-search-toggle:hover,.column-search-toggle.is-active{transform:translateY(-1px);background:rgba(91,140,255,.22);border-color:rgba(91,140,255,.46)}.column-search-toggle.is-active:after{width:7px;height:7px;margin-top:-27px;margin-left:23px}.column-filter-pop{width:280px;padding:14px;border-radius:18px;background:linear-gradient(180deg,rgba(12,22,39,.99),rgba(7,13,24,.99));border-color:rgba(91,140,255,.34);box-shadow:0 24px 70px rgba(0,0,0,.55)}.column-filter-title{display:flex;align-items:center;gap:8px;font-size:13px;color:#d1ddf2;margin-bottom:10px}.column-filter-title:before{content:"⌕";width:24px;height:24px;border-radius:9px;display:inline-grid;place-items:center;background:rgba(91,140,255,.12);border:1px solid rgba(91,140,255,.16);font-size:14px}.column-filter-input{height:42px;border-radius:13px;font-weight:750;background:rgba(5,10,19,.82)}.column-filter-clear{height:38px;border-radius:12px;margin-top:10px;font-size:13px}.column-filter-clear:hover{background:rgba(255,85,112,.10);border-color:rgba(255,85,112,.22);color:#ffe1e6}

/* lighter, cleaner row focus */
tr.row-focus td{background:rgba(91,140,255,.038)!important;border-top-color:rgba(91,140,255,.10)!important;border-bottom-color:rgba(91,140,255,.10)!important;box-shadow:none!important}tr.row-focus td:first-child{box-shadow:inset 3px 0 0 rgba(116,162,255,.72)!important}tr.row-focus{animation:pmTinyFocus 2.2s ease both!important}@keyframes pmTinyFocus{0%{filter:brightness(1.08)}100%{filter:brightness(1)}}

@media(max-width:1280px){.filter-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.filter-grid .btn.ghost{grid-column:auto}}
@media(max-width:760px){.filter-panel{padding:14px;border-radius:18px;margin:14px 0 16px}.filter-search{display:block}.filter-search label{display:block;margin-bottom:8px}.filter-search small{display:block;margin-top:8px}.filter-grid{grid-template-columns:1fr;gap:9px;margin-top:13px}.filter-summary{width:100%;justify-content:center;margin-top:12px}.page-title .page-icon{width:48px;height:48px}.icon{width:26px;height:26px}.side-nav a .icon{width:28px;height:28px}.column-filter-pop{position:fixed;left:14px;right:14px;top:auto;bottom:16px;width:auto;padding:16px;border-radius:20px}.column-filter-input{height:46px}.column-filter-clear{height:42px}.column-search-toggle{width:34px;height:34px}.sort-link b{width:28px;height:28px}}

/* v2.5 - keep table stable when filters return zero results */
.table-card .table-scroll{min-height:460px}
.no-results-row td{padding:0!important;border-bottom:0!important;background:transparent!important}
.no-results-box{min-height:340px;display:grid;place-items:center;text-align:center;padding:48px 20px;color:#9fb1cf}
.no-results-box h3{margin:12px 0 6px;color:#e6eeff;font-size:20px}
.no-results-box p{margin:0 0 16px;max-width:460px;line-height:1.5}
.no-results-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:rgba(91,140,255,.13);border:1px solid rgba(91,140,255,.24);font-size:26px;color:#d5e2ff;box-shadow:0 16px 38px rgba(91,140,255,.08)}
.column-filter-pop.is-open{min-height:154px}
@media(max-width:760px){.table-card .table-scroll{min-height:0}.no-results-row{display:block!important}.no-results-row td{display:block!important}.no-results-box{min-height:220px;background:linear-gradient(180deg,rgba(17,28,49,.94),rgba(12,22,39,.94));border:1px solid rgba(36,51,79,.9);border-radius:17px;margin-bottom:12px}}


/* v2.6 device type icons and refined status/IP visuals */
.status{text-transform:none;font-size:13px;letter-spacing:.01em;}
.device-name-cell{display:flex;align-items:center;gap:10px;min-width:0;}
.device-name-cell b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.device-type-icon{width:34px;height:34px;min-width:34px;border-radius:12px;display:inline-grid;place-items:center;font-size:17px;line-height:1;background:linear-gradient(135deg,rgba(91,140,255,.16),rgba(122,92,255,.08));border:1px solid rgba(125,153,216,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 20px rgba(0,0,0,.16);}
.device-type-printer{background:linear-gradient(135deg,rgba(91,140,255,.20),rgba(53,193,255,.08));}
.device-type-switch{background:linear-gradient(135deg,rgba(40,209,124,.16),rgba(91,140,255,.08));}
.device-type-plc{background:linear-gradient(135deg,rgba(255,190,77,.18),rgba(91,140,255,.08));}
.device-type-nvr,.device-type-camera{background:linear-gradient(135deg,rgba(122,92,255,.18),rgba(91,140,255,.08));}
.device-type-access-card,.device-type-rfid{background:linear-gradient(135deg,rgba(255,85,112,.14),rgba(91,140,255,.08));}
.device-type-water-meter{background:linear-gradient(135deg,rgba(53,193,255,.18),rgba(91,140,255,.08));}
.device-type-light-panel{background:linear-gradient(135deg,rgba(255,190,77,.20),rgba(255,255,255,.05));}
.device-page-icon .device-type-icon,.title-device-icon .device-type-icon{width:40px;height:40px;min-width:40px;font-size:20px;border-radius:15px;}
.title-device-icon{display:none;}
.ip-chip{gap:8px;background:linear-gradient(135deg,rgba(91,140,255,.16),rgba(53,193,255,.08));border-color:rgba(116,151,225,.22);}
.ip-chip-icon{width:22px;height:22px;min-width:22px;display:inline-grid;place-items:center;border-radius:50%;background:rgba(91,140,255,.14);color:#9fc0ff;}
.th-tools .sort-link b,.column-search-toggle{font-size:15px;}
.column-search-toggle{width:28px;height:28px;}
@media(max-width:760px){.device-name-cell{justify-content:flex-end}.device-type-icon{width:32px;height:32px;min-width:32px}.title-device-icon{display:inline-flex;margin-right:8px;vertical-align:middle}.device-page-icon{display:none}.device-page-icon .device-type-icon,.title-device-icon .device-type-icon{width:34px;height:34px;min-width:34px;font-size:18px}}
@media(max-width:430px){.device-name-cell{width:100%;justify-content:flex-start}.ip-chip{max-width:100%}}
