:root{font-family:Inter,sans-serif;color:#1f2937;background:#f5f7fb}body{margin:0;background:#f5f7fb}button,input,select,textarea{font-family:inherit;font-size:inherit}.page{max-width:1200px;margin:0 auto 0 32px;padding:24px 24px 24px 0}header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.app-header{position:relative}.account-spot{margin-left:auto;display:flex;align-items:center;gap:12px;position:relative}.account-chip{background:#eef2ff;border-radius:12px;padding:6px 12px;line-height:1.2;min-width:140px}.account-chip span{font-weight:600;font-size:14px}.account-chip small{font-size:12px;color:#64748b}.account-toggle{border-radius:999px;padding:8px 18px;font-weight:600;border-color:#2563eb;background:#2563eb;color:#fff}.account-toggle:hover{background:#1d4ed8;color:#fff}.account-panel{position:absolute;top:calc(100% + 12px);right:0;width:320px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 24px 45px #0f172a2e;padding:20px;z-index:20}.account-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.account-panel h3{margin:0}.account-subtitle{margin:4px 0 0;font-size:13px;color:#64748b}.account-close{border:none;background:transparent;color:#475569;font-weight:600;cursor:pointer;padding:4px 8px}.account-form{display:flex;flex-direction:column;gap:12px;margin-top:12px}.account-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px}.account-form input{border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;font-size:14px}.account-divider{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;font-weight:700}.logout-button{width:100%;margin-top:12px;border-color:#f43f5e;color:#be123c;background:#fff1f2}.logout-button:hover{background:#ffe4e6}.layout{display:flex;gap:16px}.tabs-nav{width:220px;display:flex;flex-direction:column;gap:8px;font-size:.95rem}.tabs-nav button{display:flex;align-items:center;justify-content:flex-start;font-weight:600;font-size:inherit;line-height:1.3;background:#f1f5f9;border:1px solid transparent}.tabs-nav button.active{background:#2563eb;color:#fff}.content-area{flex:1;display:flex;flex-direction:column;gap:16px}.filters{display:flex;flex-direction:column;gap:12px;margin-bottom:8px}.segment-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.segment-row>span{font-weight:600;min-width:140px}.segment-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.filter-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.filter-fields input,.filter-fields select{padding:8px 10px;border:1px solid #cbd5e1;border-radius:8px;font-size:13px;background:#fff}.date-range{grid-column:span 2;display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#334155}.date-range-inputs{display:flex;gap:8px}.date-range-inputs input{flex:1}.export-form{display:flex;flex-direction:column;gap:12px}.export-form label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;color:#1f2937}.export-form input[type=date]{padding:10px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px}.upload-card{display:flex;flex-direction:column;gap:12px}.upload-subtitle{margin:4px 0 0;font-size:13px;color:#475569}.upload-header-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.dropzone{border:2px dashed #94a3b8;border-radius:12px;padding:32px;text-align:center;background:#f8fafc;cursor:pointer;transition:border-color .2s ease,background .2s ease}.dropzone.active{border-color:#2563eb;background:#e0ecff}.upload-hint{margin:0;font-size:13px;color:#475569}.upload-file-name{font-size:13px;color:#0f172a;font-weight:600}.upload-guidelines{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px;font-size:13px;color:#1f2937}.upload-guideline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:8px}.upload-guideline-title{margin:0 0 4px;font-weight:600;font-size:13px;color:#0f172a}.upload-guidelines ul{margin:6px 0 8px;padding-left:18px}.upload-guidelines li{margin-bottom:4px}.link-button{text-decoration:none;text-align:center}.preview-table-wrapper{max-height:260px;overflow:auto;border:1px solid #e2e8f0;border-radius:8px}.preview-table{width:100%;border-collapse:collapse;font-size:13px}.preview-table th,.preview-table td{padding:8px;border-bottom:1px solid #e2e8f0;text-align:left}.preview-table th{background:#f1f5f9;font-weight:600}.preview-table tr.row-existing{background:#fff8e1}.preview-table tr.row-success{background:#ecfdf5}.preview-table tr.row-error{background:#fef2f2}.upload-hint.warning{color:#92400e}.upload-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.upload-results{margin-top:12px;border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#f8fafc;display:flex;flex-direction:column;gap:12px}.upload-results-summary{display:flex;flex-wrap:wrap;gap:8px}.summary-chip{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:600}.summary-chip.success{background:#dcfce7;color:#166534}.summary-chip.warning{background:#fef3c7;color:#92400e}.summary-chip.error{background:#fee2e2;color:#991b1b}.upload-results-list{max-height:220px;overflow:auto;display:flex;flex-direction:column;gap:8px}.upload-result-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #e2e8f0;font-size:13px}.upload-result-item:last-child{border-bottom:none}.upload-result-id{display:flex;flex-direction:column;gap:2px}.upload-result-id span{color:#475569}.upload-result-status{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.checkbox-row{display:flex;flex-wrap:wrap;gap:16px}.checkbox-row label{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:14px;color:#334155}.export-hint{margin:0;font-size:13px;color:#475569}.login-page,.signup-page{min-height:100vh;background:radial-gradient(circle at top,#e0ecff,#f5f7fb 60%);display:flex;align-items:center;justify-content:center;padding:24px}.login-card,.signup-card{width:100%;max-width:420px;background:#fff;border-radius:16px;box-shadow:0 20px 45px #0f172a2e;padding:32px;display:flex;flex-direction:column;gap:16px}.login-card h1,.signup-card h1{margin:0;font-size:24px}.login-subtitle,.signup-subtitle{margin:0;font-size:14px;color:#475569}.login-form,.signup-form{display:flex;flex-direction:column;gap:14px}.login-form label,.signup-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;color:#1f2937}.login-form input,.signup-form input{padding:10px 12px;border-radius:10px;border:1px solid #cbd5e1;font-size:15px}.segment-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;font-size:13px}.segment-pill small{font-size:11px;color:#64748b}.segment-pill input{margin:0}.pill-button{border-radius:999px;padding:6px 16px;border:1px solid #cbd5e1;background:#fff}.pill-button.active{background:#2563eb;color:#fff;border-color:#2563eb}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 4px #00000014}.list-card{min-height:360px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.toggle button{padding:6px 12px;border:1px solid #cbd5e1;background:#fff;cursor:pointer}.toggle button.active{background:#2563eb;color:#fff;border-color:#2563eb}.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:4px;font-size:14px}.field input[type=text]{padding:8px;border:1px solid #cbd5e1;border-radius:6px}.actions{display:flex;gap:8px;margin-top:8px}.form .actions{grid-column:1 / -1;justify-content:center;margin-top:24px}button{padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;cursor:pointer}button.primary{background:#2563eb;border-color:#2563eb;color:#fff;font-weight:600;padding:12px 32px;box-shadow:0 8px 20px #2563eb40}button:hover{background:#e5e7eb}button.primary:hover{background:#1d4ed8;color:#fff}button.danger{border-color:#ef4444;color:#b91c1c}button.success{border-color:#22c55e;color:#15803d}.compare-actions{display:inline-flex;gap:6px;margin-left:8px}.compare-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.compare-panel h3{margin:0 0 12px}.compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.compare-card{background:#fff;border-radius:8px;padding:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0f172a14}.compare-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:6px}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 8px;border-radius:999px;background:#2563eb;color:#fff;font-size:12px}.compare-hint{margin:0 0 8px;font-size:13px;color:#475569}.compare-hint-row{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.compare-bulk{display:flex;gap:8px}.compare-bulk button{padding:4px 12px;font-size:12px}.compare-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.compare-card li{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #f1f5f9}.compare-card li:last-child{border-bottom:none}.checkout-room-card{display:flex;flex-direction:column;gap:12px}.checkout-room-hint{margin:4px 0 0;color:#475569;font-size:13px}.checkout-room-count{font-size:13px;color:#475569;font-weight:600}.checkout-room-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.checkout-room-controls label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:#1f2937}.checkout-room-controls select,.checkout-room-controls input{padding:10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.checkout-room-summary{border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.checkout-room-summary-header{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.checkout-room-summary-header h3{margin:0;font-size:16px}.checkout-room-summary-header small{color:#94a3b8}.checkout-room-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.checkout-room-list li{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0;padding-bottom:8px}.checkout-room-list li:last-child{border-bottom:none;padding-bottom:0}.checkout-room-person{display:flex;flex-direction:column;gap:2px}.checkout-room-person small{color:#475569;font-size:12px}.checkout-room-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:12px;color:#475569}.checkout-room-actions{display:flex;justify-content:flex-end;gap:12px}.checkout-room-empty{margin:12px 0 0;color:#64748b;font-size:13px}.compare-card li.empty{color:#94a3b8;font-style:italic;border-bottom:none}.compare-info{display:flex;flex-direction:column;gap:2px}.compare-info .name{font-weight:600}.compare-info .id{font-size:12px;color:#64748b}.compare-info .room{font-size:12px;color:#0f172a}.logs-card .logs-hint{margin:4px 0 0;font-size:13px;color:#475569}.logs-controls{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px;align-items:flex-end}.logs-control{display:flex;flex-direction:column;gap:4px;min-width:200px;flex:1 1 180px}.logs-control span{font-size:12px;font-weight:600;color:#475569}.logs-control input,.logs-control select{border:1px solid #cbd5f5;border-radius:6px;padding:8px 10px;font-size:14px}.logs-date-control{max-width:180px}.logs-table{font-size:13px}.logs-table th{white-space:nowrap}.logs-pagination{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.logs-pagination-info{font-size:13px;color:#475569}.logs-pagination-buttons{display:flex;flex-wrap:wrap;gap:8px}.user-meta{display:flex;flex-direction:column;gap:2px}.user-meta small{color:#64748b}.logs-customer span{color:#475569;font-size:13px}.logs-details{max-width:360px;white-space:pre-wrap;word-break:break-word;color:#475569}.status-chip{display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.status-chip.success{background:#dcfce7;color:#166534}.status-chip.error{background:#fee2e2;color:#991b1b}.status-chip.warning{background:#fef3c7;color:#92400e}.status-chip.info{background:#e0f2fe;color:#075985}.status-chip.muted{background:#e2e8f0;color:#475569}.status-stack{display:flex;flex-direction:column;gap:4px}.status-note{display:block;color:#475569}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid #e5e7eb;padding:8px;text-align:left}.sort-header-button{border:none;background:none;padding:0;margin:0;font:inherit;color:inherit;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.sort-header-button:hover{background:none;color:#2563eb}.sort-header-button.active{color:#1d4ed8}.sort-indicator{font-size:11px;font-weight:600;color:#475569}.row-actions{display:flex;gap:4px}.chip{padding:3px 8px;border-radius:12px;font-weight:600;font-size:12px;color:#fff}.chip-tc{background:#2563eb}.chip-foreign{background:#f59e0b}.alert{padding:10px 12px;border-radius:6px;margin-bottom:12px}.alert.error{background:#fee2e2;color:#991b1b}.alert.success{background:#dcfce7;color:#166534}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center}.modal-content{background:#fff;padding:16px;border-radius:8px;min-width:240px;box-shadow:0 2px 10px #0003}@media (max-width: 960px){.page{margin:0 auto;padding:16px}.layout{flex-direction:column}.tabs-nav{width:100%;flex-direction:row;flex-wrap:wrap}}
