:root{--primary:#157089;--primary-hover:#115d72;--primary-soft:#e7f2f5;--primary-soft-strong:#d3e8ed;--primary-ring:#1570892e;--bg:#eef2f5;--surface:#fff;--surface-muted:#f6f9fa;--surface-hover:#f0f6f8;--text:#15252d;--text-muted:#65767f;--text-subtle:#8a9aa3;--border:#e4eaee;--border-strong:#d3dde2;--danger:#c0353c;--danger-hover:#a3262d;--danger-soft:#fdf0f1;--danger-border:#f1c7ca;--danger-text:#962029;--success:#1a7f4b;--success-soft:#e8f6ee;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-pill:999px;--shadow-xs:0 1px 2px #1428320d;--shadow-sm:0 1px 3px #1428320f, 0 1px 2px #1428320a;--shadow-md:0 4px 16px #14283214, 0 2px 6px #1428320a;--shadow-lg:0 18px 48px #0f232d2e;--ease:cubic-bezier(.4, 0, .2, 1);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}::selection{background:var(--primary-soft-strong)}*{scrollbar-width:thin;scrollbar-color:#c5d0d5 transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#c5d0d5 padding-box content-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#aebac0 padding-box content-box}.app-shell{grid-template-columns:256px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#eef6f8;background:linear-gradient(#103039 0%,#0c242c 100%);flex-direction:column;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.01em;color:#fff;align-items:center;gap:11px;padding:6px 10px 0;font-size:1.18rem;font-weight:700;display:flex}.brand svg{color:#5fc6dc}.sidebar nav{gap:4px;margin-top:30px;display:grid}.sidebar button{color:#c2d4d9;cursor:pointer;text-align:left;min-height:44px;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:0 13px;font-size:.94rem;font-weight:550;display:flex}.sidebar button svg{opacity:.85;transition:opacity .15s var(--ease)}.sidebar button:hover{color:#fff;background:#ffffff12}.sidebar button.active{color:#fff;background:#5fc6dc29;box-shadow:inset 3px 0 #5fc6dc}.sidebar button.active svg{opacity:1;color:#5fc6dc}main{flex-direction:column;min-width:0;display:flex}.topbar{-webkit-backdrop-filter:saturate(180%)blur(8px);backdrop-filter:saturate(180%)blur(8px);border-bottom:1px solid var(--border);z-index:30;background:#ffffffd9;justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:0 28px;display:flex;position:sticky;top:0}.topbar-start{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.topbar-end{flex-shrink:0;align-items:center;gap:14px;margin-left:auto;display:flex}.topbar-quick-search{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.topbar-quick-search-hash{color:var(--text-muted);-webkit-user-select:none;user-select:none;font-size:.95rem;font-weight:650;line-height:1}.topbar-quick-search input:not([type=checkbox]):not([type=radio]){background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;text-align:center;flex:none;width:4.75rem;min-width:0;max-width:4.75rem;min-height:32px;padding:0 6px;font-size:.88rem}.topbar-quick-search input:focus{border-color:var(--primary);outline:none}.topbar-user{text-align:right;gap:1px;display:grid}.topbar-user strong{font-size:.95rem;font-weight:650}.host-select{flex-shrink:0;align-items:center;gap:8px;display:flex}.host-select select{min-width:140px;min-height:32px}.topbar span,.section-header p,.metrics span{color:var(--text-muted);font-size:.9rem}.content{width:100%;max-width:1320px;padding:30px 32px 48px}.section-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:24px;display:flex}h1,h2,p{margin:0}h1{letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.section-header p{margin-top:4px}.button,.icon-button{cursor:pointer;min-height:40px;transition:background .15s var(--ease), border-color .15s var(--ease), box-shadow .15s var(--ease), transform 50ms var(--ease);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.92rem;font-weight:600;display:inline-flex}.button:active,.icon-button:active{transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.55}.button.primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-xs)}.button.primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-sm)}.button.secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.button.secondary:hover:not(:disabled){background:var(--surface-muted);border-color:#c2cdd2}.button.danger{background:var(--danger);color:#fff}.button.danger:hover:not(:disabled){background:var(--danger-hover)}.icon-button{background:var(--surface);border-color:var(--border-strong);color:var(--text-muted);width:42px;padding:0}.icon-button:hover{background:var(--surface-muted);color:var(--text);border-color:#c2cdd2}.danger-text{color:var(--danger-text)}input:not([type=checkbox]):not([type=radio]),select,textarea{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);width:100%;min-height:42px;transition:border-color .15s var(--ease), box-shadow .15s var(--ease);border-radius:10px;padding:0 12px}textarea{padding:10px 12px}input::placeholder,textarea::placeholder{color:var(--text-subtle)}input:not([type=checkbox]):not([type=radio]):hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:#c2cdd2}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-ring);outline:none}.login-page{background:radial-gradient(1200px 600px at 15% -10%,#1570891f,#0000 60%),radial-gradient(1000px 600px at 110% 110%,#5fc6dc24,#0000 55%),linear-gradient(135deg,#eef3f4,#f7fafb);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);gap:18px;width:min(420px,100%);padding:34px;display:grid}.login-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.login-brand{color:var(--text);letter-spacing:-.01em;margin-bottom:6px;font-weight:700}.language-switcher{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);flex-shrink:0;align-items:stretch;display:inline-flex;overflow:hidden}.language-switcher button{color:var(--text-muted);cursor:pointer;letter-spacing:.04em;background:0 0;border:0;min-width:2.25rem;min-height:32px;padding:0 8px;font-size:.75rem;font-weight:700;line-height:1}.language-switcher button:hover{color:var(--text)}.language-switcher button.active{background:var(--primary-soft);color:var(--primary)}label:not(.permission-option):not(.checkbox-row):not(.checkbox-inline):not(.checkbox-option){gap:7px;font-size:.9rem;font-weight:600;display:grid}.inline-error{background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:var(--radius-sm);color:var(--danger-text);padding:11px 14px;font-size:.9rem}.field-invalid input{border-color:#d64550}.field-error{color:var(--danger-text);font-size:.82rem;font-weight:500}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.metrics div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow .18s var(--ease), transform .18s var(--ease);gap:6px;padding:20px 22px;display:grid;position:relative;overflow:hidden}.metrics div:before{content:"";background:linear-gradient(180deg, var(--primary), #5fc6dc);opacity:.85;width:4px;position:absolute;inset:0 auto 0 0}.metrics div:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metrics span{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:.78rem;font-weight:600}.metrics strong{letter-spacing:-.02em;font-size:1.7rem;font-weight:720}.filter-bar,.admin-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:12px;margin-bottom:20px;padding:16px 18px;display:grid}.admin-form{grid-template-columns:1.5fr 1.1fr 1fr 1.1fr 1.3fr auto}.admin-host-form,.admin-profile-form{flex-direction:column;align-items:stretch;gap:16px;width:100%;margin-top:20px;margin-bottom:18px;display:flex}.admin-profile-form>*{width:100%;min-width:0}.admin-profile-form h3{margin:0}.checkbox-inline{align-items:center;gap:8px;width:auto;font-weight:500;display:flex}.admin-profile-form>label.checkbox-inline{width:auto}.admin-profile-summary-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.admin-profile-summary-list li{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.admin-profile-summary-list li span{color:var(--text-muted);font-size:.84rem}.checkbox-inline input[type=checkbox]{accent-color:var(--primary);height:16px;min-height:unset;flex-shrink:0;width:16px;margin:0;padding:0}.event-combobox{position:relative}.event-combobox input{padding-right:34px}.combobox-clear{color:var(--text-muted);cursor:pointer;width:30px;height:30px;transition:background .12s var(--ease), color .12s var(--ease);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;font-size:1.25rem;display:flex;position:absolute;top:6px;right:7px}.combobox-clear:hover{background:var(--surface-muted);color:var(--text)}.combobox-options{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:20;max-height:280px;padding:5px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.combobox-options button,.combobox-empty{color:var(--text);cursor:pointer;overflow-wrap:anywhere;text-align:left;background:0 0;border:0;border-radius:8px;min-height:38px;padding:9px 11px}.combobox-option{align-items:flex-start;gap:10px;width:100%;display:flex}.combobox-option-check{pointer-events:none;flex-shrink:0;margin-top:2px;display:inline-flex}.combobox-option-check input{accent-color:var(--primary);width:15px;height:15px;margin:0}.combobox-option-label{flex:1;line-height:1.35}.combobox-options button:hover{background:var(--surface-hover)}.combobox-options button.selected,.combobox-options button[aria-selected=true]{background:var(--primary-soft);color:var(--primary-hover);font-weight:650}.combobox-empty{color:var(--text-muted);cursor:default}.state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--text-muted);text-align:center;padding:26px}.state-error{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger-text)}.running-task-bubble{z-index:1100;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:min(340px,100vw - 40px);box-shadow:var(--shadow-md);color:var(--text);animation:task-bubble-in .22s var(--ease);pointer-events:none;align-items:center;gap:10px;padding:12px 16px;font-size:.9rem;line-height:1.35;display:flex;position:fixed;top:80px;right:28px}.running-task-bubble:before{content:"";background:var(--surface);border-left:1px solid var(--border);border-top:1px solid var(--border);width:11px;height:11px;position:absolute;top:-6px;right:22px;transform:rotate(45deg)}.running-task-bubble-spinner{border:2px solid var(--primary-soft-strong);border-top-color:var(--primary);border-radius:50%;flex:none;width:16px;height:16px;animation:.7s linear infinite task-bubble-spin}.running-task-bubble-label{min-width:0;font-weight:600}.running-task-bubble-copy{gap:2px;min-width:0;display:grid}.running-task-bubble-detail{color:var(--text-muted);font-size:.84rem}.running-task-bubble.is-done .running-task-bubble-label{font-weight:600}.table-wrap tr.lead-row-denied{background:var(--danger-soft)}.table-wrap tr.lead-row-denied td{color:var(--danger-text)}@keyframes task-bubble-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes task-bubble-spin{to{transform:rotate(360deg)}}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--border);text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:260px;padding:13px 16px;font-size:.92rem;overflow:hidden}th{background:var(--surface-muted);color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;z-index:1;font-size:.74rem;font-weight:700;position:sticky;top:0}tbody tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer;transition:background .12s var(--ease)}tr.clickable:hover{background:var(--surface-hover)}tr.selected{background:var(--primary-soft)}.participants-search-form{margin-bottom:20px}.participants-search-box{--control-height:42px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);gap:14px;padding:16px 18px;display:grid}.participants-search-box input:not([type=checkbox]):not([type=radio]),.participants-search-box select{height:var(--control-height);min-height:var(--control-height);padding:0 12px;line-height:1.25}.participants-search-box select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2365767f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;padding-right:34px}.participants-search-box .button,.participants-search-box .icon-button{height:var(--control-height);min-height:var(--control-height)}.participants-search-box .icon-button,.participants-search-box .button.icon-button{width:var(--control-height);padding:0}.participants-search-scope{grid-template-columns:minmax(220px,1.4fr) minmax(160px,1fr) auto;align-items:end;gap:12px;display:grid}.participants-search-scope.with-type{grid-template-columns:minmax(200px,1.3fr) minmax(150px,1fr) minmax(150px,1fr) auto}.participants-search-filters{border-top:1px solid var(--border);gap:10px;padding-top:14px;display:grid}.participants-search-filter-row{grid-template-columns:minmax(180px, 1.1fr) minmax(120px, .7fr) minmax(0, 1.6fr) calc(var(--control-height) * 2 + 6px);align-items:end;gap:10px;display:grid}.participants-search-operator select{font-variant-emoji:text;min-width:0}.participants-search-filter-actions{height:var(--control-height);justify-content:flex-end;align-items:center;gap:6px;width:100%;display:flex}.participants-search-value{gap:0;min-width:0;display:grid}.participants-search-value-spacer{visibility:hidden;margin-bottom:6px;font-weight:600;line-height:1.2;display:block}.participants-search-value .searchable-multi-select,.participants-search-value .event-combobox{width:100%;min-width:0}.participants-search-value .search-filter-multi{background:var(--surface);border:1px solid var(--border-strong);max-height:140px;min-height:var(--control-height);border-radius:10px;gap:4px;padding:8px 10px;display:grid;overflow:auto}@media (width<=900px){.participants-search-scope,.participants-search-scope.with-type,.participants-search-filter-row{grid-template-columns:1fr}.participants-search-filter-actions{justify-content:flex-start;width:auto;height:auto}}.master-sections{gap:20px;display:grid}.master-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:22px}.master-section h3{letter-spacing:-.01em;margin:0 0 16px;font-size:1.02rem;font-weight:700}.field-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.address-columns{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;display:grid}.address-block{min-width:0}.field-grid label textarea{resize:vertical;width:100%;min-height:88px}.custom-fields-sections{gap:10px;display:grid}.custom-field-group{padding-bottom:8px}.custom-field-group-toggle{border-radius:var(--radius-sm);color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;min-height:40px;margin:0;padding:6px 8px;display:flex}.custom-field-group-toggle:hover{background:var(--surface-muted)}.custom-field-group-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s}.custom-field-group.is-open .custom-field-group-chevron{transform:rotate(90deg)}.custom-field-group-title{flex:1;min-width:0;font-size:1rem;font-weight:650}.custom-field-group-count{color:var(--text-muted);font-size:.82rem;font-weight:500}.custom-field-group-body{gap:10px;padding:4px 8px 8px 34px;display:grid}.custom-field-multi{border:0;grid-column:1/-1;margin:0;padding:0}.custom-field-multi legend{margin-bottom:8px;font-size:.875rem;font-weight:600}.checkbox-group{gap:4px;display:grid}.checkbox-option{align-items:flex-start;gap:8px;font-size:.9rem;font-weight:400;line-height:1.35;display:flex}.checkbox-option input[type=checkbox]{accent-color:var(--primary);height:16px;min-height:unset;flex-shrink:0;width:16px;margin-top:2px;padding:0}.bookings-toolbar{flex-wrap:wrap;align-items:center;gap:12px 20px}.required-mark{color:var(--danger)}.field-grid label.readonly span{color:var(--text-muted)}.tab-hint{color:var(--text-muted);margin:0 0 14px;font-size:.9rem}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:20px;display:flex;overflow-x:auto}.tabs button{color:var(--text-muted);cursor:pointer;text-transform:capitalize;min-height:44px;transition:color .12s var(--ease), border-color .12s var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 14px;font-size:.93rem;font-weight:600}.tabs button:hover{color:var(--text)}.tabs button.active{border-bottom-color:var(--primary);color:var(--primary);font-weight:700}.detail-grid{gap:14px;display:grid}.json-block{border-radius:var(--radius);color:#d6f0f4;background:#0e2129;max-height:62vh;margin:0;padding:20px;font-size:.86rem;line-height:1.55;overflow:auto}.action-row{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.participants-results-toolbar{justify-content:space-between;align-items:center;margin-bottom:12px}.participants-results-actions{min-height:var(--control-height,42px);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.participants-results-count{color:var(--text-muted);text-align:right;white-space:nowrap;margin:0 0 0 auto;font-size:.9rem;font-weight:600}.participants-search-presets{border-top:1px solid var(--border);grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto;align-items:end;gap:10px;padding-top:12px;display:grid}.participants-pagination{justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.audit-filters{margin-bottom:16px}.table-select-col{text-align:center;vertical-align:middle;width:3.75rem;padding:6px 10px}.table-select-checkbox{cursor:pointer;justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;margin:0 auto;padding:6px;display:inline-flex}.table-select-checkbox input[type=checkbox]{accent-color:var(--primary);cursor:pointer;flex-shrink:0;width:1.25rem;height:1.25rem;margin:0}.table-select-checkbox:focus-within{outline:2px solid var(--primary-ring);outline-offset:2px;border-radius:8px}.batch-badge-summary{border:1px solid var(--border);background:var(--surface-muted,#ffffff08);border-radius:10px;margin:12px 0 16px;padding:14px 16px}.batch-badge-summary p{margin:0;line-height:1.4}.batch-badge-summary h3{margin:0 0 8px;font-size:1rem}.batch-badge-results{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.batch-badge-results li{font-size:.92rem}.batch-badge-results .success{color:#7dcea0}.batch-badge-results .failure{color:#f5a8a8}.batch-badge-preview-modal{max-width:min(1180px,98vw)}.batch-badge-preview-layout{grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:16px;min-height:70vh;display:grid}.batch-badge-preview-list{flex-direction:column;align-content:start;align-self:start;gap:6px;max-height:70vh;padding-right:4px;display:flex;overflow:auto}.batch-badge-preview-list-item{appearance:none;background:var(--surface-muted,#ffffff08);border:1px solid var(--border);box-sizing:border-box;cursor:pointer;text-align:center;border-radius:6px;flex:none;justify-content:center;align-items:center;width:100%;height:auto;min-height:0;padding:6px 10px;line-height:1.25;display:flex}.batch-badge-preview-list-item.active{border-color:var(--accent,#5b9fd4);box-shadow:inset 0 0 0 1px var(--accent,#5b9fd4)}.batch-badge-preview-list-item strong{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:.9rem;font-weight:600;display:block;overflow:hidden}.batch-badge-preview-main{gap:10px;min-width:0;display:grid}.batch-badge-preview-current{margin:0;font-weight:600}.batch-badge-preview-actions{flex-wrap:wrap;justify-content:flex-end}@media (width<=860px){.batch-badge-preview-layout{grid-template-columns:1fr}.batch-badge-preview-list{max-height:180px}}.pdf-links,.admin-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.admin-settings-panel{margin-bottom:24px}.admin-reference-status{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.admin-reference-status li{gap:2px;display:grid}.admin-reference-status span{color:var(--text-muted);font-size:.88rem}.admin-layout{grid-template-columns:minmax(260px,340px) minmax(320px,1fr);align-items:start;gap:20px;display:grid}.admin-form-create{grid-template-columns:1.4fr 1fr .9fr 1fr 1fr auto;margin-bottom:24px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:22px}.admin-user-list ul{margin:12px 0 0;padding:0;list-style:none}.admin-user-list li{align-items:center;gap:6px;margin-bottom:6px;display:flex}.admin-user-list li>button:first-child{background:var(--surface-muted);cursor:pointer;text-align:left;transition:background .12s var(--ease), border-color .12s var(--ease);border:1px solid #0000;border-radius:10px;flex:1;align-items:flex-start;gap:3px;padding:11px 13px;display:grid}.admin-user-list li>button:first-child.active,.admin-user-list li>button:first-child:hover{background:var(--primary-soft);border-color:var(--primary-soft-strong)}.admin-user-list li strong{font-size:.95rem;display:block}.admin-user-list li span,.admin-user-list li em{color:var(--text-muted);font-size:.82rem;font-style:normal}.admin-editor{gap:14px;display:grid}.admin-editor label{gap:6px;display:grid}.admin-editor select,.admin-editor input:not([type=checkbox]){min-height:40px}.admin-scope-stack{gap:16px;margin-bottom:20px;display:grid}.admin-host-chips{flex-wrap:wrap;gap:8px;display:flex}.admin-host-chip{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:inherit;cursor:pointer;text-align:left;align-items:center;gap:8px;max-width:100%;padding:8px 10px;display:inline-flex}.admin-host-chip.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.admin-host-chip span:first-child{gap:2px;min-width:0;display:grid}.admin-host-chip strong{font-size:.92rem}.admin-host-chip em{color:var(--text-subtle);font-size:.78rem;font-style:normal}.admin-host-chip-remove{color:var(--text-subtle);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:2px;display:inline-flex}.admin-host-chip-remove:hover{background:color-mix(in srgb, var(--danger-text) 12%, transparent);color:var(--danger-text)}.admin-create-profiles{grid-column:1/-1}.admin-scope-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:20px;display:grid}select.multi-select{min-height:120px;padding:6px}.checkbox-row{align-items:center;gap:8px;width:100%;font-weight:500;display:flex}label.checkbox-row{display:flex}.checkbox-row input[type=checkbox]{accent-color:var(--primary);flex-shrink:0;width:16px;height:16px;margin:0}.checkbox-row.disabled{color:var(--text-subtle)}.admin-password-fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);gap:10px;margin:0 0 16px;padding:14px 16px;display:grid}.admin-password-fieldset legend{padding:0 6px;font-weight:600}.success-text{color:var(--success)}.permission-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;width:100%;display:flex;overflow:hidden}.permission-panel-header{background:var(--surface-muted);border-bottom:1px solid var(--border);margin:0;padding:13px 18px;font-size:.92rem;font-weight:650}.permission-panel-body{flex-direction:column;gap:12px;padding:16px 18px 18px;display:flex}.permission-group{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);margin:0;padding:0;overflow:hidden}.permission-group legend{background:var(--surface-muted);border-bottom:1px solid var(--border);width:100%;padding:13px 18px;font-size:.92rem;font-weight:650}.permission-group>.tab-hint,.permission-group>.permission-checkboxes,.permission-group>.admin-tab-permissions,.permission-group>.permission-tab-grid,.permission-group>.permission-footer-hint{padding-left:18px;padding-right:18px}.permission-group>.tab-hint{margin:12px 0 0}.permission-checkboxes{flex-direction:column;gap:4px;width:100%;margin:0;padding-top:6px;padding-bottom:12px;display:flex}label.permission-option{cursor:pointer;min-height:40px;transition:background .12s var(--ease);border-radius:8px;flex-direction:row;align-items:flex-start;gap:10px;width:100%;padding:9px 11px;font-weight:500;display:flex}.permission-option:hover:not(.disabled){background:var(--surface-hover)}.permission-option.disabled{color:var(--text-subtle);cursor:not-allowed}.permission-option input[type=checkbox]{accent-color:var(--primary);flex-shrink:0;width:16px;height:16px;margin-top:2px}.permission-option-text{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.permission-option-text strong{font-size:.9rem;font-weight:600;line-height:1.35}.permission-option-text span{color:var(--text-muted);font-size:.8rem;font-weight:400;line-height:1.35}.admin-permissions{flex-direction:column;gap:16px;width:100%;display:flex}.admin-tab-permissions,.permission-tab-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;width:100%;margin:0;display:grid}.admin-tab-permission-card,.permission-tab-card{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:100%;transition:border-color .12s var(--ease), box-shadow .12s var(--ease);flex-direction:column;display:flex;overflow:hidden}.permission-tab-card.is-active{border-color:var(--primary-soft-strong);box-shadow:0 0 0 1px var(--primary-ring)}.permission-tab-header{background:var(--surface);border-bottom:1px solid var(--border)}.permission-tab-extras{flex-direction:column;flex:1;gap:2px;padding:6px 8px 10px;display:flex}.permission-tab-extras-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 2px;padding:0 10px;font-size:.72rem;font-weight:600}.permission-tab-extras .permission-option{min-height:34px;padding:4px 8px;font-size:.86rem}.permission-footer-hint{color:var(--text-muted);margin:4px 0 0;font-size:.82rem;font-weight:400;line-height:1.45}.muted{color:var(--text-subtle);font-size:.85rem}.pdf-links a{background:var(--primary-soft);color:var(--primary-hover);min-height:36px;transition:background .12s var(--ease);border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.pdf-links a:hover{background:var(--primary-soft-strong)}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;animation:backdrop-in .18s var(--ease);background:#0d1c2380;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}}.badge-preview-backdrop{z-index:1000}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:440px;animation:modal-in .2s var(--ease);gap:16px;padding:26px;display:grid}.modal.modal-form{max-width:480px}.modal-form-fields{gap:14px;display:grid}.modal-form-fields label{gap:6px;display:grid}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)scale(.99)}}.modal-title{justify-content:space-between;align-items:center;gap:10px;font-weight:700;display:flex}.modal-title h2{margin:0;font-size:1.1rem}.modal-title-label{align-items:center;gap:10px;min-width:0;display:inline-flex}.badge-preview-modal{width:100%;max-width:min(920px,96vw)}.badge-preview-frame{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;height:70vh}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.custom-field-scope-panel{margin-top:4px}.custom-field-scope-grid{grid-template-columns:1fr;gap:12px;display:grid}.custom-field-scope-card{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:8px;width:100%;padding:12px;display:flex}.custom-field-scope-card-header{flex-direction:column;gap:2px;display:flex}.custom-field-scope-card-header span{color:var(--text-muted);font-size:.82rem}.custom-field-scope-group-label{color:var(--text-muted);letter-spacing:.03em;text-transform:uppercase;margin:8px 0 4px;font-size:.78rem;font-weight:600}.custom-field-scope-options{flex-direction:column;gap:12px;display:flex}.custom-field-scope-fields{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.custom-field-scope-option{align-items:flex-start;min-height:auto;padding:8px 10px;font-size:.84rem}.custom-field-scope-option .permission-option-text{gap:2px}.custom-field-scope-id{color:var(--text-muted);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.74rem}@media (width<=1200px){.custom-field-scope-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=860px){.custom-field-scope-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.custom-field-scope-fields{grid-template-columns:1fr}}@media (width<=860px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;padding:14px;position:static}.sidebar nav{grid-auto-flow:column;margin-top:14px;overflow-x:auto}.sidebar button.active{box-shadow:inset 0 -3px #5fc6dc}.filter-bar,.admin-form,.admin-profile-form,.admin-layout,.metrics,.permission-tab-grid{grid-template-columns:1fr}.admin-layout{display:grid}.content{padding:18px}.topbar{padding:0 18px}.running-task-bubble{top:72px;right:18px}}
