@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Symbols Rounded;font-style:normal;font-weight:500;src:url(https://fonts.gstatic.com/s/materialsymbolsrounded/v328/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rLWlXxc.woff2) format("woff2")}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}:root{--bg: #f8fafc;--surface: #ffffff;--surface-alt: #f1f5f9;--surface-soft: #eef2ff;--text: #0f172a;--muted: #64748b;--primary: #2563eb;--primary-soft: #dbeafe;--success: #16a34a;--success-soft: #dcfce7;--warning: #f59e0b;--warning-soft: #fef3c7;--danger: #ef4444;--danger-soft: #fee2e2;--border: #dbe2ea;--ring: rgba(37, 99, 235, .2);--shadow-sm: 0 8px 20px rgba(15, 23, 42, .06);--shadow-md: 0 16px 36px rgba(15, 23, 42, .1)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:Inter,sans-serif;color:var(--text);background:radial-gradient(1200px 500px at 10% -20%,rgba(37,99,235,.1),transparent 60%),radial-gradient(1000px 500px at 95% 0%,rgba(22,163,74,.08),transparent 55%),var(--bg)}body.modal-open{overflow:hidden}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit}.material-symbols-rounded{font-variation-settings:"FILL" 0,"wght" 600,"GRAD" 0,"opsz" 24;font-size:20px;line-height:1}.page-shell{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);padding:1.4rem}.page-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.page-title .title-group{display:grid;gap:.25rem}.page-title h1{font-size:1.2rem;font-weight:800;letter-spacing:-.01em}.page-subtitle{font-size:.86rem;color:var(--muted)}.toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem;margin-bottom:1rem;padding:.85rem;border:1px solid var(--border);border-radius:14px;background:#fbfdff;align-items:center}.toolbar label{display:grid;gap:.35rem;font-weight:600;font-size:.78rem;color:#334155}.field,textarea,input,select{width:100%;border:1px solid var(--border);border-radius:12px;min-height:44px;padding:.62rem .75rem;background:#fff;color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}textarea{min-height:110px;resize:vertical}.field:focus,textarea:focus,input:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.primary-btn,.secondary-btn,.danger-btn{border-radius:12px;min-height:42px;padding:.55rem .9rem;font-weight:700;border:1px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.primary-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 10px 20px #2563eb40}.primary-btn:hover:not(:disabled){transform:translateY(-1px)}.secondary-btn{background:#f8fafc;color:#0f172a;border-color:#d6deea}.secondary-btn:hover:not(:disabled){background:#eef2f7;border-color:#c3cfde}.danger-btn{background:#fff;color:#b91c1c;border-color:#fecaca}.danger-btn:hover:not(:disabled){background:#fef2f2}.primary-btn:disabled,.secondary-btn:disabled,.danger-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.icon-btn .material-symbols-rounded{font-size:18px}.data-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border);border-radius:14px;overflow:hidden}.data-table th,.data-table td{text-align:left;padding:.78rem .72rem;border-bottom:1px solid #e8edf4;font-size:.88rem;vertical-align:middle}.data-table th{color:#475569;font-weight:700;background:#f8fafc}.data-table tbody tr:nth-child(2n){background:#fafcff}.data-table tbody tr:hover{background:#eff6ff}.data-table tbody tr:last-child td{border-bottom:none}.table-actions{display:flex;flex-wrap:wrap;gap:.45rem}.badge{display:inline-flex;align-items:center;justify-content:center;padding:.22rem .62rem;border-radius:999px;font-size:.75rem;font-weight:700;border:1px solid transparent}.badge.success{color:#166534;background:var(--success-soft);border-color:#bbf7d0}.badge.danger{color:#991b1b;background:var(--danger-soft);border-color:#fecaca}.badge.warning{color:#92400e;background:var(--warning-soft);border-color:#fde68a}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.form-section{margin-top:1rem;border:1px solid var(--border);border-radius:14px;padding:.9rem;background:#fcfdff}.form-section h2{font-size:.93rem;font-weight:700;color:#1e293b;margin-bottom:.7rem}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem}.check-inline{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#334155}.check-inline input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.switch-label{display:inline-flex;align-items:center;gap:.65rem;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;color:#334155;font-size:.88rem}.switch-label input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.switch-label .switch-track{width:42px;height:24px;border-radius:12px;background:#d1d5db;position:relative;flex-shrink:0;transition:background .22s ease}.switch-label .switch-track .switch-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000040;transition:transform .22s ease}.switch-label input[type=checkbox]:checked+.switch-track{background:var(--primary)}.switch-label input[type=checkbox]:checked+.switch-track .switch-thumb{transform:translate(18px)}.switch-label:hover .switch-track{box-shadow:0 0 0 3px var(--ring)}.switch-row{display:flex;flex-wrap:wrap;gap:1.4rem 2.2rem;padding:.1rem 0}.error-text{color:#b91c1c;font-size:.82rem;margin-top:.35rem}.status-strip{border-radius:12px;border:1px solid var(--border);padding:.72rem .85rem;font-size:.85rem;color:#334155;background:#f8fafc}.loading-block{border:1px dashed #cbd5e1;border-radius:12px;padding:1rem;text-align:center;color:#64748b;background:#fcfdff}.empty-state{border:1px dashed #cbd5e1;border-radius:14px;padding:1rem;text-align:center;color:#64748b;background:#fcfdff}.section-stack{display:grid;gap:1rem}.app-modal-backdrop{position:fixed;inset:0;z-index:90;background:#0f172a7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:1.2rem}.app-modal{width:min(760px,100%);max-height:calc(100vh - 2.4rem);background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-md);display:grid;grid-template-rows:auto 1fr;overflow:hidden}.app-modal.app-modal-lg{width:min(920px,100%)}.app-modal-header{padding:1rem 1.15rem;border-bottom:1px solid var(--border);background:#f8fbff;display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.app-modal-header .title-group{display:grid;gap:.25rem}.app-modal-content{padding:1rem 1.15rem 1.15rem;overflow:auto}.app-modal-content .form-section:first-child{margin-top:0}.app-modal .field,.app-modal input,.app-modal select,.app-modal textarea,.app-modal .primary-btn,.app-modal .secondary-btn,.app-modal .danger-btn{min-height:44px}.float-group{position:relative}.float-group input.field,.float-group textarea{padding-top:1.3rem;padding-bottom:.3rem;min-height:52px}.float-group .float-label{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);font-size:.84rem;color:var(--muted);pointer-events:none;transition:top .15s ease,transform .15s ease,font-size .15s ease,color .15s ease;background:#fff;padding:0 .2rem;white-space:nowrap;overflow:hidden;max-width:calc(100% - 1.5rem);text-overflow:ellipsis;font-weight:500;line-height:1;z-index:1}.float-group textarea~.float-label{top:1.1rem;transform:none}.float-group input.field:focus+.float-label,.float-group input.field:not(:placeholder-shown)+.float-label,.float-group textarea:focus~.float-label,.float-group textarea:not(:placeholder-shown)~.float-label{top:.38rem;transform:none;font-size:.68rem;color:var(--primary);font-weight:600}.labeled-field{display:grid;gap:.28rem}.labeled-field .field-label-sm{font-size:.72rem;font-weight:600;color:#334155;letter-spacing:.01em}.ac-field{display:grid;gap:.5rem;grid-column:1/-1}.ac-pills{display:flex;flex-wrap:wrap;gap:.4rem;min-height:0}.ac-pills.empty{display:none}.ac-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .45rem .3rem .6rem;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--primary-soft);color:#1d4ed8;border:1px solid #bfdbfe}.ac-pill .material-symbols-rounded{font-size:14px;color:#3b82f6}.ac-pill .ac-pill-remove{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;border:none;background:transparent;cursor:pointer;padding:0;color:#1d4ed8;transition:background-color .15s ease}.ac-pill .ac-pill-remove .material-symbols-rounded{font-size:13px;color:inherit}.ac-pill .ac-pill-remove:hover{background:#bfdbfe}.ac-input-wrap{position:relative}.ac-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);max-height:220px;overflow-y:auto;padding:.35rem;list-style:none;margin:0}.ac-dropdown li{display:block}.ac-dropdown button{width:100%;display:flex;align-items:center;gap:.5rem;padding:.55rem .65rem;border:none;background:transparent;border-radius:8px;font-size:.86rem;color:#0f172a;cursor:pointer;text-align:left;transition:background-color .12s ease}.ac-dropdown button .material-symbols-rounded{font-size:16px;color:var(--muted)}.ac-dropdown button:hover{background:var(--primary-soft);color:var(--primary)}.ac-dropdown button:hover .material-symbols-rounded{color:var(--primary)}.form-grid input.field.ng-invalid.ng-touched,.form-grid select.field.ng-invalid.ng-touched,.form-grid textarea.ng-invalid.ng-touched,.float-group input.field.ng-invalid.ng-touched{border-color:var(--danger);box-shadow:0 0 0 3px #ef44441a}.float-group input.field.ng-invalid.ng-touched+.float-label{color:var(--danger)}@media(max-width:860px){.page-shell{padding:1rem}.page-title{flex-direction:column;align-items:flex-start}.page-title>button,.page-title>div:not(.title-group){width:100%}.page-title>button{justify-content:center}.toolbar{grid-template-columns:1fr}.data-table{display:block;overflow-x:auto;white-space:nowrap}.app-modal-backdrop{padding:.5rem}.app-modal{max-height:calc(100vh - 1rem);border-radius:14px}.app-modal-header,.app-modal-content{padding:.85rem}}@media(max-width:480px){.page-shell{padding:.75rem;border-radius:14px}.section-stack{gap:.65rem}.form-grid{grid-template-columns:1fr}.app-modal-backdrop{padding:.25rem}.app-modal-header,.app-modal-content{padding:.65rem}.page-title h1{font-size:1.05rem}}
