@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:var(--page-bg);color:var(--text);font-family:JetBrains Mono,Consolas,Courier New,monospace;font-size:13px;line-height:1.4}:root,:root[data-theme=dark]{--tc: #00c8b4;--tc-dim: rgba(0,200,180,.15);--bg: #0a0e14;--bg2: #0d1117;--bg3: #0d2137;--card-bg: rgba(13,33,55,.6);--border: rgba(0,200,180,.15);--border2: rgba(0,200,180,.25);--row-even: rgba(13,21,34,.5);--row-odd: rgba(10,16,26,.5);--muted: #9ca3af;--muted2: #6b7280;--danger: #f87171;--success: #4ade80;--warn: #fde68a;--page-bg: #0a0e14;--text: #c9d1d9;--text-strong: #d1d5db;--hdr-grad: linear-gradient(135deg, #0d1117 0%, #0d2137 100%);--thead-grad: linear-gradient(90deg, #0d2137, #0a1929);--th-color: #7aa2b5;--row-hover: rgba(0,200,180,.06);--row-expand: rgba(0,200,180,.1);--modal-bg: #0d1117;--modal-shadow: 0 8px 40px rgba(0,0,0,.6);--overlay-bg: rgba(0,0,0,.72);--input-bg: rgba(13,21,34,.85);--input-border: #374151;--input-readonly: #1a2233;--entry-bg: #1a2233;--entry-border: #1f2937;--btn-border: #374151;--footer-border: #1f2937;--footer-color: #374151;--divider-soft: rgba(255,255,255,.03);--divider-softer: rgba(255,255,255,.06);--chip-hover: rgba(255,255,255,.04);--chip-hover2: rgba(255,255,255,.06);--chip-cnt-bg: rgba(255,255,255,.08);--script-bg: #000;--script-color: #4ade80;--fqdn-color: #4b5563;--ip-color: #60a5fa;--accent-user: #2dd4bf;--primary-star: #fde68a;--primary-star-dim: #4b5563}:root[data-theme=light]{--tc: #0e9488;--tc-dim: rgba(14,148,136,.1);--bg: #f5f7fa;--bg2: #ffffff;--bg3: #eef2f7;--card-bg: rgba(255,255,255,.85);--border: rgba(14,148,136,.25);--border2: rgba(14,148,136,.4);--row-even: rgba(241,245,249,.65);--row-odd: rgba(255,255,255,.65);--muted: #475569;--muted2: #64748b;--danger: #dc2626;--success: #15803d;--warn: #b45309;--page-bg: #f5f7fa;--text: #1f2937;--text-strong: #0f172a;--hdr-grad: linear-gradient(135deg, #ffffff 0%, #eef2f7 100%);--thead-grad: linear-gradient(90deg, #eef2f7, #e2e8f0);--th-color: #475569;--row-hover: rgba(14,148,136,.08);--row-expand: rgba(14,148,136,.12);--modal-bg: #ffffff;--modal-shadow: 0 8px 40px rgba(15,23,42,.18);--overlay-bg: rgba(15,23,42,.35);--input-bg: #ffffff;--input-border: #cbd5e1;--input-readonly: #f1f5f9;--entry-bg: #f1f5f9;--entry-border: #e2e8f0;--btn-border: #cbd5e1;--footer-border: #e2e8f0;--footer-color: #94a3b8;--divider-soft: rgba(15,23,42,.05);--divider-softer: rgba(15,23,42,.08);--chip-hover: rgba(15,23,42,.04);--chip-hover2: rgba(15,23,42,.06);--chip-cnt-bg: rgba(15,23,42,.08);--script-bg: #0f172a;--script-color: #4ade80;--fqdn-color: #64748b;--ip-color: #2563eb;--accent-user: #0d9488;--primary-star: #b45309;--primary-star-dim: #94a3b8}#app{display:flex;flex-direction:column;min-height:100vh}.hdr{background:var(--hdr-grad);border-bottom:1px solid var(--border);padding:10px 24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;flex-shrink:0}.hdr-left{display:flex;align-items:center;gap:16px}.hdr-right{display:flex;gap:8px;align-items:center}.logo-img{height:42px;object-fit:contain}.status-dot-wrap{display:flex;align-items:center;gap:6px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--success);animation:pulse 2s infinite}.status-text{font-size:10px;color:var(--success);letter-spacing:.06em}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{to{transform:rotate(360deg)}}.hbtn{padding:5px 14px;font-size:10px;font-family:inherit;border:1px solid var(--btn-border);background:none;color:var(--muted);border-radius:6px;cursor:pointer;transition:border-color .15s,color .15s;white-space:nowrap}.hbtn:hover{border-color:var(--tc);color:var(--tc)}.hbtn.prime{background:var(--tc-dim);border-color:#00c8b466;color:var(--tc);font-weight:700}.hbtn.prime:hover{background:#00c8b440}.main{padding:16px 24px;flex:1}.db-err{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:10px 16px;color:var(--danger);font-size:11px;margin-bottom:14px;display:flex;align-items:center;gap:10px}.db-err-btn{padding:3px 10px;background:#ef444433;border:1px solid rgba(239,68,68,.3);color:var(--danger);border-radius:5px;font-family:inherit;font-size:10px;cursor:pointer;white-space:nowrap}.stats-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:8px}.stat-card{flex:0 0 auto;width:120px;background:var(--card-bg);border-radius:8px;padding:12px 8px;text-align:center;border:1px solid rgba(0,200,180,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.stat-n{font-size:40px;font-weight:900;line-height:1}.stat-l{color:var(--muted2);font-size:14px;margin-top:0;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.toolbar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;align-items:center}.search-wrap{position:relative;flex:1;min-width:200px}.search-ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--muted2);pointer-events:none;font-size:12px}.search-input{width:100%;background:var(--input-bg);color:var(--text-strong);border:1px solid var(--input-border);border-radius:10px;padding:8px 12px 8px 32px;font-family:inherit;font-size:12px;outline:none;transition:border-color .15s}.search-input:focus{border-color:#00c8b480}.tbar-sel{background:var(--input-bg);color:var(--text-strong);border:1px solid var(--input-border);border-radius:10px;padding:7px 10px;font-family:inherit;font-size:11px;outline:none;cursor:pointer;transition:border-color .15s}.tbar-sel:focus{border-color:#00c8b480}.btn-clear{padding:6px 10px;background:none;border:1px solid rgba(239,68,68,.3);color:var(--danger);border-radius:8px;font-size:10px;font-family:inherit;cursor:pointer;white-space:nowrap}.res-count{color:var(--muted2);font-size:10px;margin-left:auto;white-space:nowrap}.tbl-wrap{border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:12px}.tbl-scroll{overflow-x:auto}table{width:100%;border-collapse:separate;border-spacing:0}table.assets-tbl{table-layout:fixed;min-width:1100px}thead{background:var(--thead-grad)}th{padding:10px 12px;text-align:left;font-size:11px;letter-spacing:.08em;color:var(--th-color);border-bottom:1px solid var(--border);white-space:nowrap;cursor:pointer;user-select:none;font-weight:700;position:relative;overflow:hidden;text-overflow:ellipsis}th:hover{color:var(--tc)}.th-label{display:inline-block}.sort-ic{color:var(--muted2);font-size:10px;margin-left:4px;font-weight:700}.col-resize{position:absolute;top:0;right:0;bottom:0;width:6px;cursor:col-resize;z-index:2;touch-action:none}.col-resize:hover,.col-resize:active{background:var(--tc);opacity:.4}.data-row{cursor:pointer;transition:background .1s}.data-row:nth-child(2n){background:var(--row-even)}.data-row:nth-child(odd){background:var(--row-odd)}.data-row:hover{background:var(--row-hover)!important}.data-row.expanded{background:var(--row-expand)!important}td{padding:10px 12px;border-bottom:1px solid var(--divider-soft);font-size:13px;vertical-align:middle;max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-seq{color:var(--muted2);text-align:center}.td-purp{color:var(--muted)}.td-ip{color:var(--ip-color);font-family:monospace;font-size:13px}.td-reg,.td-svc,.td-desc{color:var(--muted)}.hn{color:var(--tc);font-weight:700;font-size:13px;letter-spacing:.02em;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fqdn{color:var(--fqdn-color);font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-flex;padding:3px 10px;border-radius:6px;font-size:11px;font-weight:700;border:1px solid;white-space:nowrap}.b-sec{background:#f43f5e26;color:#fb7185;border-color:#f43f5e4d}.b-svr{background:#3b82f626;color:#93c5fd;border-color:#3b82f64d}.b-pc{background:#a855f726;color:#c4b5fd;border-color:#a855f74d}.b-net{background:#eab30826;color:#fde68a;border-color:#eab3084d}.b-phy{background:#f9731626;color:#fdba74;border-color:#f973164d}.b-vm{background:#22d3ee26;color:#67e8f9;border-color:#22d3ee4d}.b-win{background:#3b82f626;color:#bfdbfe;border-color:#3b82f64d}.b-lnx{background:#22c55e26;color:#86efac;border-color:#22c55e4d}.b-bsd{background:#ef444426;color:#fca5a5;border-color:#ef44444d}.b-etc{background:#6b728026;color:#d1d5db;border-color:#6b72804d}.creds-col{display:flex;flex-direction:column;gap:4px}.cred-row{display:grid;align-items:center;gap:8px;font-size:12px;padding:2px 0}.cred-row:not(.with-svc){grid-template-columns:36px 22px minmax(60px,1fr) 24px minmax(60px,1fr) auto}.cred-row.with-svc{grid-template-columns:36px minmax(80px,120px) 22px minmax(70px,1fr) 24px minmax(70px,1fr) auto}.ctype{padding:2px 6px;border-radius:4px;font-size:10px;font-weight:800;text-align:center;white-space:nowrap}.ct-sys{background:#f9731633;color:#fb923c}.ct-svc{background:#3b82f633;color:#93c5fd}.ct-mgt{background:#a855f733;color:#c4b5fd}.cred-svc{color:var(--fqdn-color);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cred-lbl{color:var(--muted2);font-size:10px;font-weight:700;letter-spacing:.04em}.cred-user{color:var(--accent-user);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:monospace}.cred-pw{color:var(--fqdn-color);font-size:12px;transition:color .2s;white-space:nowrap;font-family:monospace;letter-spacing:.05em}.cred-pw.vis{color:var(--warn)}.cred-btns{display:flex;gap:4px}.icon-btn{background:none;border:1px solid transparent;cursor:pointer;color:var(--muted2);padding:3px 6px;font-size:14px;line-height:1;transition:color .15s,border-color .15s;flex-shrink:0;border-radius:4px}.icon-btn:hover{color:var(--tc);border-color:var(--border)}.more-creds{color:var(--fqdn-color);font-size:10px;margin-top:2px;display:block}.script-btns{display:flex;gap:6px}.sbtn{padding:5px 10px;font-size:11px;font-family:inherit;border-radius:5px;cursor:pointer;border:1px solid;transition:background .15s;font-weight:700}.s-wz{background:#22c55e1a;color:#4ade80;border-color:#22c55e40}.s-hs{background:#3b82f61a;color:#93c5fd;border-color:#3b82f640}.s-wz:hover{background:#22c55e33}.s-hs:hover{background:#3b82f633}.action-btns{display:flex;gap:6px}.abtn{padding:5px 10px;font-size:11px;font-family:inherit;border-radius:5px;cursor:pointer;border:1px solid;transition:background .15s;font-weight:700}.abtn.edit{background:#eab3081a;color:var(--warn);border-color:#eab30840}.abtn.del{background:#ef44441a;color:var(--danger);border-color:#ef444440}.abtn.edit:hover{background:#eab30833}.abtn.del:hover{background:#ef444433}.exp-row td{background:var(--row-hover)!important;border-bottom:1px solid var(--border);max-width:none!important;overflow:visible!important;white-space:normal!important;padding:0!important}.exp-content{padding:16px 22px}.exp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;font-size:13px;margin-bottom:10px}.exp-grid .eg-label{color:var(--muted2);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-right:6px}.exp-grid>div{display:flex;flex-direction:column;gap:4px}.exp-grid>div.exp-edit{flex-direction:row;align-items:center;gap:8px;flex-wrap:wrap}.exp-creds{border-top:1px solid var(--divider-softer);padding-top:12px;margin-top:8px}.exp-edit{display:flex;align-items:center;gap:6px}.exp-sel{background:var(--input-bg);color:var(--text-strong);border:1px solid var(--input-border);border-radius:4px;padding:1px 4px 1px 6px;font-family:inherit;font-size:10px;cursor:pointer;outline:none;transition:border-color .15s;width:56px;max-width:56px;height:20px;line-height:1;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 9px) calc(50% - 1px),calc(100% - 5px) calc(50% - 1px);background-size:4px 4px,4px 4px;background-repeat:no-repeat}.exp-sel:hover,.exp-sel:focus{border-color:var(--tc)}.exp-inp{background:var(--input-bg);color:var(--text-strong);border:1px solid transparent;border-radius:5px;padding:3px 8px;font-family:inherit;font-size:11px;outline:none;transition:border-color .15s,background .15s;flex:1;min-width:120px}.exp-inp:hover{border-color:var(--btn-border)}.exp-inp:focus{border-color:var(--tc);background:var(--input-bg)}.ping-dot{display:inline-block;width:14px;height:14px;border-radius:50%;box-shadow:0 0 0 2px var(--divider-soft),0 0 6px currentColor;vertical-align:middle}.yn-pill{display:inline-block;min-width:22px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:700;border:1px solid}.yn-pill[data-v=Y]{background:#22c55e1f;color:var(--success);border-color:#22c55e59}.yn-pill[data-v=N]{background:#ef44441f;color:var(--danger);border-color:#ef444459}.yn-pill[data-v="N/A"],.yn-pill[data-v=""]{background:var(--divider-soft);color:var(--muted2);border-color:var(--divider-softer)}.stats-grid-domains{margin-top:4px;margin-bottom:12px}.stats-grid-domains .stat-card{width:150px;padding:10px 6px}.stats-grid-domains .stat-n{font-size:32px!important}.stats-grid-domains .stat-l{font-size:12px!important;font-family:monospace}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--page-bg);padding:24px}.login-box{width:100%;max-width:380px;background:var(--modal-bg);border:1px solid var(--border2);border-radius:14px;padding:32px 28px;box-shadow:var(--modal-shadow);display:flex;flex-direction:column;gap:12px}.login-logo{display:flex;justify-content:center;margin-bottom:6px}.login-logo img{height:52px}.login-title{text-align:center;color:var(--tc);font-size:16px;font-weight:700;letter-spacing:.03em}.login-sub{text-align:center;color:var(--muted2);font-size:11px;margin-bottom:8px}.login-fields{display:flex;flex-direction:column;gap:8px}.login-err{background:#ef44441f;border:1px solid rgba(239,68,68,.3);border-radius:6px;padding:8px 12px;color:var(--danger);font-size:11px}.login-btn{margin-top:4px;width:100%;padding:10px}.hdr-user{display:flex;align-items:center;gap:6px;padding-left:10px;margin-left:4px;border-left:1px solid var(--btn-border)}.hdr-user-name{font-size:11px;color:var(--text-strong);font-weight:700;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hdr-user-role{font-size:9px;font-weight:800;padding:1px 6px;border-radius:4px;letter-spacing:.05em}.hdr-user-role[data-v=Y]{background:#fb923c26;color:#fb923c;border:1px solid rgba(251,146,60,.35)}.hdr-user-role[data-v=N]{background:var(--divider-soft);color:var(--muted);border:1px solid var(--btn-border)}.a-actor{margin-top:4px;display:flex;align-items:center;gap:6px}.a-actor-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:700;color:var(--tc);background:var(--tc-dim);border:1px solid var(--border);border-radius:4px}.a-details{margin-top:4px}.a-details summary{cursor:pointer;font-size:10px;color:var(--muted)}.a-details summary:hover{color:var(--tc)}.a-diff{font-family:monospace;font-size:10px;color:var(--text-strong);background:var(--entry-bg);border:1px solid var(--entry-border);border-radius:5px;padding:8px 10px;margin-top:4px;overflow-x:auto;max-height:240px}@media (max-width: 1100px){.hdr{flex-wrap:wrap;gap:8px}.hdr-right{flex-wrap:wrap;gap:6px}.main{padding:12px 16px}.exp-grid{grid-template-columns:repeat(3,1fr)!important}}@media (max-width: 720px){html,body{font-size:13px}.hdr{padding:6px 10px;gap:4px;row-gap:6px}.hdr-left{gap:6px;width:100%;justify-content:space-between}.hdr-right{width:100%;justify-content:center;flex-wrap:wrap;gap:4px}.logo-img{height:28px}.status-text{font-size:9px}.status-dot-wrap{gap:4px}.hbtn{padding:4px 8px;font-size:9px!important;border-radius:5px}.hbtn.prime{padding:4px 9px;font-size:9px!important}.hdr-user{padding-left:6px;margin-left:2px;gap:4px}.hdr-user-name{max-width:72px;font-size:9px}.hdr-user-role{font-size:8px;padding:1px 4px}.theme-sw button{padding:3px 6px;font-size:10px}.main{padding:8px}.stats-grid,.stats-grid-domains{gap:5px;justify-content:center;margin-bottom:5px}.stat-card{width:calc(50% - 3px);padding:6px;gap:2px}.stats-grid-domains .stat-card{width:calc(50% - 3px);padding:6px 4px}.stat-n{font-size:28px!important}.stat-l{font-size:11px!important}.stats-grid-domains .stat-n{font-size:22px!important}.stats-grid-domains .stat-l{font-size:10px!important}.toolbar{gap:5px;margin-bottom:8px}.search-wrap{min-width:100%}.tbar-sel{font-size:10px;padding:5px 8px}.res-count{margin-left:0}.tbl-wrap{border-radius:8px}.tbl-scroll{-webkit-overflow-scrolling:touch}.exp-grid{grid-template-columns:repeat(2,1fr)!important;gap:6px!important}.exp-inp{min-width:0;width:100%}.modal-box,.catmgr-box{width:97%;max-height:92vh;padding:14px;gap:10px}.form-box{max-width:100%}.form-body{padding:14px}.fg4{grid-template-columns:repeat(2,1fr)}.fg3,.fg2{grid-template-columns:1fr}.catmgr-left{width:120px}.catmgr-right{padding:10px}.login-box{padding:24px 18px}}@media (max-width: 420px){.hdr-user-role{display:none}.hdr-user-name{max-width:60px}.theme-sw button{padding:4px 6px;font-size:10px}}.exp-creds-lbl{color:var(--muted2);font-size:12px;font-weight:700;margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}.exp-creds-list{display:flex;flex-direction:column;gap:8px}.pager{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:12px}.pg-btn{padding:4px 10px;font-size:10px;font-family:inherit;background:none;border:1px solid var(--btn-border);color:var(--muted);border-radius:6px;cursor:pointer;transition:border-color .15s,color .15s}.pg-btn:hover:not(:disabled){border-color:var(--tc);color:var(--tc)}.pg-btn.active{background:var(--tc-dim);border-color:#00c8b466;color:var(--tc)}.pg-btn:disabled{opacity:.3;cursor:not-allowed}.pg-dots{color:var(--btn-border);padding:0 4px}.page-footer{display:flex;justify-content:space-between;color:var(--footer-color);font-size:9px;padding-top:8px;border-top:1px solid var(--footer-border);letter-spacing:.04em;margin-bottom:8px}.loading-cell{text-align:center;padding:48px;color:var(--muted2);font-size:12px}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--entry-border);border-top-color:var(--tc);border-radius:50%;animation:spin 1s linear infinite;vertical-align:middle;margin-right:8px}.empty-msg{text-align:center;padding:48px;color:var(--muted2);font-size:12px}.overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:var(--overlay-bg);backdrop-filter:blur(4px)}.modal-box{background:var(--modal-bg);border:1px solid var(--border2);border-radius:14px;padding:22px;max-width:760px;width:95%;max-height:88vh;display:flex;flex-direction:column;box-shadow:var(--modal-shadow);gap:14px}.modal-hdr{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.modal-title{color:var(--tc);font-size:15px;font-weight:800;letter-spacing:.04em}.btn-copy{padding:7px 16px;background:var(--tc-dim);border:1px solid rgba(0,200,180,.3);color:var(--tc);border-radius:6px;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer}.btn-closesm{padding:7px 16px;background:#ef444426;border:1px solid rgba(239,68,68,.3);color:var(--danger);border-radius:6px;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer}.script-pre{background:var(--script-bg);border:1px solid var(--entry-border);border-radius:8px;padding:14px;color:var(--script-color);font-size:10px;overflow:auto;white-space:pre;flex:1;line-height:1.7;min-height:120px}.form-ov{position:fixed;inset:0;z-index:100;overflow-y:auto;padding:28px 16px;background:var(--overlay-bg);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:flex-start}.form-box{background:var(--modal-bg);border:1px solid var(--border2);border-radius:16px;width:100%;max-width:960px;box-shadow:var(--modal-shadow);margin-bottom:28px}.form-hdr{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid rgba(0,200,180,.15)}.form-title{color:var(--tc);font-size:16px;font-weight:800;letter-spacing:.04em}.hn-prev{color:#4ade80;font-size:13px;margin-top:4px;font-family:monospace;font-weight:700}.btn-catmgr{padding:8px 16px;background:#eab3081a;border:1px solid rgba(234,179,8,.25);color:var(--warn);border-radius:7px;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}.btn-catmgr:hover{background:#eab30833}.cat-panel{border-bottom:1px solid rgba(234,179,8,.2);padding:12px 22px;background:#eab30808}.cat-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.btn-addcat{padding:9px 18px;background:var(--tc-dim);border:1px solid rgba(0,200,180,.3);color:var(--tc);border-radius:7px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap}.cat-chips{display:flex;flex-wrap:wrap;gap:6px}.cat-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--entry-bg);color:var(--text-strong);border-radius:5px;font-size:10px;border:1px solid var(--btn-border)}.cat-chip button{background:none;border:none;color:var(--muted2);cursor:pointer;font-size:13px;line-height:1;padding:0}.cat-chip button:hover{color:var(--danger)}.form-body{padding:20px 22px;display:flex;flex-direction:column;gap:14px}.fg4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.fg3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fg2{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.fcol{display:flex;flex-direction:column;gap:5px}.flbl{font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.req{color:var(--danger)}.fi{background:var(--input-bg);color:var(--text-strong);border:1px solid var(--input-border);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:13px;outline:none;transition:border-color .15s;width:100%}.fi:focus{border-color:var(--border2)}.fi[readonly]{background:var(--input-readonly);color:var(--tc);cursor:not-allowed}textarea.fi{resize:vertical;min-height:60px}.cred-sec{border:1px solid var(--entry-border);border-radius:10px;padding:14px}.cred-sec-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cred-sec-title{color:var(--muted);font-size:12px;letter-spacing:.04em;font-weight:700}.btn-addcred{padding:6px 14px;background:var(--tc-dim);border:1px solid rgba(0,200,180,.3);color:var(--tc);border-radius:6px;font-size:11px;font-weight:700;font-family:inherit;cursor:pointer}.cred-entry{display:flex;gap:8px;align-items:center;background:var(--entry-bg);border-radius:8px;padding:9px 12px;margin-bottom:8px}.cred-entry:last-child{margin-bottom:0}.cred-del{background:none;border:none;color:var(--muted2);cursor:pointer;font-size:22px;flex-shrink:0;line-height:1;transition:color .15s;padding:0 4px}.cred-del:hover{color:var(--danger)}.form-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--border)}.btn-cancel{padding:9px 22px;background:var(--entry-bg);border:1px solid var(--btn-border);color:var(--muted);border-radius:8px;font-family:inherit;font-size:13px;cursor:pointer;font-weight:700}.btn-save{padding:9px 22px;background:#00c8b433;border:1px solid rgba(0,200,180,.4);color:var(--tc);border-radius:8px;font-family:inherit;font-size:13px;cursor:pointer;font-weight:800}.btn-save:hover{background:#00c8b44d}.audit-list{overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:8px}.audit-item{background:var(--entry-bg);border:1px solid var(--entry-border);border-radius:10px;padding:14px;flex-shrink:0}.audit-top{display:flex;align-items:center;gap:10px;margin-bottom:6px;flex-wrap:wrap}.a-badge{padding:3px 10px;border-radius:5px;font-size:11px;font-weight:800}.a-INSERT{background:#22c55e33;color:#4ade80}.a-UPDATE{background:#eab30833;color:var(--warn)}.a-DELETE{background:#ef444433;color:var(--danger)}.a-rec{color:var(--tc);font-size:13px;font-family:monospace}.a-time{color:var(--muted2);font-size:11px;margin-left:auto}.a-fields{font-size:12px;color:var(--muted);margin-top:4px}.a-field{color:var(--warn);margin-right:8px;font-weight:700}.env-info-box{background:#00c8b40d;border:1px solid var(--border2);border-radius:10px;padding:16px;font-size:11px;display:flex;flex-direction:column;gap:8px}.env-row{display:grid;grid-template-columns:160px 1fr;gap:8px;align-items:center}.env-key{color:var(--muted2);font-size:10px}.env-val{color:var(--text-strong)}.env-file-path{font-family:monospace;color:var(--ip-color);font-size:11px}.warn-box{background:#eab30814;border:1px solid rgba(234,179,8,.2);border-radius:8px;padding:12px;color:var(--warn);font-size:10px;line-height:1.7}.warn-box code{background:#0006;padding:1px 6px;border-radius:4px;font-family:monospace;color:#93c5fd}.sel-with-mgr{display:flex;flex-direction:column;gap:3px}.sel-mgr-btn{align-self:flex-start;padding:2px 8px;font-size:9px;font-family:inherit;background:#00c8b414;border:1px solid rgba(0,200,180,.2);color:var(--tc);border-radius:4px;cursor:pointer;transition:background .15s;letter-spacing:.03em}.sel-mgr-btn:hover{background:#00c8b42e}.catmgr-box{background:var(--modal-bg);border:1px solid var(--border2);border-radius:14px;width:95%;max-width:860px;max-height:88vh;display:flex;flex-direction:column;box-shadow:var(--modal-shadow);overflow:hidden}.catmgr-hdr{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.catmgr-body{display:flex;flex:1;overflow:hidden;min-height:0}.catmgr-left{width:220px;flex-shrink:0;border-right:1px solid var(--border);overflow-y:auto;padding:12px 0}.catmgr-left-title{font-size:11px;color:var(--muted2);letter-spacing:.08em;text-transform:uppercase;font-weight:700;padding:6px 16px 10px}.grp-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:none;border:none;color:var(--muted);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;transition:background .1s,color .1s;gap:8px}.grp-btn:hover{background:var(--chip-hover);color:var(--text-strong)}.grp-btn.active{background:var(--tc-dim);color:var(--tc)}.grp-cnt{font-size:11px;font-weight:700;background:var(--chip-cnt-bg);border-radius:10px;padding:2px 8px;flex-shrink:0;color:var(--muted2)}.grp-btn.active .grp-cnt{background:#00c8b433;color:var(--tc)}.catmgr-right{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:8px;min-width:0}.catmgr-right-title{font-size:15px;font-weight:800;color:var(--tc);padding-bottom:10px;border-bottom:1px solid var(--border);flex-shrink:0}.cat-item-list{display:flex;flex-direction:column;gap:4px;flex:1}.cat-empty{color:var(--muted2);font-size:13px;padding:14px 0}.cat-item-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--divider-soft);border:1px solid var(--divider-softer);border-radius:8px;transition:background .1s}.cat-item-row:hover{background:var(--chip-hover2)}.cat-item-val{flex:1;font-size:14px;color:var(--text-strong);font-weight:500}.cat-item-code{font-size:12px;font-weight:700;color:var(--tc);background:#00c8b41a;border:1px solid rgba(0,200,180,.2);border-radius:5px;padding:3px 10px;white-space:nowrap;font-family:monospace}.cat-item-acts{display:flex;gap:6px;flex-shrink:0}.cib{padding:5px 12px;font-size:11px;font-family:inherit;border-radius:5px;cursor:pointer;border:1px solid;font-weight:700;transition:background .15s}.cib.edit{background:#eab3081a;color:var(--warn);border-color:#eab30840}.cib.del{background:#ef44441a;color:var(--danger);border-color:#ef444440}.cib.save{background:#00c8b426;color:var(--tc);border-color:#00c8b44d}.cib.cancel{background:#6b72801a;color:var(--muted);border-color:#6b728040}.cib.edit:hover{background:#eab30833}.cib.del:hover{background:#ef444433}.cib.save:hover{background:#00c8b440}.cib.cancel:hover{background:#6b728033}.cat-add-row{display:flex;gap:8px;align-items:center;padding-top:10px;border-top:1px solid var(--border);flex-shrink:0;margin-top:auto}html,body{font-size:14px}.stat-l{font-size:14px!important}.stat-n{font-size:40px!important}.hbtn{font-size:12px!important;padding:6px 16px}.hbtn.prime,.res-count{font-size:12px!important}.col-check-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--divider-soft);border:1px solid var(--divider-softer);border-radius:8px;cursor:pointer;font-size:14px;color:var(--text-strong);transition:background .1s;user-select:none;font-weight:500}.col-check-item:hover{background:var(--row-hover)}.col-check-item input[type=checkbox]{width:16px;height:16px;cursor:pointer}.domain-entry{display:flex;align-items:center;gap:8px;background:var(--entry-bg);border-radius:7px;padding:7px 10px;margin-bottom:6px}.primary-btn{background:none;border:none;font-size:22px;cursor:pointer;color:var(--primary-star-dim);flex-shrink:0;line-height:1;padding:0 4px;transition:color .15s}.primary-btn.on,.primary-btn:hover{color:var(--primary-star)}.domain-preview{font-size:12px;color:var(--tc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;flex-shrink:0;font-family:monospace}.theme-sw{display:inline-flex;gap:0;border:1px solid var(--btn-border);border-radius:8px;overflow:hidden}.theme-sw button{padding:6px 10px;font-size:12px;font-family:inherit;background:none;color:var(--muted);border:none;cursor:pointer;border-right:1px solid var(--btn-border);line-height:1;transition:background .15s,color .15s}.theme-sw button:last-child{border-right:none}.theme-sw button:hover{color:var(--tc)}.theme-sw button.active{background:var(--tc-dim);color:var(--tc)}
