:root{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #f1f3f5;--text-primary: #212529;--text-secondary: #6c757d;--border-color: #dee2e6;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--primary-color: #0066cc;--success-color: #28a745;--danger-color: #dc3545;--warning-color: #ffc107}.dark{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--text-primary: #e4e4e4;--text-secondary: #a0a0a0;--border-color: #404040;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .5);--primary-color: #4da3ff;--success-color: #5cb85c;--danger-color: #ff6b6b;--warning-color: #ffd93d}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-secondary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.app-container{display:flex;flex-direction:column;height:100vh;background:var(--bg-secondary);width:100%;overflow:hidden}.app-header{background:var(--bg-secondary);padding:8px 12px 0;position:sticky;top:0;z-index:100}.header-container{margin:0;padding:8px 12px;display:flex;justify-content:space-between;align-items:center;width:100%;background:var(--bg-primary);border-radius:8px;box-shadow:var(--shadow-sm)}.header-left{display:flex;align-items:center;gap:16px}.header-titles{display:flex;flex-direction:column;gap:2px}.header-title{font-size:20px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.version-badge{background:var(--primary-color);color:#fff;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.header-subtitle{font-size:12px;color:var(--text-secondary)}.header-right{display:flex;align-items:center;gap:16px}.header-user-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.user-name{font-size:14px;font-weight:500;color:var(--text-primary)}.user-role{font-size:11px;color:var(--text-secondary);text-transform:uppercase}.theme-toggle{background:transparent;border:1px solid var(--border-color);border-radius:8px;padding:8px;cursor:pointer;color:var(--text-primary);transition:all .2s}.theme-toggle:hover{background:var(--bg-secondary);transform:scale(1.05)}.settings-dropdown{position:relative}.settings-button{background:transparent;border:1px solid var(--border-color);border-radius:8px;padding:8px;cursor:pointer;color:var(--text-primary);transition:all .2s}.settings-button:hover{background:var(--bg-secondary)}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);min-width:180px;z-index:1000}.dropdown-item{display:flex;align-items:center;gap:8px;padding:10px 16px;background:none;border:none;color:var(--text-primary);font-size:14px;cursor:pointer;width:100%;text-align:left;transition:background .2s}.dropdown-item:hover{background:var(--bg-secondary)}.dropdown-divider{height:1px;background:var(--border-color);margin:4px 0}.sign-out-button{background:transparent;border:1px solid var(--border-color);border-radius:8px;padding:8px 16px;cursor:pointer;color:var(--text-primary);display:flex;align-items:center;gap:6px;font-size:14px;transition:all .2s}.sign-out-button:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.app-main{flex:1;padding:8px 12px;width:100%;margin:0;overflow:hidden;display:flex;flex-direction:column}.main-nav-tabs{display:flex;gap:8px;margin-bottom:8px;background:var(--bg-primary);border-radius:8px;padding:6px;box-shadow:var(--shadow-sm);width:100%;flex-shrink:0}.main-nav-tab{display:flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;border:1px solid transparent;border-radius:8px;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.main-nav-tab:hover{background:var(--bg-secondary);color:var(--text-primary)}.main-nav-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.main-nav-tab svg{flex-shrink:0}.dtr-container{background:var(--bg-primary);border-radius:8px;padding:12px;box-shadow:var(--shadow-sm);flex:1;width:100%;overflow:auto}.dtr-content{max-width:100%;margin:0}.dtr-title{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.dtr-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:20px}.kyc-tab-container{background:var(--bg-secondary);border-radius:8px;box-shadow:var(--shadow-sm);flex:1;width:100%;overflow:hidden;display:flex;flex-direction:column;min-height:0}.dtr-container .time-tracking-card{max-height:none;font-size:14px;padding:20px}.dtr-container .time-tracking-card h3{font-size:18px}.dtr-container .live-clock{font-size:14px;padding:6px 12px}.dtr-container .weekly-logs{max-height:500px}.site-overview-container{background:var(--bg-primary);border-radius:8px;padding:12px;box-shadow:var(--shadow-sm);width:100%;flex:1;overflow:hidden}.dashboard-container{display:grid;grid-template-columns:minmax(280px,320px) 1fr;gap:12px;flex:1;width:100%;min-height:0;margin:0;overflow:hidden}.dashboard-left{display:flex;flex-direction:column;gap:16px;overflow-y:auto}.dashboard-center{background:var(--bg-primary);border-radius:12px;padding:12px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:8px;height:100%;width:100%;min-width:0;flex:1;position:relative;min-height:700px}.client-management-container{background:var(--bg-primary);border-radius:12px;padding:16px;box-shadow:var(--shadow-sm);flex:1;min-height:400px;max-height:calc(100vh - 350px);overflow-y:auto;display:flex;flex-direction:column}.client-management-container h3{font-size:16px;margin-bottom:12px;color:var(--text-primary)}.selected-client-card{background:var(--bg-secondary);border-radius:8px;padding:12px;margin-top:12px}.client-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.client-header h4{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.clear-button{background:transparent;border:1px solid var(--border-color);border-radius:4px;padding:4px 12px;font-size:12px;cursor:pointer;color:var(--text-secondary);transition:all .2s}.clear-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.client-contact{display:flex;gap:16px;font-size:12px;color:var(--text-secondary)}.client-lots-section{margin-top:16px;flex:1;display:flex;flex-direction:column}.client-lots-section h4{font-size:14px;margin-bottom:12px;color:var(--text-primary)}.lots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;overflow-y:auto;max-height:200px}.lot-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:10px;cursor:pointer;transition:all .2s}.lot-card:hover{background:var(--bg-tertiary);border-color:var(--primary-color)}.lot-card.selected{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.lot-card.selected .lot-site,.lot-card.selected .lot-number,.lot-card.selected .lot-details,.lot-card.selected .lot-payment-type{color:#fff}.lot-site{font-size:12px;font-weight:600;color:var(--primary-color);margin-bottom:4px}.lot-number{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:6px}.lot-details{display:flex;justify-content:space-between;font-size:11px;color:var(--text-secondary);margin-bottom:4px}.lot-payment-type{font-size:11px;color:var(--text-secondary)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lot-details-expanded{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:75%;max-width:850px;max-height:80vh;background:var(--bg-primary);border-radius:8px;box-shadow:var(--shadow-lg);z-index:1000;display:flex;flex-direction:column;overflow:hidden}.lot-details-header{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.lot-details-header h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.lot-details-content{flex:1;overflow-y:auto;padding:0;display:flex;flex-direction:column}.close-details-button{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-secondary);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.close-details-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.property-info-grid{padding:10px 12px;background:var(--bg-primary);border-bottom:1px solid var(--border-color)}.info-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:8px}.info-row.financial{background:var(--bg-secondary);padding:8px;border-radius:6px;margin-top:8px}.info-item{display:flex;justify-content:space-between;align-items:center}.info-label{font-size:11px;color:var(--text-secondary);font-weight:500}.info-value{font-size:12px;color:var(--text-primary);font-weight:600;text-align:right}.info-value.large{font-size:16px}.info-value.success{color:var(--success-color)}.info-value.danger{color:var(--danger-color)}.payment-history-section{flex:.8;padding:10px 12px;overflow:hidden;display:flex;flex-direction:column}.payment-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.payment-history-header h4{font-size:13px;font-weight:600;color:var(--text-primary);margin:0}.detailed-payments-table{flex:1;display:flex;flex-direction:column;overflow:hidden}.detailed-payments-header{display:grid;grid-template-columns:50px 100px 1fr 100px;gap:10px;padding:8px 10px;background:var(--bg-secondary);border-radius:6px 6px 0 0;font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.detailed-payments-body{flex:1;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border-color);border-top:none;border-radius:0 0 6px 6px}.detailed-payment-row{display:grid;grid-template-columns:50px 100px 1fr 100px;gap:10px;padding:6px 10px;border-bottom:1px solid var(--border-color);font-size:11px;align-items:center;transition:background .2s}.detailed-payment-row:hover{background:var(--bg-secondary)}.detailed-payment-row:last-child{border-bottom:none}.col-number{color:var(--text-secondary);font-weight:500}.col-date{color:var(--text-primary)}.col-description{color:var(--text-primary);font-style:italic}.col-amount{color:var(--success-color);font-weight:600;text-align:right}.lot-summary h4{font-size:14px;margin-bottom:12px;color:var(--text-primary)}.lot-financial-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.summary-item{display:flex;justify-content:space-between;font-size:12px;padding:4px 0}.summary-item .label{color:var(--text-secondary)}.summary-item .value{font-weight:600;color:var(--text-primary)}.summary-item .value.success{color:var(--success-color)}.summary-item .value.danger{color:var(--danger-color)}.add-payment-button{width:100%;padding:8px;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.add-payment-button:hover{background:#0052a3}.payment-history{margin-top:16px;flex:1;display:flex;flex-direction:column;overflow:hidden}.payment-history h4{font-size:14px;margin-bottom:12px;color:var(--text-primary)}.no-payments,.no-properties,.loading-message{text-align:center;color:var(--text-secondary);font-size:12px;padding:20px}.loading-message{color:var(--primary-color)}.payments-table{font-size:11px;flex:1;display:flex;flex-direction:column;overflow:hidden}.payments-header{display:grid;grid-template-columns:80px 80px 80px 70px 1fr;gap:8px;padding:8px;background:var(--bg-tertiary);border-radius:4px;margin-bottom:4px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.payment-row{display:grid;grid-template-columns:80px 80px 80px 70px 1fr;gap:8px;padding:6px 8px;border-bottom:1px solid var(--border-color);align-items:center}.payment-row:hover{background:var(--bg-tertiary)}.payment-row .amount{font-weight:600;color:var(--success-color)}.payment-row .status{padding:2px 6px;border-radius:4px;font-size:10px;font-weight:500;text-align:center}.payment-row .status.approved,.payment-row .status.Completed{background:#28a7451a;color:var(--success-color)}.payment-row .status.pending{background:#ffc1071a;color:var(--warning-color)}.payment-row .notes{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.payments-body{flex:1;overflow-y:auto;max-height:150px}.search-wrapper,.search-input-group{position:relative}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.search-input{width:100%;padding:10px 12px 10px 40px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-primary);color:var(--text-primary)}.search-results{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);max-height:300px;overflow-y:auto;z-index:50}.search-result-item{padding:12px;cursor:pointer;transition:background .2s;border-bottom:1px solid var(--border-color)}.search-result-item:hover{background:var(--bg-secondary)}.search-result-item:last-child{border-bottom:none}.client-info{display:flex;flex-direction:column;gap:4px;width:100%}.client-name-row{display:flex;justify-content:space-between;align-items:center}.client-name{font-weight:500;font-size:14px;color:var(--text-primary)}.lot-count{background:var(--primary-color);color:#fff;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.client-details{font-size:12px;color:var(--text-secondary);display:flex;gap:8px}.client-lots-preview{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.lot-preview{background:var(--bg-tertiary);padding:3px 8px;border-radius:4px;font-size:11px;color:var(--primary-color);font-weight:500;display:inline-flex;align-items:center;gap:2px}.lot-preview.clickable{cursor:pointer;transition:all .2s;border:1px solid transparent}.lot-preview.clickable:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-1px)}.more-lots{color:var(--text-secondary);font-size:10px;font-style:italic;padding:2px 4px}.quick-payment-btn{background:var(--success-color);color:#fff;border:none;border-radius:4px;padding:3px 10px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s;margin-left:auto}.quick-payment-btn:hover{background:#218838;transform:scale(1.05)}.property-info{color:var(--primary-color)}.payment-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.payment-form-card{background:var(--bg-primary);border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.payment-form-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.payment-form-header h4{font-size:18px;color:var(--text-primary)}.close-button{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-secondary);width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.close-button:hover{background:var(--bg-secondary)}.payment-form{padding:20px}.property-summary{background:var(--bg-secondary);padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px;color:var(--text-primary)}.property-summary p{margin:4px 0}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:6px;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background:var(--bg-primary);color:var(--text-primary)}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.btn-primary,.btn-secondary{padding:8px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:#0052a3}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-tertiary)}.time-tracking-card{background:var(--bg-primary);border-radius:8px;padding:6px;box-shadow:var(--shadow-sm);flex-shrink:0;margin-top:auto;max-height:180px;overflow-y:auto;font-size:10px}.time-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.time-tracking-card h3{font-size:12px;color:var(--text-primary);margin:0}.live-clock{font-size:10px;font-weight:600;color:var(--primary-color);background:var(--bg-secondary);padding:2px 4px;border-radius:4px}.time-status{margin-bottom:6px;display:flex;align-items:center;gap:8px}.status-indicator{font-size:10px;font-weight:500;padding:3px 6px;border-radius:4px;background:var(--bg-secondary);display:inline-block}.status-indicator.active{background:#28a7451a;color:var(--success-color)}.current-session{font-size:10px;color:var(--text-secondary);display:flex;gap:8px}.current-session p{margin:0}.live-duration{font-weight:600;color:var(--primary-color);font-size:10px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.time-actions{margin-bottom:6px}.hanging-sessions-alert{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:4px;padding:4px;margin-bottom:6px;font-size:10px}.alert-header{display:flex;align-items:center;gap:4px;margin-bottom:4px;padding-bottom:3px;border-bottom:1px solid rgba(255,193,7,.2)}.alert-icon{font-size:11px}.alert-text{font-weight:600;color:var(--warning-color);font-size:10px}.hanging-session{display:flex;align-items:center;justify-content:space-between;padding:2px;background:var(--bg-primary);border-radius:3px;margin-bottom:2px}.hanging-session:last-child{margin-bottom:0}.session-date{font-size:9px;color:var(--text-secondary);font-weight:500}.session-time{font-size:9px;color:var(--warning-color);font-weight:600}.btn-close-session{padding:1px 6px;font-size:9px;background:var(--danger-color);color:#fff;border:none;border-radius:3px;cursor:pointer;font-weight:500;transition:opacity .2s}.btn-close-session:hover{opacity:.8}.btn-close-session:disabled{opacity:.5;cursor:not-allowed}.btn-time-in,.btn-time-out{width:100%;padding:5px;border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;border:none;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .2s}.btn-time-in{background:var(--success-color);color:#fff}.btn-time-out{background:var(--danger-color);color:#fff}.btn-time-in:hover,.btn-time-out:hover{opacity:.9}.btn-time-in svg,.btn-time-out svg{width:14px;height:14px}.weekly-summary{border-top:1px solid var(--border-color);padding-top:12px;padding-bottom:12px;display:flex;flex-direction:column;flex:1.44;min-height:180px}.week-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.weekly-summary h4{font-size:11px;color:var(--text-primary);margin:0}.week-range{font-size:9px;color:var(--text-secondary);background:var(--bg-secondary);padding:1px 4px;border-radius:3px}.weekly-total{font-size:11px;font-weight:600;color:var(--primary-color);background:var(--bg-secondary);padding:3px;border-radius:4px;margin-bottom:4px;text-align:center}.weekly-logs{display:grid;grid-template-columns:1fr 1fr;gap:2px}.day-section{background:var(--bg-secondary);border-radius:6px;padding:4px 6px;transition:all .2s;min-height:36px}.day-section.today{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,102,204,.08) 100%);border:1px solid rgba(0,102,204,.3)}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.day-name{font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:4px}.today-badge{font-size:10px;background:var(--primary-color);color:#fff;padding:2px 4px;border-radius:8px;font-weight:500}.day-total{font-size:12px;font-weight:600;color:var(--success-color)}.day-logs{display:flex;flex-direction:column;gap:2px}.log-entry{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:2px;padding:2px 4px;border-radius:4px;background:var(--bg-primary)}.time-in{color:var(--success-color);font-weight:500;font-size:10px}.time-separator{color:var(--text-secondary);font-size:10px}.time-out{color:var(--danger-color);font-weight:500;font-size:10px}.duration{margin-left:auto;color:var(--primary-color);font-weight:600;font-size:10px}.in-progress{color:var(--primary-color);font-weight:600;margin-left:auto;animation:pulse 2s infinite;font-size:12px;background:#0066cc1a;padding:2px 4px;border-radius:4px}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.no-logs{font-size:12px;color:var(--text-tertiary);font-style:italic;text-align:center;padding:2px}.today-summary h4{font-size:14px;margin-bottom:8px;color:var(--text-primary)}.today-summary p{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.hours{color:var(--primary-color);font-weight:500}.calendar-card{background:var(--bg-primary);border-radius:8px;padding:6px;box-shadow:var(--shadow-sm);flex-shrink:0;max-height:200px;overflow-y:auto;font-size:10px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.calendar-header h3{font-size:12px;color:var(--text-primary);margin:0}.month-navigation{display:flex;align-items:center;gap:6px}.nav-button{background:none;border:none;cursor:pointer;color:var(--text-primary);padding:2px;border-radius:3px;transition:background .2s;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.nav-button:hover{background:var(--bg-secondary)}.nav-button svg{width:14px;height:14px}.current-month{font-size:11px;font-weight:500;color:var(--text-primary);min-width:100px;text-align:center}.calendar-grid{margin-bottom:8px}.weekday-headers{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:2px}.weekday-headers div{text-align:center;font-size:9px;font-weight:500;color:var(--text-secondary);padding:2px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:10px;border-radius:3px;position:relative;cursor:pointer;transition:background .2s;color:var(--text-primary);min-height:24px}.calendar-day:hover:not(.empty){background:var(--bg-secondary)}.calendar-day.today{background:var(--primary-color);color:#fff;font-weight:600}.calendar-day.holiday{color:var(--danger-color);font-weight:500}.calendar-day.today.holiday{background:var(--danger-color);color:#fff}.holiday-indicator{position:absolute;top:1px;right:1px;font-size:6px;color:var(--danger-color)}.calendar-day.today .holiday-indicator{color:#fff}.upcoming-holidays{border-top:1px solid var(--border-color);padding-top:6px}.upcoming-holidays h4{font-size:11px;margin-bottom:4px;color:var(--text-primary)}.holiday-item{display:flex;justify-content:space-between;padding:3px 0;font-size:10px;border-bottom:1px solid var(--border-color)}.holiday-item:last-child{border-bottom:none}.holiday-date{color:var(--text-secondary);font-weight:500;font-size:9px}.holiday-name{color:var(--text-primary);font-size:9px}.group-chat-container{position:fixed;bottom:20px;right:20px;width:420px;background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);z-index:999;transition:all .3s ease}.group-chat-container.collapsed{height:48px}.group-chat-container.expanded{height:500px}.chat-header{padding:12px 16px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;cursor:pointer;background:var(--bg-primary);border-radius:12px 12px 0 0}.chat-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--text-primary)}.unread-badge{background:var(--danger-color);color:#fff;padding:2px 6px;border-radius:10px;font-size:11px;font-weight:600}.toggle-chat{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary)}.chat-messages{height:390px;overflow-y:auto;padding:12px;background:var(--bg-secondary)}.no-messages{text-align:center;color:var(--text-secondary);font-size:13px;padding:20px}.message{margin-bottom:12px;padding:8px 12px;background:var(--bg-primary);border-radius:8px;font-size:13px}.message.own-message{background:var(--primary-color);color:#fff;margin-left:20%}.message-header{display:flex;justify-content:space-between;margin-bottom:4px;font-size:11px;opacity:.7}.sender-name{font-weight:500}.message-content{word-wrap:break-word}.chat-input-form{display:flex;padding:12px;border-top:1px solid var(--border-color);background:var(--bg-primary);border-radius:0 0 12px 12px;gap:8px}.chat-input-wrapper{flex:1;display:flex;align-items:center;gap:8px;position:relative}.attach-button{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary);transition:all .2s;flex-shrink:0}.attach-button:hover{background:var(--bg-tertiary);transform:scale(1.1)}.attach-button:disabled{opacity:.5;cursor:not-allowed}.selected-file{display:flex;align-items:center;gap:6px;background:var(--bg-secondary);padding:4px 8px;border-radius:12px;font-size:11px;color:var(--text-primary);max-width:150px}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.remove-file{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;line-height:1;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.remove-file:hover{background:var(--bg-tertiary);color:var(--danger-color)}.chat-input{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:20px;font-size:13px;background:var(--bg-primary);color:var(--text-primary);outline:none;min-width:0}.send-button{background:var(--primary-color);color:#fff;border:none;border-radius:50%;width:36px;height:36px;margin-left:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.send-button:hover:not(:disabled){transform:scale(1.1)}.send-button:disabled{opacity:.5;cursor:not-allowed}.send-button .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.message-attachment{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.message.own-message .message-attachment{border-top-color:#fff3}.attachment-image{max-width:100%;max-height:200px;border-radius:8px;cursor:pointer;transition:transform .2s}.attachment-image:hover{transform:scale(1.02)}.attachment-link{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none;padding:8px 12px;background:#ffffff1a;border-radius:8px;transition:background .2s;font-size:12px}.message.own-message .attachment-link{background:#ffffff26}.attachment-link:hover{background:#fff3}.chat-header-actions{display:flex;align-items:center;gap:8px}.settings-button{background:none;border:none;padding:4px;cursor:pointer;color:var(--text-secondary);border-radius:4px;transition:all .2s}.settings-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.chat-settings{padding:16px;background:var(--bg-secondary);max-height:400px;overflow-y:auto}.settings-section{margin-bottom:16px}.settings-section:last-child{margin-bottom:0}.settings-section h4{font-size:13px;font-weight:600;margin-bottom:10px;color:var(--text-primary)}.settings-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;color:var(--text-primary)}.settings-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary-color)}.tone-options{display:flex;flex-direction:column;gap:8px}.tone-option{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;color:var(--text-primary);padding:6px 10px;border-radius:6px;transition:background .2s}.tone-option:hover{background:var(--bg-tertiary)}.tone-option input[type=radio]{width:14px;height:14px;cursor:pointer;accent-color:var(--primary-color)}.tone-info{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--bg-tertiary);border-radius:8px}.tone-active{color:#22c55e;font-size:13px;font-weight:500}.preview-tone-btn{padding:6px 14px;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:12px;cursor:pointer;transition:background .2s}.preview-tone-btn:hover{background:var(--primary-hover)}.message-read-by{font-size:10px;color:#888;margin-top:4px;font-style:italic}.own-message .message-read-by{text-align:right;color:#ffffffb3}.payment-history-table{font-size:clamp(9px,.8vw,11px);width:100%;height:100%;display:flex;flex-direction:column;min-width:0;overflow:hidden}.payment-history-header{display:grid;grid-template-columns:90px 70px 160px 90px 85px 120px 110px minmax(150px,1fr);gap:6px;padding:6px 8px;background:var(--bg-secondary);border-radius:4px;margin-bottom:2px;font-weight:600;color:var(--text-secondary);font-size:9px;text-transform:uppercase;letter-spacing:.3px;position:sticky;top:0;z-index:10;width:100%;min-width:875px}.payment-history-body{flex:1;overflow-y:auto;overflow-x:auto;max-height:calc((100vh - 200px)*.8);min-height:320px;width:100%}.payment-history-row{display:grid;grid-template-columns:90px 70px 160px 90px 85px 120px 110px minmax(150px,1fr);gap:6px;padding:5px 8px;border-bottom:1px solid var(--border-color);transition:background .2s;align-items:center;width:100%;min-width:875px;font-size:10px}.payment-history-row:hover{background:var(--bg-secondary)}.payment-history-row .col-site{font-weight:500;color:var(--primary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(8px,.75vw,11px);min-width:0}.payment-history-row .col-lot{font-family:monospace;font-size:clamp(9px,.85vw,11px);color:var(--text-primary)}.payment-history-row .col-client{font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(8px,.75vw,11px);min-width:0}.payment-history-row .col-amount{font-weight:600;color:var(--success-color);font-size:clamp(9px,.85vw,11px)}.payment-history-row .col-date{color:var(--text-secondary);font-size:clamp(9px,.85vw,11px)}.payment-history-row .col-processor{color:var(--text-secondary);font-size:clamp(9px,.85vw,11px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-history-row .col-processed-date{color:var(--text-secondary);font-size:clamp(9px,.85vw,11px);white-space:nowrap}.payment-history-row .col-note{color:var(--text-secondary);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;padding-right:5px}.payment-history-row .col-actions{display:flex;gap:6px}.permissions-badge{display:flex;gap:6px;margin-bottom:12px}.permissions-badge .perm{background:var(--primary-color);color:#fff;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.compact-tabs{display:flex;gap:8px;margin-bottom:12px;border-bottom:1px solid var(--border-color)}.compact-tab{background:none;border:none;padding:8px 12px;font-size:13px;font-weight:500;cursor:pointer;color:var(--text-secondary);border-bottom:2px solid transparent;transition:all .2s}.compact-tab:hover{color:var(--text-primary)}.compact-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.compact-content{flex:1;overflow:hidden;display:flex;flex-direction:column;width:100%;min-width:0}.compact-payments{flex:1;display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;height:100%;min-height:550px}.compact-payments h4{font-size:clamp(12px,1vw,14px);margin-bottom:clamp(6px,.8vw,10px);color:var(--text-primary);flex-shrink:0}.compact-table{font-size:11px}.compact-header{display:grid;grid-template-columns:50px 60px 60px 60px 50px 40px;gap:8px;padding:8px;background:var(--bg-secondary);border-radius:6px;margin-bottom:4px;font-weight:600;color:var(--text-secondary)}.compact-row{display:grid;grid-template-columns:50px 60px 60px 60px 50px 40px;gap:8px;padding:6px 8px;border-bottom:1px solid var(--border-color);transition:background .2s}.compact-row:hover{background:var(--bg-secondary)}.compact-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-row .code{color:var(--primary-color);font-weight:500}.compact-row .client{font-weight:500;color:var(--text-primary)}.compact-row .amt{color:var(--success-color);font-weight:600}.compact-row .status.pending{color:var(--warning-color)}.compact-row .actions{display:flex;gap:4px}.mini-approve,.mini-reject{width:20px;height:20px;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:700;transition:all .2s}.mini-approve{background:#28a74533;color:var(--success-color)}.mini-approve:hover{background:var(--success-color);color:#fff}.mini-reject{background:#dc354533;color:var(--danger-color)}.mini-reject:hover{background:var(--danger-color);color:#fff}.app-footer{background:var(--bg-primary);border-top:1px solid var(--border-color);padding:12px 20px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-secondary)}.footer-left{display:flex;align-items:center;gap:12px}.footer-title{font-weight:500;color:var(--text-primary)}.footer-right{display:flex;align-items:center;gap:8px}.footer-separator{opacity:.5}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog{background:var(--bg-primary);border-radius:12px;width:90%;max-width:450px;box-shadow:var(--shadow-lg)}.dialog-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.dialog-header h2{font-size:18px;font-weight:600;color:var(--text-primary)}.dialog-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.dialog-close:hover{background:var(--bg-secondary)}.dialog-content{padding:20px}.dialog-footer{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.button-primary,.button-secondary{padding:8px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.button-primary{background:var(--primary-color);color:#fff}.button-primary:hover{background:#0052a3}.button-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.button-secondary:hover{background:var(--bg-tertiary)}.error-message{color:var(--danger-color);font-size:13px;margin-top:8px}.no-data{text-align:center;color:var(--text-secondary);padding:20px;font-size:13px}.no-permission{text-align:center;padding:40px;color:var(--text-secondary)}.no-permission p{margin:8px 0}.loading{text-align:center;padding:40px;color:var(--text-secondary)}.desktop-login-container{min-height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.desktop-login-wrapper{display:flex;width:90%;max-width:1200px;height:70vh;min-height:600px;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.desktop-logo-section{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:4rem}.desktop-card{flex:1;background:#fff;padding:4rem;display:flex;flex-direction:column;justify-content:center;align-items:center}.desktop-card-header{text-align:center;margin-bottom:2rem;width:100%;max-width:400px}.desktop-card-title{font-size:28px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.desktop-card-description{font-size:15px;color:#6c757d}.desktop-card-content{width:100%;max-width:400px}.desktop-form{display:flex;flex-direction:column;gap:20px;width:100%}.desktop-form-group{display:flex;flex-direction:column;gap:8px}.desktop-label{font-size:14px;font-weight:500;color:#1a1a1a}.desktop-input{padding:12px 16px;border:1px solid #dee2e6;border-radius:8px;font-size:15px;transition:all .2s;width:100%}.desktop-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.desktop-form-helper{font-size:11px;color:#6c757d;margin-top:2px}.desktop-button-primary{padding:14px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;width:100%}.desktop-button-primary:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b469f);transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.desktop-button-primary:disabled{opacity:.6;cursor:not-allowed}.desktop-divider{text-align:center;position:relative;margin:24px 0;width:100%}.desktop-divider-text{background:#fff;padding:0 12px;color:#6c757d;font-size:12px;position:relative}.desktop-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#dee2e6;z-index:0}.desktop-apple-button{width:100%;padding:10px;background:#000;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.desktop-apple-button svg{width:18px;height:18px}.desktop-apple-button:hover:not(:disabled){background:#1a1a1a}.desktop-apple-button:disabled{opacity:.6;cursor:not-allowed}.desktop-error{color:#dc3545;font-size:12px;margin-top:8px;text-align:center}@media screen and (max-width: 1400px){.dashboard-container{grid-template-columns:minmax(320px,30%) minmax(0,1fr)}.payment-history-header,.payment-history-row{font-size:10px}}@media screen and (max-width: 1200px){.dashboard-container{grid-template-columns:minmax(300px,35%) minmax(0,1fr)}.payment-history-header,.payment-history-row{font-size:9px;gap:5px;padding:5px 10px}.payment-history-row .col-site,.payment-history-row .col-client{font-size:9px}}@media screen and (max-width: 1024px){.dashboard-container{grid-template-columns:1fr;gap:15px}.dashboard-left{display:grid;grid-template-columns:1fr 1fr;gap:15px}.payment-history-table{font-size:11px}}@media screen and (min-width: 1600px){.dashboard-container{grid-template-columns:minmax(380px,22%) minmax(0,1fr)}.payment-history-table{font-size:11px}}@media screen and (min-width: 1920px){.dashboard-container{width:100%;max-width:none;grid-template-columns:minmax(380px,22%) minmax(0,1fr)}.payment-history-header,.payment-history-row{font-size:11px;padding:8px 16px}}@media screen and (max-width: 768px){.dashboard-container{grid-template-columns:1fr;gap:10px;height:auto;min-height:100vh}.dashboard-left{display:flex;flex-direction:column;gap:10px}.payment-history-header,.payment-history-row{font-size:8px;grid-template-columns:50px 40px 80px 50px 50px 60px 60px 1fr;gap:3px;padding:4px 8px}.payment-history-body{max-height:400px;min-height:200px}}@media screen and (min-width: 2560px){.dashboard-container{grid-template-columns:minmax(400px,18%) minmax(0,1fr)}.payment-history-header,.payment-history-row{font-size:12px;gap:16px;padding:10px 20px}}.site-overview-wrapper{width:100%;height:100%;display:grid;grid-template-columns:150px 1fr 280px;gap:10px}.site-card-panel{background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border-color);flex-shrink:0}.panel-header h3{font-size:12px;font-weight:600;color:var(--text-primary);margin:0}.panel-header-left{display:flex;align-items:center;gap:8px}.scheme-tabs{display:flex;gap:2px;background:var(--bg-tertiary);padding:2px;border-radius:6px}.scheme-tab{font-size:10px;padding:4px 10px;border:none;background:transparent;color:var(--text-secondary);border-radius:4px;cursor:pointer;transition:all .15s;font-weight:500}.scheme-tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.scheme-tab.active{background:var(--primary-color);color:#fff}.site-name-label{font-size:11px;color:var(--text-secondary);font-weight:500}.badge{font-size:10px;color:var(--text-secondary);background:var(--bg-tertiary);padding:2px 6px;border-radius:8px}.header-actions{display:flex;align-items:center;gap:8px}.zoom-controls{display:flex;align-items:center;gap:4px;background:var(--bg-tertiary);padding:2px 6px;border-radius:4px}.zoom-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:3px;font-size:12px;cursor:pointer;color:var(--text-primary)}.zoom-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.zoom-btn.reset{font-size:10px}.zoom-level{font-size:10px;color:var(--text-secondary);min-width:35px;text-align:center}.draw-btn{font-size:10px;padding:3px 8px;background:#10b981;color:#fff;border:none;border-radius:4px;cursor:pointer}.draw-btn:hover{background:#059669}.draw-btn:disabled{opacity:.6;cursor:not-allowed}.upload-btn{font-size:10px;padding:3px 8px;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.site-overview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary)}.loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.site-list-panel .sites-grid{display:flex;flex-direction:column;gap:2px;padding:8px;overflow-y:auto;flex:1}.site-card{padding:6px 8px;background:var(--bg-primary);border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .15s ease}.site-card:hover{background:var(--bg-tertiary)}.site-card.active{background:var(--primary-color)}.site-card.active .site-name{color:#fff}.site-name{font-size:11px;font-weight:500;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-scheme-panel{display:flex;flex-direction:column}.scheme-content{flex:1;display:flex;align-items:flex-start;justify-content:flex-start;min-height:400px;padding:12px;overflow:auto;position:relative;-webkit-user-select:none;user-select:none}.scheme-content.pictures-content{align-items:stretch;justify-content:stretch;padding:8px}.scheme-image-container{display:inline-block;transition:transform .05s ease-out;will-change:transform;transform-origin:0 0}.scheme-image-wrapper img{display:block;border-radius:4px;pointer-events:none;width:1500px;height:auto}.scheme-pdf-container{width:100%;height:100%;display:flex;align-items:stretch;justify-content:stretch;position:relative}.pdf-external-link{position:absolute;top:8px;right:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--primary-color);color:#fff;text-decoration:none;border-radius:4px;font-size:14px;z-index:10;opacity:.8}.pdf-external-link:hover{opacity:1}.scheme-pdf{width:100%;height:100%;min-height:400px;border:none;border-radius:4px;background:#fff}.pdf-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--text-secondary)}.pdf-open-btn{padding:8px 16px;background:var(--primary-color);color:#fff;text-decoration:none;border-radius:4px;font-size:12px}.pdf-open-btn:hover{background:#2563eb}.no-scheme{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.upload-scheme-btn{font-size:11px;padding:6px 12px;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.lots-mini-grid{padding:8px;border-bottom:1px solid var(--border-color);flex-shrink:0}.lots-mini-header{display:flex;flex-direction:column;gap:4px;margin-bottom:8px;font-size:10px;color:var(--text-secondary)}.lots-legend{display:flex;flex-wrap:wrap;gap:6px}.legend-item{display:flex;align-items:center;gap:3px;font-size:8px}.legend-item:before{content:"";width:6px;height:6px;border-radius:2px}.legend-item.available:before{background:var(--success-color)}.legend-item.sold:before{background:var(--primary-color)}.legend-item.reserved:before{background:var(--warning-color)}.lots-buttons{display:flex;flex-wrap:wrap;gap:3px;max-height:100px;overflow-y:auto}.lot-btn{width:24px;height:20px;font-size:8px;font-weight:600;border:none;border-radius:3px;cursor:pointer;transition:all .15s}.lot-btn.available{background:var(--success-color);color:#fff}.lot-btn.sold{background:var(--primary-color);color:#fff}.lot-btn.reserved{background:var(--warning-color);color:#333}.lot-btn.selected{outline:2px solid white;outline-offset:1px;box-shadow:0 0 0 3px var(--text-primary)}.lot-btn:hover{opacity:.85;transform:scale(1.05)}.lot-details-content{padding:12px;overflow-y:auto;flex:1}.no-lot-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:var(--text-secondary);font-size:12px}.lot-info{display:flex;flex-direction:column;gap:12px}.lot-main-info{display:flex;justify-content:space-between;align-items:center}.lot-main-info h4{margin:0;font-size:14px;color:var(--text-primary)}.status-badge.large{font-size:10px;padding:4px 10px}.lot-price{background:var(--bg-tertiary);padding:10px;border-radius:6px;display:flex;justify-content:space-between;align-items:center}.lot-price .label{font-size:11px;color:var(--text-secondary)}.lot-price .value{font-size:16px;font-weight:700;color:var(--text-primary)}.sale-info{display:flex;flex-direction:column;gap:12px}.info-section{background:var(--bg-tertiary);padding:10px;border-radius:6px}.info-section h5{margin:0 0 8px;font-size:11px;color:var(--text-secondary);text-transform:uppercase}.info-row{display:flex;justify-content:space-between;padding:4px 0;font-size:12px}.info-row .label{color:var(--text-secondary)}.info-row .value{color:var(--text-primary);font-weight:500}.available-lot-info,.loading-sale-info{text-align:center;padding:20px;color:var(--text-secondary);font-size:12px}.info-row .value.highlight{color:var(--success-color);font-weight:700}.payments-section{max-height:200px;overflow-y:auto}.payments-list{display:flex;flex-direction:column;gap:6px}.payment-item{background:var(--bg-primary);border-radius:4px;padding:8px;border-left:3px solid var(--border-color)}.payment-item.approved{border-left-color:var(--success-color)}.payment-item.pending{border-left-color:var(--warning-color)}.payment-item.rejected{border-left-color:var(--danger-color)}.payment-main{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.payment-amount{font-size:13px;font-weight:600;color:var(--text-primary)}.payment-status{font-size:9px;padding:2px 6px;border-radius:8px;text-transform:capitalize}.payment-status.approved{background:#28a74526;color:var(--success-color)}.payment-status.pending{background:#ffc10726;color:var(--warning-color)}.payment-status.rejected{background:#dc354526;color:var(--danger-color)}.payment-details{display:flex;justify-content:space-between;font-size:10px;color:var(--text-secondary)}.no-payments{text-align:center;color:var(--text-secondary);font-size:11px;padding:10px}.site-details-inline{height:100%}.details-header{margin-bottom:12px}.details-header h3{margin:0 0 2px;font-size:16px;color:var(--text-primary)}.details-location{font-size:11px;color:var(--text-secondary)}.no-site-selected{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-secondary);font-size:13px}.site-stats{display:flex;gap:8px;margin-bottom:12px}.stat-item{text-align:center;padding:8px 12px;background:var(--bg-secondary);border-radius:6px;min-width:60px}.stat-value{display:block;font-size:18px;font-weight:700;margin-bottom:2px}.stat-label{font-size:9px;color:var(--text-secondary);text-transform:uppercase}.stat-item.total .stat-value{color:var(--text-primary)}.stat-item.available .stat-value{color:var(--success-color)}.stat-item.sold .stat-value{color:var(--primary-color)}.stat-item.reserved .stat-value{color:var(--warning-color)}.lots-list h4{font-size:12px;margin:0 0 8px;color:var(--text-primary)}.lots-table{border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.lots-header{display:grid;grid-template-columns:50px 50px 1fr 70px;gap:4px;padding:6px 10px;background:var(--bg-secondary);font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.lots-body{max-height:calc(100vh - 350px);overflow-y:auto}.lot-row{display:grid;grid-template-columns:50px 50px 1fr 70px;gap:4px;padding:5px 10px;font-size:11px;border-top:1px solid var(--border-color)}.lot-row:nth-child(2n){background:var(--bg-secondary)}.status-badge{font-size:9px;padding:2px 6px;border-radius:8px;text-transform:capitalize;text-align:center}.status-badge.available{background:#28a74526;color:var(--success-color)}.status-badge.sold{background:#0066cc26;color:var(--primary-color)}.status-badge.reserved{background:#ffc10726;color:var(--warning-color)}.lots-header-actions{display:flex;align-items:center;gap:8px}.import-lots-btn{font-size:9px;padding:2px 6px;background:#10b981;color:#fff;border:none;border-radius:3px;cursor:pointer}.import-lots-btn:hover{background:#059669}.lot-import-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.lot-import-modal{background:var(--bg-primary);border-radius:12px;box-shadow:0 20px 40px #0000004d;width:500px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.lot-import-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color)}.lot-import-header h3{margin:0;font-size:14px;color:var(--text-primary)}.lot-import-content{padding:16px;flex:1;overflow:auto}.import-instructions{background:var(--bg-tertiary);padding:10px 12px;border-radius:6px;margin-bottom:12px}.import-instructions p{margin:0;font-size:11px;color:var(--text-secondary)}.import-instructions .example{font-family:monospace;color:var(--text-primary);margin-top:4px}.import-instructions .note{font-size:10px;margin-top:4px;opacity:.8}.import-actions-top{margin-bottom:12px}.file-import-btn{font-size:11px;padding:6px 12px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer}.file-import-btn:hover{background:var(--bg-tertiary)}.lot-import-textarea{width:100%;padding:10px;font-size:11px;font-family:monospace;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);resize:vertical;min-height:150px}.lot-import-textarea:focus{outline:none;border-color:var(--primary-color)}.import-preview{margin-top:8px;font-size:10px;color:var(--text-secondary)}.lot-import-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border-color)}.lot-import-footer .btn{padding:6px 12px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-secondary);color:var(--text-primary);font-size:12px;cursor:pointer}.lot-import-footer .btn:hover:not(:disabled){background:var(--bg-tertiary)}.lot-import-footer .btn:disabled{opacity:.5;cursor:not-allowed}.lot-import-footer .btn.primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.lot-import-footer .btn.primary:hover:not(:disabled){background:#2563eb}.scheme-image-wrapper{position:relative;display:inline-block}.scheme-image-wrapper img{display:block;max-width:100%}.lot-marker{position:absolute;transform:translate(-50%,-50%);width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:5px;font-weight:400;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0006;z-index:10}.lot-marker:hover{transform:translate(-50%,-50%) scale(1.15);z-index:20}.lot-marker.selected{transform:translate(-50%,-50%) scale(1.25);z-index:30;box-shadow:0 0 0 4px var(--primary-color),0 6px 16px #00000080}.lot-marker.available{background:#22c55e;color:#fff}.lot-marker.sold{background:#ef4444;color:#fff}.lot-marker.reserved{background:#eab308;color:#333}.no-scheme-hint{font-size:10px;color:var(--text-tertiary);margin-top:4px}.no-sale-info{padding:20px;text-align:center;color:var(--text-secondary);font-size:12px}.lot-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px 0;border-bottom:1px solid var(--border-color);margin-bottom:8px}.lot-detail-item{display:flex;flex-direction:column;gap:2px}.lot-detail-item .label{font-size:9px;color:var(--text-tertiary);text-transform:uppercase}.lot-detail-item .value{font-size:11px;font-weight:600;color:var(--text-primary)}.pictures-content{padding:8px}.pictures-layout{display:flex;flex-direction:column;gap:10px;height:100%;min-height:0;padding:8px}.pictures-preview{position:relative;flex:1 1 auto;min-height:0;border-radius:8px;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-secondary);display:flex;align-items:center;justify-content:center}.pictures-preview img{width:100%;height:100%;object-fit:contain;display:block;background:#000}.pictures-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#00000073;color:#fff;cursor:pointer;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;z-index:2}.pictures-nav-btn:hover{background:#0009}.pictures-nav-btn.prev{left:10px}.pictures-nav-btn.next{right:10px}.pictures-thumbs{display:flex;gap:8px;overflow-x:auto;padding:6px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary)}.pictures-thumb{flex:0 0 auto;width:90px;height:58px;padding:0;border-radius:6px;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;opacity:.85}.pictures-thumb:hover{opacity:1}.pictures-thumb.active{opacity:1;border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f640}.pictures-thumb img{width:100%;height:100%;object-fit:cover;display:block}.kyc-container{background:var(--bg-primary);border-radius:12px;padding:24px;min-height:100%;max-height:100%;display:flex;flex-direction:column;gap:24px;overflow-y:auto}.kyc-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.kyc-title-section h2{margin:0;font-size:24px;color:var(--text-primary)}.kyc-subtitle{margin:4px 0 0;color:var(--text-secondary);font-size:14px}.kyc-generate-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.kyc-generate-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.kyc-content{flex:1;display:flex;flex-direction:column;gap:24px;overflow:auto}.kyc-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.kyc-analytics{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.kyc-analytics-card{background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);padding:16px}.kyc-analytics-card h3{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--text-primary)}.kyc-analytics-empty{padding:14px;color:var(--text-secondary);font-size:13px;background:var(--bg-primary);border:1px dashed var(--border-color);border-radius:10px}.kyc-analytics-list{display:flex;flex-direction:column;gap:8px}.kyc-analytics-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--border-color);background:var(--bg-primary);border-radius:10px}.kyc-analytics-name{font-size:13px;color:var(--text-primary);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kyc-analytics-count{font-size:12px;font-weight:700;color:var(--primary-color);background:#3b82f61f;padding:4px 10px;border-radius:999px;flex-shrink:0}.kyc-stat-card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color)}.kyc-stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--primary-color);color:#fff;border-radius:12px}.kyc-stat-icon.pending{background:#f59e0b}.kyc-stat-icon.verified{background:#10b981}.kyc-stat-info{display:flex;flex-direction:column}.kyc-stat-value{font-size:28px;font-weight:700;color:var(--text-primary)}.kyc-stat-label{font-size:13px;color:var(--text-secondary)}.kyc-table-container{flex:1;background:var(--bg-secondary);border-radius:12px;padding:20px;border:1px solid var(--border-color);overflow:auto}.kyc-filters{display:grid;grid-template-columns:1.6fr .9fr .9fr .9fr auto;gap:12px;align-items:end;margin-bottom:14px}.kyc-filter-group{display:flex;flex-direction:column;gap:6px}.kyc-filter-group label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-secondary)}.kyc-filter-group input,.kyc-filter-group select{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:10px;font-size:13px;background:var(--bg-primary);color:var(--text-primary)}.kyc-filter-clear{height:40px;padding:10px 14px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);border-radius:10px;cursor:pointer;font-weight:700;font-size:13px}.kyc-filter-clear:hover{background:var(--bg-hover)}.kyc-table-container h3{margin:0 0 16px;font-size:16px;color:var(--text-primary)}.kyc-loading{padding:40px;text-align:center;color:var(--text-secondary)}.kyc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.kyc-empty svg{margin-bottom:16px;opacity:.5}.kyc-empty p{margin:0;font-size:16px;font-weight:500;color:var(--text-primary)}.kyc-empty span{margin-top:8px;font-size:14px}.kyc-table{width:100%;border-collapse:collapse}.kyc-table th,.kyc-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}.kyc-table th{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-primary)}.kyc-table td{font-size:14px;color:var(--text-primary)}.kyc-table tbody tr:hover{background:var(--bg-hover)}.kyc-status{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;text-transform:capitalize}.kyc-status.pending{background:#fef3c7;color:#92400e}.kyc-status.verified{background:#d1fae5;color:#065f46}.kyc-status.rejected{background:#fee2e2;color:#991b1b}.kyc-view-btn{padding:6px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s}.kyc-view-btn:hover{background:var(--primary-hover)}.kyc-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.kyc-modal{background:var(--bg-primary);border-radius:16px;width:100%;max-width:450px;max-height:90vh;overflow:auto;box-shadow:0 20px 60px #0000004d}.kyc-modal-large{max-width:700px}.kyc-modal-scrollable{max-height:70vh;overflow-y:auto}.kyc-modal-header-status{margin-left:auto;margin-right:16px}.kyc-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color)}.kyc-modal-header h3{margin:0;font-size:18px;color:var(--text-primary)}.kyc-modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:none;border-radius:8px;font-size:24px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.kyc-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.kyc-modal-body{padding:24px}.kyc-qr-container{display:flex;justify-content:center;padding:20px;background:#fff;border-radius:12px;margin-bottom:20px}.kyc-qr-instruction{text-align:center;color:var(--text-secondary);font-size:14px;margin:0 0 20px}.kyc-url-container{display:flex;gap:8px}.kyc-url-input{flex:1;padding:12px;border:1px solid var(--border-color);border-radius:8px;font-size:12px;background:var(--bg-secondary);color:var(--text-primary)}.kyc-copy-btn{padding:12px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.kyc-copy-btn:hover{background:var(--primary-hover)}.kyc-url-settings{margin-bottom:20px}.kyc-settings-toggle{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.kyc-settings-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.kyc-url-config{margin-top:16px;padding:16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.kyc-url-config label{display:block;font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.kyc-url-config .kyc-url-input{width:100%;margin-bottom:8px}.kyc-url-hint{font-size:12px;color:var(--text-secondary);margin:0 0 12px;line-height:1.5}.kyc-url-hint strong{color:var(--primary-color);word-break:break-all}.kyc-regenerate-btn{padding:10px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.kyc-regenerate-btn:hover{background:var(--primary-hover)}.kyc-customer-details{display:flex;flex-direction:column;gap:16px}.kyc-detail-row{display:flex;flex-direction:column;gap:4px}.kyc-detail-row label{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-secondary)}.kyc-detail-row span{font-size:14px;color:var(--text-primary)}.kyc-id-photo img{max-width:100%;max-height:300px;border-radius:8px;margin-top:8px;border:1px solid var(--border-color)}.kyc-download-btn{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.kyc-download-btn:hover{background:#5a6fd6}.kyc-download-btn svg{flex-shrink:0}.kyc-modal-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color)}.kyc-action-btn{flex:1;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.kyc-action-btn.verify{background:#10b981;color:#fff}.kyc-action-btn.verify:hover{background:#059669}.kyc-action-btn.reject{background:#ef4444;color:#fff}.kyc-action-btn.reject:hover{background:#dc2626}.kyc-action-btn.edit{background:#3b82f6;color:#fff}.kyc-action-btn.edit:hover{background:#2563eb}.kyc-action-btn.delete{background:#ef4444;color:#fff}.kyc-action-btn.delete:hover{background:#dc2626}.kyc-detail-section{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.kyc-detail-section:last-of-type{border-bottom:none;margin-bottom:0}.kyc-detail-section-title{margin:0 0 16px;font-size:15px;font-weight:600;color:var(--text-primary)}.kyc-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.kyc-detail-full{grid-column:1 / -1}.kyc-detail-meta{background:var(--bg-secondary);border-radius:8px;padding:16px;margin-top:20px}.kyc-detail-meta .kyc-detail-row{flex-direction:row;justify-content:space-between;align-items:center}.kyc-ref-id{font-family:monospace;font-size:12px!important;background:var(--bg-primary);padding:4px 8px;border-radius:4px}.kyc-documents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.kyc-document-preview{display:flex;flex-direction:column;background:var(--bg-secondary);border-radius:12px;padding:12px;border:1px solid var(--border-color)}.kyc-document-preview label{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase}.kyc-document-preview img{width:100%;height:140px;object-fit:cover;border-radius:8px;border:1px solid var(--border-color);background:#fff}.kyc-document-preview .kyc-download-btn{margin-top:8px;padding:8px 12px;font-size:12px;justify-content:center}.kyc-no-documents{grid-column:1 / -1;text-align:center;color:var(--text-secondary);font-size:14px;padding:20px}@media (max-width: 768px){.kyc-container{padding:16px}.kyc-header{flex-direction:column;align-items:flex-start}.kyc-generate-btn{width:100%;justify-content:center}.kyc-stats,.kyc-analytics,.kyc-filters{grid-template-columns:1fr}.kyc-filter-clear{width:100%}.kyc-table th,.kyc-table td{padding:8px;font-size:12px}}html.kyc-page,html.kyc-page body{overflow:auto!important;height:auto!important;position:static!important;overflow-y:scroll!important;-webkit-overflow-scrolling:touch!important}.kyc-form-container{min-height:100%;padding:20px 20px 100px;background:linear-gradient(135deg,#667eea,#764ba2);display:block;position:relative}.kyc-form-card{width:100%;max-width:600px;background:#fff;border-radius:20px;padding:32px;box-shadow:0 20px 60px #0003;margin:20px auto}.kyc-form-header{text-align:center;margin-bottom:32px}.kyc-form-header h1{margin:0;font-size:28px;color:#1a1a2e;font-weight:700}.kyc-form-header p{margin:8px 0 0;color:#666;font-size:15px}.kyc-form{display:flex;flex-direction:column;gap:24px}.kyc-form-section{display:flex;flex-direction:column;gap:16px}.kyc-form-section h3{margin:0;font-size:16px;font-weight:600;color:#667eea;padding-bottom:8px;border-bottom:2px solid #f0f0f5}.kyc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.kyc-form-group{display:flex;flex-direction:column;gap:6px}.kyc-form-group label{font-size:13px;font-weight:600;color:#333}.kyc-form-group input,.kyc-form-group select,.kyc-form-group textarea{padding:14px 16px;border:2px solid #e8e8ee;border-radius:12px;font-size:16px;line-height:1.4;transition:border-color .2s;background:#fff!important;background-color:#fff!important;color:#111!important;-webkit-text-fill-color:#111111!important;opacity:1!important;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;box-sizing:border-box}.kyc-form-group select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")!important;background-position:right 12px center!important;background-repeat:no-repeat!important;background-size:16px!important;padding-right:40px}.kyc-form-group input::placeholder,.kyc-form-group textarea::placeholder{color:#888!important;-webkit-text-fill-color:#888888!important;opacity:1!important}.kyc-form-group input::-webkit-input-placeholder{color:#888!important;-webkit-text-fill-color:#888888!important}.kyc-form-group input::-moz-placeholder{color:#888!important}.kyc-form-group input:-ms-input-placeholder{color:#888!important}.kyc-form-group textarea::-webkit-input-placeholder{color:#888!important;-webkit-text-fill-color:#888888!important}.kyc-form-group textarea::-moz-placeholder{color:#888!important}.kyc-form-group textarea:-ms-input-placeholder{color:#888!important}.kyc-form-group input:focus,.kyc-form-group select:focus,.kyc-form-group textarea:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 4px #667eea1a}.kyc-form-group textarea{resize:vertical;min-height:80px}.kyc-photo-section{border:2px dashed #e0e0e8;border-radius:12px;padding:24px;background:#fafafa}.kyc-photo-options{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.kyc-photo-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 32px;background:#fff;border:2px solid #e0e0e8;border-radius:12px;font-size:14px;font-weight:500;color:#333;cursor:pointer;transition:all .2s}.kyc-photo-btn:hover{border-color:#667eea;color:#667eea;transform:translateY(-2px)}.kyc-photo-btn svg{color:#667eea}.kyc-photo-preview{display:flex;flex-direction:column;align-items:center;gap:16px}.kyc-photo-preview img{max-width:100%;max-height:300px;border-radius:12px;border:2px solid #e0e0e8}.kyc-remove-photo{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fee2e2;color:#dc2626;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:background .2s}.kyc-remove-photo:hover{background:#fecaca}.kyc-camera-section{display:flex;flex-direction:column;align-items:center;gap:16px}.kyc-camera-video{width:100%;max-width:400px;border-radius:12px;background:#000}.kyc-camera-controls{display:flex;gap:12px}.kyc-capture-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.kyc-capture-btn:hover{background:#5a6fd6}.kyc-cancel-btn{padding:12px 24px;background:#f0f0f5;color:#666;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:background .2s}.kyc-cancel-btn:hover{background:#e0e0e8}.kyc-photo-hint{margin:12px 0 0;font-size:12px;color:#888;text-align:center}.kyc-error{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fee2e2;color:#dc2626;border-radius:12px;font-size:14px}.kyc-submit-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:8px}.kyc-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.kyc-submit-btn:disabled{opacity:.7;cursor:not-allowed}.kyc-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.kyc-privacy{margin:24px 0 0;font-size:12px;color:#888;text-align:center;line-height:1.5}.kyc-success{text-align:center;padding:60px 32px}.kyc-success-icon{width:80px;height:80px;margin:0 auto 24px;background:#d1fae5;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#10b981}.kyc-success h2{margin:0 0 12px;font-size:28px;color:#10b981}.kyc-success p{margin:0;color:#666;font-size:16px}.kyc-ref{margin-top:16px!important;padding:12px 20px;background:#f0f0f5;border-radius:8px;font-family:monospace;font-size:14px!important;color:#888!important}.kyc-progress{display:flex;justify-content:space-between;margin-bottom:32px;padding:0 10px}.kyc-progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}.kyc-progress-step:after{content:"";position:absolute;top:16px;left:50%;width:100%;height:2px;background:#e0e0e8;z-index:0}.kyc-progress-step:last-child:after{display:none}.kyc-progress-step.completed:after{background:#667eea}.kyc-progress-number{width:32px;height:32px;border-radius:50%;background:#e0e0e8;color:#888;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;z-index:1;transition:all .3s ease}.kyc-progress-step.active .kyc-progress-number{background:#667eea;color:#fff;box-shadow:0 4px 12px #667eea66}.kyc-progress-step.completed .kyc-progress-number{background:#10b981;color:#fff}.kyc-progress-label{font-size:11px;font-weight:500;color:#888;text-align:center}.kyc-progress-step.active .kyc-progress-label{color:#667eea;font-weight:600}.kyc-progress-step.completed .kyc-progress-label{color:#10b981}.kyc-subsection-title{margin:20px 0 12px;font-size:14px;font-weight:600;color:#444;padding-top:16px;border-top:1px dashed #e0e0e8}.kyc-section-hint{margin:-8px 0 16px;font-size:13px;color:#666}.kyc-form-row-3{grid-template-columns:1fr 1fr 1fr}.kyc-checkbox-group{margin:8px 0}.kyc-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:#444}.kyc-checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#667eea;cursor:pointer}.kyc-document-card{background:#f8f9ff;border:2px solid #e8e8ee;border-radius:16px;padding:20px;margin-bottom:16px}.kyc-document-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.kyc-document-header h4{margin:0;font-size:16px;font-weight:600;color:#1a1a2e}.kyc-document-badge{padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase}.kyc-document-badge.required{background:#fee2e2;color:#dc2626}.kyc-document-badge.optional{background:#e0f2fe;color:#0284c7}.kyc-document-desc{margin:0 0 12px;font-size:13px;color:#666}.kyc-document-card .kyc-photo-section{background:#fff}.kyc-form-nav{display:flex;justify-content:space-between;gap:16px;margin-top:24px;padding-top:24px;border-top:2px solid #f0f0f5}.kyc-nav-btn{display:flex;align-items:center;gap:8px;padding:14px 28px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.kyc-nav-prev{background:#f0f0f5;color:#666;border:none}.kyc-nav-prev:hover{background:#e0e0e8;color:#333}.kyc-nav-next{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;margin-left:auto}.kyc-nav-next:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.kyc-nav-next:disabled,.kyc-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 600px){.kyc-form-container{padding:16px}.kyc-form-card{padding:24px 20px;border-radius:16px}.kyc-form-header h1{font-size:22px}.kyc-form-row,.kyc-form-row-3{grid-template-columns:1fr}.kyc-photo-options{flex-direction:column}.kyc-photo-btn{width:100%;flex-direction:row;justify-content:center;padding:16px}.kyc-progress{padding:0}.kyc-progress-label{font-size:9px}.kyc-progress-number{width:28px;height:28px;font-size:12px}.kyc-progress-step:after{top:14px}.kyc-nav-btn{padding:12px 20px;font-size:14px}.kyc-document-card{padding:16px}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;width:100%}h1{font-size:3.2em;line-height:1.1}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
