*{margin:0;padding:0;box-sizing:border-box}body{font-family:Roboto,Helvetica,Arial,sans-serif}html{height:100%}.cos-flex{display:flex}.cos-flex-row{display:flex;flex-direction:row}.cos-flex-1{flex:1}.cos-debug-info{position:fixed;bottom:0;left:0;background:#000000b3;color:#fff;font-size:10px;padding:2px 6px;z-index:10000;border-top-right-radius:4px;opacity:.6;pointer-events:none;-webkit-user-select:none;user-select:none}.cos-main-container{background:#fff}.cos-avatar-name{font-size:13px;color:#2d3a4b;font-weight:500}.cos-header-bar{display:flex;align-items:center;justify-content:space-between;padding:5px 24px;background:#fff;border-bottom:1px solid #e5e5e5;margin-bottom:10px;position:fixed;top:0;left:0;right:0;z-index:1000;box-shadow:0 2px 5px #00000008;height:45px}.cos-header-left{font-weight:600;font-size:20px;color:#2d3a4b;letter-spacing:1px}.cos-header-right{display:flex;align-items:center;gap:3px}.cos-left-nav{width:220px;background:#f7f7f7;color:#555;border-right:1px solid #dbdbdb;padding:10px 0 60px;min-height:100vh;box-shadow:2px 0 8px #0000000a;position:fixed;top:45px;left:0;bottom:0;z-index:999;overflow-y:auto;transition:width .2s}.cos-nav-header{padding:8px 15px;color:#969696;font-size:12px;text-transform:uppercase;font-weight:500;letter-spacing:.5px;margin-bottom:4px}@media (max-width: 1500px){.cos-nav-header{display:none}}.cos-nav-divider{border-top:1px solid #dbdbdb;margin:8px 0}.cos-nav-list{list-style:none;padding:0;margin:0}.cos-nav-link{text-decoration:none;color:inherit;display:block;font-size:14px}.cos-nav-item{display:flex;align-items:center;padding:2px 8px;transition:background .2s;border-radius:4px;margin:4px 8px;height:32px}.cos-nav-item.active{background:#e0e7ef;font-weight:700}.cos-nav-item:hover,.cos-nav-link.active .nav-item{background:#dcdcdc}.cos-nav-icon{margin-right:7px}.cos-nav-text{font-size:15px;padding-top:2px}.main-content{flex:1;flex-direction:column}.sub-header-text{font-size:10px;color:#666}.cos-content{flex:1;padding:0 20px 75px;margin-left:215px;margin-top:56px;height:calc(100vh - 56px);overflow-y:auto;transition:margin-left .2s}@media (max-width: 1500px){.cos-content{margin-left:56px}}.cos-page-header{display:flex;align-items:center;gap:8px;font-size:1.4rem;font-weight:500;margin-bottom:10px;color:#2d3a4b}.cos-page-content{background:#fff}.cos-page-footer{width:100%;background:#f5f5f5;color:#888;text-align:right;padding:12px 15px 10px 0;font-size:11px;border-top:1px solid #e5e5e5;margin-top:auto;position:fixed;left:0;bottom:0;z-index:100}h1{font-size:3.2em;line-height:1.1}.td-button{font-weight:500}.td-button button{padding:2px 6px;font-size:12px;border-radius:4px;border:1px solid #cdcdcd;background-color:#f7f7f7;cursor:pointer}.td-right{text-align:right}.td-center{text-align:center}.cos-top-button-bar{padding:10px}.cos-login-button{width:200px}.cos-form-row{display:flex;align-items:center;margin-bottom:10px}.cos-form-row label{min-width:160px;width:170px;margin-right:12px;text-align:right;font-size:12px}.cos-form-row input{padding:2px;font-size:12px}.cos-form-container{display:flex}.cos-form-box{margin-right:20px;padding:10px;border:1px solid #cdcdcd;border-radius:8px}.cos-field-service-code{width:60px}.cos-invoice-row{background-color:#efefef}.cos-tier-box{margin:10px 0 30px}.cos-readonly-row{display:flex;align-items:center;margin-bottom:8px}.cos-readonly-row .cos-label{min-width:180px;text-align:right;margin-right:12px;font-size:12px;color:#333}.cos-readonly-row .cos-value{font-size:12px;color:#222}.cos-invoice-actions{text-align:right}.cos-col-invoice-id{width:60px}.cos-tab-contents{padding:15px 0}.cos-login-page{display:flex;flex-direction:row;gap:10px}.cos-permission-group-title{font-size:16px;font-weight:500;color:#2d3a4b;margin-bottom:10px}.cos-permission-group-desc{font-size:12px;color:#666;margin-bottom:20px}.cos-checkbox-list{display:flex;margin-bottom:15px;align-items:flex-start;margin-left:10px}.cos-checkbox-list-item{display:flex;align-items:center;margin-right:5px}.cos-checkbox-list-label{font-size:13px;color:#333}.cos-list-text{font-size:13px;font-weight:500;color:#333}.cos-list-helptext{font-size:10px;color:#666}.cos-button-edit{min-width:32px!important;padding:3px 6px}.details-container{container-type:inline-size}.details-grid{display:grid;grid-template-columns:160px 1fr;gap:8px 16px;margin-bottom:24px;align-items:center}@container (max-width: 300px){.details-grid{grid-template-columns:1fr;gap:4px 0}}.details-label{font-weight:600;color:#444;text-align:right;font-size:13px}@container (max-width: 300px){.details-label{text-align:left;padding-bottom:2px}}.details-value{color:#222;font-size:13px;word-break:break-word}@container (max-width: 300px){.details-value{padding-bottom:12px}}@media (max-width: 1500px){.cos-left-nav{width:70px}.nav-label{opacity:0;width:0;pointer-events:none}}.facility-invoice-report{padding:20px;font-family:Courier New,monospace;background-color:#fff;max-width:100%;margin:0 auto}.report-header{margin-bottom:30px;border-bottom:2px solid #333;padding-bottom:15px}.report-header h2{margin:0 0 15px;font-size:24px;font-weight:700;text-align:center}.report-info{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:14px}.report-info>div{flex:1;min-width:200px}.loading-container,.error-container,.no-data-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-container{color:#e74c3c}.no-invoices{text-align:center;padding:40px;color:#666;font-style:italic}.invoice-section{margin-bottom:40px;border:1px solid #333;background-color:#fafafa}.invoice-header{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background-color:#333;color:#fff;font-weight:700;border-bottom:2px solid #333}.invoice-number-section{display:flex;align-items:center;gap:10px}.invoice-counter{font-weight:700;font-size:16px}.client-name{font-size:16px}.invoice-number{font-size:14px}.invoice-content{background-color:#fff}.category-section{border-bottom:1px solid #ddd}.category-header{padding:8px 15px;background-color:#f0f0f0;border-bottom:1px solid #ccc;font-weight:700;font-size:14px}.category-name{text-transform:uppercase;letter-spacing:.5px}.line-item-row{display:grid;grid-template-columns:1fr auto auto;gap:15px;padding:6px 25px 6px 40px;border-bottom:1px dotted #ccc;align-items:center;font-size:13px}.line-item-description{text-align:left;font-family:inherit}.line-item-quantity{text-align:center;width:60px;font-weight:700}.line-item-amount{text-align:right;width:100px;font-weight:700;font-family:Courier New,monospace}.category-total-row{display:grid;grid-template-columns:1fr auto;gap:15px;padding:8px 25px;background-color:#f8f8f8;border-top:1px solid #ccc;font-weight:700;font-size:13px}.category-total-label{text-align:right;padding-right:75px}.category-total-amount{text-align:right;width:100px;font-family:Courier New,monospace}.invoice-total-row{display:grid;grid-template-columns:1fr auto;gap:15px;padding:12px 25px;background-color:#333;color:#fff;font-weight:700;font-size:14px}.invoice-total-label{text-align:right;padding-right:75px}.invoice-total-amount{text-align:right;width:100px;font-family:Courier New,monospace}.report-total-section{margin-top:30px;border:2px solid #333;background-color:#333}.report-total-row{display:grid;grid-template-columns:1fr auto;gap:15px;padding:15px 25px;color:#fff;font-weight:700;font-size:16px}.report-total-label{text-align:right;padding-right:75px;letter-spacing:1px;text-transform:uppercase}.report-total-amount{text-align:right;width:100px;font-family:Courier New,monospace;font-size:18px;border-left:2px solid white;padding-left:10px}@media (max-width: 768px){.facility-invoice-report{padding:10px;font-size:12px}.invoice-header{flex-direction:column;gap:5px;text-align:center}.line-item-row{grid-template-columns:1fr auto;gap:10px;padding:8px 15px}.line-item-quantity{display:none}.category-total-row,.invoice-total-row,.report-total-row{grid-template-columns:1fr auto;gap:10px;padding:10px 15px}.category-total-label,.invoice-total-label,.report-total-label{padding-right:0}.report-info{flex-direction:column;gap:8px}}@media print{.facility-invoice-report{font-size:11px;padding:0}.loading-container,.error-container{display:none}.invoice-section{page-break-inside:avoid;margin-bottom:20px}.report-total-section{page-break-inside:avoid}}
