.toast-stack{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:1100;max-width:min(420px,calc(100vw - 48px))}.toast{background-color:var(--brand-ink);color:var(--brand-paper);border:2px solid var(--brand-ink);padding:12px 16px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:4px 4px #00000040}.toast-success{background-color:var(--brand-success);border-color:var(--brand-success)}.toast-error{background-color:var(--brand-danger);border-color:var(--brand-danger)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000073;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.modal{background-color:var(--brand-paper);border:2px solid var(--brand-ink);width:100%;max-width:520px;max-height:calc(100vh - 40px);display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:2px solid var(--brand-ink)}.modal-header h3{font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.modal-close{background:none;border:none;color:var(--brand-ink);font-size:22px;line-height:1;cursor:pointer;padding:0 4px}.modal-close:hover{background:none;opacity:.6}.modal-body{padding:16px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid #ddd}.btn{background-color:var(--brand-paper);color:var(--brand-ink);border:2px solid var(--brand-ink);padding:10px 18px;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:13px;cursor:pointer}.btn:hover:not(:disabled){background-color:#f5f5f5}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--brand-ink);color:var(--brand-paper)}.btn-primary:hover:not(:disabled){background-color:#333}.btn-danger{background-color:var(--brand-danger);border-color:var(--brand-danger);color:var(--brand-paper)}.btn-danger:hover:not(:disabled){opacity:.9}.data-table-wrap{overflow-x:auto}.clickable-row{cursor:pointer}.clickable-row:hover{background-color:#f7f2ea}.empty-cell{text-align:center;color:var(--brand-muted);padding:28px 16px}.dt-chevron-col{width:22px}.dt-chevron{color:var(--brand-muted);font-size:17px;font-weight:700;padding-right:0}.clickable-row:hover .dt-chevron{color:var(--brand-accent)}@media (max-width: 640px){.dt-mobile-hide{display:none}th,td{padding:8px 10px;font-size:12px}.modal-backdrop{padding:8px;align-items:flex-start}.modal{max-width:100%;max-height:calc(100vh - 16px)}.modal-header{padding:8px 10px}.modal-body{padding:10px}.modal-footer{padding:8px 10px}.card{padding:10px;margin-bottom:12px}.form-group{margin-bottom:12px}.form-group label{margin-bottom:4px}.field-list{grid-template-columns:1fr;gap:2px 0}.field-list dt{margin-top:8px}}.back-link{display:inline-block;margin-bottom:14px;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--brand-ink);text-decoration:none}.back-link:hover{color:var(--brand-accent)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}@media (max-width: 900px){.detail-grid{grid-template-columns:1fr}}.card{background-color:var(--brand-paper);border:2px solid var(--brand-ink);padding:16px;margin-bottom:16px}.card h3{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-header h3{margin-bottom:0}.card-edit{background:none;border:2px solid var(--brand-ink);color:var(--brand-ink);font-size:12px;font-weight:700;padding:4px 12px;cursor:pointer}.card-edit:hover{background-color:#0000000f}.field-list dd input:not([type=checkbox]),.field-list dd select,.field-list dd textarea{width:100%;padding:8px 10px;border:2px solid var(--brand-ink);font-size:14px;font-family:inherit;background-color:#fff}.field-list{display:grid;grid-template-columns:max-content 1fr;gap:8px 20px;margin:0}.field-list dt{font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:1px;color:var(--brand-muted);align-self:center}.field-list dd{margin:0}.form-actions{display:flex;gap:10px}.danger-zone{margin-top:18px;padding-top:16px;border-top:1px solid #ddd}.content-view-section{margin-bottom:14px}.content-preview-img{display:block;max-width:100%;max-height:220px;margin-top:6px;border:1px solid #ddd}.note-list{list-style:none;margin:14px 0 0;padding:0}.note-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;border-top:1px solid #eee}.note-date{font-size:11px;color:var(--brand-muted);text-transform:uppercase;letter-spacing:.5px}:root{--brand-bg: #d4c9ba;--brand-ink: #000;--brand-paper: #fff;--brand-accent: #c17213;--brand-danger: #b3261e;--brand-success: #2e6f40;--brand-muted: #6b6257}.shell{display:flex;min-height:100vh;align-items:stretch}.sidebar{width:230px;flex-shrink:0;display:flex;flex-direction:column;border-right:2px solid var(--brand-ink);padding:28px 0 20px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-brand{padding:0 20px 20px;border-bottom:2px solid var(--brand-ink);margin-bottom:14px}.brand-row{display:flex;align-items:center;gap:10px}.brand-logo{width:40px;height:40px;flex-shrink:0}.sidebar-brand h1{font-size:17px;font-weight:900;letter-spacing:.5px;margin-bottom:3px;line-height:1.15}.brand-short{display:none}.sidebar-brand .portal-name{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--brand-muted)}.burger{display:none;background:none;border:2px solid var(--brand-ink);color:var(--brand-ink);font-size:18px;line-height:1;padding:6px 12px;cursor:pointer}.burger:hover{background:none}.sidebar-nav{display:flex;flex-direction:column;flex:1}.nav-section{margin-bottom:4px}.sidebar-link{display:block;padding:10px 20px 6px;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:1px;color:var(--brand-ink);text-decoration:none;border-left:4px solid transparent}.sidebar-link:hover{background-color:#0000000f}.sidebar-link.active,.sidebar-link.section-active{border-left-color:var(--brand-accent)}.sidebar-link.active{background-color:var(--brand-paper)}.sidebar-sublink{display:block;padding:6px 20px 6px 36px;font-size:13px;color:var(--brand-ink);text-decoration:none;border-left:4px solid transparent}.sidebar-sublink:hover{background-color:#0000000f}.sidebar-sublink.active{border-left-color:var(--brand-accent);background-color:var(--brand-paper);font-weight:700}.sidebar-footer{padding:16px 20px 0}.content-area{flex:1;min-width:0;padding:32px 28px}.page-main{min-width:0;overflow-x:auto}@media (max-width: 860px){.shell{flex-direction:column}.sidebar{width:100%;height:auto;position:static;border-right:none;border-bottom:2px solid var(--brand-ink);padding:10px 0 0;overflow-y:visible}.sidebar-brand{display:flex;justify-content:space-between;align-items:center;border-bottom:none;margin-bottom:0;padding:0 14px 10px}.sidebar-brand h1{font-size:16px;margin-bottom:0}.brand-logo{width:28px;height:28px}.brand-full{display:none}.brand-short{display:inline}.sidebar-brand .portal-name{display:none}.burger{display:block}.sidebar-nav{display:none}.sidebar.menu-open .sidebar-nav{display:flex;flex-direction:column;border-top:2px solid var(--brand-ink);padding-top:6px}.sidebar-link{padding:10px 16px 4px}.sidebar-sublink{padding:8px 16px 8px 32px}.sidebar-footer{display:none}.sidebar.menu-open .sidebar-footer{display:block;padding:10px 16px 12px}.content-area{padding:14px 10px}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#d4c9ba;color:#000;min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:40px 20px}.header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px}h1{font-size:32px;font-weight:900;letter-spacing:1px;margin-bottom:5px}.subtitle{font-size:14px;font-weight:700;letter-spacing:2px;margin-bottom:40px}.header .subtitle{margin-bottom:0}.tabs-container{margin-bottom:30px}.tabs{display:flex;gap:0;border-bottom:2px solid #000}.tabs-row-1{margin-bottom:0}.tabs-row-2{margin-top:-2px}.tab{background-color:transparent;color:#000;border:2px solid #000;border-bottom:none;padding:12px 24px;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:14px;cursor:pointer;margin-right:-2px;position:relative;bottom:-2px}.tab:hover{background-color:#f5f5f5}.tab.active{background-color:#d4c9ba;border-bottom:2px solid #D4C9BA}h2{font-size:24px;font-weight:700;margin-bottom:20px}table{width:100%;border-collapse:collapse;background-color:#fff;border:2px solid #000}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid #ddd}th{background-color:#000;color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:12px}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{background-color:#333}tr:hover{background-color:#f5f5f5}.error{color:#8b0000;font-weight:600;margin-bottom:15px}.login-box{max-width:400px;background-color:#fff;border:2px solid #000;padding:30px}.login-box h2{margin-bottom:25px}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:12px;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:2px solid #000;font-size:15px;font-family:inherit;background-color:#fff}.form-group input:focus{outline:none;border-color:#666}button{background-color:#000;color:#fff;border:none;padding:12px 24px;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:14px;cursor:pointer}button:hover{background-color:#333}button:disabled{background-color:#999;cursor:not-allowed}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2{margin-bottom:0}.help-text{color:#666;font-size:14px;margin-bottom:20px;line-height:1.5}.create-form{background-color:#fff;border:2px solid #000;padding:25px;margin-bottom:20px}.form-row{display:flex;gap:20px}.form-row .form-group{flex:1}.form-group select,.form-group textarea{width:100%;padding:12px;border:2px solid #000;font-size:16px;font-family:inherit}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#666}.form-group textarea{resize:vertical}.actions{white-space:nowrap}.actions button{padding:8px 16px;font-size:12px;margin-right:8px}.actions button:last-child{margin-right:0}button.danger{background-color:#8b0000}button.danger:hover{background-color:#a00}button.danger:disabled{background-color:#c99}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background-color:#fff;border:2px solid #000;padding:30px;max-width:500px;width:90%}.modal h3{font-size:20px;margin-bottom:15px}.modal p{margin-bottom:15px;line-height:1.5}.modal .warning{color:#8b0000;font-weight:600}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}td input[type=date],td input[type=number],td select,td textarea{width:100%;padding:8px;border:2px solid #000;font-size:14px;font-family:inherit}td textarea{resize:vertical;min-height:60px}td input[type=date]:focus,td input[type=number]:focus,td select:focus,td textarea:focus{outline:none;border-color:#666}.header-actions{display:flex;gap:10px}.filter-row{display:flex;align-items:center;gap:15px;margin-bottom:20px;padding:15px;background-color:#f5f5f5;border:2px solid #000}.filter-row label{font-weight:700;white-space:nowrap}.multi-select{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.checkbox-label{display:flex;align-items:center;gap:5px;font-weight:400;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.clear-filter{padding:4px 10px;font-size:12px;background-color:#fff;border:2px solid #000;color:#000;cursor:pointer}.clear-filter:hover{background-color:#ddd;color:#000}.multi-select-container{position:relative;display:inline-block}.multi-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:180px;padding:8px 12px;background-color:#fff;border:2px solid #000;font-size:14px;font-family:inherit;cursor:pointer;text-transform:none;font-weight:400;color:#000}.multi-select-trigger:hover{background-color:#f5f5f5;color:#000}.multi-select-arrow{font-size:10px}.multi-select-menu{position:absolute;top:100%;left:0;min-width:100%;max-height:250px;overflow-y:auto;background-color:#fff;border:2px solid #000;border-top:none;z-index:100}.multi-select-option{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;font-weight:400}.multi-select-option:hover{background-color:#f5f5f5}.multi-select-option input[type=checkbox]{width:16px;height:16px;cursor:pointer}.multi-select-empty{padding:12px;color:#666;font-style:italic}.multi-select-search{position:sticky;top:0;padding:8px;background-color:#fff;border-bottom:1px solid #ddd}.multi-select-search input{width:100%;padding:6px 8px;border:1px solid #ccc;font-size:14px;box-sizing:border-box}.totals-banner{display:flex;flex-wrap:wrap;gap:24px;padding:12px 16px;margin:12px 0;background-color:#f5f5f5;border:2px solid #000}.line-items{margin-bottom:16px;padding:12px;background-color:#fafafa;border:1px dashed #999}.line-items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.line-items-list{display:flex;flex-direction:column;gap:8px}.line-item-row{display:flex;align-items:center;gap:8px}.line-item-total{min-width:80px;font-weight:600}.hint{margin:8px 0 0;color:#666;font-size:13px;font-style:italic}.hint-inline{font-weight:400;color:#666;font-size:12px}.content-section-form{background-color:#f5f5f5;border:1px dashed #999;padding:16px;margin:8px 0}.content-section-row{margin-bottom:4px}.csv-errors{background-color:#fff;border:2px solid #8B0000;padding:20px;margin-bottom:20px}.csv-errors h4{color:#8b0000;margin-bottom:10px}.csv-errors ul{margin:0 0 15px 20px;color:#8b0000}.csv-errors li{margin-bottom:5px}.csv-success{background-color:#fff;border:2px solid #2e7d32;padding:20px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.csv-success p{color:#2e7d32;font-weight:600;margin:0}.notification-form{background-color:#fff;border:2px solid #000;padding:25px}.notification-form .form-section{margin-bottom:30px}.notification-form .form-section:last-of-type{margin-bottom:20px}.notification-form h3{font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #ddd}.select-actions{display:flex;align-items:center;gap:15px;margin-bottom:15px}.user-count{color:#666;font-size:14px}.user-list{max-height:300px;overflow-y:auto;border:2px solid #ddd;padding:10px}.user-item{display:flex;align-items:center;gap:10px;padding:8px;cursor:pointer}.user-item:hover{background-color:#f5f5f5}.user-item input[type=checkbox]{width:16px;height:16px;cursor:pointer}.user-email{flex:1;font-weight:500}.user-type{color:#666;font-size:12px}.no-token-badge{background-color:#ffebee;color:#8b0000;font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.send-button{width:100%;padding:16px;font-size:16px;margin-top:20px}.send-result{background-color:#e8f5e9;border:2px solid #2e7d32;padding:20px;margin-top:20px}.send-result h4{color:#2e7d32;margin-bottom:10px}.send-result p{margin-bottom:15px}.send-result-warning{background-color:#fff3e0;border-color:#e65100}.send-result-warning h4{color:#e65100}.notification-details{background-color:#fff;border:2px solid #000;padding:25px}.detail-card{background-color:#f5f5f5;padding:20px;margin-bottom:25px}.detail-row{display:flex;gap:15px;margin-bottom:10px}.detail-row:last-child{margin-bottom:0}.detail-label{font-weight:700;min-width:80px}.detail-value{flex:1}.filter-form{margin-bottom:20px}.filter-input-row{display:flex;gap:10px;align-items:center}.filter-input-row input{flex:1;max-width:300px;padding:10px;border:2px solid #000;font-size:14px}.status-badge{display:inline-block;padding:4px 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-ok{background-color:#e8f5e9;color:#2e7d32}.status-error{background-color:#ffebee;color:#8b0000}.success-count{color:#2e7d32;font-weight:600}.error-count{color:#8b0000;font-weight:600}@media (max-width: 640px){body{font-size:14px}h1{font-size:22px}h2{font-size:19px}button{padding:8px 14px;font-size:12px}.section-header{flex-wrap:wrap;gap:8px;margin-bottom:16px}.header-actions{flex-wrap:wrap;gap:6px}.form-group input,.form-group select,.form-group textarea{font-size:14px}.filter-row{flex-direction:column;align-items:stretch;gap:6px}.filter-row .multi-select-container,.filter-row .multi-select-trigger{width:100%}.filter-row label{margin-top:6px}.form-group input,.form-group select,.form-group textarea{padding:8px 10px}}
