.cath-page-head .subtitle{max-width:650px}.cath-privacy{background:#f4f7fb;border-color:#dfe7ef;color:#586777}.cath-upload{padding:22px 24px;margin-bottom:22px}.cath-upload-copy{display:flex;align-items:center;gap:14px;margin-bottom:18px}.cath-upload-icon{width:46px;height:46px;border-radius:12px;background:#fff0f2;color:var(--red);display:grid;place-items:center;font-size:26px;font-weight:700}.cath-upload-copy h2{margin-bottom:3px}.cath-upload form{display:flex;align-items:center;gap:12px}.cath-file-picker{border:1px dashed #c8d1dc;border-radius:8px;padding:10px 14px;display:flex;align-items:center;gap:12px;background:#fafbfd;color:#475569;font-size:14px;cursor:pointer}.cath-file-picker input{max-width:360px;font-size:13px}.cath-help{color:#758191;font-size:12px;margin-top:12px}.cath-progress,.cath-error{padding:14px;margin-top:14px;border-radius:8px;background:#f4f7fb;color:#526277}.cath-error{background:#fff0f2;color:#a82032}.cath-preview{margin-top:20px;border:1px solid #dbe5ef;border-radius:10px;padding:18px;background:#fbfdff}.cath-preview.is-duplicate{background:#fffbf2;border-color:#f0dfb8}.cath-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cath-preview-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.cath-preview-stats>div{background:white;border:1px solid var(--line);border-radius:8px;padding:12px}.cath-preview-stats small{display:block;color:var(--muted);font-size:12px}.cath-preview-stats b{display:block;margin-top:5px;font-size:20px}.cath-preview-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.cath-preview-actions .btn:disabled{opacity:.5;cursor:not-allowed}.cath-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}.cath-panel{min-width:0}.cath-bar-row{display:flex;align-items:center;gap:12px;margin:13px 0}.cath-bar-row>span{width:140px;flex:none;font-size:13px;white-space:normal}.cath-bar-row .bar-track{height:10px}.cath-bar-row b{width:44px;text-align:left;direction:ltr;font-size:13px}.cath-empty{padding:28px 12px}.cath-filters{margin-bottom:18px}.cath-filters .field{min-width:220px}.cath-filters .filter-count{margin-right:auto;padding-bottom:9px}.cath-month-metric{font-size:22px!important}.cath-metrics .metric{min-width:0}@media(max-width:800px){.cath-page-head{display:flex;flex-direction:column}.cath-upload{padding:17px}.cath-upload form{align-items:stretch;flex-direction:column}.cath-file-picker{flex-direction:column;align-items:flex-start}.cath-file-picker input{max-width:100%;width:100%}.cath-preview-stats{grid-template-columns:repeat(2,1fr)}.cath-grid{grid-template-columns:1fr}.cath-bar-row>span{width:105px}.cath-filters .field{width:100%}.cath-filters .filter-count{margin:0}}

.cath-wide-table{max-width:100%;overflow-x:auto}.cath-wide-table table{width:max-content;min-width:100%}.cath-wide-table th,.cath-wide-table td{white-space:nowrap;text-align:center}.cath-wide-table thead th{background:#f4f7fb}

.cath-date-link{border:0;background:transparent;color:var(--red);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 8px}.cath-date-link:hover{color:#851829}
.cath-pagination{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:14px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.cath-pagination label{display:flex;align-items:center;gap:8px}.cath-pagination select{min-width:78px;padding:6px 10px}.cath-page-buttons{display:flex;align-items:center;gap:10px;margin-right:auto}.cath-page-buttons .btn:disabled{opacity:.45;cursor:not-allowed}
.cath-modal-backdrop{position:fixed;inset:0;z-index:1200;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;padding:24px}.cath-modal{width:min(1200px,96vw);max-height:90vh;background:#fff;border-radius:14px;box-shadow:0 24px 70px rgba(15,23,42,.3);display:flex;flex-direction:column;overflow:hidden}.cath-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line)}.cath-modal-head h2{margin:0 0 5px;font-size:19px}.cath-modal-head p{margin:0;color:var(--muted)}.cath-modal-body{overflow:auto;padding:16px 20px}.cath-modal-body .cath-wide-table{max-height:65vh}
@media(max-width:700px){.cath-pagination{align-items:flex-start;flex-direction:column;gap:10px}.cath-page-buttons{margin-right:0}.cath-modal-backdrop{padding:8px}.cath-modal{width:100%;max-height:96vh}.cath-modal-head{padding:14px}.cath-modal-body{padding:10px}}

.cath-column-picker{position:relative;z-index:5}.cath-column-picker>summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:#fff;color:#475569;font-size:13px;font-weight:600}.cath-column-picker>summary::-webkit-details-marker{display:none}.cath-column-picker>summary:after{content:"⌄";margin-right:8px;color:var(--red)}.cath-column-menu{position:absolute;top:calc(100% + 6px);left:0;width:min(360px,85vw);max-height:65vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(15,23,42,.16);padding:12px}.cath-column-menu-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.cath-column-menu fieldset{border:0;border-bottom:1px solid #eef1f5;padding:10px 0;margin:0}.cath-column-menu legend{font-size:12px;font-weight:700;color:var(--red);padding:0 0 5px}.cath-column-menu fieldset label{display:flex;align-items:center;gap:8px;padding:4px 2px;font-size:13px;cursor:pointer}.cath-column-menu input{accent-color:var(--red)}.cath-wide-table td{min-width:58px}

.cath-column-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.cath-column-menu-head .btn{white-space:nowrap}

.cath-entry-panel{margin:18px 0;padding:18px 20px}.cath-entry-bar{display:flex;align-items:center;justify-content:space-between;gap:14px}.cath-entry-bar h2{margin:0 0 4px;font-size:17px}.cath-entry-bar p{margin:0;color:var(--muted);font-size:13px}.cath-entry-form{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.cath-entry-form[hidden]{display:none}.cath-entry-fields{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:12px}.cath-entry-fields>label,.cath-extra>label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#475569}.cath-entry-fields .control,.cath-extra .control{width:100%;min-width:0}.cath-extra{margin-top:14px;border:1px solid var(--line);border-radius:8px;padding:10px 12px}.cath-extra summary{cursor:pointer;color:var(--red);font-size:13px;font-weight:700}.cath-extra>label{margin-top:12px}.cath-tech-list{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;margin-top:12px;font-size:13px}.cath-tech-list>span{font-weight:700;color:#475569}.cath-tech-list label{display:flex;align-items:center;gap:5px}.cath-entry-actions{display:flex;align-items:center;gap:9px;margin-top:14px}.cath-entry-actions span{color:#a82032;font-size:13px}@media(max-width:700px){.cath-entry-panel{padding:15px}.cath-entry-bar{align-items:flex-start;flex-direction:column}.cath-entry-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.cath-entry-actions{flex-wrap:wrap}}@media(max-width:420px){.cath-entry-fields{grid-template-columns:1fr}}

.cath-entry-date{display:flex;align-items:end;gap:14px;margin-bottom:14px}.cath-entry-date label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#475569;min-width:min(300px,100%)}.cath-entry-date small{color:var(--muted);padding-bottom:10px}.cath-entry-record{border:1px solid var(--line);border-radius:10px;padding:14px;margin:12px 0;background:#fbfcfe}.cath-entry-record-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:13px;color:#475569}.cath-remove-record{font-size:12px;padding:5px 9px;color:#9f2030}.cath-add-record{margin-top:2px;border:1px dashed #c7d0db;background:#fff;color:var(--red)}.cath-entry-actions{border-top:1px solid var(--line);padding-top:14px}.cath-entry-fields{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){.cath-entry-date{align-items:stretch;flex-direction:column;gap:6px}.cath-entry-date small{padding:0}.cath-entry-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.cath-entry-fields{grid-template-columns:1fr}}

.cath-extra-title{display:block;color:var(--red);font-size:13px;margin-bottom:8px}.cath-extra{background:#fff}

.cath-main-tabs{margin:14px 0 18px}.cath-main-tabs button{min-width:120px}.ops-filters{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.ops-filters .field{min-width:0}.ops-search{grid-column:span 2}.ops-charts{margin-bottom:4px}.ops-picker .cath-column-menu{z-index:20}@media(max-width:950px){.ops-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.ops-filters{grid-template-columns:1fr}.ops-search{grid-column:auto}}
.ops-pivot-table thead tr:first-child th:not(:first-child){background:#fbecee;color:#7f1d2d;border-bottom:1px solid #e7b9c1}.ops-pivot-table thead tr:nth-child(2) th{background:#f7f9fc;color:#475569;font-size:12px}.ops-pivot-table th[rowspan="2"]{vertical-align:middle}
