.aa-flag{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent;white-space:nowrap}.aa-yes{background:#e2f6ea;color:var(--ok);border-color:#bfe8d2}.aa-no{background:#f1f3f7;color:#41506a;border-color:var(--line)}.aa-warn{background:#fdf6e3;color:#8a6100;border-color:#f2e2b0}.aa-muted{background:#f1f3f7;color:var(--muted);border-color:var(--line)}.aa-username{font-variant-numeric:tabular-nums;letter-spacing:.01em}.aa-link{background:none;border:0;padding:0;margin:0;font:inherit;color:var(--uni-accent-ink);text-decoration:underline;text-underline-offset:2px;cursor:pointer;border-radius:2px}.aa-link:hover{color:var(--uni-accent-strong)}.aa-link:focus-visible{outline:2px solid var(--focus-line);outline-offset:2px}.aa-uni{display:inline-flex;flex-direction:column;gap:2px;max-width:100%}.aa-uni-name{white-space:normal}.aa-uni-warn{font-size:12px;color:#8a6100;white-space:normal}.aa-search-hint{font-size:12px;color:var(--muted)}.aa-empty-actions{margin-top:12px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.aa-not-managed{font-size:12px;color:var(--muted);white-space:nowrap}.aa-form-rows{display:flex;flex-direction:column;gap:12px}.aa-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;align-items:start}.aa-form-row-full{grid-template-columns:1fr}.aa-form-row .form-field{min-width:0}.aa-form-cards{display:flex;flex-direction:column;gap:16px}.aa-card-note{margin:-6px 0 14px;font-size:12px;color:var(--muted);white-space:normal}.aa-source-note{font-size:12px;color:var(--muted);white-space:normal}.aa-form-row .form-field select,.aa-form-row .form-field input[type=date]{min-width:0;max-width:100%}.aa-field-hint{font-size:12px;color:var(--muted);white-space:normal}.aa-field-error{font-size:12px;color:var(--err);font-weight:600;white-space:normal}.aa-password{display:flex;gap:8px;align-items:center}.aa-password input{flex:1 1 auto;min-width:0}.aa-password-toggle{flex:0 0 auto}.aa-source-link{margin-top:6px;align-self:flex-start}@media (max-width: 900px){.aa-form-row{grid-template-columns:1fr}}.aa-actions{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.aa-action-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.aa-confirm{margin-top:12px;border:1px solid var(--line);background:#fbfcfe}.aa-confirm-title{margin:0 0 6px;font-size:15px}.aa-confirm-words{margin:0 0 10px;color:#41506a}.aa-confirm .form-field{margin:10px 0}.aa-confirm-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.aa-list-none{color:var(--muted)}.aa-stamp,.aa-expiry{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.aa-expiry-none{color:var(--muted)}.aa-expiry-far{color:inherit}.aa-expiry-soon{color:#8a6100;font-weight:600}.aa-expiry-expired{color:var(--err);font-weight:600}.aa-history-panel,.aa-summary-panel{margin-top:14px}.aa-history-list{display:flex;flex-direction:column;gap:8px;margin:10px 0}.aa-history-entry{border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:#fbfcfe}.aa-history-when{font-size:12px;color:var(--muted);margin-bottom:3px;font-variant-numeric:tabular-nums}.aa-history-when b{color:var(--text);font-weight:600}.aa-history-what{font-size:var(--fs-body);word-break:break-word}.aa-history-action{display:inline-block;margin-right:6px;padding:1px 9px;border-radius:999px;font-size:11px;font-weight:600;background:#eef2f9;color:#31415e;border:1px solid var(--line)}.aa-history-old{color:var(--muted);text-decoration:line-through}.aa-history-new{font-weight:600}.aa-history-older,.aa-history-summary{margin:0 0 10px;font-size:12px;color:var(--muted);max-width:95ch}.aa-history-summary{font-weight:600;color:var(--text)}.aa-history-loading,.aa-history-none{font-size:var(--fs-body);color:var(--muted);margin:10px 0}.aa-history-none{font-style:italic}.aa-summary-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 18px;margin-top:10px}.aa-summary-field{display:flex;flex-direction:column;gap:2px}.aa-summary-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.aa-summary-value{font-size:var(--fs-body);font-variant-numeric:tabular-nums;word-break:break-word}.aa-summary-value.is-none{color:var(--muted);font-style:italic}.ua-code{font-variant-numeric:tabular-nums;letter-spacing:.02em;font-weight:600}.ua-status{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent;white-space:nowrap}.ua-status-draft{background:#fdf6e3;color:#8a6100;border-color:#f2e2b0}.ua-status-active{background:#e2f6ea;color:var(--ok);border-color:#bfe8d2}.ua-status-archived{background:#f1f3f7;color:#41506a;border-color:var(--line)}.ua-status-unknown{background:#f1f3f7;color:var(--muted);border-color:var(--line)}.ua-search-hint{font-size:12px;color:var(--muted)}.ua-admin{font-variant-numeric:tabular-nums;white-space:nowrap}.ua-admin-warn{color:var(--err);font-weight:600}.ua-admin-mark{font-size:12px}.ua-list-none{color:var(--muted)}.ua-stamp{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.ua-empty-actions{margin-top:12px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.ua-panel-title{margin:0 0 10px;font-size:15px;font-weight:600;color:var(--text)}.ua-req{color:var(--err);font-weight:700}.ua-draft-note{margin:0 0 14px;font-size:12px;color:var(--muted)}.ua-field-note{font-size:12px;color:var(--muted)}.ua-field-error{font-size:12px;color:var(--err)}.ua-tel{display:flex;gap:8px;align-items:center}.ua-tel input{flex:1 1 auto;min-width:0}.ua-dial{max-width:96px;flex:0 0 auto!important}.ua-colour{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ua-colour input[type=color]{width:44px;height:32px;padding:2px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}.ua-hex{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;max-width:120px}.ua-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ua-confirm{border-color:var(--accent)}.ua-confirm p{margin:0 0 8px}.ua-confirm-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.ua-linked{margin:0 0 8px;padding-left:20px;font-size:13px;columns:2}.ua-logo-panel{display:block}.ua-logo-preview{display:block;width:96px;height:96px;object-fit:contain;margin-bottom:10px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}.ua-logo-none{font-size:13px;color:var(--muted);margin-bottom:10px}.ua-logo-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ua-logo-actions .ua-field-note{flex:1 1 260px}.ua-file{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}label.btn:focus-within{outline:2px solid var(--focus-line);outline-offset:2px}.ua-logo-actions .is-busy{opacity:.6;cursor:progress}@media (max-width: 560px){.ua-actions .btn{flex:1 1 auto;min-height:var(--tap)}.ua-linked{columns:1}}.ua-search{position:relative}.ua-search-box{display:flex;gap:6px;align-items:center}.ua-search-box .ua-search-input{flex:1 1 auto;min-width:0}.ua-search-box .ua-search-input[aria-invalid=true]{border-color:var(--err)}.ua-search-toggle{flex:0 0 auto;padding:4px 10px;background:#fff;border:1px solid var(--line);border-radius:var(--r);color:var(--muted);line-height:1}.ua-search-clear{flex:0 0 auto;font-size:12px}.ua-search-panel{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);background:#fff;border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-2);padding:6px 0 4px}.ua-search-current,.ua-search-count{padding:0 10px 4px;font-size:12px;color:var(--muted)}.ua-search-current{color:var(--text)}.ua-search-list{list-style:none;margin:0;padding:0;max-height:min(260px,45vh);overflow:auto;-webkit-overflow-scrolling:touch}.ua-search-option{padding:7px 10px;font-size:var(--fs-body);cursor:pointer}.ua-search-option.is-active,.ua-search-option:hover{background:var(--uni-accent-soft)}.ua-search-option[aria-selected=true]{font-weight:600;color:var(--uni-accent-ink)}.ua-search-none{padding:8px 10px;font-size:12px;color:var(--muted)}.ua-source-empty{color:var(--warn)}@media (max-width: 560px){.ua-search-box .ua-search-input{min-height:var(--tap)}.ua-search-option{padding:11px 12px}}.ua-handoff{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ua-handoff .ua-panel-title{width:100%}.ua-handoff .ua-field-note{margin:0;max-width:70ch}.ua-contact-panel .ua-draft-note{max-width:80ch}.ua-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.ua-detail-field{display:flex;flex-direction:column;gap:2px;min-width:0}.ua-detail-label{font-size:12px;font-weight:600;color:var(--muted)}.ua-detail-value{font-size:var(--fs-body);color:var(--text);word-break:break-word}.ua-detail-value.is-none{color:var(--muted);font-style:italic}.ua-detail-field .ua-field-note{font-size:11px}@media (max-width: 900px){.ua-detail-grid{grid-template-columns:minmax(0,1fr)}}.ua-admin-panel .ua-draft-note{max-width:95ch}.ua-admin-note,.ua-admin-summary{margin:0 0 10px;font-size:12px;color:var(--muted);max-width:95ch}.ua-admin-summary{font-weight:600;color:var(--text)}.ua-admin-loading,.ua-admin-none{font-size:var(--fs-body);color:var(--muted);margin:0 0 10px}.ua-admin-none{font-style:italic}.ua-admin-table{width:100%;border-collapse:collapse;margin:0 0 10px}.ua-admin-table th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap;padding:0 12px 4px 0;border-bottom:1px solid var(--line)}.ua-admin-table td{padding:6px 12px 6px 0;border-bottom:1px solid var(--line);font-size:var(--fs-body);vertical-align:top;word-break:break-word}.ua-admin-table tr:last-child td{border-bottom:none}.ua-admin-table td.is-none{color:var(--muted);font-style:italic}.ua-admin-user{font-weight:600}.ua-admin-flag{display:inline-block;margin:0 6px 2px 0;padding:1px 9px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid transparent;white-space:nowrap}.ua-admin-flag.is-on{background:#e2f6ea;color:var(--ok);border-color:#bfe8d2}.ua-admin-flag.is-off{background:#f1f3f7;color:#41506a;border-color:var(--line)}.ua-admin-flag.is-pending{background:#fdf6e3;color:#8a6100;border-color:#f2e2b0}@media (max-width: 900px){.ua-admin-table thead{display:none}.ua-admin-table,.ua-admin-table tbody,.ua-admin-table tr,.ua-admin-table td{display:block;width:100%}.ua-admin-table tr{border-bottom:1px solid var(--line);padding:6px 0}.ua-admin-table tr:last-child{border-bottom:none}.ua-admin-table td{border-bottom:none;padding:1px 0}.ua-admin-table td:before{content:attr(data-label) ": ";font-size:11px;font-weight:600;color:var(--muted)}}.ua-history-panel .ua-draft-note{max-width:95ch}.ua-history-list{display:flex;flex-direction:column;gap:8px;margin:0 0 10px}.ua-history-entry{border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:#fbfcfe}.ua-history-when{font-size:12px;color:var(--muted);margin-bottom:3px}.ua-history-when b{color:var(--text);font-weight:600}.ua-history-what{font-size:var(--fs-body);word-break:break-word}.ua-history-action{display:inline-block;margin-right:6px;padding:1px 9px;border-radius:999px;font-size:11px;font-weight:600;background:#eef2f9;color:#31415e;border:1px solid var(--line)}.ua-history-old{color:var(--muted);text-decoration:line-through}.ua-history-new{font-weight:600}.ua-history-older,.ua-history-summary{margin:0 0 10px;font-size:12px;color:var(--muted);max-width:95ch}.ua-history-summary{font-weight:600;color:var(--text)}.ua-history-loading,.ua-history-none{font-size:var(--fs-body);color:var(--muted);margin:0 0 10px}.ua-history-none{font-style:italic}:root{--uni-accent:#007ba7;--uni-accent-rgb:0 123 167;--uni-accent-strong:#00618a;--uni-accent-ink:#00506f;--uni-accent-soft:#e6f2f7;--uni-ink:#ffffff;--focus-line:rgb(var(--uni-accent-rgb)/.55);--focus-ring:0 0 0 3px rgb(var(--uni-accent-rgb)/.28);--shell-h:54px;--nav-h:38px;--row-h:42px;--cell-x:12px;--pad:18px;--tap:44px;--control-h:36px;--modal-y:40px;--r:5px;--r-card:6px;--r-modal:8px;--fs-title:19px;--fs-nav:13px;--fs-body:13px;--fs-meta:12px;--font:"Segoe UI",system-ui,-apple-system,Roboto,"Helvetica Neue",sans-serif;--shadow-1:0 1px 2px rgba(16,35,68,.05);--shadow-2:0 6px 18px rgba(16,35,68,.1);--shadow-modal:0 12px 32px rgba(10,20,40,.18);--navy:#0f2444;--navy2:#16305c;--accent:var(--uni-accent);--accent-dark:var(--uni-accent-strong);--bg:#eef1f6;--card:#fff;--line:#dde3ec;--text:#1c2534;--muted:#7b8798;--ok:#1e9e5a;--warn:#d98a12;--err:#d64545;--radius:var(--r-card)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px}h1,h2,h3,h4{margin:0 0 8px;font-weight:600}h1{font-size:22px}h2{font-size:18px}h3{font-size:15px}a{color:var(--uni-accent-ink)}.muted{color:var(--muted)}.spacer{flex:1}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.app-shell{display:flex;flex-direction:column;min-height:100vh}.shell-top{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}.uni-header{min-height:var(--shell-h);display:flex;align-items:center;gap:12px;padding:0 var(--pad);flex-wrap:wrap}.uni-id{display:flex;align-items:center;gap:10px;min-width:0}.topbar-logo{width:34px;height:34px;object-fit:contain;background:#f2f5fa;border-radius:var(--r);flex:none}.topbar-logo-img{width:auto;height:calc(var(--shell-h) - 20px);max-width:min(240px,44vw);object-fit:contain;flex:none}.topbar-logo-text{display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:var(--uni-accent-ink);background:var(--uni-accent-soft)}.uni-name{font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-user{margin-left:auto;display:flex;gap:10px;align-items:center;position:relative}.user-chip{display:flex;gap:8px;align-items:center;min-height:36px;padding:2px 6px;border:0;border-radius:var(--r);background:none;font:inherit;color:inherit;cursor:pointer}.user-chip:hover{background:#f2f5fa}.user-avatar{width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--uni-ink);display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}.user-name{font-size:var(--fs-body);font-weight:600}.user-role{font-size:10px;text-transform:uppercase;padding:2px 7px;border-radius:10px;background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.user-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:41;background:#fff;border:1px solid var(--line);border-radius:var(--r-modal);box-shadow:var(--shadow-2);min-width:180px;overflow:hidden}.user-menu-item{display:block;width:100%;text-align:left;padding:9px 14px;font:inherit;font-size:var(--fs-body);color:var(--text);background:none;border:0;cursor:pointer;text-decoration:none}.user-menu-item:hover{background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.user-menu-sep{height:1px;background:var(--line)}.menu-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f192d73}.nav-row{background:#fff}.nav-row-sub{border-top:1px solid #eef1f6}.nav-list{display:flex;align-items:stretch;gap:2px;margin:0;padding:0 var(--pad);list-style:none;overflow-x:auto;scrollbar-width:thin}.nav-cell{display:flex;align-items:stretch;position:relative;flex:none}.nav-measure{position:absolute;left:0;right:0;top:0;height:0;overflow:hidden;visibility:hidden;pointer-events:none}.nav-link{display:inline-flex;align-items:center;gap:6px;min-height:var(--nav-h);padding:0 12px;border:0;background:none;font:inherit;font-size:var(--fs-nav);color:var(--text);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;cursor:pointer}.nav-link:hover{background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.nav-link:focus-visible{outline:2px solid var(--focus-line);outline-offset:-2px}.nav-link.active{color:var(--uni-accent-ink);border-bottom-color:var(--accent);font-weight:600}.nav-folder.in-trail{color:var(--uni-accent-ink)}.nav-chevron{font-size:10px;color:var(--muted)}.nav-cell.has-subs .nav-link{padding-right:4px}.nav-caret{display:inline-flex;align-items:center;justify-content:center;width:30px;min-height:var(--nav-h);padding:0;border:0;background:none;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}.nav-caret:hover{background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.nav-caret:focus-visible{outline:2px solid var(--focus-line);outline-offset:-2px}.nav-caret.open{color:var(--uni-accent-ink);border-bottom-color:var(--accent)}.nav-caret-icon{font-size:10px}.nav-strip{display:flex;align-items:center;flex-wrap:wrap;gap:1px 2px;max-width:100%;margin:0;padding:0 var(--pad) 7px;list-style:none;background:#fff}.nav-strip-item{display:flex;flex:none}.nav-strip-link{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:var(--r);font-size:var(--fs-meta);color:var(--muted);text-decoration:none;white-space:nowrap}.nav-strip-link:hover{background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.nav-strip-link:focus-visible{outline:2px solid var(--focus-line);outline-offset:2px}.nav-strip-link.active{background:var(--uni-accent-soft);color:var(--uni-accent-ink);font-weight:600;box-shadow:inset 0 -2px 0 var(--accent)}.nav-strip-group{display:inline-flex;align-items:center;gap:2px;max-width:100%}.nav-strip-sub{display:inline-flex;align-items:center;flex-wrap:wrap;gap:1px 2px;margin:0;padding:0;list-style:none}.nav-strip-group-label{font-size:var(--fs-meta);text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:0 2px 0 8px;white-space:nowrap}.content{padding:var(--pad);flex:1;min-width:0;width:100%}.crumbs{font-size:var(--fs-meta);color:var(--muted);margin-bottom:8px}.crumb-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;padding:0;list-style:none}.crumb{display:flex;align-items:center;gap:6px;min-width:0}.crumb-link{border:0;background:none;padding:1px 3px;font:inherit;font-size:var(--fs-meta);color:var(--uni-accent-ink);cursor:pointer;border-radius:3px}.crumb-link:hover{background:var(--uni-accent-soft);text-decoration:underline}.crumb-sep{color:#b6c0cf}.crumb [aria-current=page]{color:var(--text);font-weight:600}.page-head{display:flex;align-items:flex-end;gap:6px 12px;flex-wrap:wrap;margin-bottom:14px}.page-head h1,.page-head h2{margin:0;font-size:var(--fs-title);font-weight:600;line-height:1.3}.page-head-titles{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.page-head-desc{margin:0;font-size:var(--fs-meta);line-height:1.45;color:var(--muted)}.page-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.page-head>.row{margin-left:auto}.btn{border:1px solid var(--line);background:#fff;color:var(--text);border-radius:var(--r);padding:7px 13px;font-size:13px;cursor:pointer;transition:.15s}.btn:hover{border-color:#b9c4d6;background:#f7f9fc}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--uni-ink)}.btn-primary:hover{background:var(--accent-dark)}.btn-danger{background:var(--err);border-color:var(--err);color:#fff}.btn-success{background:var(--ok);border-color:var(--ok);color:#fff}.btn-success:hover{background:#178a4d}.btn-ghost{background:transparent}.btn-sm{padding:4px 10px;font-size:12px}.btn-block{width:100%}.icon-btn{border:none;background:transparent;cursor:pointer;font-size:14px;padding:5px 8px;border-radius:var(--r);line-height:1}.icon-btn:hover{background:#eef2f8}.icon-btn:focus-visible{outline:2px solid var(--focus-line);outline-offset:1px}.icon-btn.danger:hover{background:#fdecec}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-bottom:14px;box-shadow:var(--shadow-1)}.table-card{padding:0;overflow:hidden}.table-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px var(--cell-x);border-bottom:1px solid var(--line)}.table-toolbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-left:auto}.search{border:1px solid var(--line);border-radius:var(--r);padding:7px 11px;font-size:var(--fs-body);flex:0 1 230px;min-width:130px;max-width:100%}.search:focus-visible{outline:2px solid var(--focus-line);outline-offset:1px}.table-wrap{overflow-x:auto;max-width:100%}.grid{width:100%;border-collapse:collapse;font-size:var(--fs-body)}.grid th{text-align:left;padding:9px var(--cell-x);background:#f5f7fb;color:#41506a;font-size:var(--fs-meta);text-transform:uppercase;letter-spacing:.4px;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-bottom:1px solid var(--line)}.grid td{padding:6px var(--cell-x);height:var(--row-h);border-bottom:1px solid #edf0f5;vertical-align:middle}.grid tr:hover td{background:#f8fafd}.grid-1line td{white-space:nowrap}.chk{width:30px}.actions{white-space:nowrap;width:130px}.actions-h{width:130px}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:9px var(--cell-x);border-top:1px solid var(--line);font-size:var(--fs-meta);color:var(--muted);gap:10px;flex-wrap:wrap}.pager{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pager select{font-family:inherit;font-size:var(--fs-meta);border:1px solid var(--line);border-radius:var(--r);padding:4px 6px;background:#fff}.pager select:focus-visible,.pager .btn:focus-visible{outline:2px solid var(--focus-line);outline-offset:1px}.sel-info{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.empty-state{color:var(--muted);padding:26px;text-align:center}.badge{display:inline-block;padding:2px 9px;border-radius:10px;font-size:11.5px;background:var(--uni-accent-soft);color:var(--uni-accent-ink);margin-right:4px}.b-ok{background:#e2f6ea;color:var(--ok)}.b-warn{background:#fdf1dc;color:var(--warn)}.b-err{background:#fdeaea;color:var(--err)}.b-muted{background:#eef0f4;color:var(--muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f192d73;display:flex;align-items:flex-start;justify-content:center;padding:var(--modal-y) var(--pad);z-index:100;overflow-y:auto}.modal{background:#fff;border-radius:var(--r-modal);width:min(520px,100%);max-height:calc(100vh - (var(--modal-y) * 2));display:flex;flex-direction:column;box-shadow:var(--shadow-modal)}.modal:focus{outline:none}.modal{max-height:calc(100dvh - (var(--modal-y) * 2))}.modal-lg{width:min(760px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex:0 0 auto;padding:14px 16px;border-bottom:1px solid var(--line)}.modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:22px 16px;background:#f7f9fc}.modal-head h3{font-size:20px;font-weight:400;color:#111827;margin:0}.form-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0f172a14;padding:22px 26px;margin:0 auto;max-width:640px}.form-card-title{margin:0 0 16px;font-size:20px;font-weight:400;color:#111827}.modal-foot{flex:0 0 auto;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;padding:16px;border-top:none;background:#f7f9fc}.modal-foot .btn{border-radius:999px;padding:9px 24px;font-size:14px;min-height:38px}.modal-close{flex:0 0 auto;min-width:36px;min-height:36px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.form-field{display:flex;flex-direction:column;gap:5px}.form-field span2,.span2{grid-column:span 2}.form-field label{font-size:13px;font-weight:500;color:#374151}.form-field input,.form-field select,.form-field textarea,.search{font-family:inherit}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--line);border-radius:var(--r);padding:7px 10px;font-size:var(--fs-body);background:#fff}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--focus-line);border-color:var(--accent)}.array-group{display:flex;flex-direction:column;gap:8px;border:1px dashed var(--line);border-radius:var(--r);padding:10px;background:#f7f9fd}.array-row{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:8px 10px;align-items:end}.array-sub label{font-size:var(--fs-meta)}.array-del{margin-bottom:1px}.form-error{grid-column:span 2;color:var(--err);font-size:var(--fs-meta)}.session-row{display:flex;gap:8px;align-items:center;margin-bottom:6px}.session-row input{flex:1;border:1px solid var(--line);border-radius:var(--r);padding:6px 10px;font-size:var(--fs-body)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0d1f3c 0%,#173a6d 55%,var(--uni-accent-strong) 100%);padding:20px}.login-card{background:#fff;border-radius:var(--r-modal);padding:34px 38px;width:400px;max-width:100%;box-shadow:var(--shadow-modal);text-align:center}.login-logo{font-size:40px}.login-card h1{font-size:17px;letter-spacing:.6px;line-height:1.5;margin:10px 0 4px}.login-sub{color:var(--muted);font-size:13px;margin-bottom:18px}.login-card .form-field{text-align:left;margin-bottom:12px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:14px}.kpi{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px}.kpi-num{font-size:28px;font-weight:700;color:var(--navy)}.kpi-label{font-size:12px;color:var(--muted);margin-top:2px}.alert{border-radius:var(--r);padding:9px 12px;font-size:var(--fs-body);margin-bottom:10px}.alert-error{background:#fdeaea;color:var(--err);border:1px solid #f5c6c6}.alert-success{background:#e2f6ea;color:var(--ok);border:1px solid #bfe8d2}.tabs{display:flex;gap:4px;border-bottom:2px solid var(--line);margin-bottom:12px}.tab{border:none;background:transparent;padding:8px 14px;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;color:var(--muted)}.tab.active{color:var(--uni-accent-ink);border-bottom-color:var(--accent);font-weight:600}.menu-toggle{display:none;align-items:center;gap:6px;min-height:36px;padding:4px 10px;border:1px solid var(--line);border-radius:var(--r);background:#fff;font:inherit;font-size:var(--fs-body);color:var(--text);cursor:pointer}.menu-toggle:hover{background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.form-card .form-grid{grid-template-columns:1fr 1fr}.form-card .form-field.span2,.form-card .span2{grid-column:span 2}.form-field input,.form-field select,.form-field textarea{min-height:var(--control-h)}.form-field input[type=checkbox],.form-field input[type=radio],.form-field input[type=color]{min-height:0}.modal-form{width:min(1400px,100%)}.modal-form .form-card{max-width:none}.modal-form .form-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.modal-form .form-card .form-grid .span2{grid-column:1/-1}.modal-form .form-grid>.form-error{grid-column:1/-1}.form-group{margin:0 0 20px}.form-group:last-child{margin-bottom:0}.form-group-title{margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line);font-size:var(--fs-body);font-weight:600;color:#374151}.form-help{font-size:var(--fs-meta);line-height:1.45;color:#5b6675}.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled{background:#eef1f6;border-color:var(--line);color:#41506a;cursor:not-allowed}.form-field input[readonly],.form-field textarea[readonly]{background:#f6f8fb;border-style:dashed;color:var(--text)}.form-field.is-disabled>label{color:#41506a;font-weight:400}.form-optional{font-size:var(--fs-meta);font-weight:400;color:#5b6675}.modal-head-text{min-width:0}.modal-instruction{margin:3px 0 0;font-size:var(--fs-meta);line-height:1.45;font-weight:400;color:#5b6675}.modal-foot .btn:disabled,.modal-close:disabled{opacity:.6;cursor:not-allowed}.under-construction-container{min-height:calc(100vh - 180px);width:100%}.construction-card{max-width:680px;width:100%;border-radius:20px!important;background:#fff;box-shadow:0 12px 36px #00000014!important;transition:all .3s ease;z-index:1;margin-bottom:0}.dark-theme .construction-card{background:#1b1e2b;box-shadow:0 12px 36px #0006!important}.glow-bg{position:absolute;top:-50px;left:50%;transform:translate(-50%);width:250px;height:250px;background:radial-gradient(circle,#3b82f62e,#6366f100 70%);border-radius:50%;pointer-events:none;z-index:0}.status-badge{background:#3b82f61a;color:#3b82f6;font-size:.85rem;letter-spacing:.3px}.pulse-dot{width:8px;height:8px;background-color:#3b82f6;border-radius:50%;display:inline-block;animation:uc-pulse-ring 1.8s cubic-bezier(.215,.61,.355,1) infinite}@keyframes uc-pulse-ring{0%{transform:scale(.95);box-shadow:0 0 #3b82f6b3}70%{transform:scale(1);box-shadow:0 0 0 8px #3b82f600}to{transform:scale(.95);box-shadow:0 0 #3b82f600}}.illustration-wrapper{position:relative;height:110px}.icon-circle{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,#3b82f61a,#6366f126);position:relative;box-shadow:0 6px 16px #3b82f61f}.gear-icon{position:absolute}.main-icon{width:50px;height:50px;color:#3b82f6;animation:uc-spin 12s linear infinite}.sub-icon{width:26px;height:26px;color:#6366f1;bottom:14px;right:14px;animation:uc-spin-reverse 8s linear infinite}@keyframes uc-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes uc-spin-reverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}.construction-title{font-size:1.85rem;letter-spacing:-.5px}.construction-desc{max-width:520px}.progress-container{max-width:420px}.gradient-bar{background:linear-gradient(90deg,#3b82f6,#6366f1)!important}.color-primary{color:#3b82f6}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.align-items-center{align-items:center}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.mr-2{margin-right:.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.px-3{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1.5rem;padding-bottom:1.5rem}.p-4{padding:1.5rem}@media (min-width:768px){.p-md-5{padding:3rem}}.text-center{text-align:center}.text-muted,.text-secondary{color:#6c757d!important}.text-small{font-size:.875rem}.font-weight-normal{font-weight:400!important}.font-weight-medium{font-weight:500!important}.font-weight-bold{font-weight:700!important}.border-0{border:0!important}.rounded-lg{border-radius:.5rem!important}.rounded-pill{border-radius:50rem!important}.overflow-hidden{overflow:hidden}.position-relative{position:relative}.progress{display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#0000001a;border-radius:.375rem}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#0d6efd;transition:width .6s ease}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.app-menu{position:fixed;top:0;bottom:0;left:0;width:min(300px,86vw);z-index:60;background:#fff;border-right:1px solid var(--line);box-shadow:var(--shadow-2);display:flex;flex-direction:column}.app-menu-head{display:flex;align-items:center;justify-content:space-between;min-height:var(--shell-h);padding:0 10px 0 var(--pad);border-bottom:1px solid var(--line);font-weight:600}.app-menu-close{border:0;background:none;font-size:16px;line-height:1;padding:8px 10px;border-radius:var(--r);cursor:pointer;color:var(--text)}.app-menu-close:hover{background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.app-menu-nav{overflow-y:auto;padding:8px;flex:1}.nav-item{display:flex;gap:9px;align-items:center;min-height:var(--tap);padding:8px 10px;border-radius:var(--r);color:var(--text);text-decoration:none;font-size:14px}.nav-item:hover{background:var(--uni-accent-soft);color:var(--uni-accent-ink)}.nav-item.active{background:var(--uni-accent-soft);color:var(--uni-accent-ink);font-weight:600;box-shadow:inset 2px 0 0 var(--accent)}.nav-icon{width:18px;text-align:center}.nav-group{font-size:14px;color:var(--text)}.nav-group.open{color:var(--uni-accent-ink);font-weight:600}.nav-subs{margin-bottom:4px}.input{border:1px solid var(--line);border-radius:var(--r);padding:7px 10px;font-size:var(--fs-body);background:#fff;font-family:inherit;color:var(--text)}.input:focus{outline:2px solid var(--focus-line);border-color:var(--accent)}.card-body{padding:2px 0}.text-danger{color:var(--err)!important}.text-success{color:var(--ok)!important}.text-primary{color:var(--uni-accent-ink)!important}.text-dark{color:#212529!important}.alert-danger{background:#fdeaea;color:var(--err);border:1px solid #f5c6c6}.alert-warning{background:#fdf6e3;color:#8a6100;border:1px solid #f2e2b0}.alert-info{background:#e8f2fd;color:#1d4ed8;border:1px solid #c9defa}.badge-primary{background:var(--accent);color:var(--uni-ink)}.badge-success{background:var(--ok);color:#fff}.badge-danger{background:var(--err);color:#fff}.badge-warning{background:#f5c518;color:#3a2e00}.badge-info{background:#17a2b8;color:#fff}.badge-light{background:#f1f3f7;color:#41506a;border:1px solid var(--line)}.badge-primary-outline{background:#fff;color:var(--uni-accent-ink);border:1px solid var(--accent)}.badge-info-outline{background:#fff;color:#0f6d7c;border:1px solid #9ad7e2}.btn-outline-primary{background:#fff;color:var(--uni-accent-ink);border:1px solid var(--accent)}.btn-outline-primary:hover{background:var(--uni-accent-soft)}.btn-outline-success{background:#fff;color:var(--ok);border:1px solid var(--ok)}.btn-outline-success:hover{background:#eefbf3}.btn-outline-secondary{background:#fff;color:#41506a;border:1px solid var(--line)}.modal-xl{width:min(1040px,100%);max-width:100%}.filter-bar{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap}.filter-label{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}.filter-bar select{min-width:150px}.form-control-static{border:1px solid var(--line);border-radius:var(--r);padding:7px 10px;font-size:var(--fs-body);background:#f6f8fb;color:var(--muted)}.bool-readonly{font-size:13px;color:var(--text);padding:6px 0}.avail-reasons{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}.avail-reasons b{color:var(--text)}.app-shell.nav-crowded .nav-row{display:none}.app-shell.nav-crowded .menu-toggle{display:inline-flex}@media (max-width: 1100px){.uni-header{gap:10px}.nav-link{padding:0 9px;gap:5px}.nav-cell.has-subs .nav-link{padding-right:3px}.nav-caret{width:26px}.nav-strip{gap:1px;padding:0 var(--pad) 6px}.nav-strip-link{padding:0 8px}.modal-form .form-card .form-grid{grid-template-columns:1fr 1fr}}@media (max-width: 900px){.nav-row{display:none}.menu-toggle{display:inline-flex}.uni-header{padding:6px var(--pad)}.uni-name{white-space:normal}.topbar-logo-img{max-width:min(200px,46vw)}.topbar-user{min-width:0}.user-name{max-width:38vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-grid{grid-template-columns:1fr}.form-field.span2,.span2{grid-column:span 1}.form-grid>.form-error{grid-column:span 1}.form-card .form-grid:not(.loc-grid)>.form-error{grid-column:span 2}.form-card .form-grid.loc-grid{grid-template-columns:1fr}.form-card .form-grid.loc-grid .form-field.span2,.form-card .form-grid.loc-grid .span2{grid-column:span 1}.page-head{align-items:stretch}.page-head-titles{flex:1 1 100%}.page-head-actions{margin-left:0}.page-head>.row{margin-left:0}.search{flex:1 1 100%;min-width:0}.table-toolbar-actions{margin-left:0}}@media (max-width: 560px){:root{--pad:12px;--cell-x:9px}.uni-header{gap:8px;padding:6px var(--pad)}.topbar-logo{width:28px;height:28px}.topbar-logo-img{height:28px;max-width:min(160px,52vw)}.uni-name{font-size:var(--fs-body)}.user-chip{padding:2px 4px}.user-name{max-width:34vw}.page-head-actions{width:100%}.page-head-actions .btn{flex:1 1 auto;min-height:var(--tap)}.page-head>.row{width:100%}.page-head>.row .btn{min-height:var(--tap)}.table-toolbar-actions{width:100%}.table-toolbar-actions .btn{flex:1 1 auto;min-height:var(--tap)}.table-footer{justify-content:flex-start}.filter-bar select{flex:1 1 140px;min-width:0}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.tabs{overflow-x:auto}.tab{white-space:nowrap}.login-card{padding:24px 18px}.app-menu{width:min(320px,92vw)}.modal-backdrop{padding:10px 8px}.modal{max-height:calc(100vh - 20px)}.modal{max-height:calc(100dvh - 20px)}.modal-head{padding:12px}.modal-body{padding:14px 10px}.form-card{padding:16px 14px;border-radius:var(--r-card)}.form-card .form-grid{grid-template-columns:1fr}.form-card .form-field.span2,.form-card .span2{grid-column:span 1}.form-card .form-grid:not(.loc-grid)>.form-error{grid-column:span 1}.modal-form .form-card .form-grid{grid-template-columns:1fr}.form-field input,.form-field select,.form-field textarea{font-size:16px}.array-row{grid-template-columns:1fr}.array-del{justify-self:end}.form-field input,.form-field select,.form-field textarea{min-height:var(--tap)}.form-field input[type=checkbox],.form-field input[type=color]{min-height:0;width:22px;height:22px}.modal-foot{flex-direction:column;gap:8px;padding:12px}.modal-foot .btn{width:100%;min-height:var(--tap)}.modal-close{min-width:var(--tap);min-height:var(--tap)}}@media (pointer: coarse){.nav-caret{min-width:44px;min-height:44px}.nav-strip-link{min-height:44px}}
