:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{color:#182339;font-synthesis:none;background:#f5f7fb;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}.termal-app{min-height:100vh}.topbar{background:#fff;border-bottom:1px solid #e7ebf1;align-items:center;gap:13px;height:76px;padding:0 max(24px,50vw - 720px);display:flex}.brand-mark{color:#fff;background:#1767dc;border-radius:12px;place-items:center;width:42px;height:42px;font-size:24px;font-weight:800;display:grid}.brand-title{font-size:18px;font-weight:750}.brand-subtitle{color:#758195;margin-top:2px;font-size:12px}.local-pill{color:#18794e;background:#eaf7f0;border-radius:99px;margin-left:auto;padding:7px 12px;font-size:12px;font-weight:700}.content{max-width:1488px;margin:auto;padding:34px 24px}.heading-row{justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;display:flex}.heading-row h1{margin:0 0 5px;font-size:29px}.heading-row p{color:#738096;margin:0}.upload-button{color:#fff;cursor:pointer;white-space:nowrap;background:#1767dc;border:0;border-radius:9px;justify-content:center;align-items:center;padding:12px 18px;font-weight:650;display:inline-flex}.upload-button:hover{background:#0c55bf}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.summary-card{background:#fff;border:1px solid #e7ebf1;border-radius:13px;min-width:0;padding:20px;box-shadow:0 2px 7px #14234005}.summary-card span{color:#748198;margin-bottom:12px;font-size:13px;display:block}.summary-card strong{font-size:28px;font-weight:750;display:block}.summary-card.file-card strong{text-overflow:ellipsis;white-space:nowrap;margin-top:20px;font-size:15px;overflow:hidden}.table-card{background:#fff;border:1px solid #e7ebf1;border-radius:14px;overflow:hidden;box-shadow:0 2px 9px #14234008}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:18px;display:flex}.toolbar input,.toolbar select,.toolbar button{color:#24344c;background:#fff;border:1px solid #dbe2eb;border-radius:8px;padding:11px 13px}.toolbar .search{flex:1;min-width:240px}.toolbar select{min-width:180px}.secondary-button{font-weight:650}.column-picker{background:#f9fbfe;border-top:1px solid #e7ebf1;padding:18px}.picker-title{margin-bottom:13px;font-weight:700}.checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.checkbox-grid label{align-items:center;gap:6px;font-size:13px;display:flex}.checkbox-grid input{accent-color:#1767dc}.picker-actions{gap:10px;margin-top:18px;display:flex}.picker-actions button{background:#fff;border:1px solid #dbe2eb;border-radius:7px;padding:8px 12px}.table-scroll{width:100%;max-height:65vh;overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}thead{z-index:1;background:#f4f7fb;position:sticky;top:0}th{white-space:nowrap;border-top:1px solid #edf0f5;border-bottom:1px solid #e3e9f1}th button{color:#52617a;text-align:left;white-space:nowrap;background:0 0;border:0;padding:14px 16px;font-weight:750}td{white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #eff2f6;max-width:300px;padding:13px 16px;overflow:hidden}tbody tr:hover{background:#f7faff}.sort-arrow{color:#95a4b8}.table-footer{color:#69778c;border-top:1px solid #e9edf3;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;font-size:13px;display:flex}.pagination{align-items:center;gap:10px;display:flex}.pagination label{align-items:center;gap:6px;display:flex}.pagination select{border:1px solid #dbe2eb;border-radius:6px;padding:5px}.pagination button{background:#fff;border:1px solid #dbe2eb;border-radius:6px;padding:6px 10px}.pagination button:disabled{opacity:.35;cursor:not-allowed}.empty-state{text-align:center;background:#fff;border:1px dashed #b9c8dc;border-radius:14px;padding:65px 24px}.empty-state h2{margin:10px 0}.empty-state p{color:#748198;max-width:500px;margin:0 auto 22px;line-height:1.6}.empty-icon{color:#1767dc;font-size:36px}.no-results{text-align:center;color:#78859a;padding:26px}.message{border-radius:8px;margin-bottom:15px;padding:12px 16px}.error{color:#ad3030;background:#fff0f0}.warning{color:#865a00;background:#fff8e6}.privacy-note{color:#8290a3;margin-top:17px;font-size:12px}@media (width<=850px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.heading-row{align-items:flex-start}.heading-row h1{font-size:24px}}@media (width<=560px){.content{padding:22px 12px}.topbar{padding:0 14px}.heading-row{flex-direction:column}.summary-grid{gap:10px}.summary-card{padding:14px}.summary-card strong{font-size:23px}.toolbar .search{min-width:100%}.table-footer{flex-direction:column;align-items:flex-start}.brand-subtitle{font-size:10px}}.filter-toolbar{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:12px 16px;display:flex}.filter-toggle{cursor:pointer;font:inherit;color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:9px;padding:9px 12px}.filter-toggle:disabled{opacity:.45;cursor:not-allowed}.filter-toggle span{margin-left:10px}.filter-panel{z-index:20;background:#fff;border:1px solid #d1d5db;border-radius:10px;min-width:210px;max-height:340px;padding:12px;position:absolute;top:calc(100% + 5px);left:0;overflow:auto;box-shadow:0 12px 30px #0002}.filter-panel-title{margin-bottom:10px;font-weight:700}.filter-options{gap:8px;max-height:230px;display:grid;overflow:auto}.filter-options label{white-space:nowrap;cursor:pointer;align-items:center;gap:8px;display:flex}.filter-actions{gap:8px;margin-top:12px;display:flex}.filter-actions button{cursor:pointer;background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;padding:5px 8px}.reset-button{white-space:nowrap}.termal-table{border-collapse:collapse;width:100%;min-width:670px}.termal-table th{color:#334155;background:#e9eef5}.termal-table th button{white-space:nowrap}.termal-table .center-column{text-align:center}.termal-table .name-column{text-align:left;min-width:185px}.termal-table .region-cell{vertical-align:middle;text-align:center;font-weight:500}.termal-table .status-header{height:0}.termal-table .status-header th{height:0;line-height:0;border:0!important;padding:0!important}.termal-table .record-group tr{background:#fff}.termal-table .record-group.record-alt tr{background:#f0f4f9}.termal-table .record-group .person-row td{border-bottom:0;padding-bottom:4px}.termal-table .record-group .status-row td{border-bottom:1px solid #dbe3ec;padding-top:4px;padding-bottom:12px}.termal-table .record-group .region-cell{border-bottom:1px solid #dbe3ec}.status-items{grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:6px;display:grid}.status-items>*{justify-self:center}.payment{white-space:nowrap;font-size:13px;font-weight:700}.payment-paid{color:#15803d}.payment-unpaid{color:#dc2626}.payment-unknown{color:#94a3b8}.traffic-light{vertical-align:middle;border:1px solid #0002;border-radius:50%;width:11px;height:11px;display:inline-block}.traffic-red{background:#ef4444}.traffic-yellow{background:#facc15}.traffic-green{background:#22c55e}.traffic-empty{opacity:.5;background:#cbd5e1}@media (width<=720px){.filter-panel{max-width:260px}.termal-table td,.termal-table th{padding-left:8px;padding-right:8px}}.termal-table .name-column{text-align:center}.termal-table .person-name{vertical-align:middle;text-align:center;border-bottom:1px solid #dbe3ec;min-width:190px;font-size:16px;font-weight:700}.termal-table .status-items{white-space:nowrap;justify-content:flex-end;align-items:center;gap:9px;width:100%;display:flex}.termal-table .status-items>*{flex:none}.termal-table .status-row td{text-align:right}.termal-table .traffic-light{box-sizing:border-box;width:11px;height:11px}.termal-table .record-group .person-row td{padding-top:12px;padding-bottom:5px}.termal-table .record-group .status-row td{padding-top:5px;padding-bottom:12px}.filter-groups{border-bottom:1px solid #e5e7eb;gap:14px;padding:16px;display:grid}.filter-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;min-width:0;padding:12px 14px}.filter-group h2{color:#334155;margin:0 0 10px;font-size:14px;font-weight:700}.filter-group .filter-toolbar{border:0;gap:9px;padding:0}.filter-reset-row{justify-content:flex-end;display:flex}.termal-table .status-items .status-separator{color:#94a3b8;margin:0 2px;font-size:13px;font-weight:400}.termal-table .status-items .traffic-light{margin-left:0}@media (width<=800px){.termal-table{min-width:780px}}.termal-table thead,.termal-table thead tr,.termal-table thead th{color:#fff!important;background:#174a87!important}.termal-table thead th button{font-weight:800;color:#fff!important}.termal-table thead th button:hover{color:#dbeafe!important}.termal-table thead th{border-color:#123b6b!important}.termal-table{table-layout:auto;min-width:880px}.termal-table .name-column{white-space:normal;width:24%;min-width:170px}.termal-table td.termal-person-name{overflow-wrap:anywhere;word-break:normal;text-overflow:clip;text-align:center;vertical-align:middle;min-width:170px;max-width:360px;font-size:16px;font-weight:700;line-height:1.4;overflow:visible;white-space:normal!important}.termal-table .status-items{white-space:nowrap}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=720px){.termal-table{min-width:880px}.termal-table .name-column,.termal-table td.termal-person-name{min-width:165px}.termal-table td.termal-person-name{font-size:15px}.filter-panel{max-width:min(280px,82vw)}}.table-scroll{-webkit-overflow-scrolling:touch;height:auto;max-height:none;overflow:auto hidden}.table-card,.table-scroll{min-width:0;max-width:100%}.termal-table{table-layout:auto;width:100%;min-width:0}.termal-table th,.termal-table td{padding-left:clamp(5px,.9vw,16px);padding-right:clamp(5px,.9vw,16px)}.termal-table .name-column,.termal-table td.termal-person-name{overflow-wrap:anywhere;width:27%;min-width:0;max-width:none;white-space:normal!important}.termal-table th button{white-space:normal;padding-left:4px;padding-right:4px}.termal-table .status-items{gap:clamp(3px,.5vw,6px)}.termal-table .status-items .status-separator{margin:0}@media (width<=680px){.termal-table{min-width:690px}.termal-table .name-column,.termal-table td.termal-person-name{width:27%;min-width:140px}}.detail-clickable{cursor:pointer}.detail-clickable:hover tr{filter:brightness(.97)}.detail-overlay{z-index:1000;background:#101e318c;justify-content:center;align-items:center;padding:14px;display:flex;position:fixed;inset:0}.detail-dialog{color:#15243a;background:#f1f4f7;border-radius:11px;flex-direction:column;width:min(540px,100%);max-height:calc(100dvh - 28px);display:flex;overflow:hidden;box-shadow:0 18px 60px #0005}.detail-dialog-header{background:#e8eef4;justify-content:space-between;align-items:center;padding:10px 16px;font-size:14px;display:flex}.detail-dialog-header button{color:#344054;background:0 0;border:0;padding:0 3px;font-size:30px;line-height:1}.detail-dialog-content{padding:16px;overflow:auto}.detail-person-name{text-align:center;color:#dc2626;overflow-wrap:anywhere;margin:2px 0 11px;font-size:clamp(20px,4.5vw,27px);font-weight:800}.detail-headline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;font-size:17px;font-weight:700;display:flex}.detail-fieldset{border:1px solid #acb9ca;border-radius:5px;min-width:0;margin:0 0 12px;padding:10px 12px 13px}.detail-fieldset legend{color:#1549b5;padding:0 7px;font-size:19px;font-weight:800}.detail-field{grid-template-columns:minmax(110px,43%) minmax(0,1fr);align-items:start;gap:10px;padding:5px 0;display:grid}.detail-label{text-align:right;overflow-wrap:anywhere;font-size:14px;font-weight:650}.detail-value{overflow-wrap:anywhere;background:#fff;border:1px solid #c7d2df;border-radius:3px;min-width:0;padding:5px 7px;font-size:14px;font-weight:650}@media (width<=460px){.detail-dialog-content{padding:12px}.detail-fieldset{padding:8px}.detail-field{grid-template-columns:minmax(85px,40%) minmax(0,1fr);gap:7px}.detail-label,.detail-value{font-size:12px}}.detail-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0b19309e;padding:18px}.detail-dialog{background:#f5f8fd;border:1px solid #ffffffb0;border-radius:20px;width:min(530px,100%);box-shadow:0 26px 90px #05142c5c}.detail-dialog-header{color:#fff;letter-spacing:.2px;background:linear-gradient(110deg,#123b74,#20589c);padding:15px 20px;font-size:15px;font-weight:700}.detail-dialog-header button{color:#fff;border-radius:8px;width:32px;height:30px;font-size:26px}.detail-dialog-header button:hover{background:#ffffff26}.detail-dialog-content{padding:20px}.detail-person-name{color:#153e7c;letter-spacing:-.5px;margin:0 0 9px;font-size:clamp(22px,4.6vw,30px)}.detail-headline{color:#223e68;background:#e9f0fb;border-radius:10px;margin-bottom:17px;padding:11px 14px;font-size:14px}.detail-headline span:last-child{color:#c76215}.detail-section{background:#fff;border:1px solid #dce5f3;border-radius:14px;margin:0 0 14px;overflow:hidden;box-shadow:0 2px 10px #152f5608}.detail-section h3{color:#174785;background:#f4f7fd;border-bottom:1px solid #e4ebf6;align-items:center;gap:9px;margin:0;padding:12px 15px;font-size:16px;font-weight:800;display:flex}.detail-section-icon{color:#1b5ba9;background:#e5effe;border-radius:8px;place-items:center;width:26px;height:26px;font-size:17px;display:grid}.detail-section-body{padding:11px 15px 13px}.detail-field{border-bottom:1px solid #edf1f8;grid-template-columns:minmax(100px,35%) minmax(0,1fr);align-items:center;gap:12px;padding:7px 0;display:grid}.detail-field:last-child{border-bottom:0}.detail-label{text-align:left;color:#52647d;font-size:13px;font-weight:650}.detail-value{color:#20334d;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-size:14px;font-weight:700}.detail-status-body{padding:17px 14px}.detail-status-line{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;display:flex}.detail-status-line .payment{font-size:14px}.detail-status-line .traffic-light{width:14px;height:14px}.detail-status-divider{color:#b5c4d9}@media (width<=460px){.detail-overlay{padding:9px}.detail-dialog{border-radius:15px;max-height:calc(100dvh - 18px)}.detail-dialog-content{padding:13px}.detail-section-body{padding:10px 12px}.detail-field{grid-template-columns:minmax(85px,34%) minmax(0,1fr);gap:8px}.detail-label{font-size:12px}.detail-value{font-size:13px}.detail-headline{gap:5px}}.scope-strip{flex-wrap:wrap;align-items:center;gap:9px;margin-top:10px;display:flex}.scope-chip{color:#164a84;background:#e7f2ff;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:750}.scope-help{color:#64748b;font-size:12px}.role-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.role-manage{color:#174a87;background:#e8f1fd;border:1px solid #c6ddf9;border-radius:9px;padding:11px 15px;font-weight:700;text-decoration:none}.role-manage:hover{background:#d9eaff}@media (width<=560px){.role-actions{width:100%}.role-actions>a{text-align:center;flex:1}}.main-nav{background:#fff;border-bottom:1px solid #e7ebf1}.main-nav-inner{flex-wrap:wrap;align-items:center;gap:5px;max-width:1488px;min-height:54px;margin:0 auto;padding:0 24px;display:flex}.main-nav-link{white-space:normal;color:#53647d;border-radius:9px;align-items:center;min-height:45px;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.main-nav-link:hover,.main-nav-link:focus-visible{color:#1767dc;background:#f0f5fc}.main-nav-link.is-active{color:#155bb8;background:#e8f1fd}.main-nav-role{color:#7d8aa0;margin-left:auto;font-size:12px;font-weight:600}@media (width<=560px){.main-nav-inner{gap:4px;padding:7px 12px}.main-nav-link{min-height:39px;padding:8px 10px;font-size:12px}.main-nav-role{flex-basis:100%;margin-left:9px}}.filter-group{position:relative;overflow:visible}.filter-toolbar{overflow:visible}.multi-filter{position:relative}.multi-filter:has(.filter-panel){z-index:40}.filter-panel{z-index:50;min-width:190px;max-width:min(250px,85vw);max-height:330px;padding:11px}.filter-panel-title,.filter-options label{font-size:13px}.toolbar .filter-actions{flex-wrap:nowrap;justify-content:space-between;gap:6px;display:flex}.toolbar .filter-actions button{white-space:nowrap;opacity:1;border-radius:6px;flex:auto;justify-content:center;align-items:center;width:auto;min-width:0;min-height:30px;padding:5px 7px;font-size:11px;font-weight:650;line-height:1.2;display:inline-flex;color:#1e3a5f!important;background:#eef4fb!important;border:1px solid #becfe3!important}.toolbar .filter-actions button:hover{background:#dceafb!important}.filter-panel .filter-actions{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:6px;margin-top:10px;display:flex!important}.filter-panel .filter-actions>button{box-sizing:border-box;justify-content:center;align-items:center;color:#17365d!important;-webkit-text-fill-color:#17365d!important;opacity:1!important;letter-spacing:0!important;width:auto!important;min-width:0!important;height:28px!important;min-height:0!important;text-shadow:none!important;white-space:nowrap!important;background:#eaf1fb!important;border:1px solid #c6d3e3!important;border-radius:5px!important;flex:none!important;margin:0!important;padding:4px 8px!important;font-size:11px!important;font-weight:700!important;line-height:1!important;display:inline-flex!important}.filter-panel .filter-actions>button:hover,.filter-panel .filter-actions>button:focus-visible{color:#102e50!important;-webkit-text-fill-color:#102e50!important;background:#d8e7fa!important}.content{padding-top:20px}.heading-row{margin-bottom:12px}.heading-row h1{margin-bottom:3px;font-size:22px;line-height:1.2}.summary-grid{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.summary-card{min-width:0;box-shadow:none;border-radius:9px;flex:0 auto;align-items:center;gap:12px;padding:8px 13px;display:flex}.summary-card span{margin:0;font-size:12px;line-height:1.3;display:inline}.summary-card strong{white-space:nowrap;font-size:18px;font-weight:750;line-height:1.2;display:inline}@media (width<=560px){.content{padding-top:14px}.summary-grid{gap:6px}.summary-card{gap:7px;padding:7px 9px}.summary-card span{font-size:11px}.summary-card strong{font-size:16px}}.heading-row.compact-heading{align-items:center;gap:12px;margin-bottom:10px}.compact-heading-left{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.compact-heading-left h1{color:#1d2c43;margin:0;font-size:19px;line-height:1.2}.compact-heading .scope-chip{margin:0;padding:4px 9px;font-size:11px;line-height:1.2}.compact-heading .role-actions{flex:none;width:auto}.compact-heading .upload-button.compact-login{border-radius:7px;flex:none;width:auto;min-height:30px;padding:7px 11px;font-size:12px;line-height:1.1;text-decoration:none}@media (width<=560px){.heading-row.compact-heading{flex-flow:wrap;align-items:center}.compact-heading .role-actions{width:auto}.compact-heading .role-actions>a{flex:none}}
