:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;font-weight:400;color:#1a202c;background-color:#f7fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}h1,h2,h3,h4,h5,h6,p{margin:0}html.dark{background-color:#111827;color:#e2e8f0}html.dark .layout,html.dark .main-content{background:#111827}html.dark .sidebar{background:#0d1520}html.dark .sidebar-header{border-bottom-color:#ffffff14}html.dark .sidebar-footer{border-top-color:#ffffff14}html.dark .nav-item{color:#ffffff8c}html.dark .nav-item:hover{background:#ffffff14;color:#e2e8f0}html.dark .nav-item.active{background:#ffffff1f;color:#fff}html.dark .sidebar-logo{background:#ffffffe6}html.dark .imprests-panel,html.dark .transactions-panel,html.dark .login-card,html.dark .project-detail-panel,html.dark .proposal-details-panel,html.dark .users-container,html.dark .transactions-container{background:#1e2533;border-color:#374151}html.dark h1,html.dark h2,html.dark h3,html.dark h4{color:#e2e8f0}html.dark .page-header p,html.dark .dashboard-header p{color:#9ca3af}html.dark .error-banner{background:#3b1a1a;color:#fc8181;border-color:#742a2a}html.dark .summary-card.credit{background:#1a3328;border-color:#276749}html.dark .summary-card.debit{background:#3b1a1a;border-color:#742a2a}html.dark .summary-card.balance{background:#1a2a3a;border-color:#2b6cb0}html.dark .summary-card h3,html.dark .summary-card .label{color:#9ca3af}html.dark .summary-card .amount{color:#e2e8f0}html.dark .imprest-item{background:#1e2533;border-color:#374151}html.dark .imprest-item:hover{background:#263044}html.dark .imprest-item.selected{background:#1a2f4a;border-color:#3182ce}html.dark .imprest-title{color:#90cdf4}html.dark .imprest-date,html.dark .imprest-assignee{color:#6b7280}html.dark .amount-row .label,html.dark .progress-label{color:#9ca3af}html.dark .source-badge{background:#374151;color:#d1d5db}html.dark .source-badge.company-imprest{background:#1a3328;color:#68d391}html.dark .source-badge.directors-advance{background:#2d1f47;color:#b794f4}html.dark .source-badge.loan{background:#3b2a0a;color:#f6ad55}html.dark .project-badge{background:#1a2a3a;color:#63b3ed;border-color:#2b6cb0}html.dark .filter-input{background:#252f3f;border-color:#4b5563;color:#e2e8f0}html.dark .filter-input:focus{border-color:#63b3ed;background:#1e2533}html.dark .filter-input::placeholder{color:#6b7280}html.dark .filter-date-group label{color:#6b7280}html.dark .clear-filters-btn{color:#63b3ed}html.dark .transactions-table th{background:#252f3f;color:#9ca3af;border-bottom-color:#374151}html.dark .transactions-table td{color:#d1d5db;border-bottom-color:#2d3748}html.dark .transactions-table tr:hover td{background:#263044}html.dark .transactions-table tr.selected td{background:#1a2f4a}html.dark .transactions-table tfoot td{color:#e2e8f0;border-top-color:#374151}html.dark .transactions-table .total-label{color:#9ca3af}html.dark .imprest-summary{background:#1e2533;border-color:#374151}html.dark .imprest-summary .label{color:#9ca3af}html.dark .imprest-summary .value{color:#e2e8f0}html.dark .proposals-list-panel h2{color:#9ca3af}html.dark .proposal-card{background:#1e2533;border-color:#374151}html.dark .proposal-card:hover{border-color:#3182ce}html.dark .proposal-card.selected{background:#1a2f4a;border-color:#3182ce}html.dark .proposal-card h3{color:#90cdf4}html.dark .proposal-meta .amount{color:#68d391}html.dark .proposal-meta .date{color:#6b7280}html.dark .details-header h2{color:#e2e8f0}html.dark .details-meta .label{color:#9ca3af}html.dark .details-meta .value{color:#e2e8f0}html.dark .items-section h3{color:#9ca3af;border-bottom-color:#374151}html.dark .items-table th{background:#252f3f;color:#9ca3af}html.dark .items-table td{color:#d1d5db;border-bottom-color:#2d3748}html.dark .no-selection{color:#4b5563}html.dark .project-card{background:#1e2533;border-color:#374151}html.dark .project-card:hover{border-color:#3182ce}html.dark .project-card.selected{background:#1a2f4a;border-color:#3182ce}html.dark .project-card-header h3{color:#90cdf4}html.dark .project-description{color:#9ca3af}html.dark .stat-label{color:#6b7280}html.dark .stat-value{color:#d1d5db}html.dark .project-date{color:#4b5563}html.dark .detail-header h2{color:#e2e8f0}html.dark .detail-description{color:#9ca3af}html.dark .detail-summary .summary-card.credit{background:#1a3328;border-color:#276749}html.dark .detail-summary .summary-card.debit{background:#3b1a1a;border-color:#742a2a}html.dark .detail-summary .summary-card.balance{background:#1a2a3a;border-color:#2b6cb0}html.dark .detail-summary .label{color:#9ca3af}html.dark .detail-summary .amount{color:#e2e8f0}html.dark .imprests-section h3{color:#9ca3af;border-bottom-color:#374151}html.dark .imprest-block{background:#252f3f;border-color:#374151}html.dark .imprest-block-title h4{color:#90cdf4}html.dark .imprest-assignees{color:#6b7280}html.dark .no-data-inline{color:#4b5563}html.dark .preview-header{background:#252f3f;border-bottom-color:#374151}html.dark .preview-header h4{color:#d1d5db}html.dark .close-preview-btn{color:#9ca3af}html.dark .transaction-image-preview,html.dark .imprest-card{background:#1e2533;border-color:#374151}html.dark .imprest-card .card-header h3{color:#90cdf4}html.dark .imprest-card .card-date,html.dark .imprest-card .card-assignee{color:#6b7280}html.dark .imprest-card .label{color:#9ca3af}html.dark .imprest-card .card-footer{border-top-color:#374151;color:#6b7280}html.dark .no-data-card{background:#1e2533}html.dark .users-table th{background:#252f3f;color:#9ca3af}html.dark .users-table td{color:#d1d5db;border-bottom-color:#2d3748}html.dark .users-table tr:hover td{background:#263044}html.dark .user-avatar{background:#2b6cb0}html.dark .login-container{background:linear-gradient(135deg,#0d1520,#1a2233)}html.dark .login-card{background:#1e2533;box-shadow:0 10px 40px #00000080}html.dark .login-header p{color:#6b7280}html.dark .form-group label{color:#9ca3af}html.dark .form-group input{background:#252f3f;border-color:#4b5563;color:#e2e8f0}html.dark .form-group input::placeholder{color:#4b5563}html.dark .form-group input:focus{border-color:#63b3ed;background:#1e2533}html.dark .login-button{background:#2b6cb0}html.dark .login-button:hover:not(:disabled){background:#3182ce}html.dark .po-page{background:#0d1117}html.dark .po-hero-card.secondary{background:#1e2533;border-color:#374151}html.dark .po-hero-card.secondary .po-hero-amount.dim{color:#e2e8f0}html.dark .po-hero-card.secondary .po-hero-sub{color:#6b7280}html.dark .po-stat-card{background:#1e2533;border-color:#374151}html.dark .po-stat-label{color:#6b7280}html.dark .po-stat-value{color:#e2e8f0}html.dark .po-stat-sub{color:#4b5563}html.dark .po-content-panel{background:#1e2533;border-color:#374151}html.dark .po-panel-header{background:#060d17;border-bottom-color:#1e2533}html.dark .po-table thead tr{background:#060d17}html.dark .po-table th{border-bottom-color:#374151}html.dark .po-table td{color:#d1d5db;border-bottom-color:#2d3748}html.dark .po-table tbody tr:hover td{background:#263044}html.dark .po-sub-row td{background:#252f3f!important}html.dark .po-sub-wrap{background:#252f3f}html.dark .po-sub-table thead tr{background:#1a2233}html.dark .po-sub-table td{background:#252f3f}html.dark .po-expand-btn{border-color:#4b5563;color:#6b7280}html.dark .po-expand-btn:hover{background:#374151}html.dark .po-nav-panel{background:#1e2533;border-color:#374151}html.dark .po-nav-header{background:#060d17;border-bottom-color:#374151}html.dark .po-nav-item{color:#9ca3af;border-bottom-color:#2d3748}html.dark .po-nav-item:hover{background:#252f3f;color:#e2e8f0}html.dark .po-nav-item.active{background:#1a2a3a;color:#60a5fa;border-left-color:#3b82f6}html.dark .po-nav-arrow{color:#374151}html.dark .po-nav-mini-stats{background:#252f3f;border-top-color:#374151}html.dark .po-mini-stat{color:#6b7280}html.dark .po-empty{color:#4b5563}html.dark .po-field label{color:#9ca3af}html.dark .po-field input,html.dark .po-field textarea{background:#252f3f;border-color:#4b5563;color:#e2e8f0}html.dark .po-field input:focus,html.dark .po-field textarea:focus{border-color:#60a5fa;background:#1e2533}html.dark .po-field input::placeholder,html.dark .po-field textarea::placeholder{color:#4b5563}html.dark .po-drop-zone{background:#252f3f;border-color:#4b5563}html.dark .po-drop-zone:hover{border-color:#60a5fa;background:#1a2a3a}html.dark .po-drop-zone.loaded{border-color:#16a34a;background:#1a3328}html.dark .po-drop-main{color:#d1d5db}html.dark .po-csv-meta{border-top-color:#374151;color:#6b7280}html.dark .po-preview{background:#1a2a3a;border-color:#2b6cb0;color:#60a5fa}html.dark .po-toggle-group{border-color:#4b5563}html.dark .po-toggle-opt{background:#252f3f;color:#9ca3af}html.dark .po-toggle-opt:first-child{border-right-color:#4b5563}html.dark .po-toggle-opt.active{background:#1e3a5f;color:#e2e8f0}html.dark .po-toggle-opt:hover:not(.active){background:#374151}html.dark .po-form-footer{border-top-color:#374151}html.dark .po-initiate-btn{background:#1e3a5f}html.dark .po-initiate-btn:hover:not(:disabled){background:#0d1f3c}html.dark .pin-modal{background:#1e2533}html.dark .pin-payout-summary{background:#252f3f;border-color:#374151}html.dark .pin-desc{color:#9ca3af}html.dark .psr-val{color:#d1d5db}html.dark .psr-amount{color:#90cdf4}html.dark .pin-timer-bar{background:#1a2a3a;border-color:#2b6cb0;color:#90cdf4}html.dark .pin-timer-bar.urgent{background:#3b1a1a;border-color:#742a2a;color:#fc8181}html.dark .pin-input{background:#252f3f;border-color:#4b5563;color:#90cdf4}html.dark .pin-input:focus{border-color:#60a5fa;background:#1e2533}html.dark .pin-cancel-btn{background:#252f3f;border-color:#4b5563;color:#9ca3af}html.dark .pin-cancel-btn:hover{background:#374151}html.dark .pin-expired-body p{color:#9ca3af}html.dark ::-webkit-scrollbar-track{background:#1e2533}html.dark ::-webkit-scrollbar-thumb{background:#4b5563}html.dark ::-webkit-scrollbar-thumb:hover{background:#6b7280}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a365d,#2d3748);padding:20px}.login-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;padding:40px;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:32px}.login-logo{width:180px;height:auto;margin:0 auto 8px;display:block}.login-header p{color:#718096;margin:0;font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:20px}.form-group label{color:#4a5568;font-size:.9rem;font-weight:500}.form-group input{padding:12px 16px;border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.form-group input::placeholder{color:#a0aec0}.error-message{background:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;font-size:.9rem;text-align:center}.login-button{background:#1a365d;color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s;margin-top:8px}.login-button:hover:not(:disabled){background:#2c5282}.login-button:active:not(:disabled){transform:scale(.98)}.login-button:disabled{background:#a0aec0;cursor:not-allowed}.layout{display:flex;min-height:100vh;background:#f7fafc}.sidebar{width:260px;background:#1a365d;color:#fff;display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0}.sidebar-header{padding:24px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-logo{width:100%;max-width:180px;height:auto;display:block;margin:0 auto;border-radius:6px;background:#fff;padding:6px}.sidebar-nav{flex:1;padding:16px 0;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 24px;color:#ffffffb3;text-decoration:none;transition:all .2s}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active{background:#ffffff26;color:#fff;border-right:3px solid #63b3ed}.nav-icon{font-size:1.2rem}.nav-label{font-size:.95rem;font-weight:500}.sidebar-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1)}.user-info{display:flex;align-items:center;gap:12px;margin-bottom:16px}.user-avatar{width:40px;height:40px;background:#3182ce;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem}.user-details{display:flex;flex-direction:column}.user-name{font-size:.95rem;font-weight:500}.user-role{font-size:.75rem;color:#fff9;text-transform:capitalize}.theme-toggle-button{width:100%;padding:8px 10px;background:#ffffff12;border:1px solid rgba(255,255,255,.15);color:#ffffffbf;border-radius:6px;cursor:pointer;font-size:.85rem;transition:background .2s;margin-bottom:8px;text-align:left}.theme-toggle-button:hover{background:#ffffff26;color:#fff}.logout-button{width:100%;padding:10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .2s}.logout-button:hover{background:#fff3}.main-content{flex:1;margin-left:260px;min-height:100vh}@media(max-width:768px){.sidebar{width:100%;height:auto;position:relative}.main-content{margin-left:0}.layout{flex-direction:column}}.dashboard{padding:24px}.dashboard-header{margin-bottom:24px}.dashboard-header h1{color:#1a365d;margin:0 0 4px;font-size:1.75rem}.dashboard-header p{color:#718096;margin:0}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.summary-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border-left:4px solid}.summary-card.credit{border-left-color:#38a169}.summary-card.debit{border-left-color:#e53e3e}.summary-card.balance{border-left-color:#3182ce}.summary-card h3{color:#718096;font-size:.9rem;font-weight:500;margin:0 0 8px}.summary-card .amount{font-size:1.5rem;font-weight:700;color:#1a365d;margin:0 0 4px}.summary-card .label{font-size:.75rem;color:#a0aec0;text-transform:uppercase;letter-spacing:.5px}.dashboard-content{display:grid;grid-template-columns:525px 1fr;gap:24px}@media(max-width:900px){.dashboard-content{grid-template-columns:1fr}}.imprests-panel,.transactions-panel{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.imprests-panel h2,.transactions-panel h2{color:#1a365d;font-size:1.1rem;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.no-data{color:#a0aec0;text-align:center;padding:24px}.imprest-filters{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.filter-input{width:100%;padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#2d3748;background:#f7fafc;box-sizing:border-box;transition:border-color .2s}.filter-input:focus{outline:none;border-color:#3182ce;background:#fff}.filter-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filter-date-group{display:flex;flex-direction:column;gap:3px}.filter-date-group label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#a0aec0;font-weight:600}.clear-filters-btn{background:none;border:none;color:#3182ce;font-size:.8rem;cursor:pointer;padding:0;text-align:left;text-decoration:underline}.clear-filters-btn:hover{color:#1a365d}.imprest-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;max-height:600px;overflow-y:auto}.imprest-list::-webkit-scrollbar{width:6px}.imprest-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.imprest-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.imprest-list::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.imprest-item{padding:16px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.imprest-item:hover{border-color:#3182ce;background:#f7fafc}.imprest-item.selected{border-color:#3182ce;background:#ebf8ff}.imprest-info{display:flex;flex-direction:column;gap:4px;margin-bottom:4px}.imprest-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px}.project-badge{display:inline-block;background:#ebf8ff;color:#2b6cb0;border:1px solid #bee3f8;border-radius:12px;font-size:.72rem;font-weight:600;padding:2px 8px;white-space:nowrap}.imprest-title{flex:1;min-width:0;word-wrap:break-word;overflow-wrap:break-word;line-height:1.3}.imprest-date{font-size:.75rem;color:#a0aec0;margin-bottom:10px;display:block}.imprest-assignee{font-size:.75rem;color:#718096;margin-top:10px;padding-top:10px;border-top:1px dashed #e2e8f0}.expense-progress{margin-top:12px;padding-top:12px;border-top:1px dashed #e2e8f0}.progress-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:6px}.progress-label{font-size:.7rem;color:#718096}.imprest-info h4{margin:0;color:#1a365d;font-size:.95rem}.source-badge{font-size:.7rem;padding:4px 8px;border-radius:4px;text-transform:uppercase;font-weight:600;flex-shrink:0;white-space:nowrap}.source-badge.directors-advance{background:#faf5ff;color:#805ad5}.source-badge.company-imprest{background:#e6fffa;color:#319795}.source-badge.loan{background:#fff5f5;color:#c53030}.imprest-amounts{display:flex;flex-direction:column;gap:4px}.amount-row{display:flex;justify-content:space-between;font-size:.85rem}.amount-row .label{color:#718096}.amount-row.balance{margin-top:4px;padding-top:8px;border-top:1px dashed #e2e8f0;font-weight:600}.credit-amount{color:#38a169}.debit-amount{color:#e53e3e}.positive{color:#38a169}.negative{color:#e53e3e}.transactions-table th,.transactions-table td{padding:12px;text-align:left;border-bottom:1px solid #e2e8f0}.total-label{text-align:right;color:#4a5568}.transaction-image-preview{margin-top:20px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f7fafc;border-bottom:1px solid #e2e8f0}.preview-header h3{margin:0;color:#1a365d;font-size:.95rem;font-weight:600}.preview-content{padding:20px;display:flex;justify-content:center;align-items:center;min-height:150px;background:#fff}.loading-spinner{display:flex;flex-direction:column;align-items:center;color:#718096}.no-image{color:#718096;font-style:italic;margin:0}.imprests-page{padding:24px}.imprests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.no-data-card{grid-column:1 / -1;background:#fff;padding:48px;border-radius:12px;text-align:center;color:#718096;box-shadow:0 2px 8px #00000014}.imprest-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;border-top:4px solid #3182ce}.imprest-card.closed{border-top-color:#718096;opacity:.7}.imprest-card.depleted{border-top-color:#e53e3e}.imprest-card.low{border-top-color:#dd6b20}.imprest-card.active{border-top-color:#38a169}.card-header{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0}.card-header h3{margin:0;color:#1a365d;font-size:1.1rem}.card-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}.card-date{font-size:.75rem;color:#a0aec0}.card-assignee{font-size:.75rem;color:#718096;padding-left:8px;border-left:1px solid #d0d0d0}.status-badge{font-size:.7rem;padding:4px 10px;border-radius:12px;font-weight:600;text-transform:uppercase}.status-badge.closed{background:#e2e8f0;color:#4a5568}.status-badge.depleted{background:#fed7d7;color:#c53030}.status-badge.low{background:#feebc8;color:#c05621}.card-body{padding:20px}.source-tag{display:inline-block;font-size:.75rem;padding:4px 10px;background:#edf2f7;color:#4a5568;border-radius:4px;text-transform:capitalize;margin-bottom:16px}.amounts-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.amount-item{display:flex;flex-direction:column;gap:4px}.amount-item.full-width{grid-column:1 / -1;padding-top:12px;border-top:1px dashed #e2e8f0}.amount-item .label{font-size:.8rem;color:#718096}.amount-item .value{font-size:1.1rem;font-weight:600}.amount-item .value.credit{color:#38a169}.amount-item .value.debit{color:#e53e3e}.amount-item .value.positive{color:#38a169}.amount-item .value.negative{color:#e53e3e}.progress-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(90deg,#38a169,#3182ce);border-radius:4px;transition:width .3s ease}.progress-label{font-size:.75rem;color:#718096}.card-footer{padding:12px 20px;background:#f7fafc;border-top:1px solid #e2e8f0}.card-footer .date{font-size:.8rem;color:#718096}.modal{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.transactions-page{padding:24px}.filter-section{background:#fff;padding:20px;border-radius:12px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.filter-section .form-group{max-width:400px}.filter-section label{display:block;font-size:.9rem;font-weight:500;color:#4a5568;margin-bottom:6px}.filter-section select{width:100%;padding:12px 16px;border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;background:#fff}.filter-section select:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.imprest-summary{display:flex;gap:24px;background:#fff;padding:20px;border-radius:12px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-item .label{font-size:.8rem;color:#718096}.summary-item .value{font-size:1.25rem;font-weight:600;color:#1a365d}.summary-item .value.credit{color:#38a169}.summary-item .value.debit{color:#e53e3e}.transactions-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.loading-container.small{height:200px}.no-data p{margin-bottom:16px}.transactions-table{width:100%;border-collapse:collapse}.transactions-table th,.transactions-table td{padding:14px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.transactions-table th{background:#f7fafc;color:#4a5568;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.transactions-table td{font-size:.9rem;color:#2d3748}.transactions-table tbody tr{cursor:pointer;transition:background .2s}.transactions-table tbody tr:hover{background:#f7fafc}.transactions-table tbody tr.selected{background:#ebf8ff}.transactions-table tbody tr.selected:hover{background:#bee3f8}.transactions-table .debit{color:#e53e3e;font-weight:600}.transactions-table tfoot td{font-weight:600;background:#f7fafc}.total-label{text-align:right}.view-receipt-btn{background:#ebf8ff;color:#3182ce;border:none;padding:6px 12px;border-radius:4px;font-size:.8rem;cursor:pointer;transition:background .2s}.view-receipt-btn:hover{background:#bee3f8}.no-receipt{color:#a0aec0}.delete-btn{background:#fff5f5;color:#c53030;border:none;padding:6px 12px;border-radius:4px;font-size:.8rem;cursor:pointer;transition:background .2s}.delete-btn:hover{background:#fed7d7}.form-group input[type=file]{padding:10px;border-style:dashed}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.receipt-preview{margin-top:12px;max-width:200px}.receipt-preview img{width:100%;border-radius:8px;border:1px solid #e2e8f0}.transaction-image-preview{border-top:1px solid #e2e8f0;background:#f7fafc}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0}.preview-header h3{margin:0;color:#1a365d;font-size:1rem;font-weight:600}.close-preview-btn{background:none;border:none;font-size:1.5rem;color:#718096;cursor:pointer;padding:0;line-height:1}.close-preview-btn:hover{color:#e53e3e}.preview-content{padding:20px;display:flex;justify-content:center;align-items:center;min-height:200px}.preview-content img{max-width:100%;max-height:400px;border-radius:8px;box-shadow:0 4px 12px #00000026;cursor:pointer;transition:transform .2s}.preview-content img:hover{transform:scale(1.02)}.no-image-message{color:#718096;font-style:italic}.image-error-message{color:#c53030;font-style:italic}.pdf-preview{width:100%;height:500px;border:none;border-radius:8px}.has-receipt{font-size:1.1rem}.proposals-page{padding:24px}.proposals-content{display:grid;grid-template-columns:400px 1fr;gap:24px}@media(max-width:900px){.proposals-content{grid-template-columns:1fr}}.proposals-list-panel,.proposal-details-panel{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.proposals-list-panel{padding:20px}.proposals-list-panel h2{color:#1a365d;font-size:1.1rem;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.proposals-list{display:flex;flex-direction:column;gap:12px;max-height:600px;overflow-y:auto}.proposal-card{padding:16px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.proposal-card:hover{border-color:#3182ce;background:#f7fafc}.proposal-card.selected{border-color:#3182ce;background:#ebf8ff}.proposal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.proposal-header h3{margin:0;color:#1a365d;font-size:.95rem}.status-badge{font-size:.65rem;padding:4px 8px;border-radius:4px;font-weight:600;text-transform:uppercase}.status-badge.large{font-size:.75rem;padding:6px 12px}.status-badge.pending{background:#fefcbf;color:#975a16}.status-badge.approved{background:#c6f6d5;color:#276749}.status-badge.rejected{background:#fed7d7;color:#c53030}.status-badge.partial{background:#feebc8;color:#c05621}.proposal-meta{display:flex;justify-content:space-between;font-size:.85rem}.proposal-meta .amount{color:#1a365d;font-weight:600}.proposal-meta .date{color:#718096}.proposal-details-panel{padding:24px}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.details-header h2{margin:0;color:#1a365d;font-size:1.25rem}.details-meta{display:flex;gap:32px;margin-bottom:24px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-item .label{font-size:.8rem;color:#718096}.meta-item .value{font-size:1.1rem;font-weight:600;color:#1a365d}.items-section{margin-bottom:24px}.items-section h3{color:#4a5568;font-size:.95rem;margin:0 0 12px}.items-table{width:100%;border-collapse:collapse}.items-table th,.items-table td{padding:12px;text-align:left;border-bottom:1px solid #e2e8f0}.items-table th{background:#f7fafc;color:#4a5568;font-size:.8rem;font-weight:600;text-transform:uppercase}.items-table td{font-size:.9rem;color:#2d3748}.action-buttons{display:flex;gap:12px;padding-top:20px;border-top:1px solid #e2e8f0}.approve-btn,.partial-btn,.reject-btn{padding:10px 20px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .2s}.approve-btn{background:#38a169;color:#fff}.partial-btn{background:#dd6b20;color:#fff}.reject-btn{background:#e53e3e;color:#fff}.approve-btn:hover,.partial-btn:hover,.reject-btn:hover{opacity:.9}.no-selection,.no-data{padding:48px;text-align:center;color:#718096}.modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal.large{max-width:600px}.items-input-section{border:1px solid #e2e8f0;border-radius:8px;padding:16px}.items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.items-header h3{margin:0;font-size:.95rem;color:#4a5568}.add-item-btn{background:#ebf8ff;color:#3182ce;border:none;padding:6px 12px;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer}.add-item-btn:hover{background:#bee3f8}.item-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.item-row .form-group{margin:0}.item-row .item-name{flex:2}.item-row .item-qty{flex:.5}.item-row .item-price{flex:1}.item-row input{padding:10px 12px}.remove-item-btn{background:#fff5f5;color:#c53030;border:none;width:32px;height:32px;border-radius:4px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.remove-item-btn:disabled{opacity:.3;cursor:not-allowed}.remove-item-btn:hover:not(:disabled){background:#fed7d7}.total-preview{display:flex;justify-content:space-between;padding:16px;background:#f7fafc;border-radius:8px;font-weight:600}.total-preview .total-value{color:#1a365d;font-size:1.1rem}.projects-page{padding:24px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h1{margin:0 0 4px;color:#1a365d;font-size:1.75rem}.page-header p{margin:0;color:#718096;font-size:.95rem}.error-banner{background:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.projects-layout{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start}.projects-list-panel h2{font-size:1rem;color:#4a5568;text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}.project-card{background:#fff;border:2px solid #e2e8f0;border-radius:10px;padding:16px;margin-bottom:12px;cursor:pointer;transition:border-color .2s,box-shadow .2s}.project-card:hover{border-color:#3182ce;box-shadow:0 2px 8px #3182ce26}.project-card.selected{border-color:#3182ce;background:#ebf8ff}.project-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.project-card-header h3{margin:0;font-size:.95rem;color:#1a365d;font-weight:600}.project-description{font-size:.82rem;color:#718096;margin:0 0 10px;line-height:1.4}.project-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.stat{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:.72rem;color:#a0aec0;text-transform:uppercase;letter-spacing:.03em}.stat-value{font-size:.85rem;font-weight:600;color:#2d3748}.stat-value.credit{color:#2f855a}.stat-value.debit{color:#c53030}.stat-value.positive{color:#2f855a}.stat-value.negative{color:#c53030}.project-date{font-size:.75rem;color:#a0aec0}.status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.status-badge.active{background:#c6f6d5;color:#276749}.status-badge.completed{background:#bee3f8;color:#2c5282}.status-badge.on-hold{background:#fefcbf;color:#744210}.status-badge.large{font-size:.85rem;padding:5px 14px}.project-detail-panel{background:#fff;border-radius:10px;border:1px solid #e2e8f0;min-height:400px;padding:24px}.no-selection{display:flex;align-items:center;justify-content:center;height:300px;color:#a0aec0;font-size:.95rem}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.detail-header h2{margin:0 0 4px;color:#1a365d;font-size:1.4rem}.detail-description{margin:0;color:#718096;font-size:.9rem}.detail-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px}.summary-card{padding:14px 16px;border-radius:8px;display:flex;flex-direction:column;gap:4px}.summary-card.credit{background:#f0fff4;border:1px solid #9ae6b4}.summary-card.debit{background:#fff5f5;border:1px solid #feb2b2}.summary-card.balance{background:#ebf8ff;border:1px solid #90cdf4}.summary-card .label{font-size:.78rem;color:#718096;text-transform:uppercase;letter-spacing:.04em}.summary-card .amount{font-size:1.1rem;font-weight:700;color:#1a365d}.imprests-section h3{font-size:1rem;color:#4a5568;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.imprest-block{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:16px}.imprest-block-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}.imprest-block-title{display:flex;align-items:center;gap:10px}.imprest-block-title h4{margin:0;color:#1a365d;font-size:.95rem}.source-tag{font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:12px;background:#e2e8f0;color:#4a5568;text-transform:capitalize}.imprest-block-amounts{display:flex;align-items:center;gap:8px;font-size:.82rem;flex-wrap:wrap}.imprest-block-amounts .credit{color:#2f855a;font-weight:600}.imprest-block-amounts .debit{color:#c53030;font-weight:600}.imprest-block-amounts .positive{color:#2f855a;font-weight:600}.imprest-block-amounts .negative{color:#c53030;font-weight:600}.imprest-block-amounts .separator{color:#cbd5e0}.imprest-assignees{font-size:.8rem;color:#718096;margin-bottom:10px}.no-data-inline{color:#a0aec0;font-size:.85rem;margin:8px 0 0}.transactions-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-top:10px}.transactions-table.compact{font-size:.82rem}.transactions-table th{background:#edf2f7;color:#4a5568;text-align:left;padding:8px 10px;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0}.transactions-table td{padding:8px 10px;border-bottom:1px solid #f0f4f8;color:#2d3748}.transactions-table tr:hover td{background:#f7fafc}.transactions-table tr.selected td{background:#ebf8ff}.transactions-table tbody tr{cursor:pointer}.transactions-table tfoot td{font-weight:700;padding-top:10px;color:#1a365d;border-top:2px solid #e2e8f0;border-bottom:none}.transactions-table .total-label{text-align:right;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.debit{color:#c53030;font-weight:600}.has-receipt{font-size:1rem}.no-receipt{color:#cbd5e0}.transaction-image-preview{margin-top:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.preview-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#edf2f7;border-bottom:1px solid #e2e8f0}.preview-header h4{margin:0;font-size:.88rem;color:#2d3748}.close-preview-btn{background:none;border:none;font-size:1.2rem;cursor:pointer;color:#718096;line-height:1;padding:0 4px}.close-preview-btn:hover{color:#1a365d}.preview-content{padding:14px;text-align:center}.preview-content img{max-width:100%;max-height:400px;border-radius:4px;cursor:pointer}.preview-content .pdf-preview{width:100%;height:400px;border:none}.no-image-message{color:#a0aec0;font-size:.85rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px}.loading-container.small{padding:20px}.spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#3182ce;border-radius:50%;animation:spin .7s linear infinite}.no-data{text-align:center;padding:40px 20px;color:#a0aec0}@media(max-width:900px){.projects-layout{grid-template-columns:1fr}.detail-summary{grid-template-columns:1fr 1fr}.imprest-block-header{flex-direction:column}}@media(max-width:600px){.projects-page{padding:16px}.detail-summary{grid-template-columns:1fr}}.po-page{padding:24px;display:flex;flex-direction:column;gap:16px;min-height:100%;background:#f1f5f9}.po-hero-row{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.po-hero-card{border-radius:14px;padding:28px 32px;position:relative;overflow:hidden}.po-hero-card.primary{background:linear-gradient(135deg,#1a365d,#2c5282 60%,#2b4c8c);color:#fff;box-shadow:0 8px 32px #1a365d59}.po-hero-card.primary:after{content:"";position:absolute;top:-40px;right:-40px;width:200px;height:200px;background:#ffffff0d;border-radius:50%}.po-hero-card.secondary{background:#fff;border:1px solid #e2e8f0;box-shadow:0 2px 12px #0000000f}.po-hero-pill{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;color:#ffffffbf}.po-hero-pill.muted{color:#a0aec0}.po-hero-amount{font-size:2.6rem;font-weight:800;letter-spacing:-.02em;color:#fff;margin-bottom:8px;font-variant-numeric:tabular-nums}.po-hero-amount.dim{color:#1a365d}.po-hero-sub{font-size:.82rem;color:#fff9;margin-bottom:16px}.po-hero-src{font-family:monospace;color:#ffffffe6;font-size:.8rem}.po-hero-card.secondary .po-hero-sub{color:#718096;margin-bottom:0}.po-hero-indicators{display:flex;gap:16px;flex-wrap:wrap}.po-ind{display:flex;align-items:center;gap:5px;font-size:.75rem;color:#ffffffa6}.po-ind-dot{width:7px;height:7px;border-radius:50%}.po-ind-dot.green{background:#22c55e;box-shadow:0 0 6px #22c55e}.po-ind-dot.blue{background:#60a5fa;box-shadow:0 0 6px #60a5fa}.po-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.po-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:18px 20px;box-shadow:0 1px 6px #0000000d}.po-stat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.po-stat-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}.po-stat-icon{font-size:1.1rem}.po-stat-value{font-size:1.45rem;font-weight:800;color:#1e293b;letter-spacing:-.01em;margin-bottom:4px;font-variant-numeric:tabular-nums}.po-stat-value.numeric{font-size:2rem}.po-stat-value.green{color:#16a34a}.po-stat-value.red{color:#dc2626}.po-stat-sub{font-size:.75rem;color:#94a3b8}.po-main{display:grid;grid-template-columns:1fr 240px;gap:16px;align-items:start}.po-content-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 6px #0000000d;overflow:hidden;min-height:420px}.po-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #f1f5f9;background:#0f172a}.po-panel-header h2{margin:0 0 2px;font-size:1rem;font-weight:700;color:#f1f5f9}.po-panel-header p{margin:0;font-size:.78rem;color:#64748b}.po-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 24px;color:#94a3b8;text-align:center}.po-empty-icon{font-size:2.5rem}.po-empty p{font-size:.88rem;max-width:280px}.po-table-wrap{overflow-x:auto}.po-table{width:100%;border-collapse:collapse;font-size:.84rem}.po-table thead tr{background:#0f172a}.po-table th{padding:11px 16px;text-align:left;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;white-space:nowrap;border-bottom:1px solid #1e293b}.po-table td{padding:12px 16px;color:#334155;border-bottom:1px solid #f1f5f9;vertical-align:middle}.po-table tbody tr:last-child td{border-bottom:none}.po-table tbody tr:hover td{background:#f8fafc}.td-mono{font-family:monospace;font-size:.8rem;color:#64748b}.td-desc{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-amount{font-weight:700;font-variant-numeric:tabular-nums;color:#1e293b;text-align:right}.po-sub-row td{padding:0!important;background:#f8fafc}.po-sub-wrap{padding:12px 20px;overflow-x:auto}.po-sub-table thead tr{background:#1e293b}.po-sub-table th{font-size:.68rem}.po-sub-table td{font-size:.8rem;background:#f8fafc}.po-expand-btn{background:none;border:1px solid #e2e8f0;border-radius:4px;padding:2px 8px;font-size:.72rem;color:#94a3b8;cursor:pointer;transition:background .15s}.po-expand-btn:hover{background:#f1f5f9}.po-status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;vertical-align:middle}.po-status-txt{font-size:.8rem;font-weight:600;vertical-align:middle}.po-status-txt.pending{color:#d97706}.po-status-txt.processing{color:#2563eb}.po-status-txt.completed{color:#16a34a}.po-status-txt.failed{color:#dc2626}.po-status-txt.expired{color:#6b7280}.po-status-txt.cancelled{color:#9ca3af}.po-type-badge{display:inline-block;padding:3px 9px;border-radius:20px;font-size:.7rem;font-weight:700;white-space:nowrap}.po-type-badge.payroll{background:#dbeafe;color:#1d4ed8}.po-type-badge.single{background:#dcfce7;color:#15803d}.po-type-badge.b2b{background:#ede9fe;color:#6d28d9}.po-nav-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 6px #0000000d;overflow:hidden}.po-nav-header{padding:14px 16px 10px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;background:#0f172a;border-bottom:1px solid #1e293b}.po-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:13px 16px;background:none;border:none;border-bottom:1px solid #f1f5f9;cursor:pointer;text-align:left;transition:background .15s;color:#475569}.po-nav-item:hover{background:#f8fafc;color:#1e293b}.po-nav-item.active{background:#eff6ff;color:#1d4ed8;border-left:3px solid #3b82f6}.po-nav-icon{font-size:1rem;flex-shrink:0}.po-nav-label{font-size:.875rem;font-weight:500;flex:1}.po-nav-count{background:#1d4ed8;color:#fff;font-size:.68rem;font-weight:700;padding:1px 6px;border-radius:10px}.po-nav-arrow{color:#cbd5e1;font-size:1.1rem}.po-nav-mini-stats{padding:12px 16px;display:flex;flex-direction:column;gap:7px;border-top:1px solid #f1f5f9;background:#f8fafc}.po-mini-stat{display:flex;align-items:center;gap:7px;font-size:.78rem;color:#64748b}.po-mini-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.po-form{padding:24px;display:flex;flex-direction:column;gap:18px}.po-form.narrow{max-width:480px}.po-field{display:flex;flex-direction:column;gap:6px}.po-field label{font-size:.82rem;font-weight:600;color:#475569}.po-field input,.po-field textarea{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#1e293b;background:#f8fafc;transition:border-color .2s,background .2s;font-family:inherit}.po-field input:focus,.po-field textarea:focus{outline:none;border-color:#3b82f6;background:#fff}.po-field textarea{resize:vertical;min-height:78px}.po-field-error{color:#dc2626;font-size:.8rem;margin:0}.po-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:22px 20px;border:2px dashed #cbd5e1;border-radius:10px;cursor:pointer;background:#f8fafc;transition:all .2s;text-align:center}.po-drop-zone:hover{border-color:#3b82f6;background:#eff6ff}.po-drop-zone.loaded{border-color:#16a34a;background:#f0fdf4;border-style:solid}.po-drop-zone input{display:none}.po-drop-icon{font-size:1.7rem}.po-drop-main{font-size:.88rem;font-weight:600;color:#334155}.po-drop-hint{font-size:.75rem;color:#94a3b8}.po-csv-meta{display:flex;justify-content:space-between;font-size:.82rem;color:#64748b;padding:8px 0;border-top:1px solid #f1f5f9}.po-csv-meta strong{color:#16a34a}.po-preview{padding:11px 14px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;font-size:.875rem;color:#1d4ed8}.po-toggle-group{display:flex;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;width:fit-content}.po-toggle-opt{padding:9px 22px;border:none;background:#f8fafc;color:#475569;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s}.po-toggle-opt:first-child{border-right:1px solid #e2e8f0}.po-toggle-opt.active{background:#1e293b;color:#fff;font-weight:600}.po-toggle-opt:hover:not(.active){background:#f1f5f9}.po-form-footer{display:flex;align-items:center;gap:14px;padding-top:8px;border-top:1px solid #f1f5f9;margin-top:4px}.po-initiate-btn{padding:11px 24px;background:#1e293b;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;letter-spacing:.01em}.po-initiate-btn:hover:not(:disabled){background:#0f172a}.po-initiate-btn:active:not(:disabled){transform:scale(.98)}.po-initiate-btn:disabled{background:#cbd5e1;cursor:not-allowed}.po-hint{font-size:.78rem;color:#94a3b8}.pin-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.pin-modal{background:#fff;border-radius:16px;width:100%;max-width:440px;box-shadow:0 24px 64px #0000004d;overflow:hidden}.pin-modal-head{background:#0f172a;padding:24px 28px 20px;text-align:center}.pin-lock-icon{font-size:2.2rem;display:block;margin-bottom:8px}.pin-modal-head h2{margin:0;color:#f1f5f9;font-size:1.05rem}.pin-modal-body{padding:24px 28px 28px}.pin-desc{font-size:.875rem;color:#475569;line-height:1.6;margin:0 0 18px}.pin-payout-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;margin-bottom:18px;display:flex;flex-direction:column;gap:8px}.pin-summary-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.psr-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;font-weight:600}.psr-val{font-size:.875rem;color:#334155;text-align:right}.psr-amount{font-size:1.05rem;font-weight:800;color:#1e293b}.pin-timer-bar{display:flex;align-items:center;gap:7px;font-size:.875rem;color:#475569;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:9px 12px;margin-bottom:18px}.pin-timer-bar.urgent{background:#fef2f2;border-color:#fecaca;color:#dc2626}.pin-clock{font-size:1rem;font-family:monospace;margin-left:auto}.pin-input{width:100%;box-sizing:border-box;text-align:center;font-size:2.2rem;font-family:monospace;letter-spacing:.6em;padding:12px 16px;border:2px solid #e2e8f0;border-radius:10px;background:#f8fafc;color:#1e293b;margin-bottom:20px;transition:border-color .2s}.pin-input:focus{outline:none;border-color:#3b82f6;background:#fff}.po-min-notice{font-size:12px;color:#6b7280;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:7px 12px;margin-bottom:12px}.po-min-notice strong{color:#374151}.pin-error{color:#dc2626;font-size:13px;text-align:center;margin:4px 0 0}.pin-modal-actions{display:flex;gap:10px}.pin-cancel-btn{flex:1;padding:11px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font-size:.88rem;font-weight:500;cursor:pointer;transition:background .15s}.pin-cancel-btn:hover{background:#f8fafc}.pin-auth-btn{flex:2;padding:11px;border:none;border-radius:8px;background:#1e293b;color:#fff;font-size:.88rem;font-weight:700;cursor:pointer;transition:background .2s}.pin-auth-btn:hover:not(:disabled){background:#0f172a}.pin-auth-btn:disabled{background:#94a3b8;cursor:not-allowed}.pin-expired-body{text-align:center;padding:8px 0 4px}.pin-expired-body p{color:#64748b;font-size:.875rem;line-height:1.6;margin-bottom:10px}.pin-expired-body .pin-cancel-btn{width:100%;margin-top:8px}.po-inline-phone{width:100%;max-width:180px;padding:6px 9px;border:1px solid #e2e8f0;border-radius:6px;font-size:.82rem;font-family:monospace;color:#1e293b;background:#f8fafc;transition:border-color .2s}.po-inline-phone:focus{outline:none;border-color:#3b82f6;background:#fff}.po-inline-phone.invalid{border-color:#f87171;background:#fff5f5}.po-contact-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.7rem;font-weight:700;white-space:nowrap}.po-contact-badge.matched{background:#dcfce7;color:#15803d}.po-contact-badge.missing{background:#fef2f2;color:#dc2626}.po-meta-warn{color:#d97706;font-weight:600}.po-phone-hint{font-size:.8rem;color:#64748b;margin:0}.po-link-btn{background:none;border:none;padding:0;color:#2563eb;font-size:.8rem;cursor:pointer;text-decoration:underline}.po-link-btn:hover{color:#1d4ed8}.po-contacts-section{display:flex;flex-direction:column;gap:14px;padding-bottom:20px;border-bottom:1px solid #f1f5f9}.po-section-title{margin:0;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}.po-contacts-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:end}.po-label-opt{font-weight:400;color:#94a3b8;font-size:.75rem}.po-add-contact-btn{align-self:flex-start;padding:9px 20px;background:#1e293b;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}.po-add-contact-btn:hover{background:#0f172a}.po-contacts-count{font-size:.78rem;color:#94a3b8;padding:8px 0 4px}.po-del-btn{background:none;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:.75rem;padding:3px 8px;cursor:pointer;transition:background .15s}.po-del-btn:hover{background:#fef2f2}@media(max-width:1100px){.po-stats-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:860px){.po-hero-row,.po-main{grid-template-columns:1fr}.po-nav-panel{display:grid;grid-template-columns:repeat(4,1fr)}.po-nav-header,.po-nav-mini-stats{display:none}}@media(max-width:600px){.po-page{padding:12px;gap:12px}.po-stats-row,.po-nav-panel{grid-template-columns:repeat(2,1fr)}.pin-modal{margin:16px}}.users-page{padding:24px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{color:#1a365d;margin:0 0 4px;font-size:1.75rem}.page-header p{color:#718096;margin:0}.create-button{background:#1a365d;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.create-button:hover{background:#2c5282}.error-banner{background:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;margin-bottom:24px}.users-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.no-data{padding:48px;text-align:center;color:#718096}.users-table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:16px 20px;text-align:left;border-bottom:1px solid #e2e8f0}.users-table th{background:#f7fafc;color:#4a5568;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.users-table td{font-size:.95rem;color:#2d3748}.users-table tbody tr:hover{background:#f7fafc}.user-cell{display:flex;align-items:center;gap:12px}.user-avatar{width:36px;height:36px;background:#3182ce;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.role-badge{font-size:.75rem;padding:4px 10px;border-radius:4px;font-weight:600;text-transform:uppercase}.role-badge.admin{background:#faf5ff;color:#805ad5}.role-badge.staff{background:#e6fffa;color:#319795}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:#718096}.spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#1a365d;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:12px;width:100%;max-width:450px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;color:#1a365d;font-size:1.25rem}.close-button{background:none;border:none;font-size:1.5rem;color:#718096;cursor:pointer;padding:0;line-height:1}.close-button:hover{color:#1a365d}.modal-form{padding:24px;display:flex;flex-direction:column;gap:20px}.form-error{background:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;font-size:.9rem}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.9rem;font-weight:500;color:#4a5568}.form-group input,.form-group select{padding:12px 16px;border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.form-group .hint{font-size:.8rem;color:#a0aec0}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.cancel-button{padding:12px 24px;border:1px solid #e2e8f0;background:#fff;color:#4a5568;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:background .2s}.cancel-button:hover{background:#f7fafc}.submit-button{padding:12px 24px;border:none;background:#1a365d;color:#fff;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.submit-button:hover:not(:disabled){background:#2c5282}.submit-button:disabled{background:#a0aec0;cursor:not-allowed}*{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}a{text-decoration:none}button,input{font-family:inherit}
