.admin-footer{position:fixed;bottom:0;left:0;right:0;height:24px;background:var(--theme-elevation-50);border-top:1px solid var(--theme-elevation-100);display:flex;align-items:center;justify-content:flex-end;padding:0 16px;font-size:11px;color:var(--theme-elevation-500);z-index:100}.admin-footer__version{font-family:monospace}.pms-header{justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.pms-header,.pms-header__title{display:flex;align-items:center}.pms-header__title{gap:.75rem}.pms-header__title h1{margin:0;font-size:1.5rem;font-weight:600}.pms-header__back,.pms-header__title h1{color:var(--pms-text-primary,var(--theme-elevation-800))}.pms-header__back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--pms-border,var(--theme-elevation-200));border-radius:4px;background:var(--pms-bg-secondary,white);font-size:1.25rem;cursor:pointer;transition:all .15s ease}.pms-header__back:hover{background:var(--pms-bg-hover,var(--theme-elevation-50));border-color:var(--pms-border-hover,var(--theme-elevation-300))}.pms-header__actions{display:flex;align-items:center;gap:1rem}.payment-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.payment-dialog{background:var(--pms-bg-secondary);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.2);width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--pms-border)}.dialog-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--pms-text-primary)}.dialog-header .close-btn{width:32px;height:32px;border:none;background:rgba(0,0,0,0);font-size:1.5rem;cursor:pointer;color:var(--pms-text-secondary);border-radius:4px;display:flex;align-items:center;justify-content:center}.dialog-header .close-btn:hover{background:var(--pms-bg);color:var(--pms-text-primary)}.dialog-content{padding:1.5rem;overflow-y:auto;flex:1}.booking-summary{background:var(--pms-bg);border-radius:8px;padding:1rem;margin-bottom:1.5rem}.booking-summary .summary-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.875rem;color:var(--pms-text-primary)}.booking-summary .summary-row.highlight{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--pms-border);font-size:1rem}.booking-summary .summary-row .paid{color:var(--pms-success)}.booking-summary .summary-row .due{color:var(--pms-error)}.booking-summary .summary-row .complete{color:var(--pms-success)}.form-group{margin-bottom:1.25rem}.form-group label{font-size:.75rem;font-weight:600;color:var(--pms-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--pms-border);border-radius:6px;font-size:.875rem;background:var(--pms-bg-secondary);color:var(--pms-text-primary)}.form-group textarea:focus{outline:none;border-color:var(--pms-primary)}.type-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.type-buttons .type-btn{flex:1;min-width:80px;padding:.5rem .75rem;border:1px solid var(--pms-border);border-radius:6px;background:var(--pms-bg-secondary);color:var(--pms-text-primary);font-size:.875rem;cursor:pointer;transition:all .15s ease}.type-buttons .type-btn:hover{background:var(--pms-bg)}.type-buttons .type-btn.active{background:var(--pms-primary);border-color:var(--pms-primary);color:var(--pms-primary-text)}.type-buttons .type-btn.refund.active{background:var(--pms-error);border-color:var(--pms-error)}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.method-grid .method-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;border:1px solid var(--pms-border);border-radius:8px;background:var(--pms-bg-secondary);cursor:pointer;transition:all .15s ease}.method-grid .method-btn .icon{font-size:1.5rem}.method-grid .method-btn span:last-child{font-size:.75rem;color:var(--pms-text-secondary)}.method-grid .method-btn:hover{background:var(--pms-bg);border-color:var(--pms-border)}.method-grid .method-btn.active{background:var(--pms-bg);border-color:var(--pms-primary)}.method-grid .method-btn.active span:last-child{color:var(--pms-text-primary);font-weight:600}.method-grid .method-btn.stripe.active{background:rgba(99,91,255,.0823529412);border-color:#635bff}.method-grid .method-btn.stripe.active .icon{color:#635bff}.amount-input-group .amount-input{width:100%;padding:.75rem;border:1px solid var(--pms-border);border-radius:6px;font-size:1.25rem;font-weight:600;text-align:right;background:var(--pms-bg-secondary);color:var(--pms-text-primary)}.amount-input-group .amount-input:focus{outline:none;border-color:var(--pms-primary)}.amount-input-group .quick-amounts{display:flex;gap:.5rem;margin-top:.5rem}.amount-input-group .quick-amounts button{padding:.25rem .75rem;border:1px solid var(--pms-border);border-radius:4px;background:var(--pms-bg-secondary);color:var(--pms-text-primary);font-size:.75rem;cursor:pointer;transition:all .15s ease}.amount-input-group .quick-amounts button:hover{background:var(--pms-bg);border-color:var(--pms-primary)}.dialog-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--pms-border);background:var(--pms-bg)}.dialog-footer button{padding:.75rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.dialog-footer button:disabled{opacity:.5;cursor:not-allowed}.dialog-footer .btn-cancel{background:var(--pms-bg-secondary);border:1px solid var(--pms-border);color:var(--pms-text-primary)}.dialog-footer .btn-cancel:hover:not(:disabled){background:var(--pms-bg)}.dialog-footer .btn-save{background:var(--pms-primary);border:none;color:var(--pms-primary-text)}.dialog-footer .btn-save:hover:not(:disabled){filter:brightness(1.1)}.dialog-footer .btn-stripe{background:#635bff;border:none;color:#fff}.dialog-footer .btn-stripe:hover:not(:disabled){background:#5046e5}.invoice-manager{background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;padding:1rem}.invoice-manager.loading{padding:2rem;text-align:center;color:var(--pms-text-secondary)}.manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.manager-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--pms-text-primary)}.manager-header .btn-create{padding:.5rem 1rem;background:var(--pms-primary);color:var(--pms-primary-text);border:none;border-radius:6px;font-size:.875rem;cursor:pointer;transition:background .15s ease}.manager-header .btn-create:hover{filter:brightness(1.1)}.create-form{background:var(--pms-bg);border-radius:8px;padding:1rem}.create-form,.create-form .form-row{margin-bottom:1rem}.create-form .form-row label{display:block;font-size:.75rem;font-weight:600;color:var(--pms-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.create-form .form-row select{width:100%;padding:.5rem .75rem;border:1px solid var(--pms-border);border-radius:6px;font-size:.875rem;background:var(--pms-bg-secondary);color:var(--pms-text-primary)}.create-form .form-actions{display:flex;justify-content:flex-end;gap:.5rem}.create-form .form-actions button{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .15s ease}.create-form .form-actions button:disabled{opacity:.5;cursor:not-allowed}.create-form .form-actions .btn-cancel{background:var(--pms-bg-secondary);border:1px solid var(--pms-border);color:var(--pms-text-primary)}.create-form .form-actions .btn-cancel:hover:not(:disabled){background:var(--pms-bg)}.create-form .form-actions .btn-save{background:var(--pms-primary);border:none;color:var(--pms-primary-text)}.create-form .form-actions .btn-save:hover:not(:disabled){filter:brightness(1.1)}.no-invoices{padding:2rem;text-align:center;color:var(--pms-text-secondary);font-size:.875rem}.no-invoices p{margin:0}.invoice-table{width:100%;border-collapse:collapse;font-size:.875rem}.invoice-table th{text-align:left;padding:.5rem .75rem;border-bottom:2px solid var(--pms-border);font-weight:600;color:var(--pms-text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.invoice-table td{padding:.75rem;border-bottom:1px solid var(--pms-border)}.invoice-table td,.invoice-table td strong{color:var(--pms-text-primary)}.invoice-table tr:last-child td{border-bottom:none}.invoice-table tr:hover{background:var(--pms-bg)}.invoice-table .actions{text-align:right;white-space:nowrap}.invoice-table .actions .action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:rgba(0,0,0,0);cursor:pointer;border-radius:4px;text-decoration:none;font-size:.875rem;color:var(--pms-text-primary)}.invoice-table .actions .action-btn:hover{background:var(--pms-bg)}.booking-payments{display:flex;flex-direction:column;gap:1.5rem}.booking-payments.error,.booking-payments.loading{padding:2rem;text-align:center;color:var(--pms-text-secondary)}.payment-summary{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.payment-summary .summary-card{display:flex;flex-direction:column;background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;padding:1rem 1.5rem;min-width:120px}.payment-summary .summary-card .label{font-size:.75rem;color:var(--pms-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.payment-summary .summary-card .value{font-size:1.5rem;font-weight:700;color:var(--pms-text-primary)}.payment-summary .summary-card.paid .value{color:var(--pms-success)}.payment-summary .summary-card.due{border-color:var(--pms-warning);background:rgba(255,152,0,.1)}.payment-summary .summary-card.due .value{color:var(--pms-warning)}.payment-summary .summary-card.complete{border-color:var(--pms-success);background:rgba(76,175,80,.1)}.payment-summary .summary-card.complete .value{color:var(--pms-success)}.payment-summary .btn-add-payment{margin-left:auto;padding:.75rem 1.5rem;background:var(--pms-primary);color:var(--pms-primary-text);border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease}.payment-summary .btn-add-payment:hover{filter:brightness(1.1)}.invoices-section h3,.payments-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--pms-text-primary)}.no-payments{padding:2rem;text-align:center;color:var(--pms-text-secondary);border:1px solid var(--pms-border);border-radius:8px}.no-payments,.payments-table{font-size:.875rem;background:var(--pms-bg-secondary)}.payments-table{width:100%;border-collapse:collapse;border:1px solid var(--pms-border);border-radius:8px;overflow:hidden}.payments-table th{text-align:left;background:var(--pms-bg);font-weight:600;color:var(--pms-text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.payments-table td,.payments-table th{padding:.75rem;border-bottom:1px solid var(--pms-border)}.payments-table td{color:var(--pms-text-primary)}.payments-table td .card-info{font-size:.75rem;color:var(--pms-text-secondary)}.payments-table td.refund-amount{color:var(--pms-error)}.payments-table tr:last-child td{border-bottom:none}.payments-table tr:hover{background:var(--pms-bg)}.payments-table .actions{text-align:right;white-space:nowrap}.payments-table .actions .action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:rgba(0,0,0,0);cursor:pointer;border-radius:4px;text-decoration:none;font-size:.875rem;color:var(--pms-text-primary)}.payments-table .actions .action-btn:hover{background:var(--pms-bg)}.booking-financials{padding:1.5rem;max-width:1200px}.financials-header{margin-bottom:1.5rem}.financials-header h1{margin:0;font-size:1.5rem;font-weight:600;color:var(--pms-text-primary)}.search-section{margin-bottom:1.5rem;position:relative}.search-bar{display:flex;gap:.5rem}.search-bar input{flex:1;padding:.75rem 1rem;border:1px solid var(--pms-border);border-radius:8px;font-size:.875rem;background:var(--pms-bg-secondary);color:var(--pms-text-primary)}.search-bar input:focus{outline:none;border-color:var(--pms-primary)}.search-bar button{padding:.75rem 1.5rem;background:var(--pms-primary);color:var(--pms-primary-text);border:none;border-radius:8px;font-size:.875rem;cursor:pointer;transition:background .15s ease}.search-bar button:hover:not(:disabled){filter:brightness(1.1)}.search-bar button:disabled{opacity:.5;cursor:not-allowed}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);max-height:300px;overflow-y:auto;z-index:10;margin-top:.5rem}.search-result-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--pms-border);cursor:pointer;transition:background .1s ease}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:var(--pms-bg)}.search-result-item .result-main{display:flex;flex-direction:column;gap:.25rem}.search-result-item .result-main strong{font-size:.875rem;color:var(--pms-text-primary)}.search-result-item .result-details,.search-result-item .result-main .guest-name{font-size:.75rem;color:var(--pms-text-secondary)}.search-result-item .result-details{display:flex;align-items:center;gap:.75rem}.search-result-item .result-details strong{font-size:.875rem;color:var(--pms-text-primary)}.empty-state,.loading-state{padding:3rem;text-align:center;color:var(--pms-text-secondary)}.booking-details .booking-header,.empty-state,.loading-state{background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px}.booking-details .booking-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.5rem;margin-bottom:1.5rem}.booking-details .booking-info h2{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--pms-text-primary)}.booking-details .booking-info .booking-meta{display:flex;align-items:center;gap:1rem;font-size:.875rem;color:var(--pms-text-secondary)}.booking-details .booking-info .booking-meta .guest{font-weight:500}.booking-details .btn-view-booking{padding:.5rem 1rem;background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:6px;font-size:.875rem;color:var(--pms-text-primary);text-decoration:none;transition:all .15s ease}.booking-details .btn-view-booking:hover{background:var(--pms-bg);border-color:var(--pms-primary)}.booking-wizard{padding:1.5rem;max-width:900px}.booking-wizard h1{margin:0 0 1.5rem;font-size:1.5rem}.booking-wizard h1,.booking-wizard h2{font-weight:600;color:var(--pms-text-primary)}.booking-wizard h2{margin:0 0 1rem;font-size:1.125rem}.booking-wizard h3{margin:1rem 0 .5rem;font-size:.875rem;font-weight:600;color:var(--pms-text-secondary);text-transform:uppercase;letter-spacing:.05em}.wizard-steps{display:flex;gap:.5rem;margin-bottom:2rem}.wizard-steps .wizard-step{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--pms-bg);border-radius:4px;font-size:.875rem;color:var(--pms-text-secondary);transition:all .15s ease}.wizard-steps .wizard-step.active{background:var(--pms-primary);color:var(--pms-primary-text)}.wizard-steps .wizard-step.active .step-number{background:var(--pms-primary-text);color:var(--pms-primary)}.wizard-steps .wizard-step.completed{cursor:pointer;color:var(--pms-text-primary)}.wizard-steps .wizard-step.completed:hover{background:var(--pms-bg)}.wizard-steps .wizard-step.completed .step-number{background:var(--pms-success);color:#fff}.wizard-steps .wizard-step .step-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--pms-border);font-size:.75rem;font-weight:600}.wizard-content{background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.wizard-step-content{min-height:300px}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500;color:var(--pms-text-primary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--pms-border);border-radius:4px;font-size:.875rem;background:var(--pms-bg-secondary);color:var(--pms-text-primary);transition:border-color .15s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--pms-primary)}.form-group textarea{resize:vertical}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1}.nights-display{flex:0 0 80px!important}.nights-display .nights-value{display:flex;align-items:center;justify-content:center;height:38px;font-size:1.25rem;font-weight:600;color:var(--pms-text-primary);background:var(--pms-bg);border-radius:4px}.pitch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.pitch-grid .pitch-option{padding:.75rem;border:2px solid var(--pms-border);border-radius:8px;cursor:pointer;text-align:center;transition:all .15s ease;background:var(--pms-bg-secondary)}.pitch-grid .pitch-option.selected,.pitch-grid .pitch-option:hover{border-color:var(--pms-primary);background:var(--pms-bg)}.pitch-grid .pitch-option .pitch-icon{display:block;font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.pitch-grid .pitch-option .pitch-label{display:block;font-size:.75rem;color:var(--pms-text-secondary)}.guest-toggle{display:flex;gap:.5rem;margin-bottom:1.5rem}.guest-toggle button{flex:1;padding:.75rem 1rem;border:2px solid var(--pms-border);border-radius:4px;background:var(--pms-bg-secondary);color:var(--pms-text-primary);font-size:.875rem;cursor:pointer;transition:all .15s ease}.guest-toggle button.active,.guest-toggle button:hover{border-color:var(--pms-primary)}.guest-toggle button.active{background:var(--pms-primary);color:var(--pms-primary-text)}.guest-search .guest-results{margin-top:.5rem;border:1px solid var(--pms-border);border-radius:4px;max-height:300px;overflow-y:auto;background:var(--pms-bg-secondary)}.guest-search .guest-results .guest-result{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid var(--pms-border);transition:background .1s ease}.guest-search .guest-results .guest-result:last-child{border-bottom:none}.guest-search .guest-results .guest-result.selected,.guest-search .guest-results .guest-result:hover{background:var(--pms-bg)}.guest-search .guest-results .guest-result .guest-name{display:block;font-weight:500;color:var(--pms-text-primary)}.guest-search .guest-results .guest-result .guest-email,.guest-search .guest-results .guest-result .guest-number{display:inline-block;margin-right:1rem;font-size:.75rem;color:var(--pms-text-secondary)}.guest-search .no-results{margin-top:.5rem;color:var(--pms-text-secondary);font-size:.875rem}.guest-search .no-results button{background:none;border:none;color:var(--pms-primary);text-decoration:underline;cursor:pointer;padding:0;font-size:.875rem}.new-guest-form{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.persons-section,.price-group{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--pms-border)}.price-group:last-of-type{border-bottom:none}.price-group .price-options{display:flex;flex-direction:column;gap:.5rem}.price-group .price-options .price-option{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--pms-bg);border-radius:4px}.price-group .price-options .price-option .option-info .option-name{display:block;font-weight:500;color:var(--pms-text-primary)}.price-group .price-options .price-option .option-info .option-price{margin-right:.5rem}.price-group .price-options .price-option .option-info .option-desc,.price-group .price-options .price-option .option-info .option-price{display:inline-block;font-size:.75rem;color:var(--pms-text-secondary)}.price-group .price-options .price-option .quantity-control{display:flex;align-items:center;gap:.5rem}.price-group .price-options .price-option .quantity-control button{width:28px;height:28px;border:1px solid var(--pms-border);border-radius:4px;background:var(--pms-bg-secondary);color:var(--pms-text-primary);cursor:pointer;font-size:1rem;font-weight:600;transition:all .1s ease}.price-group .price-options .price-option .quantity-control button:hover{background:var(--pms-bg)}.price-group .price-options .price-option .quantity-control span{width:32px;text-align:center;font-weight:600;color:var(--pms-text-primary)}.price-group .price-options .price-option .checkbox-control input{width:20px;height:20px;cursor:pointer}.review-section{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--pms-border)}.review-section:last-of-type{border-bottom:none}.review-section p{margin:.25rem 0;font-size:.875rem;color:var(--pms-text-primary)}.price-table{width:100%;border-collapse:collapse;font-size:.875rem}.price-table td{padding:.5rem 0;border-bottom:1px solid var(--pms-border);color:var(--pms-text-primary)}.price-table .price{text-align:right;font-family:monospace}.price-table .total-row td{border-bottom:none;padding-top:.75rem}.wizard-navigation{display:flex;gap:1rem}.wizard-navigation .nav-spacer{flex:1}.map-editor{padding:1.5rem;height:calc(100vh - 100px);display:flex;flex-direction:column}.map-editor h1{margin:0;font-size:1.5rem}.map-editor h1,.map-editor h2{font-weight:600;color:var(--pms-text-primary)}.map-editor h2{margin:0 0 .5rem;font-size:1rem}.map-editor h3{margin:.5rem 0;padding-left:.75rem;font-size:.875rem;font-weight:600;color:var(--pms-text-secondary);border-left:3px solid}.map-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.map-header .map-title{display:flex;align-items:center;gap:.75rem}.map-header .map-controls{display:flex;align-items:center;gap:1rem}.map-layout{display:flex;gap:1rem;flex:1;min-height:0}.pitch-sidebar{width:280px;min-width:280px;background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;padding:1rem;overflow-y:auto}.pitch-sidebar .sidebar-hint{font-size:.75rem;color:var(--pms-text-secondary);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--pms-border)}.pitch-sidebar .pitch-category{margin-bottom:1rem}.pitch-sidebar .pitch-list{display:flex;flex-direction:column;gap:.25rem}.pitch-sidebar .pitch-item{display:flex;align-items:center;padding:.5rem .75rem;border-radius:4px;cursor:pointer;transition:all .1s ease;border-left:3px solid;background:var(--pms-bg)}.pitch-sidebar .pitch-item:hover{background:var(--pms-bg);filter:brightness(.95)}.pitch-sidebar .pitch-item.selected{background:var(--pms-bg);filter:brightness(.9)}.pitch-sidebar .pitch-item.pending{background:rgba(255,152,0,.15)}.pitch-sidebar .pitch-item .pitch-number{font-weight:600;font-size:.875rem;color:var(--pms-text-primary);min-width:40px}.pitch-sidebar .pitch-item .pitch-name{flex:1;font-size:.75rem;color:var(--pms-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pitch-sidebar .pitch-item .pitch-status{font-size:.875rem;margin-left:.5rem}.pitch-sidebar .pitch-item .pitch-status.placed{color:var(--pms-success)}.pitch-sidebar .no-pitches,.pitch-sidebar .pitch-item .pitch-status.unplaced{color:var(--pms-text-secondary)}.pitch-sidebar .no-pitches{padding:1rem;text-align:center}.pitch-sidebar .no-pitches a{color:var(--pms-primary);text-decoration:underline}.map-container{flex:1;background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;overflow:hidden;position:relative}.map-container .leaflet-container{height:100%;width:100%;font-family:inherit}.map-container .map-instruction{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);z-index:1000;display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.15);font-size:.875rem;color:var(--pms-text-primary)}.map-container .map-instruction .selected-pitch{font-weight:600;color:var(--pms-text-primary)}.map-container .map-instruction button{padding:.25rem .75rem;border:1px solid var(--pms-border);border-radius:4px;background:var(--pms-bg-secondary);color:var(--pms-text-primary);cursor:pointer;font-size:.75rem}.map-container .map-instruction button:hover{background:var(--pms-bg)}.pitch-label,.pitch-marker{background:rgba(0,0,0,0)!important;border:none!important}.pitch-label{box-shadow:none!important;padding:0!important}.pitch-label:before{display:none!important}.pitch-label span{color:#fff;text-shadow:-1px -1px 0 rgba(0,0,0,.5),1px -1px 0 rgba(0,0,0,.5),-1px 1px 0 rgba(0,0,0,.5),1px 1px 0 rgba(0,0,0,.5)}.leaflet-interactive{transition:fill-opacity .15s ease}.leaflet-interactive:hover{fill-opacity:.7!important}.pms-dashboard{padding:1.5rem;max-width:1400px}.pms-dashboard h1{margin:0;font-size:1.5rem}.pms-dashboard h1,.pms-dashboard h2{font-weight:600;color:var(--pms-text-primary)}.pms-dashboard h2{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1rem}.pms-dashboard h2 .section-icon{font-size:1.25rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.stats-grid .stat-card{background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;padding:1rem;text-align:center}.stats-grid .stat-card.warning{border-color:var(--pms-warning);background:rgba(255,152,0,.1)}.stats-grid .stat-card.alert{border-color:var(--pms-error);background:rgba(244,67,54,.1)}.stats-grid .stat-card .stat-value{display:block;font-size:2rem;font-weight:700;color:var(--pms-text-primary);line-height:1.2}.stats-grid .stat-card .stat-label{display:block;font-size:.75rem;color:var(--pms-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-section{background:var(--pms-bg-secondary);border:1px solid var(--pms-border);border-radius:8px;padding:1rem}.dashboard-section.full-width{grid-column:1/-1}.dashboard-section .no-data{color:var(--pms-text-secondary);font-size:.875rem;text-align:center;padding:2rem}.booking-table{width:100%;border-collapse:collapse;font-size:.875rem}.booking-table th{text-align:left;padding:.5rem .75rem;border-bottom:2px solid var(--pms-border);font-weight:600;color:var(--pms-text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.booking-table td{padding:.75rem;border-bottom:1px solid var(--pms-border)}.booking-table td,.booking-table td strong{color:var(--pms-text-primary)}.booking-table td small{color:var(--pms-text-secondary)}.booking-table tr:last-child td{border-bottom:none}.booking-table tr:hover{background:var(--pms-bg)}.booking-table .amount-due{color:var(--pms-error);font-weight:600}.booking-table .amount-paid{color:var(--pms-success);font-weight:600}.pms-settings{padding:1.5rem;max-width:800px}.pms-settings__content{display:flex;flex-direction:column;gap:2rem}.pms-settings__section{background:var(--pms-bg-secondary,white);border:1px solid var(--pms-border,#e0e0e0);border-radius:8px;padding:1.5rem}.pms-settings__section h2{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--pms-text-primary,#212121)}.pms-settings__hint{margin:0 0 1.5rem;font-size:.875rem;color:var(--pms-text-secondary,#757575)}.pms-settings__mode-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.pms-settings__mode-tabs .mode-tab{padding:.5rem 1rem;border:1px solid var(--pms-border,#e0e0e0);border-radius:4px;background:var(--pms-bg,#f5f5f5);color:var(--pms-text-primary,#212121);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.pms-settings__mode-tabs .mode-tab:hover{border-color:var(--pms-primary,#1976d2)}.pms-settings__mode-tabs .mode-tab.active{background:var(--pms-primary,#1976d2);color:var(--pms-primary-text,white);border-color:var(--pms-primary,#1976d2)}.pms-settings__colors{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.pms-settings__color-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pms-settings__color-row label{font-size:.875rem;color:var(--pms-text-primary,#212121);min-width:120px}.pms-settings__color-input{display:flex;align-items:center;gap:.5rem}.pms-settings__color-input input[type=color]{width:36px;height:36px;padding:0;border:1px solid var(--pms-border,#e0e0e0);border-radius:4px;cursor:pointer}.pms-settings__color-input input[type=color]::-webkit-color-swatch-wrapper{padding:2px}.pms-settings__color-input input[type=color]::-webkit-color-swatch{border-radius:2px;border:none}.pms-settings__color-input input[type=text]{width:90px;padding:.5rem;border:1px solid var(--pms-border,#e0e0e0);border-radius:4px;font-family:monospace;font-size:.875rem;background:var(--pms-bg-secondary,white);color:var(--pms-text-primary,#212121)}.pms-settings__actions{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--pms-border,#e0e0e0);display:flex;gap:.75rem}.pms-settings__preview{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start;padding:1.5rem;background:var(--preview-bg,#f5f5f5);border-radius:8px}.pms-settings__preview .preview-btn{padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.pms-settings__preview .preview-btn.primary{background:var(--preview-primary,#1976d2);color:var(--preview-primary-text,white)}.pms-settings__preview .preview-btn.secondary{background:var(--preview-surface,white);color:var(--preview-text-primary,#212121);border:1px solid var(--preview-border,#e0e0e0)}.pms-settings__preview .preview-btn.accent{background:var(--preview-accent,#ff9800);color:#fff}.pms-settings__preview .preview-card{border:1px solid var(--preview-border,#e0e0e0);border-radius:8px;overflow:hidden;min-width:200px;background:var(--preview-surface,white)}.pms-settings__preview .preview-card__header{padding:.75rem 1rem;background:var(--preview-primary,#1976d2);color:var(--preview-primary-text,white);font-weight:600;font-size:.875rem}.pms-settings__preview .preview-card__body{padding:1rem;display:flex;flex-direction:column;gap:.5rem}.pms-settings__preview .preview-card__body .text-primary{color:var(--preview-text-primary,#212121)}.pms-settings__preview .preview-card__body .text-secondary{color:var(--preview-text-secondary,#757575);font-size:.875rem}.pms-settings__preview .preview-card__status{padding:.75rem 1rem;display:flex;gap:.5rem;border-top:1px solid var(--preview-border,#e0e0e0);font-size:.75rem}.pms-settings__preview .preview-card__status .status-success{color:var(--preview-success,#4caf50)}.pms-settings__preview .preview-card__status .status-warning{color:var(--preview-warning,#ff9800)}.pms-settings__preview .preview-card__status .status-error{color:var(--preview-error,#f44336)}.btn-accent,.btn-primary,.btn-secondary{padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.btn-accent:disabled,.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.campsite-select{padding:.5rem 1rem;border:1px solid var(--pms-border,#e0e0e0);border-radius:4px;font-size:.875rem;min-width:180px;background:var(--pms-bg-secondary,white);color:var(--pms-text-primary,#212121);cursor:pointer}.campsite-select:focus{outline:none;border-color:var(--pms-primary,#1976d2)}.btn-primary{padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;background:var(--pms-primary,#1976d2);color:var(--pms-primary-text,white)}.btn-primary:hover:not(:disabled){filter:brightness(1.1)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;background:var(--pms-bg-secondary,white);color:var(--pms-text-primary,#212121);border:1px solid var(--pms-border,#e0e0e0)}.btn-secondary:hover:not(:disabled){background:var(--pms-bg,#f5f5f5)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-accent{padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;background:var(--pms-accent,#ff9800);color:#fff}.btn-accent:hover:not(:disabled){filter:brightness(1.1)}.btn-accent:disabled{opacity:.5;cursor:not-allowed}.action-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s ease;background:var(--pms-bg-secondary,white);color:var(--pms-text-primary,#212121);border:1px solid var(--pms-border,#e0e0e0)}.action-btn:hover{background:var(--pms-bg,#f5f5f5)}.action-btn.primary,.action-btn:hover{border-color:var(--pms-primary,#1976d2)}.action-btn.primary{background:var(--pms-primary,#1976d2);color:var(--pms-primary-text,white)}.action-btn.primary:hover{filter:brightness(1.1)}.action-btn .action-icon{font-size:1.25rem}.nav-btn{padding:.5rem .75rem;border:1px solid var(--pms-border,#e0e0e0);border-radius:4px;background:var(--pms-bg-secondary,white);color:var(--pms-text-primary,#212121);cursor:pointer;transition:all .15s ease}.nav-btn:hover{background:var(--pms-bg,#f5f5f5)}.nav-btn.today-btn{font-weight:500}.change-actions{display:flex;align-items:center;gap:.75rem}.change-actions .change-count{font-size:.875rem;color:var(--pms-warning,#ff9800);background:rgba(255,152,0,.1);padding:.25rem .75rem;border-radius:4px}.date-navigation{display:flex;align-items:center;gap:.5rem}.date-navigation .date-range{font-size:.875rem;color:var(--pms-text-secondary,#757575);margin-left:.5rem}.badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge.status-inquiry{background:#e0e0e0;color:#616161}.badge.status-open{background:#fff3e0;color:#e65100}.badge.status-confirmed{background:#e3f2fd;color:#1565c0}.badge.status-checked-in{background:#e8f5e9;color:#2e7d32}.badge.status-checked-out{background:#eceff1;color:#546e7a}.badge.payment-unpaid,.badge.status-cancelled{background:#ffebee;color:#c62828}.badge.payment-partial{background:#fff3e0;color:#e65100}.badge.payment-paid{background:#e8f5e9;color:#2e7d32}.badge.payment-overpaid{background:#e3f2fd;color:#1565c0}.badge.payment-refunded{background:#f3e5f5;color:#7b1fa2}.error-message{padding:1rem;margin-bottom:1rem;background:var(--pms-error,#f44336);color:#fff;border-radius:4px;font-size:.875rem}.view-link{color:var(--pms-primary,#1976d2);text-decoration:none;font-size:.875rem;font-weight:500}.view-link:hover{text-decoration:underline}.schedule-view{padding:1.5rem;max-width:100%;overflow:hidden}.schedule-view h1{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:var(--pms-text-primary)}.schedule-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.schedule-controls,.schedule-legend{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.schedule-legend{margin-bottom:1rem;font-size:.75rem}.schedule-legend .legend-title{font-weight:600;color:var(--pms-text-secondary)}.schedule-legend .legend-item{display:flex;align-items:center;gap:.25rem;color:var(--pms-text-secondary)}.schedule-legend .legend-item .legend-color{width:12px;height:12px;border-radius:2px}.schedule-container{overflow-x:auto;border:1px solid var(--pms-border);border-radius:8px;background:var(--pms-bg-secondary)}.schedule-grid{--cell-width:40px;--row-height:36px;min-width:max-content}.schedule-header-row{display:flex;position:sticky;top:0;z-index:10;background:var(--pms-bg);border-bottom:2px solid var(--pms-border)}.schedule-header-row .pitch-label-header{width:160px;min-width:160px;padding:.5rem 1rem;font-weight:600;font-size:.75rem;color:var(--pms-text-secondary);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;background:var(--pms-bg);border-right:1px solid var(--pms-border);position:sticky;left:0;z-index:11}.schedule-header-row .date-headers{display:flex}.schedule-header-row .date-headers .date-header{width:var(--cell-width);min-width:var(--cell-width);padding:.25rem;text-align:center;font-size:.7rem;border-right:1px solid var(--pms-border)}.schedule-header-row .date-headers .date-header.today{background:rgba(33,150,243,.15)}.schedule-header-row .date-headers .date-header.weekend{background:var(--pms-bg)}.schedule-header-row .date-headers .date-header .day-name{display:block;color:var(--pms-text-secondary);text-transform:uppercase;font-size:.6rem}.schedule-header-row .date-headers .date-header .day-number{display:block;font-weight:600;color:var(--pms-text-primary)}.schedule-body .category-group .category-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--pms-bg);border-bottom:1px solid var(--pms-border);border-left:4px solid;font-weight:600;font-size:.875rem;color:var(--pms-text-primary);position:sticky;left:0;z-index:5}.schedule-body .category-group .category-header .category-icon{font-size:1rem}.schedule-body .category-group .category-header .category-count{font-weight:400;color:var(--pms-text-secondary);font-size:.75rem}.schedule-body .category-group .pitch-row{display:flex;border-bottom:1px solid var(--pms-border)}.schedule-body .category-group .pitch-row:hover{background:var(--pms-bg)}.schedule-body .category-group .pitch-row .pitch-label{width:160px;min-width:160px;padding:.5rem 1rem;display:flex;align-items:center;gap:.5rem;background:var(--pms-bg-secondary);border-right:1px solid var(--pms-border);border-left:4px solid;position:sticky;left:0;z-index:4}.schedule-body .category-group .pitch-row .pitch-label .pitch-number{font-weight:600;font-size:.875rem;color:var(--pms-text-primary)}.schedule-body .category-group .pitch-row .pitch-label .pitch-name{font-size:.75rem;color:var(--pms-text-secondary)}.schedule-body .category-group .pitch-row .pitch-cells{display:flex;position:relative;height:var(--row-height)}.schedule-body .category-group .pitch-row .pitch-cells .cell{width:var(--cell-width);min-width:var(--cell-width);height:100%;border-right:1px solid var(--pms-border);cursor:pointer;transition:background .1s ease}.schedule-body .category-group .pitch-row .pitch-cells .cell:hover{background:rgba(33,150,243,.1)}.schedule-body .category-group .pitch-row .pitch-cells .cell.today{background:rgba(33,150,243,.05)}.schedule-body .category-group .pitch-row .pitch-cells .cell.weekend{background:var(--pms-bg)}.schedule-body .category-group .pitch-row .pitch-cells .cell.weekend:hover{background:rgba(33,150,243,.15)}.schedule-body .category-group .pitch-row .pitch-cells .booking-bar{position:absolute;top:4px;height:calc(var(--row-height) - 8px);border-radius:4px;display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;cursor:pointer;overflow:hidden;transition:all .15s ease;z-index:3;box-shadow:0 1px 2px rgba(0,0,0,.1)}.schedule-body .category-group .pitch-row .pitch-cells .booking-bar.hovered,.schedule-body .category-group .pitch-row .pitch-cells .booking-bar:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.2);z-index:5}.schedule-body .category-group .pitch-row .pitch-cells .booking-bar .booking-guest{font-size:.7rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 1px rgba(0,0,0,.2)}.schedule-body .category-group .pitch-row .pitch-cells .booking-bar .booking-payment{font-size:.75rem;color:#fff;opacity:.9}.schedule-body .no-pitches{padding:3rem;text-align:center;color:var(--pms-text-secondary)}.schedule-body .no-pitches p{margin-bottom:1rem}.schedule-body .no-pitches a{color:var(--pms-primary);text-decoration:underline}.schedule-body .no-pitches a:hover{color:var(--pms-text-primary)}