:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18212f;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.login-shell{align-items:center;background:#edf1f5;display:flex;min-height:100vh;justify-content:center;padding:24px}.login-panel{background:#fff;border:1px solid #d9e1ea;border-radius:8px;display:grid;gap:22px;max-width:420px;padding:28px;width:100%}.login-brand{align-items:center;color:#17202b;display:flex;font-size:20px;font-weight:800;gap:10px}.login-alert{background:#fff6ed;border:1px solid #fed7aa;border-radius:6px;color:#9a3412;font-size:14px;padding:10px 12px}.login-button{align-items:center;background:#f26b2f;border-radius:6px;color:#fff;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:42px;padding:10px 14px}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{background:#17202b;color:#f8fafc;padding:24px 18px}.brand,.sidebar a,.sidebar button,header,.toolbar{display:flex;align-items:center}.brand{gap:10px;font-size:18px;font-weight:700;margin-bottom:32px}.sidebar nav{display:grid;gap:8px}.sidebar a,.sidebar button{background:transparent;border:0;gap:10px;padding:11px 12px;border-radius:6px;color:#cbd5e1;justify-content:flex-start;width:100%}.sidebar a.active,.sidebar a:hover,.sidebar button:hover,.sidebar button.nav-active{background:#243244;color:#fff}.content{padding:22px;min-width:0}header{justify-content:space-between;gap:16px;margin-bottom:24px}h1{margin:0 0 6px;font-size:24px}p{margin:0;color:#667085}button,input,select{border:1px solid #cfd8e3;border-radius:6px;font:inherit}button{align-items:center;background:#f26b2f;color:#fff;border-color:#f26b2f;display:inline-flex;gap:8px;justify-content:center;padding:10px 14px;font-weight:700;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.secondary-button{background:#fff;border-color:#cfd8e3;color:#334155;height:42px;padding:0 11px}.session-actions{align-items:center;display:flex;gap:10px}.session-actions span{color:#475467;font-size:14px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar{gap:12px;margin-bottom:16px;flex-wrap:wrap}.admin-grid{display:grid;gap:18px}.admin-section{display:grid;gap:12px}.section-header h2{font-size:18px;margin:0 0 4px}.inline-alert{background:#eef7ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;font-size:14px;padding:10px 12px}.actions-cell{display:flex;gap:8px;min-width:180px}.actions-cell button{min-height:34px;padding:7px 10px}input,select{height:42px;background:#fff;padding:0 12px}input{width:min(520px,100%)}.table-wrap{overflow:auto;background:#fff;border:1px solid #dde3ea;border-radius:8px}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid #edf1f5;vertical-align:middle}th{color:#667085;font-size:13px;font-weight:700}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e8f7ef;color:#207a45;font-size:12px;font-weight:700}.metric-row{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.metric-row div{background:#fff;border:1px solid #dde3ea;border-radius:8px;display:grid;gap:2px;padding:12px 14px}.metric-row strong{font-size:22px}.metric-row span,.muted-line{color:#667085;display:block;font-size:12px}.dense-table-panel{display:grid;gap:12px}.compact-actions{min-width:240px}.compact-actions button,.icon-button{min-height:34px;padding:7px 10px}.protocol-badge,.count-badge{border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;padding:4px 8px}.protocol-ssh{background:#eef7ff;color:#1d4ed8}.protocol-telnet{background:#f5f3ff;color:#6d28d9}.count-badge{background:#eef2f7;color:#334155;min-width:28px;justify-content:center}.danger-count{background:#fff1f2;color:#be123c}.selected-row{background:#f8fbff}.table-pagination{justify-content:flex-end;margin-top:12px}.manage-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.manage-main{min-width:0}.modal-backdrop{align-items:center;background:#0f172a6b;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:22px;position:fixed;z-index:50}.modal-panel{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 24px 80px #0f172a47;display:grid;gap:14px;max-height:calc(100vh - 44px);overflow:auto;padding:18px;width:min(720px,100%)}.compact-modal{width:min(680px,100%)}.token-modal{width:min(560px,100%)}.terminal-fullscreen{background:#111827;display:grid;grid-template-rows:auto minmax(0,1fr);top:0;right:0;bottom:0;left:0;padding:10px;position:fixed;z-index:40}.terminal-fullscreen .terminal-tabs{background:#111827;padding:0}.terminal-fullscreen .terminal-tabs button{border-radius:6px 6px 0 0;min-height:36px;padding:8px 11px}.terminal-fullscreen .terminal-panel{border:1px solid #263241;border-radius:0 8px 8px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0}.terminal-fullscreen .terminal-output{height:auto;min-height:0}.terminal-home{background:#f4f6f8;border:1px solid #263241;border-radius:0 8px 8px;overflow:auto;padding:14px}footer{margin-top:16px;color:#667085;font-size:13px}.connection-toolbar input{flex:1;min-width:260px}.vault-layout{display:grid;grid-template-columns:260px minmax(0,1fr) minmax(280px,340px);gap:16px;align-items:start}.connection-list,.side-panel,.drawer-panel,.home-panel,.terminal-panel{background:#fff;border:1px solid #dde3ea;border-radius:8px}.connection-list{display:grid;gap:8px;padding:12px}.list-title{align-items:center;color:#334155;display:flex;justify-content:space-between;padding:4px 4px 8px}.connection-list>button{background:#fff;border-color:#e5eaf0;color:#334155;justify-content:flex-start;min-height:58px;padding:9px 10px;text-align:left}.connection-list>button span{display:grid;gap:2px;min-width:0}.connection-list small{color:#667085;overflow:hidden;text-overflow:ellipsis}.connection-list .list-active{background:#eef7ff;border-color:#93c5fd;color:#1e3a8a}.pagination{align-items:center;display:flex;gap:8px;justify-content:space-between;padding-top:6px}.pagination button{min-height:34px;padding:6px 9px}.terminal-workspace{display:grid;gap:0;min-width:0}.terminal-tabs{align-items:end;display:flex;gap:6px;min-width:0;overflow-x:auto;padding:0 2px}.terminal-tabs button{background:#e8eef5;border-color:#d7e0ea;border-radius:8px 8px 0 0;color:#334155;min-height:38px;white-space:nowrap}.terminal-tabs .tab-active{background:#17202b;border-color:#17202b;color:#fff}.terminal-tabs span{color:inherit;font-size:11px;opacity:.72}.terminal-panel{border-radius:0 8px 8px;overflow:hidden}.terminal-toolbar{align-items:center;background:#17202b;color:#e2e8f0;display:flex;gap:8px;justify-content:flex-end;padding:10px}.terminal-toolbar span{margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-output{background:#0b1118;color:#d6f7d0;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;height:520px;line-height:1.45;margin:0;overflow:auto;padding:14px;white-space:pre-wrap}.terminal-input-row{align-items:center;background:#111827;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:10px}.terminal-input-row span{color:#86efac;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:800}.terminal-input-row input{background:#0b1118;border-color:#263241;color:#f8fafc;width:100%}.home-panel{padding:16px}.home-panel h2{font-size:18px;margin:0 0 14px}.connection-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.connection-card{border:1px solid #dde3ea;border-radius:8px;cursor:pointer;display:grid;gap:8px;min-height:166px;padding:14px;position:relative}.connection-card:hover,.selected-card{border-color:#93c5fd;box-shadow:0 10px 22px #0f172a14}.connection-card span,.connection-card small{color:#667085}.favorite-button,.icon-button{background:#fff;border-color:#d7e0ea;color:#475467;min-height:34px;padding:7px}.favorite-button{position:absolute;right:10px;top:10px}.favorite-active{background:#fff7d6;border-color:#facc15;color:#a16207}.card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.card-actions button{min-height:36px;padding:7px 10px}.grant-box{background:#f8fafc;border:1px solid #d7e0ea;border-radius:8px;color:#334155;margin:14px 0 0;overflow:auto;padding:12px}.side-panel,.drawer-panel{display:grid;gap:14px;padding:14px}.side-panel h2{font-size:18px;margin:0}.panel-block{display:grid;gap:9px}.inline-fields{display:flex;gap:8px}.inline-fields input,.inline-fields select{min-width:0;width:100%}.inline-fields button{min-width:42px}.chip-list,.rule-list{display:flex;flex-wrap:wrap;gap:6px}.chip,.rule-chip{align-items:center;background:#eef2f7;border-radius:999px;color:#334155;display:inline-flex;font-size:12px;gap:6px;padding:5px 8px}.rule-chip button{background:transparent;border:0;color:#475467;min-height:auto;padding:0}.form-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid input,.form-grid select{width:100%}.form-wide{grid-column:1 / -1}.badge-input{background:#eef7ff;color:#1e40af}.badge-output{background:#e8f7ef;color:#207a45}.badge-blocked{background:#fff1f2;color:#be123c}.badge-system{background:#eef2f7;color:#475467}.log-content{display:block;max-height:90px;max-width:520px;overflow:auto;white-space:pre-wrap}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{padding:16px}.sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.brand{margin-bottom:14px}header,.toolbar,.session-actions{align-items:stretch;flex-direction:column}.session-actions span{max-width:none}.vault-layout{grid-template-columns:1fr}.terminal-output{height:420px}.form-grid,.terminal-input-row{grid-template-columns:1fr}}
