*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.layout{min-height:100vh;display:flex;flex-direction:column}.header{background-color:#2c3e50;color:#fff;padding:1rem 2rem}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.header h1{margin:0;font-size:1.5rem}.header h1 a{color:#fff;text-decoration:none}.nav{display:flex;gap:1rem;align-items:center}.nav a{color:#fff;text-decoration:none;padding:.5rem 1rem;border-radius:4px;transition:background-color .2s}.nav a:hover{background-color:#34495e}.user-name{color:#ecf0f1;font-size:.9rem}.logout-btn{background:#e74c3c;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem}.logout-btn:hover{background:#c0392b}.main{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.login-container{display:flex;justify-content:center;align-items:center;min-height:60vh}.login-box{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:400px}.login-box h2{margin-top:0;margin-bottom:1.5rem;color:#2c3e50;text-align:center}.error-message{background:#e74c3c;color:#fff;padding:.75rem;border-radius:4px;margin-bottom:1rem}.login-hint{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee;font-size:.85rem;color:#7f8c8d}.login-hint code{background:#f8f9fa;padding:.2rem .4rem;border-radius:3px}.requests-list{padding:1rem 0}.requests-list h2{margin-bottom:1rem;color:#2c3e50}.data-table{width:100%;border-collapse:collapse;background:#fff;box-shadow:0 1px 3px #0000001a;border-radius:4px;overflow:hidden}.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e0e0e0}.data-table th{background-color:#f8f9fa;font-weight:600;color:#2c3e50;position:sticky;top:0}.data-table tr:hover{background-color:#f8f9fa}.data-table a{color:#3498db;text-decoration:none}.data-table a:hover{text-decoration:underline}.request-detail{padding:1rem 0}.request-detail h2{margin-bottom:1.5rem;color:#2c3e50}.request-info,.request-lines,.request-actions{background:#fff;padding:1.5rem;margin-bottom:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.request-info h3,.request-lines h3,.request-actions h3{margin-top:0;margin-bottom:1rem;color:#2c3e50;border-bottom:2px solid #3498db;padding-bottom:.5rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-grid>div{padding:.5rem;background:#f8f9fa;border-radius:4px}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.action-buttons button{padding:.75rem 1.5rem;background-color:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}.action-buttons button:hover{background-color:#2980b9}.update-pricing-btn{margin-top:1rem;padding:.75rem 1.5rem;background-color:#27ae60;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}.update-pricing-btn:hover{background-color:#219a52}.data-table input[type=number],.data-table input[type=text],.data-table select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.data-table input:focus,.data-table select:focus{outline:none;border-color:#3498db}.new-request{padding:1rem 0}.new-request h2{margin-bottom:1.5rem;color:#2c3e50}.new-request .error{background-color:#e74c3c;color:#fff;padding:1rem;border-radius:4px;margin-bottom:1rem}.form-section{background:#fff;padding:1.5rem;margin-bottom:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.form-section h3{margin-top:0;margin-bottom:1rem;color:#2c3e50;border-bottom:2px solid #3498db;padding-bottom:.5rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-weight:500;color:#2c3e50}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3498db}.request-line{background:#f8f9fa;padding:1rem;border-radius:4px;margin-bottom:1rem}.form-actions{display:flex;gap:1rem;margin-top:1rem}.form-actions button{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}.form-actions button[type=submit]{background-color:#3498db;color:#fff}.form-actions button[type=submit]:hover{background-color:#2980b9}.form-actions button[type=button]{background-color:#95a5a6;color:#fff}.form-actions button[type=button]:hover{background-color:#7f8c8d}.form-actions button:disabled{opacity:.6;cursor:not-allowed}.bdn-form{background:#fff;padding:1.5rem;margin-bottom:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.bdn-form h3{margin-top:0;margin-bottom:1rem;color:#2c3e50;border-bottom:2px solid #3498db;padding-bottom:.5rem}.bdn-form .form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit;resize:vertical}.bdn-form .form-group textarea:focus{outline:none;border-color:#3498db}.variance-ok{color:#27ae60;font-weight:500}.variance-warning{color:#e74c3c;font-weight:500}.variance-warning:before{content:"⚠️ "}.success-message{background:#d4edda;color:#155724;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #c3e6cb}.error-message{background:#f8d7da;color:#721c24;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #f5c6cb}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-received{background:#e3f2fd;color:#1565c0}.status-priced_internally{background:#fff3e0;color:#e65100}.status-supplier_order_sent{background:#e8f5e9;color:#2e7d32}.status-waiting_bdn{background:#fce4ec;color:#c2185b}.status-bdn_received{background:#f3e5f5;color:#7b1fa2}.status-ready_to_invoice{background:#e0f7fa;color:#006064}.status-invoiced{background:#e8eaf6;color:#283593}.status-closed{background:#eee;color:#424242}.action-buttons button:disabled{opacity:.5;cursor:not-allowed}.action-buttons button{position:relative}.action-buttons button:disabled:hover:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:.5rem;border-radius:4px;white-space:nowrap;font-size:.75rem;z-index:10}.documents-section{margin-top:1.5rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.documents-section h3{margin-top:0;margin-bottom:1rem;color:#2c3e50;border-bottom:2px solid #3498db;padding-bottom:.5rem}.no-documents{color:#7f8c8d;font-style:italic}.documents-table{width:100%}.doc-badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.8rem;font-weight:500;text-transform:capitalize}.doc-supplier_order{background:#e3f2fd;color:#1565c0}.doc-bdn{background:#f3e5f5;color:#7b1fa2}.doc-customer_invoice{background:#e8f5e9;color:#2e7d32}.doc-other{background:#eee;color:#424242}.doc-actions{display:flex;gap:.5rem}.btn-download{padding:.4rem .8rem;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-download:hover{background:#2980b9}.btn-send{padding:.4rem .8rem;background:#27ae60;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-send:hover{background:#219a52}.btn-send:disabled{opacity:.6;cursor:not-allowed}.btn-whatsapp{padding:.4rem .8rem;background:#25d366;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-whatsapp:hover{background:#128c7e}.btn-whatsapp:disabled{opacity:.6;cursor:not-allowed}.btn-telegram{padding:.4rem .8rem;background:#08c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-telegram:hover{background:#0077b3}.btn-telegram:disabled{opacity:.6;cursor:not-allowed}.documents-page{padding:1rem 0}.documents-page h2{margin-bottom:1.5rem;color:#2c3e50}.page-subtitle{color:#7f8c8d;margin-top:-1rem;margin-bottom:1.5rem;font-size:.95rem}.folder-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.folder-tab{padding:.75rem 1.25rem;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:.95rem;color:#2c3e50;transition:all .2s}.folder-tab:hover{background:#e9ecef}.folder-tab.active{background:#3498db;color:#fff;border-color:#3498db}.folder-count{background:#0000001a;padding:.1rem .5rem;border-radius:10px;font-size:.8rem;margin-left:.5rem}.folder-content{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.kyc-upload{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e0e0e0}.upload-label{display:inline-block;padding:.75rem 1.5rem;background:#3498db;color:#fff;border-radius:4px;cursor:pointer;font-size:.95rem;transition:background .2s}.upload-label:hover{background:#2980b9}.upload-label:disabled{opacity:.6;cursor:not-allowed}.hint{margin-top:.5rem;color:#7f8c8d;font-size:.85rem}.kyc-status{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.8rem;font-weight:500;text-transform:capitalize}.kyc-status-pending{background:#fff3e0;color:#e65100}.kyc-status-approved{background:#e8f5e9;color:#2e7d32}.kyc-status-rejected{background:#ffebee;color:#c62828}.doc-receipt{background:#e0f2f1;color:#00695c}.doc-kyc{background:#fff8e1;color:#f57f17}.combobox{position:relative}.combobox input{width:100%}.combobox-list{position:absolute;top:100%;left:0;right:0;z-index:50;margin:2px 0 0;padding:0;list-style:none;background:#fff;border:1px solid #cbd5e1;border-radius:6px;box-shadow:0 4px 12px #0000001f;max-height:220px;overflow-y:auto}.combobox-item{padding:8px 12px;cursor:pointer;font-size:14px}.combobox-item.highlighted{background:#eff6ff}.combobox-item.unconfirmed{color:#64748b}.combobox-extra{color:#94a3b8;font-size:12px;margin-left:6px}.suggestions-panel{background:#f8fafc;border:1px dashed #94a3b8;border-radius:8px;padding:16px;margin:16px 0}.suggestions-details{margin-top:12px;font-size:14px;line-height:1.7;color:#334155}.tg-bind-banner{background:#e0f2fe;border-bottom:1px solid #7dd3fc;padding:10px 24px;font-size:14px}.tg-bind-banner code{background:#fff;padding:2px 6px;border-radius:4px;font-weight:600}.list-filters{display:flex;gap:12px;margin:12px 0 16px;flex-wrap:wrap;align-items:center}.search-input{flex:1;min-width:220px;padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px}.pagination{display:flex;gap:12px;align-items:center;justify-content:center;margin:16px 0}.action-required{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;padding:14px 16px;margin:12px 0 16px}.action-groups{display:flex;gap:24px;flex-wrap:wrap}.action-group-title{font-weight:600;margin-bottom:6px;font-size:14px}.action-item{font-size:13px;line-height:1.7}.action-item.overdue{color:#b91c1c;font-weight:600}.history-section{margin:16px 0}.history-list{list-style:none;padding:0;font-size:13px;line-height:1.9}.history-date{color:#64748b}.history-list pre{background:#f8fafc;padding:8px;border-radius:6px;white-space:pre-wrap;font-size:12px}.missing-fields{margin-top:8px;color:#b45309}@media (max-width: 768px){.main{padding:12px}.form-grid{grid-template-columns:1fr!important}.action-buttons{flex-direction:column;align-items:stretch}.action-buttons button{width:100%;padding:12px;font-size:15px}.nav{flex-wrap:wrap;gap:8px}.data-table thead{display:none}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block;width:100%}.data-table tr{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px;padding:8px 12px;background:#fff}.data-table td{border:none;padding:4px 0;text-align:left}.data-table td[data-label]:before{content:attr(data-label) ": ";font-weight:600;color:#64748b}.data-table td input,.data-table td select{width:100%}.action-groups{flex-direction:column;gap:12px}}.receipt-upload{display:inline-block;padding:8px 14px;background:#0b6fa4;color:#fff;border-radius:6px;cursor:pointer;font-size:14px}.receipt-upload:hover{background:#0b4a6f}:root{--sea-bg: #0a1828;--sea-surface: #102640;--sea-surface-2: #16314f;--sea-border: #1f4060;--sea-text: #dce8f2;--sea-text-dim: #8fa9bf;--sea-accent: #2dd4bf;--sea-accent-dark: #14b8a6;--sea-amber: #fbbf24;--sea-red: #f87171;--sea-green: #4ade80}body{background:var(--sea-bg);color:var(--sea-text)}.layout,.main{background:var(--sea-bg)}.header{background:linear-gradient(180deg,#0d1f35,#0a1828);border-bottom:2px solid var(--sea-accent);box-shadow:0 2px 12px #0006}.header h1 a{color:var(--sea-accent);letter-spacing:.5px}.header h1 a:before{content:"⚓ "}.nav a{color:var(--sea-text-dim);transition:color .15s}.nav a:hover{color:var(--sea-accent)}.user-name{color:var(--sea-text-dim)}h2,h3{color:var(--sea-text)}.page-subtitle{color:var(--sea-text-dim)}.form-section,.request-info,.request-lines,.request-actions,.documents-section,.bdn-form,.history-section{background:var(--sea-surface);border:1px solid var(--sea-border);border-radius:10px;padding:16px;margin:14px 0}.suggestions-panel{background:var(--sea-surface);border:1px dashed var(--sea-accent)}.action-required{background:#1d2a14;border-color:var(--sea-amber);color:var(--sea-text)}.data-table{color:var(--sea-text)}.data-table th{background:var(--sea-surface-2)!important;color:var(--sea-text-dim)!important;border-color:var(--sea-border)!important;text-transform:uppercase;font-size:11px;letter-spacing:.5px}.data-table td{border-color:var(--sea-border)!important}.data-table tr{background:var(--sea-surface)}.data-table tr:nth-child(2n){background:#0e2238}.data-table tr:hover{background:var(--sea-surface-2)}input,select,textarea,.form-group input,.form-group select,.form-group textarea{background:#0c1e33!important;color:var(--sea-text)!important;border:1px solid var(--sea-border)!important;border-radius:6px}input:focus,select:focus,textarea:focus{border-color:var(--sea-accent)!important;outline:none;box-shadow:0 0 0 2px #2dd4bf33}input::placeholder,textarea::placeholder{color:#5a7690}button,.receipt-upload{background:var(--sea-accent-dark);color:#06251f;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .15s}button:hover,.receipt-upload:hover{background:var(--sea-accent)}button:disabled{background:#2a4258;color:#6b8299;cursor:not-allowed}.logout-btn{background:transparent;color:var(--sea-text-dim);border:1px solid var(--sea-border)}.logout-btn:hover{color:var(--sea-accent);border-color:var(--sea-accent);background:transparent}.status-badge{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.4px}.status-received{background:#1e3a5f;color:#7dd3fc}.status-priced_internally{background:#3b2f1e;color:var(--sea-amber)}.status-supplier_order_draft,.status-supplier_order_sent{background:#2e1f47;color:#c4b5fd}.status-waiting_bdn{background:#173042;color:#67e8f9}.status-bdn_received{background:#14321f;color:var(--sea-green)}.status-ready_to_invoice,.status-invoiced{background:#0f2e2a;color:var(--sea-accent)}.status-closed{background:#1f2937;color:#9ca3af}.status-cancelled{background:#371b1b;color:var(--sea-red)}.payment-paid{background:#14321f;color:var(--sea-green)}.payment-partial{background:#3b2f1e;color:var(--sea-amber)}.payment-unpaid{background:#371b1b;color:var(--sea-red)}.combobox-list{background:var(--sea-surface-2);border-color:var(--sea-border)}.combobox-item{color:var(--sea-text)}.combobox-item.highlighted{background:#1d4055}.combobox-item.unconfirmed{color:var(--sea-text-dim)}.tg-bind-banner{background:#0f2e3d;border-bottom:1px solid var(--sea-accent);color:var(--sea-text)}.tg-bind-banner code{background:var(--sea-surface-2);color:var(--sea-accent)}.success-message{background:#14321f;color:var(--sea-green);border:1px solid #1f5c33;border-radius:6px;padding:10px 14px}.error-message{background:#371b1b;color:var(--sea-red);border:1px solid #6b2525;border-radius:6px;padding:10px 14px}.history-list pre{background:#0c1e33;color:var(--sea-text-dim)}.history-date{color:var(--sea-text-dim)}.variance-ok{color:var(--sea-green)}.variance-warning,.missing-fields{color:var(--sea-amber)}.action-item.overdue{color:var(--sea-red)}.payment-summary{display:flex;gap:16px;flex-wrap:wrap;align-items:center;padding:10px 0;font-size:14px}.payment-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.payment-form input,.payment-form select{min-width:120px}.payment-pending-row{outline:1px dashed var(--sea-amber)}.bottom-nav{display:none}@media (max-width: 768px){.header .nav a,.header .nav .user-name{display:none}.main{padding-bottom:76px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--sea-surface);border-top:1px solid var(--sea-border);box-shadow:0 -2px 12px #00000080;justify-content:space-around;padding:6px 0 max(6px,env(safe-area-inset-bottom))}.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--sea-text-dim);text-decoration:none;font-size:11px;padding:4px 10px}.bottom-nav a .bn-icon{font-size:20px;line-height:1}.bottom-nav a.active,.bottom-nav a:hover{color:var(--sea-accent)}.data-table tr{background:var(--sea-surface);border-color:var(--sea-border)}}
