.page-title{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-sm) 0;color:var(--color-text-primary)}.page-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0}.page-header-content{margin-bottom:var(--spacing-md)}.page-title-inline-group{display:flex;align-items:baseline;gap:0.85rem;flex-wrap:wrap}.page-title-inline-group .page-title{margin:0}.page-title-secondary{text-transform:uppercase;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);letter-spacing:-0.01em}.page-title-secondary a{color:inherit;text-decoration:none}.page-title-secondary a:hover{text-decoration:underline}.booking-detail-layout{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl)}@media (min-width:1024px){.booking-detail-layout{grid-template-columns:1fr 300px}}.section-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-md) 1.25rem;margin-bottom:var(--spacing-xl)}.detail-field{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.detail-field:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.detail-label{display:block;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:var(--spacing-xs)}.detail-value{font-size:var(--font-size-md);color:var(--color-text-primary);margin:0}.detail-label-light{font-weight:var(--font-weight-medium);font-size:var(--font-size-xs)}.detail-field-info-row{display:flex;flex-direction:column}.detail-field-info-pair{display:flex;justify-content:space-between;align-items:baseline;gap:var(--spacing-md);padding:0.5rem 0;border-bottom:1px solid var(--color-border)}.detail-field-info-pair:last-child{border-bottom:none}.detail-field-info-value{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-align:right}@media (min-width:768px){.detail-field-info-row{flex-direction:row;flex-wrap:wrap;gap:1.5rem}.detail-field-info-pair{justify-content:flex-start;gap:0.4rem;padding:0;border-bottom:none}.detail-field-info-value{text-align:left}}.detail-field-grid{display:grid;grid-template-columns:1fr;column-gap:var(--spacing-xl)}.detail-field-grid .detail-field{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}@media (min-width:768px){.detail-field-grid{grid-template-columns:1fr 1fr}.detail-field-grid .detail-field-wide{grid-column:1 / -1}}.detail-field-row{display:grid;grid-template-columns:1fr;gap:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.detail-field-row .detail-field{margin:0;padding:0;border:none}@media (min-width:768px){.detail-field-row{grid-template-columns:repeat(3,1fr)}}.form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.data-link{color:var(--color-link);text-decoration:none}.data-link:hover{text-decoration:underline}.progress-bar{background:var(--color-border);border-radius:var(--radius-full);height:0.5rem;overflow:hidden;flex:1}.progress-fill{height:100%;background:var(--color-brand);border-radius:var(--radius-full);transition:width 0.3s ease}.progress-bar-small{background:var(--color-border);border-radius:var(--radius-full);height:0.35rem;overflow:hidden}.payment-summary-compact{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.badge-payment{display:inline-block;padding:0.15rem 0.5rem;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap}.badge-payment.paid{background:var(--bg-success);color:var(--text-success)}.badge-payment.pending{background:var(--bg-warning);color:var(--text-warning)}.badge-payment.unpaid{background:var(--alert-error-bg);color:var(--alert-error-fg)}.badge-payment.neutral{background:var(--color-surface);color:var(--color-text-secondary)}.booking-date-detail-wrapper{display:flex;flex-direction:column;gap:0;min-height:calc(100vh - 150px)}.booking-date-detail-main{flex:1;overflow-y:auto}.date-navigation{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin:var(--spacing-lg) 0 var(--spacing-xl) 0;padding:var(--spacing-md);background-color:var(--color-hover);border-radius:var(--radius-md);gap:var(--spacing-sm)}.date-navigation .nav-link{flex:1;text-align:center;padding:0.6rem;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;color:var(--color-brand);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all 0.2s ease}.date-navigation .nav-link:hover:not(.disabled){background-color:var(--color-hover);border-color:var(--color-brand);transform:translateY(-1px)}.date-navigation .nav-link.disabled{color:var(--color-text-secondary);cursor:not-allowed;background-color:var(--color-hover);border-color:var(--color-border);opacity:0.5}.date-navigation .nav-info{flex:0 0 auto;text-align:center;padding:0.75rem;font-size:var(--font-size-sm);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}@media (min-width:768px){.booking-date-detail-wrapper{flex-direction:row}.date-navigation{flex-wrap:nowrap;margin:var(--spacing-lg) 0 var(--spacing-xl) 0}.date-navigation .nav-link{flex:1;padding:0.75rem;font-size:var(--font-size-sm)}.date-navigation .nav-info{flex:0 0 auto}}.page-header-nav-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-lg)}.page-header-date-nav{display:flex;gap:var(--spacing-md);font-size:var(--font-size-sm)}.page-header-date-nav a,.page-header-date-nav span[aria-disabled="true"]{display:inline-flex;align-items:center;gap:0.3rem;color:var(--color-text-secondary);text-decoration:none}.page-header-date-nav a:hover{color:var(--color-brand-hover)}.page-header-date-nav svg{width:14px;height:14px}.page-header-date-nav span[aria-disabled="true"]{opacity:var(--opacity-disabled);cursor:not-allowed}.context-sidebar{display:none;background-color:var(--color-hover);border-left:1px solid var(--color-border);padding:var(--spacing-lg) var(--spacing-md);overflow-y:auto}.sidebar-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.sidebar-section:last-child{border-bottom:none;margin-bottom:0}.sidebar-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:0.05em;margin:0 0 var(--spacing-sm) 0}.sidebar-content{font-size:var(--font-size-sm)}.sidebar-link{color:var(--color-brand);text-decoration:none;font-weight:var(--font-weight-medium);transition:color 0.2s}.sidebar-link:hover{text-decoration:underline;color:var(--color-brand-hover)}.booking-role{margin:0 0 var(--spacing-xs) 0;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.sidebar-stat{margin:var(--spacing-xs) 0;color:var(--color-text-secondary);font-size:var(--font-size-xs)}.sidebar-dates{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sidebar-date-link{display:flex;justify-content:space-between;align-items:center;padding:0.6rem;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);text-decoration:none;color:var(--color-text-primary);transition:all 0.2s ease}.sidebar-date-link:hover{border-color:var(--color-brand);box-shadow:var(--shadow-sm)}.date-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.date-status-badge{font-size:var(--font-size-xs);padding:0.2rem 0.4rem;border-radius:var(--radius-base);background-color:var(--color-border);color:var(--color-text-secondary);white-space:nowrap}.project-title{margin:0 0 var(--spacing-sm) 0;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}@media (min-width:768px){.context-sidebar{display:block;width:280px;max-height:calc(100vh - 200px)}}.entity-summary-stats{margin-bottom:var(--spacing-xl)}.entity-summary-stats h3{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.summary-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.summary-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:0.03em}.summary-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.summary-progress{display:flex;align-items:center;gap:var(--spacing-sm)}.summary-progress .progress-bar{flex:1}.summary-progress .summary-value{font-size:var(--font-size-md);min-width:50px;text-align:right}@media (min-width:768px){.summary-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}}@media (min-width:1024px){.summary-grid{gap:var(--spacing-lg)}}.collapsible-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--spacing-md)}.collapsible-card-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-background);cursor:pointer;border:none;width:100%;text-align:left;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);transition:background-color 0.15s ease}.collapsible-card-header:hover{background:var(--color-hover)}.collapsible-card-header:focus{outline:2px solid var(--color-brand);outline-offset:-2px}.collapsible-card-title{flex:1}.collapsible-card-chevron{font-size:var(--font-size-xs);color:var(--color-text-secondary);transition:transform 0.2s ease}.collapsible-card--open .collapsible-card-chevron{transform:rotate(180deg)}.collapsible-card-body{padding:var(--spacing-lg);border-top:1px solid var(--color-border)}.change-log{margin-top:var(--spacing-lg)}.change-log-toggle{display:inline-flex;align-items:center;gap:0.35rem;background:none;border:none;padding:0;color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;text-decoration:underline;text-decoration-color:var(--color-border-hover);text-underline-offset:3px}.change-log-toggle svg{width:12px;height:12px;flex-shrink:0}.change-log-toggle:hover{color:var(--color-text-primary);text-decoration-color:currentColor}.change-log-body{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px dashed var(--color-border)}.change-log-arrow{color:var(--color-text-secondary);margin:0 0.35em}
