:root{--color-primary:#b76e79;--color-primary-dark:#9a5560;--color-bg:#fdf6f2;--color-bg-soft:#fdf0eb;--color-border:#e8d5d7;--color-text:#5a3a3a;--color-text-light:#7a5c60;--color-error:#c0392b;--color-success:#27ae60;--font-main:"Georgia", "Times New Roman", serif;--font-body:system-ui, "Segoe UI", Roboto, sans-serif;--border-radius:8px;--max-width:680px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6;overflow-x:hidden}h1{font-family:var(--font-main);color:var(--color-text);margin-bottom:8px;font-size:2rem;font-weight:400}h2{font-family:var(--font-main);color:var(--color-primary-dark);margin-bottom:16px;font-size:1.2rem;font-weight:400}p{color:var(--color-text-light);margin-bottom:8px}.bg-canvas{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bg-canvas:before{content:"";background:radial-gradient(80% 60% at 15% 20%,#f2d5cc88 0%,#0000 60%),radial-gradient(60% 50% at 85% 10%,#e8c8d888 0%,#0000 55%),radial-gradient(70% 65% at 50% 95%,#d4c8e288 0%,#0000 60%),radial-gradient(55% 45% at 90% 70%,#c8d9c888 0%,#0000 55%),radial-gradient(100% 80%,#fdf0eb 0%,#fdf6f2 100%);position:absolute;inset:0}.bg-canvas:after{content:"";opacity:.018;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");width:200%;height:200%;position:absolute;inset:-50%}.flowers-layer{z-index:1;pointer-events:none;position:fixed;inset:0}@keyframes drift{0%{opacity:0;transform:translateY(0)translate(0)rotate(0)scale(1)}10%{opacity:.6}90%{opacity:.4}to{opacity:0;transform:translateY(-110vh)translate(30px)rotate(360deg)scale(.8)}}@keyframes bloom{0%{opacity:0;transform:scale(.7)rotate(-10deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.petal-float{pointer-events:none;z-index:2;border-radius:60% 40% 70% 30%/50% 60% 40% 70%;animation:linear infinite drift;position:fixed}.floral-corner{pointer-events:none;z-index:2;animation:1.2s cubic-bezier(.16,1,.3,1) both bloom;position:fixed}.floral-corner.tl{top:-20px;left:-20px}.floral-corner.tr{animation-delay:.15s;top:-20px;right:-20px;transform:scaleX(-1)}.floral-corner.bl{animation-delay:.3s;bottom:-20px;left:-20px;transform:scaleY(-1)}.floral-corner.br{animation-delay:.45s;bottom:-20px;right:-20px;transform:scale(-1)}.mid-floral{z-index:3;pointer-events:none;animation:5s ease-in-out infinite float;position:fixed}.page-content{z-index:10;position:relative}.declined-banner{border-radius:var(--border-radius);color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;margin:16px 0 8px;padding:14px 18px;font-size:.95rem}.declined-refund-note{background:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text-light);margin-bottom:8px;padding:10px 18px;font-size:.88rem}.decline-btn-row{justify-content:flex-end;gap:10px;margin:12px 0 4px;display:flex}.complete-btn{color:#fff;cursor:pointer;background:#0f766e;border:none;border-radius:6px;padding:7px 18px;font-size:.9rem;transition:background .15s}.complete-btn:hover{background:#0d6460}.complete-confirm-btn{color:#fff;cursor:pointer;background:#0f766e;border:none;border-radius:6px;padding:9px 20px;font-size:.95rem;transition:background .2s}.complete-confirm-btn:hover:not(:disabled){background:#0d6460}.complete-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.decline-btn{color:#dc2626;border-radius:var(--border-radius);cursor:pointer;background:#fff;border:1px solid #fca5a5;padding:7px 18px;font-size:.88rem;transition:background .15s,border-color .15s}.decline-btn:hover{background:#fef2f2;border-color:#dc2626}.modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{border-radius:var(--border-radius);background:#fff;width:100%;max-width:480px;padding:32px;box-shadow:0 8px 32px #00000026}.modal-box h2{color:var(--color-text);margin-bottom:8px}.modal-description{color:var(--color-text-light);margin-bottom:20px;font-size:.9rem}.modal-textarea{border:1px solid var(--color-border);border-radius:var(--border-radius);width:100%;font-size:.95rem;font-family:var(--font-body);color:var(--color-text);resize:vertical;padding:10px 12px}.modal-textarea:focus{border-color:var(--color-primary);outline:none}.modal-refund-toggle{margin:16px 0}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.modal-cancel-btn{border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;color:var(--color-text);background:#fff;padding:9px 20px;font-size:.95rem}.modal-cancel-btn:hover{background:var(--color-bg-soft)}.modal-confirm-decline-btn{color:#fff;border-radius:var(--border-radius);cursor:pointer;background:#dc2626;border:none;padding:9px 20px;font-size:.95rem;transition:background .2s}.modal-confirm-decline-btn:hover:not(:disabled){background:#b91c1c}.modal-confirm-decline-btn:disabled{opacity:.6;cursor:not-allowed}.required{color:var(--color-error)}.deposit-action-bar{border-radius:var(--border-radius);background:#eaf7ee;border:1px solid #a8d5b5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:16px 0 8px;padding:16px 20px;display:flex}.deposit-action-note{color:#2d6a4f;margin:0;font-size:.9rem}.deposit-received-btn{color:#fff;border-radius:var(--border-radius);cursor:pointer;white-space:nowrap;background:#2d6a4f;border:none;padding:10px 22px;font-size:.95rem;transition:background .2s}.deposit-received-btn:hover:not(:disabled){background:#1e4d38}.deposit-received-btn:disabled{opacity:.6;cursor:not-allowed}.contract-page{max-width:760px;margin:40px auto;padding:0 20px 60px}.contract-card{border:1px solid var(--color-border);border-radius:var(--border-radius);background:#fff;padding:48px 52px}.contract-header{text-align:center;border-bottom:1px solid var(--color-border);margin-bottom:36px;padding-bottom:24px}.contract-subtitle{font-family:var(--font-main);color:var(--color-text-light);margin-top:4px;font-size:1rem}.contract-agreed-banner{color:#2d6a4f;border-radius:var(--border-radius);background:#eaf7ee;border:1px solid #a8d5b5;margin-bottom:28px;padding:14px 18px;font-size:.95rem;line-height:1.5}.contract-section{border-bottom:1px solid var(--color-border);margin-bottom:32px;padding-bottom:32px}.contract-section:last-of-type{border-bottom:none}.contract-event-block{background:var(--color-bg-soft);border-radius:var(--border-radius);margin-top:12px;padding:12px 16px}.contract-event-block p{margin-bottom:2px;font-size:.95rem}.contract-arrival-time{color:var(--color-primary);font-weight:600}.contract-event-group{margin-top:20px}.contract-event-label{color:var(--color-text);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:.9rem;font-weight:600}.contract-line-items{border-collapse:collapse;width:100%;font-size:.95rem}.contract-line-items th{text-align:left;background:var(--color-bg-soft);color:var(--color-text-light);border-bottom:1px solid var(--color-border);padding:6px 10px;font-size:.85rem;font-weight:600}.contract-line-items td{color:var(--color-text);border-bottom:1px solid #f0e8e8;padding:8px 10px}.contract-line-items th:last-child,.contract-line-items td:last-child{text-align:right}.contract-summary{border:1px solid var(--color-border);border-radius:var(--border-radius);margin-top:12px;overflow:hidden}.contract-summary-row{border-bottom:1px solid var(--color-border);color:var(--color-text);justify-content:space-between;padding:10px 16px;font-size:.95rem;display:flex}.contract-summary-row:last-child{border-bottom:none}.contract-summary-balance{background:var(--color-bg-soft);font-weight:600}.contract-insurance-note{border-radius:var(--border-radius);color:#7a5c00;background:#fff8e6;border:1px solid #f0d080;margin-top:14px;padding:12px 16px;font-size:.9rem}.contract-notes{white-space:pre-wrap;background:var(--color-bg-soft);border-radius:var(--border-radius);padding:14px 16px;font-size:.95rem}.contract-terms{color:var(--color-text-light);font-size:.88rem;line-height:1.7}.contract-terms-block{margin-bottom:16px}.contract-terms-title{color:var(--color-text);margin-bottom:4px;font-size:.88rem;font-weight:600}.contract-agree-section{background:var(--color-bg-soft);border-radius:var(--border-radius);border:1px solid var(--color-border);padding:24px;border-bottom:1px solid var(--color-border)!important}.contract-agree-label{color:var(--color-text);cursor:pointer;align-items:flex-start;gap:10px;margin:16px 0;font-size:.95rem;line-height:1.5;display:flex}.contract-agree-label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary);flex-shrink:0;margin-top:3px}.contract-accept-btn{background:var(--color-primary);color:#fff;border-radius:var(--border-radius);cursor:pointer;border:none;margin-top:8px;padding:12px 28px;font-size:1rem;transition:background .2s}.contract-accept-btn:hover:not(:disabled){background:var(--color-primary-dark)}.contract-accept-btn:disabled{opacity:.5;cursor:not-allowed}.contract-footer{border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-light);margin-top:40px;padding-top:20px;font-size:.85rem}.contract-footer p{margin-bottom:2px;font-size:.85rem}.analysis-card{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);align-items:center;gap:32px;padding:24px 28px;display:flex}.analysis-stats{flex-direction:column;flex:1;gap:16px;display:flex}.analysis-stat-row{border:1px solid var(--color-border);border-radius:var(--border-radius);background:#fff;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.analysis-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:5px}.analysis-stat-body{flex-direction:column;gap:2px;display:flex}.analysis-stat-label{color:var(--color-text-light);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.analysis-stat-count{color:var(--color-text);font-size:15px;font-weight:600}.analysis-stat-amount{color:var(--color-text-light);font-size:13px}.analysis-monthly-card{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:16px 20px}.analysis-monthly-legend{color:var(--color-text-light);gap:16px;margin-bottom:6px;font-size:12px;display:flex}.analysis-legend-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.booking-form-container{max-width:var(--max-width);margin:0 auto;padding:40px 24px 60px}.booking-form-container>h1{text-align:center}.booking-form-container>p{text-align:center;margin-bottom:32px}form section{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:20px;padding:24px}.form-group{flex-direction:column;margin-bottom:16px;display:flex}.form-group:last-child{margin-bottom:0}.form-group label{color:var(--color-text);margin-bottom:6px;font-size:14px;font-weight:600}.form-group input,.form-group textarea{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);padding:10px 14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary);outline:none}.form-group textarea{resize:vertical}.services-list{flex-direction:column;gap:10px;display:flex}.service-option{border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);cursor:pointer;align-items:flex-start;gap:12px;padding:12px;transition:border-color .2s;display:flex}.service-option:hover{border-color:var(--color-primary)}.service-option input[type=checkbox]{accent-color:var(--color-primary);flex-shrink:0;width:16px;height:16px;margin-top:3px}.service-info{flex-direction:column;gap:2px;display:flex}.service-name{color:var(--color-text);font-size:15px;font-weight:600}.service-description{color:var(--color-text-light);font-size:13px}.event-row{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:12px;padding:16px}.event-row-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.event-row-title{color:var(--color-primary-dark);font-size:14px;font-weight:600}.event-row select,.form-group select{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);cursor:pointer;width:100%;padding:10px 14px}.event-row select:focus,.form-group select:focus{border-color:var(--color-primary);outline:none}.optional{color:var(--color-text-light);font-size:12px;font-weight:400}.service-row{border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);flex-direction:column;gap:8px;margin-bottom:10px;padding:12px;display:flex}.service-row select{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);cursor:pointer;width:100%;padding:10px 14px}.service-row select:focus{border-color:var(--color-primary);outline:none}.custom-service-inputs{flex-direction:column;gap:8px;display:flex}.custom-service-inputs input{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);padding:10px 14px}.custom-service-inputs input:focus{border-color:var(--color-primary);outline:none}.remove-row-btn{color:var(--color-text-light);cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:2px 0;font-size:13px;text-decoration:underline}.remove-row-btn:hover{color:var(--color-error)}.add-service-btn{border:1px dashed var(--color-primary);color:var(--color-primary);border-radius:var(--border-radius);cursor:pointer;background:0 0;width:100%;margin-top:4px;padding:10px;font-size:14px;transition:background-color .2s}.add-service-btn:hover{background-color:var(--color-bg-soft)}.form-error{color:var(--color-error);border-radius:var(--border-radius);background-color:#fdf0ef;border:1px solid #f5c6c2;margin-bottom:16px;padding:10px 14px;font-size:14px}button[type=submit]{background-color:var(--color-primary);color:#fff;width:100%;font-size:16px;font-family:var(--font-body);border-radius:var(--border-radius);cursor:pointer;border:none;padding:14px;transition:background-color .2s}button[type=submit]:hover:not(:disabled){background-color:var(--color-primary-dark)}button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.login-container{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);max-width:420px;margin:80px auto;padding:40px 32px}.login-container h1{text-align:center;margin-bottom:4px}.login-container h2{text-align:center;margin-bottom:28px}.dashboard-container{max-width:800px;margin:0 auto;padding:32px 24px 60px}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.dashboard-header h1{margin-bottom:0}.logout-btn{border:1px solid var(--color-border);color:var(--color-text-light);border-radius:var(--border-radius);cursor:pointer;background:0 0;padding:8px 16px;font-size:14px}.logout-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.calendar-banner{border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text-light);background-color:#fdf8f8;justify-content:space-between;align-items:center;margin-bottom:24px;padding:12px 16px;font-size:14px;display:flex}.calendar-banner.connected{color:#16a34a;background-color:#f0fdf4;border-color:#bbf7d0}.calendar-link-btn{border:1px solid var(--color-primary);color:var(--color-primary);border-radius:var(--border-radius);cursor:pointer;background:0 0;padding:6px 14px;font-size:13px;text-decoration:none}.calendar-reconnect-banner{border-radius:var(--border-radius);color:#b91c1c;background-color:#fdf8f8;border:1px solid #fca5a5;justify-content:space-between;align-items:center;margin-bottom:24px;padding:12px 16px;font-size:14px;display:flex}.calendar-reconnect-msg{color:#b91c1c;margin-bottom:8px;font-size:13px}.calendar-reconnect-btn{color:#b91c1c;border-radius:var(--border-radius);cursor:pointer;background:0 0;border:1px solid #b91c1c;padding:6px 14px;font-size:13px;text-decoration:none;display:inline-block}.calendar-link-btn:hover{background-color:var(--color-primary);color:#fff}.search-input{border:1px solid var(--color-border);box-sizing:border-box;background:#fff;border-radius:8px;width:100%;margin-bottom:14px;padding:10px 14px;font-size:14px}.filter-tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.filter-tab{border:1px solid var(--color-border);color:var(--color-text-light);cursor:pointer;background:0 0;border-radius:20px;padding:6px 14px;font-size:13px;transition:all .15s}.filter-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-tab.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.inquiry-list{flex-direction:column;gap:10px;display:flex}.inquiry-card{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;padding:16px 20px;transition:border-color .15s}.inquiry-card:hover{border-color:var(--color-primary)}.inquiry-card-main{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.inquiry-client{color:var(--color-text);font-size:15px;font-weight:600}.inquiry-card-badges{align-items:center;gap:6px;display:flex}.source-badge{color:var(--color-primary);background-color:color-mix(in srgb, var(--color-primary) 12%, transparent);border-radius:12px;padding:3px 8px;font-size:11px;font-weight:600}.status-badge{color:#fff;text-transform:uppercase;letter-spacing:.03em;border-radius:12px;padding:3px 10px;font-size:12px;font-weight:600}.inquiry-card-sub{color:var(--color-text-light);gap:12px;font-size:13px;display:flex}.event-count{color:var(--color-primary)}.empty-state{text-align:center;color:var(--color-text-light);padding:40px 0}.calendar-widget{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);max-width:320px;margin-bottom:24px;padding:12px}.calendar-nav{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.calendar-nav button{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0 8px;font-size:20px;line-height:1}.calendar-nav button:hover{color:var(--color-primary-dark)}.calendar-month-label{font-family:var(--font-main);color:var(--color-text);font-size:1rem}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-day-label{text-align:center;color:var(--color-text-light);padding:4px 0;font-size:11px;font-weight:600}.calendar-cell{aspect-ratio:1;color:var(--color-text);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:11px;display:flex;position:relative}.calendar-cell--active{cursor:pointer}.calendar-cell--active:hover{background-color:var(--color-border)}.calendar-cell--today .calendar-day-num{background-color:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.calendar-cell--selected{background-color:#fdf0f2}.calendar-dot{background-color:var(--color-primary);border-radius:50%;width:5px;height:5px}.calendar-loading{text-align:center;color:var(--color-text-light);margin-top:8px;font-size:13px}.calendar-events{border-top:1px solid var(--color-border);margin-top:12px;padding-top:12px}.calendar-events-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.calendar-events-title{color:var(--color-text);margin-bottom:0;font-size:13px;font-weight:600}.calendar-add-btn{border:1px solid var(--color-primary);color:var(--color-primary);border-radius:var(--border-radius);cursor:pointer;background:0 0;padding:3px 8px;font-size:11px}.calendar-add-btn:hover{background-color:var(--color-primary);color:#fff}.calendar-add-form{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);flex-direction:column;gap:6px;margin-bottom:10px;padding:10px;display:flex}.calendar-add-form input{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:13px;font-family:var(--font-body);color:var(--color-text);padding:6px 10px}.calendar-add-form input:focus{border-color:var(--color-primary);outline:none}.calendar-add-times{color:var(--color-text-light);align-items:center;gap:6px;font-size:12px;display:flex}.calendar-add-times input{flex:1}.calendar-add-form button[type=submit]{width:100%;padding:7px;font-size:13px}.calendar-allday-label{color:var(--color-text);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.calendar-allday-label input[type=checkbox]{width:auto;margin:0}.calendar-save-error{color:var(--color-error);margin:0;font-size:12px}.calendar-no-events{color:var(--color-text-light);font-size:13px}.calendar-event-list{flex-direction:column;gap:6px;list-style:none;display:flex}.calendar-event-item{gap:10px;font-size:13px;display:flex}.calendar-event-time{color:var(--color-text-light);flex-shrink:0;width:70px}.calendar-event-name{color:var(--color-text)}.cal-page-section{margin-top:8px}.cal-page-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cal-page-header h2{margin-bottom:0}.calendar-nav-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0 8px;font-size:20px}.calendar-nav-btn:hover{color:var(--color-primary-dark)}.cal-event-list{flex-direction:column;gap:8px;display:flex}.cal-event-card{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);gap:14px;padding:12px 16px;display:flex}.cal-event-card--booked{border-color:var(--color-primary);background-color:#fdf5f6}.cal-event-card-date{color:var(--color-text-light);flex-shrink:0;width:80px;padding-top:2px;font-size:12px}.cal-event-card-body{flex-direction:column;gap:2px;display:flex}.cal-event-card-title{color:var(--color-text);font-size:14px;font-weight:600}.cal-event-card-time{color:var(--color-text-light);font-size:12px}.cal-event-inquiry-link{color:var(--color-primary);cursor:pointer;text-align:left;background:0 0;border:none;margin-top:4px;padding:0;font-size:12px;text-decoration:underline}.cal-event-inquiry-link:hover{color:var(--color-primary-dark)}.cal-event-actions{gap:8px;margin-top:6px;display:flex}.cal-edit-btn{border:1px solid var(--color-border);color:var(--color-text-light);border-radius:var(--border-radius);cursor:pointer;background:0 0;padding:3px 10px;font-size:12px}.cal-edit-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.cal-delete-btn{color:#dc2626;border-radius:var(--border-radius);cursor:pointer;background:0 0;border:1px solid #fca5a5;padding:3px 10px;font-size:12px}.cal-delete-btn:hover{background-color:#fef2f2}.cancel-overlay{z-index:1000;background-color:#0009;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.cancel-banner{text-align:center;background-color:#fff;border:3px solid #dc2626;border-radius:12px;width:100%;max-width:440px;padding:32px 28px}.cancel-banner-icon{margin-bottom:12px;font-size:48px}.cancel-banner h2{color:#dc2626;margin-bottom:8px;font-size:1.4rem}.cancel-event-name{color:var(--color-text);margin-bottom:12px;font-size:15px;font-weight:600}.cancel-instructions{color:var(--color-text-light);margin-bottom:16px;font-size:14px}.cancel-reason-input{border-radius:var(--border-radius);width:100%;font-size:14px;font-family:var(--font-body);color:var(--color-text);resize:vertical;border:2px solid #dc2626;margin-bottom:16px;padding:10px 14px}.cancel-reason-input:focus{border-color:#b91c1c;outline:none}.cancel-banner-actions{flex-direction:column;gap:10px;display:flex}.cancel-confirm-btn{color:#fff;border-radius:var(--border-radius);width:100%;font-size:15px;font-family:var(--font-body);cursor:pointer;background-color:#dc2626;border:none;padding:12px}.cancel-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-confirm-btn:hover:not(:disabled){background-color:#b91c1c}.cancel-abort-btn{border:1px solid var(--color-border);width:100%;color:var(--color-text-light);border-radius:var(--border-radius);font-size:15px;font-family:var(--font-body);cursor:pointer;background:0 0;padding:12px}.cancel-abort-btn:hover{border-color:var(--color-text-light);color:var(--color-text)}.detail-container{max-width:700px;margin:0 auto;padding:32px 24px 60px}.back-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;margin-bottom:20px;padding:0;font-size:14px}.back-btn:hover{color:var(--color-primary-dark)}.detail-header{align-items:center;gap:12px;margin-bottom:4px;display:flex}.detail-header h1{margin-bottom:0}.detail-submitted{margin-bottom:28px;font-size:13px}.detail-section{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:16px;padding:20px 24px}.detail-row{border-bottom:1px solid var(--color-border);gap:16px;padding:8px 0;font-size:14px;display:flex}.detail-row:last-child{border-bottom:none}.detail-label{width:120px;color:var(--color-text-light);flex-shrink:0;font-weight:600}.detail-event{border-bottom:1px solid var(--color-border);margin-bottom:16px;padding-bottom:16px}.detail-event:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-event-title{color:var(--color-primary-dark);margin-bottom:8px;font-size:14px;font-weight:600}.detail-services{flex-direction:column;gap:8px;list-style:none;display:flex}.detail-services li{color:var(--color-text);align-items:center;gap:8px;font-size:14px;display:flex}.detail-custom-tag{color:var(--color-text-light);border:1px solid var(--color-border);border-radius:10px;padding:1px 6px;font-size:11px}.detail-notes{color:var(--color-text);font-size:14px;line-height:1.6}.svc-page-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.svc-page-header h1{margin-bottom:0}.svc-add-btn{border:1px solid var(--color-primary);color:var(--color-primary);border-radius:var(--border-radius);cursor:pointer;background:0 0;padding:8px 16px;font-size:14px}.svc-add-btn:hover{background-color:var(--color-primary);color:#fff}.svc-list{flex-direction:column;gap:10px;margin-top:20px;display:flex}.svc-card{background-color:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:16px 20px}.svc-card--editing{border-color:var(--color-primary);flex-direction:column;gap:10px;display:flex}.svc-card--deleting{border-color:#fca5a5}.svc-reorder-btns{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.svc-reorder-btn{border:1px solid var(--color-border);cursor:pointer;color:var(--color-text-light);background:0 0;border-radius:4px;padding:0 5px;font-size:12px;line-height:1.6}.svc-reorder-btn:hover:not(:disabled){background:var(--color-bg-soft);color:var(--color-text)}.svc-reorder-btn:disabled{opacity:.25;cursor:default}.svc-card-main{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.svc-card-info{flex-direction:column;gap:3px;display:flex}.svc-card-name{color:var(--color-text);font-size:15px;font-weight:600}.svc-card-desc{color:var(--color-text-light);font-size:13px}.svc-card-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.svc-card-price{color:var(--color-text);font-size:15px;font-weight:600}.svc-status-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.svc-status-badge--active{color:#16a34a;background-color:#dcfce7}.svc-status-badge--inactive{color:#6b7280;background-color:#f3f4f6}.svc-card-actions{justify-content:flex-end;gap:8px;display:flex}.svc-edit-row{align-items:center;gap:12px;display:flex}.svc-edit-row--bottom{justify-content:space-between}.svc-input{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);padding:8px 12px}.svc-input:focus{border-color:var(--color-primary);outline:none}.svc-input--name{flex:1}.svc-input--desc{width:100%}.svc-price-input-wrap{align-items:center;gap:4px;display:flex}.svc-dollar{color:var(--color-text-light);font-size:14px}.svc-input--price{width:100px}.svc-duration-input-wrap{align-items:center;gap:4px;display:flex}.svc-input--duration{width:70px}.svc-duration-label,.svc-card-duration{color:var(--color-text-light);font-size:13px}.svc-qty-wrap{align-items:center;gap:6px;display:flex}.svc-qty-label{color:var(--color-text-light);white-space:nowrap;font-size:13px}.svc-qty-input{border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);width:60px;color:var(--color-text);padding:8px 10px;font-size:15px}.svc-active-toggle{color:var(--color-text);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:14px;display:flex}.svc-active-toggle input[type=checkbox]{accent-color:var(--color-primary);width:15px;height:15px}.svc-edit-actions{align-items:center;gap:8px;display:flex}.svc-save-btn{background-color:var(--color-primary);color:#fff;border-radius:var(--border-radius);cursor:pointer;border:none;padding:7px 16px;font-size:13px}.svc-save-btn:hover:not(:disabled){background-color:var(--color-primary-dark)}.svc-save-btn:disabled{opacity:.6;cursor:not-allowed}.svc-cancel-btn{border:1px solid var(--color-border);color:var(--color-text-light);border-radius:var(--border-radius);cursor:pointer;background:0 0;padding:7px 14px;font-size:13px}.svc-cancel-btn:hover{border-color:var(--color-text-light);color:var(--color-text)}.svc-delete-confirm-text{color:var(--color-text);margin-bottom:4px;font-size:14px}.svc-delete-confirm-btn{color:#fff;border-radius:var(--border-radius);cursor:pointer;background-color:#dc2626;border:none;padding:7px 16px;font-size:13px}.svc-delete-confirm-btn:hover:not(:disabled){background-color:#b91c1c}.svc-delete-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.svc-inline-error{color:var(--color-error);font-size:13px}.dashboard-nav{-webkit-overflow-scrolling:touch;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding-bottom:4px;display:flex;overflow-x:auto}.dashboard-nav::-webkit-scrollbar{display:none}.dashboard-nav-link{border:1px solid var(--color-border);color:var(--color-text-light);cursor:pointer;white-space:nowrap;background:0 0;border-radius:20px;flex-shrink:0;padding:6px 14px;font-size:13px}.dashboard-nav-link:hover{border-color:var(--color-primary);color:var(--color-primary)}.dashboard-nav-link--primary{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.dashboard-nav-link--primary:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#fff}.contract-open-btn{background-color:var(--color-primary);color:#fff;border-radius:var(--border-radius);cursor:pointer;border:none;margin-top:8px;padding:10px 20px;font-size:14px}.contract-open-btn:hover{background-color:var(--color-primary-dark)}.contract-sent-note{color:var(--color-text-light);margin-bottom:12px;font-size:14px}.contract-add-service-select{border:1px dashed var(--color-primary);border-radius:var(--border-radius);color:var(--color-primary);cursor:pointer;text-align:center;text-align-last:center;background:0 0;width:100%;padding:7px 14px;font-family:inherit;font-size:13px}.contract-add-service-select:hover{background-color:var(--color-bg-soft)}.conflict-modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.conflict-modal{border-radius:var(--border-radius);background:#fff;width:90%;max-width:520px;padding:28px 32px;box-shadow:0 8px 32px #0000002e}.conflict-modal-title{color:#b45309;margin-bottom:16px;font-size:1.1rem;font-weight:700}.conflict-section{margin-bottom:16px}.conflict-section-label{color:var(--color-text-light);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:13px;font-weight:600}.conflict-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.conflict-list li{border-radius:var(--border-radius);color:var(--color-text);background:#fef3c7;padding:6px 10px;font-size:14px}.conflict-override{flex-direction:column;gap:6px;margin-top:16px;display:flex}.conflict-override-label{color:var(--color-text);font-size:13px;font-weight:600}.conflict-override-input{border:1px solid var(--color-border);border-radius:var(--border-radius);resize:vertical;width:100%;padding:8px 10px;font-family:inherit;font-size:14px}.conflict-modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.conflict-cancel-btn{border:1px solid var(--color-border);color:var(--color-text-light);border-radius:var(--border-radius);cursor:pointer;background:0 0;padding:8px 16px;font-size:14px}.conflict-cancel-btn:hover{background:var(--color-bg-soft)}.conflict-send-btn{color:#fff;border-radius:var(--border-radius);cursor:pointer;background-color:#b45309;border:none;padding:8px 18px;font-size:14px}.conflict-send-btn:hover:not(:disabled){background-color:#92400e}.conflict-send-btn:disabled{opacity:.4;cursor:not-allowed}.contract-edit-btn{color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--border-radius);cursor:pointer;background-color:#0000;margin-bottom:16px;padding:8px 16px;font-size:14px}.contract-edit-btn:hover{background-color:var(--color-primary);color:#fff}.contract-event-details{background:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);flex-direction:column;gap:10px;margin-bottom:16px;padding:12px 16px;display:flex}.contract-event-detail-row{align-items:center;gap:12px;display:flex}.contract-event-detail-row label{width:110px;color:var(--color-text-light);flex-shrink:0;font-size:13px;font-weight:600}.contract-event-detail-row input{border:1px solid var(--color-border);border-radius:var(--border-radius);background:#fff;flex:1;padding:6px 10px;font-size:14px}.contract-url-row{flex-direction:column;gap:6px;margin-top:16px;display:flex}.contract-url-label{color:var(--color-text-light);text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;font-weight:600}.contract-url-box{background:var(--color-bg-soft);border:1px solid var(--color-border);border-radius:var(--border-radius);align-items:center;gap:10px;padding:8px 12px;display:flex}.contract-url-link{color:var(--color-primary);word-break:break-all;flex:1;font-size:.88rem;text-decoration:none}.contract-url-link:hover{text-decoration:underline}.contract-url-copy-btn{border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;color:var(--color-text);background:#fff;flex-shrink:0;padding:4px 12px;font-size:.85rem;transition:background .15s}.contract-url-copy-btn:hover{background:var(--color-bg-soft)}.contract-line-items{margin-bottom:20px}.contract-line-header,.contract-line-row{grid-template-columns:1fr 130px 60px 80px 80px 32px;align-items:center;gap:8px;margin-bottom:6px;display:grid}@media (width<=600px){.contract-line-header,.contract-line-row{grid-template-columns:1fr 80px 45px 60px 60px 28px;gap:4px}}.contract-line-header{color:var(--color-text-light);border-bottom:1px solid var(--color-border);margin-bottom:8px;padding-bottom:4px;font-size:12px;font-weight:600}.cli-input{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);width:100%;padding:7px 10px}.cli-input:focus{border-color:var(--color-primary);outline:none}.cli-price-wrap,.cli-duration-wrap{align-items:center;gap:3px;display:flex}.cli-duration-unit{color:var(--color-text-light);flex-shrink:0;font-size:12px}.cli-dollar{color:var(--color-text-light);flex-shrink:0;font-size:13px}.cli-col-qty{text-align:center}.cli-row-total{color:var(--color-text);text-align:right;font-size:14px;font-weight:600}.cli-remove-btn{color:var(--color-text-light);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:13px;line-height:1}.cli-remove-btn:hover:not(:disabled){color:var(--color-error)}.cli-remove-btn:disabled{opacity:.2;cursor:not-allowed}.contract-add-line-btn{border:1px dashed var(--color-primary);color:var(--color-primary);border-radius:var(--border-radius);cursor:pointer;background:0 0;width:100%;padding:7px 14px;font-size:13px}.contract-add-line-btn:hover{background-color:var(--color-bg-soft)}.contract-event-section{border-bottom:1px solid var(--color-border);margin-bottom:24px;padding-bottom:8px}.contract-event-label-row{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.contract-event-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:13px;font-weight:600}.contract-remove-event-btn{color:#b91c1c;cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:12px}.contract-remove-event-btn:hover{text-decoration:underline}.contract-add-event-btn{border:1px dashed var(--color-border);border-radius:var(--border-radius);width:100%;color:var(--color-primary);cursor:pointer;text-align:center;background:0 0;margin-bottom:20px;padding:8px;font-size:13px;display:block}.contract-add-event-btn:hover{background-color:var(--color-bg)}.contract-add-event-form{border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);margin-bottom:20px;padding:14px}.contract-add-event-title{color:var(--color-text);margin:0 0 12px;font-size:13px;font-weight:600}.contract-add-event-fields{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.contract-add-event-fields label{color:var(--color-text-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.contract-add-event-fields input,.contract-add-event-fields select{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:13px;font-family:var(--font-body);color:var(--color-text);background-color:#fff;padding:6px 8px}.contract-add-event-services{margin-bottom:12px}.contract-add-event-services-label{color:var(--color-text-muted);margin:0 0 6px;font-size:12px}.contract-add-event-service-row{color:var(--color-text);cursor:pointer;align-items:center;gap:6px;margin-bottom:4px;font-size:13px;display:flex}.contract-add-event-service-row input[type=checkbox]{width:auto;margin:0}.contract-add-event-service-price{color:var(--color-text-muted);font-size:12px}.contract-add-event-actions{gap:8px;display:flex}.contract-cancel-btn{border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;color:var(--color-text-muted);background:0 0;padding:7px 16px;font-size:13px}.contract-event-footer{flex-direction:column;gap:6px;margin-top:8px;display:flex}.contract-event-subtotal{color:var(--color-text-muted);text-align:right;font-size:13px}.contract-event-subtotal strong{color:var(--color-text)}.contract-extras{border-top:1px solid var(--color-border);margin-bottom:20px;padding-top:16px}.contract-extras h3{color:var(--color-text-light);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:13px;font-weight:600}.contract-extras-row{color:var(--color-text);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;display:flex}.contract-extra-input{width:100px}.contract-summary{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;margin-bottom:20px;padding-top:16px;display:flex}.contract-summary-row{color:var(--color-text);justify-content:space-between;align-items:center;font-size:14px;display:flex}.contract-summary-row--total{border-top:1px solid var(--color-border);padding-top:8px;font-size:15px}.contract-summary-row--deposit{margin-top:4px}.contract-deposit-input{width:100px}.contract-footer{border-top:1px solid var(--color-border);flex-direction:column;gap:16px;margin-bottom:20px;padding-top:16px;display:flex}.contract-insurance-toggle{color:var(--color-text);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.contract-insurance-toggle input[type=checkbox]{accent-color:var(--color-primary);width:15px;height:15px}.contract-notes-group{flex-direction:column;gap:6px;display:flex}.contract-notes-group label{color:var(--color-text-light);font-size:13px;font-weight:600}.contract-notes-input{border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);resize:vertical;padding:8px 12px}.contract-notes-input:focus{border-color:var(--color-primary);outline:none}.contract-actions{gap:10px;display:flex}.contract-save-btn{background-color:var(--color-primary);color:#fff;border-radius:var(--border-radius);cursor:pointer;border:none;padding:10px 24px;font-size:14px}.contract-save-btn:hover:not(:disabled){background-color:var(--color-primary-dark)}.contract-preview-btn{border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text-light);cursor:pointer;padding:10px 22px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.contract-preview-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.contract-send-btn{color:#fff;border-radius:var(--border-radius);cursor:pointer;background-color:#2d6a4f;border:none;padding:10px 22px;font-size:14px;font-weight:600}.contract-send-btn:hover:not(:disabled){background-color:#1e4d38}.contract-send-btn:disabled,.contract-save-btn:disabled{opacity:.6;cursor:not-allowed}.contract-success{color:var(--color-success);margin-bottom:10px;font-size:13px}.booking-success{max-width:var(--max-width);text-align:center;margin:80px auto;padding:40px 24px}.booking-success h2{color:var(--color-text);margin-bottom:16px;font-size:1.8rem}.booking-success p{color:var(--color-text-light);font-size:16px}
