:root{--bg:#f4f6f8;--surface:#fff;--ink:#17202a;--muted:#647184;--line:#dde3ea;--brand:#4f7d35;--brand-dark:#253a1d;--accent:#8fbd64}
.account-detail-tabs{margin-bottom:16px}.account-section{max-width:980px}.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.account-password-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.account-form-actions{grid-column:1/-1;display:flex;justify-content:flex-start}.account-section .user-avatar.large{flex:0 0 auto}@media(max-width:900px){.account-form-grid,.account-password-form{grid-template-columns:1fr}}
.path-cell{max-width:420px;font-family:Consolas,monospace;font-size:.8rem;word-break:break-word}.scan-result{border-left:4px solid #c49123}.scan-result.scan-ok{border-left-color:var(--brand)}.setting-row small{grid-column:2;color:var(--muted)}
.empty-state{text-align:center!important;padding:3.5rem 1rem!important}.empty-state strong,.empty-state span{display:block}.empty-state span{margin:.4rem 0 1.2rem;color:var(--muted);font-weight:400;text-transform:none;letter-spacing:0}
.version-link{color:var(--ink);text-decoration:none}.version-link:hover{color:var(--brand)}.metric-text{font-size:1.35rem!important;margin-top:.7rem!important}.check-list{display:grid}.check-row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.7rem;padding:.8rem 0;border-top:1px solid var(--line)}.check-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:800}.check-icon.ok{background:#e8f4df;color:#47752e}.check-icon.missing{background:#fff0d8;color:#9a681a}.check-row code{display:block;margin-top:.2rem;color:var(--muted);font-size:.76rem;word-break:break-all}.check-state{color:var(--muted);font-size:.78rem}.detail-list dt{color:var(--muted);font-size:.72rem;text-transform:uppercase}.detail-list dd{margin:.2rem 0 1rem;word-break:break-word}.update-card{display:flex;align-items:center;justify-content:space-between;gap:2rem}.update-card h2{font-size:1.15rem;margin:.2rem 0}.update-card p{max-width:850px;margin:0;color:var(--muted)}
.update-steps{display:grid}.update-step{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.step-number{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e9f2e3;color:var(--brand);font-weight:800}.update-step.blocked .step-number{background:#f2f3f5;color:#8a94a3}.update-step p{margin:.25rem 0 0;color:var(--muted)}.step-state{font-size:.75rem;font-weight:750;color:var(--brand)}.update-step.blocked .step-state{color:#9a681a}.update-confirm{display:flex;align-items:center;justify-content:space-between;gap:2rem}.update-confirm h2{font-size:1.1rem}.update-confirm p{margin:0;color:var(--muted);max-width:900px}
.instance-cards{display:grid;gap:1rem}.instance-candidate{display:grid;grid-template-columns:1fr 330px;gap:2rem;align-items:center}.instance-candidate h2{margin:.5rem 0 .2rem;font-size:1.25rem}.instance-candidate code{color:var(--muted)}.candidate-facts{display:flex;gap:1.5rem;margin:1rem 0 0;padding:0;list-style:none;color:var(--muted);font-size:.8rem}@media(max-width:800px){.instance-candidate{grid-template-columns:1fr}.candidate-facts{display:grid;gap:.3rem}}
.dlc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.dlc-option{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--line);border-radius:12px;cursor:pointer}.dlc-option:hover{border-color:var(--accent)}.dlc-option strong,.dlc-option small{display:block}.dlc-option small{margin-top:.2rem;color:var(--muted)}@media(max-width:700px){.dlc-grid{grid-template-columns:1fr}}
.check-icon.unknown{background:#e8edf4;color:#647184}
.task-card{display:grid;grid-template-columns:1fr minmax(280px,420px);align-items:center;gap:2rem}.task-card h2{margin:.2rem 0}.task-card p{margin:0;color:var(--muted)}.task-actions{display:flex;justify-content:flex-end;gap:.6rem}.task-actions form{margin:0}.task-create{justify-self:stretch}@media(max-width:750px){.task-card{grid-template-columns:1fr}.task-actions{justify-content:flex-start}}
.xml-settings{display:grid;grid-template-columns:140px 1fr 1fr auto;align-items:end;gap:1rem}.xml-check{display:flex;align-items:center;gap:.55rem;min-height:38px;white-space:nowrap}.xml-logo-field{grid-column:span 2}.xml-logo-field small{display:block;margin-top:.25rem;color:var(--muted)}.xml-actions{grid-column:1/-1;display:flex;align-items:center;gap:1rem}.xml-actions small{color:var(--muted)}.xml-editor{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line)}.xml-editor summary{cursor:pointer;color:var(--brand);font-weight:700}.xml-source{min-height:390px;font-family:Consolas,monospace;font-size:.82rem;line-height:1.5;white-space:pre;overflow:auto}@media(max-width:900px){.xml-settings{grid-template-columns:1fr 1fr}.xml-check,.xml-actions{grid-column:1/-1}.xml-logo-field{grid-column:span 1}}@media(max-width:600px){.xml-settings{grid-template-columns:1fr}.xml-logo-field{grid-column:1}}
.logo-picker{display:grid;grid-template-columns:1fr 150px;align-items:start;gap:.65rem}.logo-picker>.form-label{grid-column:1/-1;margin:0}.logo-preview{grid-column:2;grid-row:2/4;width:150px;height:92px;border:1px solid var(--line);border-radius:10px;background:#f2f4f5;object-fit:contain}.logo-dropzone{display:flex;align-items:center;justify-content:center;min-height:58px;padding:.65rem;border:2px dashed #b8c5b1;border-radius:10px;background:#f7faf5;color:var(--brand);font-size:.8rem;font-weight:700;text-align:center;cursor:pointer}.logo-dropzone:hover,.logo-dropzone.dragging{border-color:var(--brand);background:#e9f3e3}.logo-upload{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}@media(max-width:700px){.logo-picker{grid-template-columns:1fr}.logo-preview{grid-column:1;grid-row:auto;width:100%;height:120px}}
.logo-dropzone{font-size:0}.logo-dropzone::before{content:"Hochladen (Drag & Drop)";font-size:.8rem}
.password-reveal{position:relative}.password-reveal .form-control{padding-right:3rem}.password-reveal-button{position:absolute;top:50%;right:.35rem;display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:0;border-radius:7px;background:transparent;color:var(--muted);transform:translateY(-50%)}.password-reveal-button:hover{background:#eef3eb;color:var(--brand)}
.logo-upload-status{grid-column:1/-1}.logo-upload-track{height:18px;overflow:hidden;border-radius:999px;background:#e5e9ed}.logo-upload-bar{height:100%;width:0;border-radius:inherit;background:var(--brand);transition:width .15s ease}.logo-upload-status small{display:block;margin-top:.3rem;color:var(--muted)}.logo-upload-status.complete .logo-upload-bar{background:#4f8b36}.logo-upload-status.complete small{color:#39752b}.logo-upload-status.failed .logo-upload-bar{width:100%!important;background:#d9364c}.logo-upload-status.failed small{color:#a42636}
.runtime-grid{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:1rem}.runtime-grid small{display:block;margin-top:.3rem;color:var(--muted)}.runtime-submit{grid-column:1/-1;display:flex;align-items:center;gap:1rem}.runtime-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-bottom:1.2rem}.runtime-summary div{padding:1rem;border:1px solid var(--line);border-radius:12px}.runtime-summary span,.runtime-summary strong,.runtime-summary small{display:block}.runtime-summary span,.runtime-summary small{color:var(--muted);font-size:.78rem}.runtime-summary strong{margin:.25rem 0}.runtime-extension{padding-top:1rem;border-top:1px solid var(--line)}@media(max-width:800px){.runtime-grid,.runtime-summary{grid-template-columns:1fr}.runtime-submit{grid-column:1}}
.delete-instance-card{border-color:#efc4c4}.danger-badge{background:#fde8e8;color:#9c2929}.delete-choice{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.delete-choice strong,.delete-choice small{display:block}.delete-choice small{margin-top:.2rem;color:var(--muted)}
.version-danger-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.version-danger-grid>div{padding:1rem;border:1px solid #edcccc;border-radius:12px;background:#fffafa}.version-danger-grid h3{font-size:1rem}.version-danger-grid p{color:var(--muted)}.dependency-counts{display:flex;gap:.5rem;margin-bottom:.8rem}.dependency-counts span{padding:.35rem .55rem;border-radius:7px;background:#f3eaea;color:#7f3333;font-size:.78rem;font-weight:700}@media(max-width:800px){.version-danger-grid{grid-template-columns:1fr}}
.wizard-web-row,.wizard-runtime-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.wizard-runtime-row{margin-top:1rem;max-width:760px}@media(max-width:700px){.wizard-web-row,.wizard-runtime-row{grid-template-columns:1fr}}
.creation-overlay{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:1rem;background:rgba(18,27,20,.72);backdrop-filter:blur(4px)}.creation-overlay[hidden]{display:none}.creation-dialog{width:min(620px,100%);padding:2rem;border-radius:18px;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.3)}.creation-dialog h2{margin:.3rem 0}.creation-dialog p{min-height:1.5rem;color:var(--muted)}.creation-dialog .progress{height:24px;margin:1.2rem 0}.creation-dialog .progress-bar{position:relative;overflow:hidden;background:var(--brand);transition:width .3s ease}.creation-dialog .progress-bar::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,transparent 35%,rgba(255,255,255,.28) 48%,rgba(255,255,255,.28) 58%,transparent 72%,transparent 100%);transform:translateX(-100%);animation:creation-progress-shine 1.25s linear infinite}.creation-dialog small{color:var(--muted)}
@keyframes creation-progress-shine{to{transform:translateX(100%)}}
.dashboard-server-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:1rem;margin-top:1rem}.dashboard-server-card{padding:1.25rem;border:1px solid var(--line);border-radius:14px;background:#fbfcfd;box-shadow:0 8px 22px rgba(30,45,35,.08)}.dashboard-server-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.dashboard-server-head h3{margin:.2rem 0 0;font-size:1.35rem}.instance-state{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .7rem;border-radius:999px;background:#edf1f4;color:var(--muted);font-size:.82rem;font-weight:700;white-space:nowrap}.instance-state i{width:.55rem;height:.55rem;border-radius:50%;background:#8d99a5}.instance-state.online{background:#e7f4df;color:#2d6b21}.instance-state.online i{background:#55ad3c}.instance-state.ready{background:#eef3e8;color:#4f702d}.instance-state.ready i{background:#83a957}.instance-state.expired,.instance-state.missing{background:#fff0e4;color:#9b4c16}.instance-state.expired i,.instance-state.missing i{background:#e48a3a}.dashboard-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1rem 0}.dashboard-status-grid>div{padding:.8rem;border-radius:10px;background:var(--surface-soft,#f5f7f8)}.dashboard-status-grid span,.dashboard-status-grid small{display:block;color:var(--muted);font-size:.78rem}.dashboard-status-grid strong{display:block;margin:.2rem 0;font-size:.95rem}.dashboard-server-actions{display:flex;flex-wrap:wrap;gap:.65rem}.dashboard-empty{padding:2.5rem 1rem;text-align:center;color:var(--muted)}.dashboard-empty strong{display:block;color:var(--text);font-size:1.1rem}.dashboard-empty p{margin:.4rem 0}.text-success{color:#397b2a!important}@media(max-width:620px){.dashboard-server-grid{grid-template-columns:1fr}.dashboard-status-grid{grid-template-columns:1fr}.dashboard-server-head{align-items:flex-start;flex-direction:column}}
.dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem}.view-switch{display:inline-flex;padding:.25rem;border:1px solid var(--line);border-radius:10px;background:#fff}.view-switch button{padding:.45rem .8rem;border:0;border-radius:7px;background:transparent;color:var(--muted);font-weight:700}.view-switch button.active{background:var(--brand);color:#fff}.dashboard-groups{display:grid;gap:1rem}.dashboard-version-group{margin:0}.dashboard-version-title h2{margin:.15rem 0 0}.list-view .dashboard-server-grid{display:grid;grid-template-columns:1fr;gap:.65rem}.list-view .dashboard-server-card{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(430px,2fr) auto;align-items:center;gap:1rem;padding:.9rem 1rem}.list-view .dashboard-status-grid{grid-template-columns:repeat(4,1fr);margin:0;gap:.45rem}.list-view .dashboard-status-grid>div{padding:.55rem .65rem}.list-view .dashboard-server-actions{justify-content:flex-end}.list-view .local-panel-link{display:none}@media(max-width:1100px){.list-view .dashboard-server-card{grid-template-columns:1fr}.list-view .dashboard-status-grid{grid-template-columns:1fr 1fr}.list-view .dashboard-server-actions{justify-content:flex-start}}@media(max-width:620px){.dashboard-toolbar{align-items:stretch;flex-direction:column}.view-switch{align-self:flex-start}.list-view .dashboard-status-grid{grid-template-columns:1fr}}
.dashboard-instances-card{padding:1.25rem}.dashboard-version-group+.dashboard-version-group{padding-top:1.25rem;border-top:1px solid var(--line)}.dashboard-version-title{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dashboard-version-title h3{margin:.12rem 0 0;font-size:1.05rem}.tiles-view .dashboard-server-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tiles-view .dashboard-server-card{min-width:0}.list-view .dashboard-version-title{margin-bottom:.65rem}@media(max-width:1350px){.tiles-view .dashboard-server-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.tiles-view .dashboard-server-grid{grid-template-columns:1fr}.dashboard-version-title{align-items:flex-start;flex-direction:column}}
.dashboard-table-wrap{display:none;margin-top:.8rem;overflow-x:auto}.list-view .dashboard-server-grid{display:none}.list-view .dashboard-table-wrap{display:block}.dashboard-table{width:100%;min-width:1080px;border-collapse:collapse}.dashboard-table th{padding:.7rem .8rem;border-bottom:1px solid var(--line);color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.035em;text-align:left;text-transform:uppercase}.dashboard-table td{padding:.85rem .8rem;border-bottom:1px solid var(--line);vertical-align:middle}.dashboard-table tbody tr:last-child td{border-bottom:0}.dashboard-table tbody tr:hover{background:#f7f9f6}.dashboard-table td>strong,.dashboard-table td>small{display:block}.dashboard-table td>small{margin-top:.18rem;color:var(--muted);font-size:.75rem}.dashboard-table-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;white-space:nowrap}.dashboard-table-actions .btn{padding:.42rem .65rem;font-size:.78rem}
.nginx-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.certbot-account-card{display:grid;grid-template-columns:minmax(240px,1fr) minmax(360px,1.4fr);align-items:end;gap:2rem;margin-bottom:1rem}.certbot-account-card h2{margin:.2rem 0}.certbot-account-card p{margin-bottom:0}.certbot-email-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:.75rem}.nginx-instance-list{display:grid;gap:1rem}.nginx-instance-card h2{margin:.15rem 0}.nginx-domain-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:1rem}.https-actions{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.https-actions form{margin:0}.certificate-path{display:block;margin-top:.65rem;color:var(--muted);word-break:break-all}.nginx-preview{margin-top:1rem;border-top:1px solid var(--line);padding-top:.85rem}.nginx-preview summary{cursor:pointer;color:var(--brand);font-weight:700}.nginx-preview pre{margin:1rem 0 0;padding:1rem;border-radius:10px;background:#17221a;color:#dcead8;white-space:pre-wrap;word-break:break-word}@media(max-width:1000px){.nginx-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.nginx-metrics,.nginx-domain-form,.certbot-account-card,.certbot-email-form{grid-template-columns:1fr}.https-actions{align-items:stretch;flex-direction:column}.https-actions form,.https-actions button{width:100%}}
.status-template-card{margin-bottom:1rem}.placeholder-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.placeholder-list code{padding:.4rem .65rem;border-radius:8px;background:#edf4e8;color:var(--brand);font-weight:700}.template-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.html-editor{font-family:Consolas,"Courier New",monospace;font-size:.82rem;line-height:1.45;resize:vertical}.webstatus-list{display:grid;gap:1rem}.webstatus-instance-card h2{margin:.15rem 0}.webstatus-form{display:grid;gap:1rem}.custom-template-toggle{display:flex;align-items:center;gap:.6rem;margin:0}.custom-template-editor{padding-top:.25rem}.webstatus-actions{display:flex;gap:.75rem;align-items:center}.status-pill.maintenance{background:#fff2d9;color:#8a5700}.status-pill.maintenance span{background:#e49a19}.status-pill.expired{background:#ffe4e4;color:#a32626}.status-pill.expired span{background:#d94848}@media(max-width:900px){.template-editor-grid{grid-template-columns:1fr}}@media(max-width:600px){.webstatus-actions{align-items:stretch;flex-direction:column}.webstatus-actions .btn{width:100%}}
.firewall-nginx-card{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:1rem}.firewall-nginx-card h2{margin:.2rem 0}.firewall-rule-action,.firewall-actions{display:flex;align-items:center;gap:.75rem}.firewall-rule-action form,.firewall-actions form{margin:0}.firewall-instance-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.firewall-instance-card h2{margin:.15rem 0}.firewall-rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0}.firewall-rule-grid>div{display:grid;gap:.2rem;padding:.85rem;border-radius:10px;background:#f4f6f7}.firewall-rule-grid small,.firewall-rule-grid span{color:var(--muted)}.status-pill.missing{background:#f0f2f5;color:#657187}.status-pill.missing span{background:#8c98a9}@media(max-width:950px){.firewall-instance-list{grid-template-columns:1fr}}@media(max-width:650px){.firewall-nginx-card,.firewall-rule-action,.firewall-actions{align-items:stretch;flex-direction:column}.firewall-rule-grid{grid-template-columns:1fr}.firewall-actions .btn,.firewall-rule-action .btn{width:100%}}
.user-table-card{margin-bottom:1rem}.user-create-card{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(500px,1.8fr);gap:2rem;align-items:start}.user-create-card h2{margin:.2rem 0}.user-create-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.user-create-form button{align-self:end}.user-manage-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stack-form{display:grid;gap:1rem}.stack-form button{justify-self:start}.user-manage-grid hr{margin:1.5rem 0}@media(max-width:950px){.user-create-card,.user-manage-grid{grid-template-columns:1fr}}@media(max-width:650px){.user-create-form{grid-template-columns:1fr}.user-create-form button,.stack-form button{width:100%}}
.users-heading{align-items:center}.users-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 .8rem}.view-toggle-compact{width:max-content;padding:.15rem}.view-toggle-compact button{padding:.35rem .65rem;font-size:.75rem}.users-card-view{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.user-account-card{display:grid;gap:.8rem;padding:1rem}.user-account-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.7rem;align-items:center}.user-account-head h2{margin:0;font-size:1rem}.user-account-head p{margin:.12rem 0 0;color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.user-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:rgba(111,190,66,.16);color:var(--brand);font-weight:800}.user-account-meta{display:flex;justify-content:space-between;gap:1rem;padding-top:.7rem;border-top:1px solid var(--line);font-size:.78rem}.user-account-meta span{color:var(--muted)}.user-account-card>.btn{justify-self:start}.panel-modal{position:fixed;inset:0;z-index:2500;display:grid;place-items:center;padding:1rem}.panel-modal[hidden]{display:none}.panel-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(5px)}.panel-modal-dialog{position:relative;width:min(680px,100%);padding:1.4rem;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 24px 80px rgba(0,0,0,.5)}.panel-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.panel-modal-head h2{margin:.2rem 0 0}.panel-modal-close{border:0;background:transparent;color:var(--text);font-size:1.8rem;line-height:1;cursor:pointer}.user-modal-form{margin-top:1rem}.panel-modal-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:.6rem;padding-top:.5rem}.modal-open{overflow:hidden}@media(max-width:1100px){.users-card-view{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.users-card-view{grid-template-columns:1fr}.users-heading{align-items:flex-start}.users-heading .btn{width:100%}.panel-modal-actions{display:grid;grid-template-columns:1fr 1fr}}
.observer-role main form button,.observer-role main form input[type="submit"],.observer-role .xml-editor,.observer-role .delete-instance-card,.observer-role .update-card,.observer-role form:has(.dlc-grid)>.alert{display:none!important}.observer-role .xml-settings,.observer-role .runtime-grid{opacity:.62}.observer-role main input:disabled,.observer-role main select:disabled,.observer-role main textarea:disabled{cursor:not-allowed;background:#eef1f3;color:#657187}.observer-role .dlc-option{background:#f3f5f5;color:#657187}.observer-role .dlc-option .form-check-input:disabled{opacity:.7}.observer-role .dlc-option .form-check-input:checked:disabled{opacity:1;background-color:var(--brand);border-color:var(--brand)}.observer-role .dlc-option .form-check-input:checked:disabled+span strong{color:#17261a}.observer-role .task-actions{gap:0}.observer-role .task-actions form{display:none}
.observer-instance-access{display:grid;gap:.55rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:#f8faf8}.observer-instance-access p{margin:0}.access-choice{display:flex;align-items:center;gap:.65rem;padding:.55rem .7rem;border-radius:8px;background:#fff;cursor:pointer}.access-choice:hover{background:#f0f5ec}
.login-shell{min-height:calc(100vh - 190px);display:grid;place-items:center;padding:2rem}.login-card{width:min(100%,520px);padding:2.2rem;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(30,55,35,.12)}.login-brand{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.login-brand .brand-mark{width:52px;height:52px;font-size:1rem}.login-brand h1{margin:.15rem 0 0;font-size:1.75rem}.login-form{display:grid;gap:1rem;margin-top:1.5rem}.login-remember{display:flex;align-items:center;gap:.55rem}.login-form .btn{width:100%}.login-note{display:block;margin-top:1.25rem;color:var(--muted);text-align:center}.validation-summary-valid{display:none}
.windows-users-layout{grid-template-columns:minmax(0,3fr) minmax(320px,1fr)}.user-actions summary{cursor:pointer;color:var(--brand);font-weight:700}.user-actions form{padding:.7rem 0;border-bottom:1px solid var(--line)}.user-actions label{display:block;font-size:.72rem;color:var(--muted)}.danger-zone small{display:block;color:var(--muted);margin-top:.3rem}.credential-note{padding:.8rem;border-radius:10px;background:#eef5e9;color:#42642f;font-size:.8rem}@media(max-width:1050px){.windows-users-layout{grid-template-columns:1fr}}
.windows-user-side{display:grid;align-content:start;gap:1rem}
.license-create-card{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(600px,1.8fr);align-items:end;gap:2rem;margin-bottom:1rem}.license-create-card h2{margin:.2rem 0}.license-create-card p{margin-bottom:0}.license-create-form{display:grid;grid-template-columns:minmax(170px,.75fr) minmax(180px,1fr) minmax(220px,1.25fr) auto;align-items:end;gap:.8rem}.license-create-form .btn{white-space:nowrap}.license-groups{display:grid;gap:1rem}.license-group{padding-bottom:.6rem}.license-list{display:grid}.license-row{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(480px,1.8fr);align-items:center;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.license-row strong,.license-row small{display:block}.license-row small{margin-top:.25rem;color:var(--muted)}.license-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem}.license-actions form{margin:0}.license-replace{display:flex;align-items:center;gap:.45rem}.license-replace input{min-width:190px}.license-delete{position:relative}.license-delete summary{cursor:pointer;color:#a52a2a;font-size:.85rem;font-weight:700}.license-delete form{position:absolute;right:0;z-index:10;width:310px;margin-top:.5rem;padding:1rem;border:1px solid #edcaca;border-radius:12px;background:#fff;box-shadow:0 14px 35px rgba(50,20,20,.16)}@media(max-width:1200px){.license-create-card{grid-template-columns:1fr}.license-create-form{grid-template-columns:1fr 1fr}.license-create-form .btn{align-self:end}.license-row{grid-template-columns:1fr auto}.license-actions{grid-column:1/-1;justify-content:flex-start}}@media(max-width:700px){.license-create-form{grid-template-columns:1fr}.license-create-form .btn{width:100%}.license-row{grid-template-columns:1fr}.license-actions{align-items:stretch;flex-direction:column}.license-actions form,.license-actions button,.license-replace,.license-replace input{width:100%}.license-delete form{position:static;width:100%;box-shadow:none}}
.license-create-disclosure{margin-bottom:1rem;padding:0!important}.license-create-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;cursor:pointer;list-style:none}.license-create-disclosure>summary::-webkit-details-marker{display:none}.license-create-disclosure>summary strong,.license-create-disclosure>summary small{display:block}.license-create-disclosure>summary small{margin-top:.15rem;color:var(--muted)}.license-create-chevron{font-size:1.8rem;line-height:1;transition:transform .15s ease}.license-create-disclosure[open] .license-create-chevron{transform:rotate(90deg)}.license-create-body{padding:0 1.25rem 1.25rem;border-top:1px solid var(--line)}.license-create-body>p{margin:.85rem 0}.license-group .card-title{margin-bottom:0}.license-group .license-row{padding:.85rem 0}
.license-group .license-row{grid-template-columns:minmax(280px,1fr) auto}.license-identity{min-width:0}.license-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.55rem}.license-meta .status-pill{padding:.25rem .55rem}.license-meta-item{padding:.28rem .5rem;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:.75rem}.license-action-menu{position:relative}.license-action-menu>summary{cursor:pointer;list-style:none}.license-action-menu>summary::-webkit-details-marker{display:none}.license-action-popover{position:absolute;right:0;z-index:20;display:grid;gap:.75rem;width:340px;margin-top:.5rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 16px 38px rgba(0,0,0,.2)}.license-action-popover .license-replace{display:grid;grid-template-columns:1fr auto;gap:.45rem}.license-action-popover .license-replace label{grid-column:1/-1;margin:0}.license-action-popover .license-replace input{min-width:0}.license-action-popover>form:not(.license-replace) .btn{width:100%}.license-action-popover .license-delete{border-top:1px solid var(--line);padding-top:.65rem}.license-action-popover .license-delete>form{right:calc(100% + .5rem);top:0}@media(max-width:700px){.license-group .license-row{grid-template-columns:1fr}.license-action-popover{position:static;width:100%;box-shadow:none}}
.license-group{padding:1rem 1.15rem}.license-group .card-title{padding-bottom:.55rem}.license-group .card-title h2{font-size:.95rem}.license-group .license-row{column-gap:.75rem;padding:.65rem .15rem}.license-group .license-row>div:first-child>strong{line-height:1.2}.license-group .license-row>div:first-child>small{margin-top:.15rem}.license-group .license-meta{gap:.35rem;margin-top:.38rem}.license-group .license-meta .status-pill,.license-group .license-meta-item{padding:.2rem .45rem;font-size:.7rem}.license-group .license-actions{gap:.4rem}.license-group .license-actions .btn{padding:.35rem .55rem;font-size:.75rem}.license-group .license-content{margin-top:.15rem;border-radius:8px;background:transparent}.license-group .license-content>summary{min-height:0;padding:.4rem .65rem;font-size:.78rem}.license-group .license-content>summary .phase-badge{padding:.2rem .45rem;font-size:.68rem}.license-group .license-content-body{padding:0 .65rem .65rem}
.license-content{grid-column:1/-1;margin-top:.25rem;border-radius:12px;background:#f5f8f3}.license-content>summary{display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;color:var(--brand);font-weight:750;cursor:pointer;list-style:none}.license-content>summary::-webkit-details-marker{display:none}.license-content>summary::before{content:"▶";font-size:.72rem;transition:transform .15s ease}.license-content[open]>summary::before{transform:rotate(90deg)}.license-content .hide-label{display:none}.license-content[open] .show-label{display:none}.license-content[open] .hide-label{display:inline}.license-content>summary .phase-badge{margin-left:auto}.license-content-body{padding:0 1rem 1rem}.license-content-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.65rem}.license-content-heading small{margin:0}.license-content-row{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(130px,.7fr) minmax(130px,.7fr) auto;align-items:center;gap:1rem;padding:.7rem 0;border-top:1px solid var(--line)}.license-content-row>span:not(.phase-badge){color:var(--muted);font-size:.82rem}@media(max-width:850px){.license-content-row{grid-template-columns:1fr 1fr}.license-content-row .phase-badge{justify-self:start}}@media(max-width:550px){.license-content-heading{align-items:flex-start;flex-direction:column}.license-content-row{grid-template-columns:1fr}}
html{font-size:15px;min-height:100%}body{min-height:100vh;margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Segoe UI,system-ui,sans-serif}.panel-navbar{background:linear-gradient(110deg,#1c2b18,#304a25);box-shadow:0 6px 22px rgba(20,35,16,.2)}.navbar-brand{font-weight:750;letter-spacing:-.02em}.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:.45rem;border-radius:10px;background:var(--accent);color:#15220f;font-size:.82rem}.navbar .nav-link{color:rgba(255,255,255,.78)!important}.navbar .nav-link:hover{color:#fff!important}.navbar .nav-link.disabled{opacity:.38}.panel-shell{max-width:1500px;padding:2.4rem 2rem 5rem}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:1.8rem}.page-heading h1{margin:.1rem 0 .35rem;font-size:2rem;font-weight:760;letter-spacing:-.04em}.page-heading p{margin:0;color:var(--muted)}.eyebrow{color:var(--brand);font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.status-pill{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--line);border-radius:999px;padding:.35rem .7rem;background:#fff;font-size:.8rem;font-weight:650}.status-pill span{width:7px;height:7px;border-radius:50%;background:#8b97a5}.status-pill.online span{background:#55a630;box-shadow:0 0 0 4px rgba(85,166,48,.13)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.metric-card,.panel-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 28px rgba(25,38,51,.055)}.metric-card{padding:1.25rem}.metric-card span{display:block;color:var(--muted);font-size:.84rem;font-weight:650}.metric-card strong{display:block;margin:.35rem 0;font-size:2rem}.metric-card small{color:#8a94a3}.content-grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.panel-card{padding:1.35rem}.card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.card-title h2{margin:0;font-size:1rem}.card-title a{color:var(--brand);font-weight:700;text-decoration:none}.settings-summary{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0}.settings-summary div{padding:.75rem;border-top:1px solid var(--line)}.settings-summary dt{color:var(--muted);font-size:.73rem;font-weight:650}.settings-summary dd{margin:.2rem 0 0;font-family:Consolas,monospace;font-size:.84rem}.phase-badge,.log-level{display:inline-block;border-radius:7px;background:#edf4e8;color:#3f652b;padding:.3rem .55rem;font-size:.75rem;font-weight:750}.form-card{max-width:900px}.setting-row{display:grid;grid-template-columns:280px 1fr;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.setting-row:last-of-type{margin-bottom:1.2rem}.setting-row label{font-weight:650}.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 .2rem rgba(79,125,53,.12)}.btn-primary{border-color:var(--brand);background:var(--brand)}.btn-primary:hover{border-color:var(--brand-dark);background:var(--brand-dark)}.table-card{overflow:auto;padding:.4rem 1rem}.table{margin:0}.table th{padding:.85rem .65rem;color:var(--muted);font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;border-bottom-color:var(--line)}.table td{padding:.8rem .65rem;border-bottom-color:#edf0f3}.footer{padding:1rem 0;border-top:1px solid var(--line);font-size:.8rem}@media(max-width:900px){.metric-grid{grid-template-columns:1fr 1fr}.content-grid{grid-template-columns:1fr}.settings-summary{grid-template-columns:1fr}}@media(max-width:600px){.panel-shell{padding:1.5rem 1rem 4rem}.metric-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column}.setting-row{grid-template-columns:1fr;gap:.35rem}}
.users-toolbar .view-switch{padding:.18rem}.users-toolbar .view-switch button{padding:.35rem .65rem;font-size:.75rem}

.twofactor-grid{display:grid;grid-template-columns:240px 1fr;gap:2rem;align-items:start}.qr-panel{background:#fff;border-radius:14px;padding:16px;width:224px}.qr-panel img{display:block;width:192px;height:192px}.setup-steps{padding-left:1.25rem;color:var(--text-muted);line-height:1.8}.copy-field{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem}.copy-field code{flex:1;padding:.8rem 1rem;border:1px solid var(--panel-border);border-radius:8px;color:var(--panel-text);background:var(--panel-bg)}.inline-security-form{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.inline-security-form>div{flex:1;min-width:220px}.security-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.security-actions>div{display:flex;flex-direction:column;margin-right:auto}.recovery-card{border-color:#a77b29}.recovery-code-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:.6rem;max-width:620px}.recovery-code-grid code{padding:.75rem 1rem;border:1px solid var(--panel-border);border-radius:8px;color:var(--panel-text);background:var(--panel-bg);font-size:1rem}.security-text-link{display:block;margin-top:1rem;color:var(--accent)}.twofactor-code{font-size:1.4rem;letter-spacing:.3em;text-align:center}@media(max-width:760px){.twofactor-grid{grid-template-columns:1fr}.qr-panel{margin:auto}.recovery-code-grid{grid-template-columns:1fr}.security-actions{align-items:stretch}.security-actions form,.security-actions button{width:100%}}
.compact-heading{margin-bottom:1.25rem}.user-edit-title{display:flex;align-items:center;gap:.85rem;margin-top:.25rem}.user-avatar.large{width:46px;height:46px;font-size:1rem;display:grid;place-items:center;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-weight:800}.user-edit-title h1{margin:0}.user-edit-title p{margin:0}.compact-user-section{padding:1.15rem 1.3rem}.compact-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.compact-section-heading h2{font-size:1.15rem;margin:0 0 .2rem}.compact-section-heading p{margin:0;color:var(--text-muted);font-size:.86rem}.user-profile-inline{display:grid;grid-template-columns:1fr 1.35fr .8fr auto;gap:.8rem;align-items:end}.user-security-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.compact-password-form{display:grid;grid-template-columns:1fr auto;gap:.8rem;align-items:end}.compact-action-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--panel-border)}.compact-action-row>div,.compact-action-row .form-check span{display:flex;flex-direction:column}.compact-action-row small{color:var(--text-muted);font-size:.8rem}.compact-action-row .form-check{display:flex;gap:.65rem;align-items:flex-start;margin:0}.danger-accordion{margin-top:1rem;border:1px solid rgba(224,74,74,.35);border-radius:14px;background:rgba(70,25,25,.15)}.danger-accordion summary{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;list-style:none}.danger-accordion summary span:first-child{display:flex;flex-direction:column}.danger-accordion summary small{color:var(--text-muted);font-weight:400}.danger-accordion summary span:last-child{color:#ef7777;font-size:.8rem}.danger-accordion-body{padding:0 1.25rem 1.25rem}.danger-delete-row{display:grid;grid-template-columns:1fr auto;gap:.75rem}@media(max-width:1100px){.user-profile-inline{grid-template-columns:1fr 1fr}.user-security-grid{grid-template-columns:1fr}}@media(max-width:700px){.user-profile-inline,.compact-password-form,.danger-delete-row{grid-template-columns:1fr}.compact-action-row{align-items:stretch;flex-direction:column}.compact-action-row button{width:100%}}
.heading-actions{display:flex;gap:.65rem;flex-wrap:wrap}.windows-user-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.windows-user-card{border:1px solid var(--panel-border);border-radius:14px;background:var(--panel-surface);padding:1rem}.windows-user-head,.user-identity{display:flex;align-items:flex-start;gap:.75rem}.windows-user-head{justify-content:space-between}.user-identity h2{font-size:1.05rem;margin:0}.user-identity small{display:block;color:var(--text-muted);margin-top:.15rem}.windows-user-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.9rem;padding:.8rem 0;border-top:1px solid var(--panel-border);border-bottom:1px solid var(--panel-border)}.windows-user-facts span,.windows-user-facts strong{display:block}.windows-user-facts span{font-size:.72rem;color:var(--text-muted)}.windows-user-facts strong{font-size:.86rem;margin-top:.15rem}.compact-actions{margin-top:.75rem}.compact-actions>summary,.danger-inline>summary{cursor:pointer;list-style:none;color:var(--accent);font-weight:700}.compact-actions>summary{display:flex;justify-content:space-between}.compact-actions-body{padding-top:.8rem}.windows-password-row{display:grid;grid-template-columns:1fr auto;gap:.5rem}.windows-action-buttons{display:flex;gap:.5rem;margin-top:.6rem}.windows-action-buttons form{margin:0}.danger-inline{margin-top:.8rem;padding-top:.7rem;border-top:1px solid rgba(224,74,74,.25)}.danger-inline>summary{color:#ef7777}.danger-inline form{padding-top:.7rem}.windows-user-table-wrap{display:none;overflow:auto;border:1px solid var(--panel-border);border-radius:14px;padding:.35rem .8rem}.windows-user-collection.list-view .windows-user-grid{display:none}.windows-user-collection.list-view .windows-user-table-wrap{display:block}.windows-user-table td>small{display:block;color:var(--text-muted)}@media(max-width:1250px){.windows-user-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.windows-user-grid{grid-template-columns:1fr}.heading-actions{width:100%}.heading-actions .btn{flex:1}.windows-password-row,.windows-user-facts{grid-template-columns:1fr}.windows-action-buttons{align-items:stretch;flex-direction:column}.windows-action-buttons button{width:100%}}
.settings-metrics .metric-card{padding:.9rem 1rem}.settings-metrics .metric-card strong{font-size:1.15rem;margin:.2rem 0}.settings-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0}.settings-service-section{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.25rem}.settings-service-section+ .settings-service-section{border-left:1px solid var(--line)}.settings-service-section h2{font-size:1.08rem;margin:.1rem 0}.settings-service-section p{font-size:.82rem;margin:0}.compact-setting-form{display:flex;align-items:center;gap:.55rem;min-width:min(430px,50%)}.compact-setting-form .form-control{min-width:210px}.compact-panel-https{padding:1.1rem 1.25rem}.settings-collapsible{padding:0;overflow:hidden}.settings-collapsible>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;cursor:pointer;list-style:none}.settings-collapsible>summary::-webkit-details-marker{display:none}.settings-collapsible>summary h2{font-size:1.05rem;margin:.1rem 0}.settings-collapsible>summary p{font-size:.82rem;margin:0}.settings-chevron{font-size:1.65rem;color:var(--brand);transition:transform .18s ease}.settings-collapsible[open] .settings-chevron{transform:rotate(90deg)}.settings-collapsible-body{padding:0 1.25rem 1.25rem;border-top:1px solid var(--line)}.settings-collapsible-body>p:first-child{margin-top:1rem}.compact-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.settings-group{min-width:0}.settings-group h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--brand);margin:1rem 0 .25rem}.compact-settings-form .setting-row{grid-template-columns:180px minmax(0,1fr);padding:.45rem 0}.compact-settings-form>button{grid-column:1/-1;justify-self:start}@media(max-width:1050px){.settings-service-grid,.compact-settings-form{grid-template-columns:1fr}.settings-service-section+ .settings-service-section{border-left:0;border-top:1px solid var(--line)}}@media(max-width:700px){.settings-service-section{align-items:stretch;flex-direction:column}.compact-setting-form{width:100%;min-width:0}.compact-setting-form .form-control{min-width:0}.compact-settings-form .setting-row{grid-template-columns:1fr}}
