:root{--page-bg:#ebefe7;--page-ink:#20332b;--text-strong:#112019;--text-muted:#4e645a;--border:#2545391f;--shadow-soft:0 24px 60px #182d251a;--radius-small:12px;--radius-medium:18px;--radius-large:26px;--font-body:"Segoe UI", "Trebuchet MS", Verdana, Arial, sans-serif;--font-heading:"Bahnschrift", "Trebuchet MS", "Segoe UI", sans-serif;font:16px/1.6 var(--font-body);color:var(--page-ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#daab4e3d,#0000 24%),radial-gradient(circle at 100% 0,#5689742e,#0000 26%),linear-gradient(#f4f7f1 0%,#e8eee6 100%)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--page-bg);min-height:100vh;margin:0}body,button,input,select,textarea{font:inherit}h1,h2,h3{color:var(--text-strong);font-family:var(--font-heading);margin:0}h1{font-size:clamp(2.5rem,4vw,4.8rem);line-height:.98}h2{font-size:clamp(1.8rem,2.4vw,2.8rem)}h3{font-size:1.15rem}p,ul{margin:0}a{color:inherit}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#6f7d2b;margin-bottom:.55rem;font-size:.75rem}.app-shell{grid-template-columns:320px minmax(0,1fr);min-height:100vh;display:grid}body.modal-open{overscroll-behavior:none;overflow:hidden}.sidebar{color:#edf7f0;background:radial-gradient(circle at 100% 0,#daab4e47,#0000 25%),linear-gradient(#183128 0%,#0f2019 100%);border-right:1px solid #ffffff14;flex-direction:column;justify-content:space-between;gap:2rem;height:100vh;padding:2rem;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-top{gap:.75rem;display:grid}.sidebar-top h1{color:#fff8f1;margin:0;font-size:2.3rem;line-height:1.1}.sidebar-copy{color:#edf7f0c7}.nav-list{gap:.8rem;display:grid}.nav-section-label{text-transform:uppercase;letter-spacing:.14em;color:#dae7df9e;margin:1rem 0 .2rem;font-size:.75rem}.nav-link{border-radius:var(--radius-medium);color:#f7fcf8db;background:#ffffff0a;border:1px solid #ffffff14;padding:.9rem 1rem;text-decoration:none}.nav-link.active{color:#fff;background:#daab4e2e;border-color:#e8cb7a57}.content{padding:2rem}.identity-card,.panel,.status-screen,.hero-card{border:1px solid var(--border);border-radius:var(--radius-large);box-shadow:var(--shadow-soft)}.identity-card{background:#ffffff0f;gap:.5rem;padding:1.25rem;display:grid}.identity-name{font-weight:700}.page-stack{gap:1.5rem;display:grid}.page-header{gap:.75rem;display:grid}.page-intro{max-width:56rem;color:var(--text-muted)}.vehicle-filter-panel{grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:1rem;display:grid}.event-filter-panel{grid-template-columns:minmax(0,1.3fr) minmax(220px,.7fr);gap:1rem;display:grid}.overview-filter-panel{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:1rem;display:grid}.event-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.field-span-full{grid-column:1/-1}.field-group{gap:.45rem;display:grid}.field-group span{color:var(--text-muted);font-size:.85rem}.field-group input,.field-group select,.field-group textarea{width:100%;color:var(--text-strong);background:#ffffffc2;border:1px solid #344d432e;border-radius:8px;padding:.44rem .72rem}.field-group textarea{resize:vertical}.section-divider{border:0;border-top:1px solid #8a6e522e;width:100%;margin:1.5rem 0 .25rem}.checkbox-group{align-content:start}.inline-checkbox{color:var(--text-strong);align-items:center;gap:.75rem;display:flex}.inline-checkbox input{width:auto;margin:0}.vehicle-list,.event-list,.history-timeline{gap:.85rem;display:grid}.vehicle-accordion-panel{gap:1rem;display:grid}.vehicle-card,.event-card,.history-card{text-align:left;border-radius:var(--radius-medium);background:#ffffffad;border:1px solid #344d4324;width:100%;padding:1rem}.vehicle-card{cursor:pointer}.vehicle-card.active,.event-card.active{border-color:#516f226b;box-shadow:0 14px 28px #2245371a}.event-card{cursor:pointer}.vehicle-card-header,.history-card-header,.history-meta-row{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.button-row,.card-actions{flex-wrap:wrap;gap:.75rem;display:flex}.section-heading{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.25rem;display:flex}.form-grid,.stack-list{gap:1rem;display:grid}.field{gap:.45rem;display:grid}.field span{color:var(--text-muted);font-size:.85rem}.field input,.field select,.field textarea{width:100%;color:var(--text-strong);background:#ffffffc2;border:1px solid #344d432e;border-radius:8px;padding:.44rem .72rem}.list-card{border-radius:var(--radius-medium);background:#ffffffb3;border:1px solid #344d4324;padding:1.25rem}.list-card h3{margin-top:0}.status-chip{color:var(--text-strong);background:#516f221f;border-radius:999px;align-items:center;padding:.35rem .7rem;font-size:.8rem;display:inline-flex}.vehicle-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.vehicle-summary-table{gap:.45rem;display:grid}.vehicle-summary-header,.vehicle-summary-row{grid-template-columns:minmax(110px,.85fr) minmax(180px,1.35fr) minmax(110px,.9fr) minmax(125px,.95fr) minmax(140px,1fr) 1.25rem;align-items:center;gap:.8rem;display:grid}.vehicle-summary-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:0 .75rem .35rem;font-size:.78rem}.vehicle-summary-body{gap:.45rem;display:grid}.vehicle-summary-entry{background:#ffffffbd;border:1px solid #344d4324;border-radius:10px;overflow:hidden}.vehicle-summary-entry-open{border-color:#516f2257;box-shadow:0 10px 20px #22453714}.vehicle-summary-row{width:100%;color:var(--text-strong);text-align:left;background:0 0;border:0;padding:.7rem .75rem;transition:background .16s}.vehicle-summary-row:hover,.vehicle-summary-row:focus-visible{background:#ffffff6b}.vehicle-summary-cell{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.vehicle-summary-registration,.vehicle-summary-vehicle{font-weight:600}.vehicle-summary-status,.vehicle-summary-mileage,.vehicle-summary-assignee{font-size:.9rem}.vehicle-summary-chevron{color:var(--text-muted);justify-self:end;font-size:1.2rem;line-height:1;transition:transform .16s}.vehicle-summary-chevron-open{transform:rotate(90deg)}.vehicle-summary-detail{background:#fffcf7d1;border-top:1px solid #344d431f;padding:1rem}.vehicle-detail-notes{grid-column:1/-1}.link-button{text-decoration:none}.button-cluster{flex-wrap:wrap;gap:.75rem;display:flex}.align-end{align-self:end}.events-layout,.subpanel-grid{gap:1rem;display:grid}.events-layout{grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);align-items:start}.subpanel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.detail-list{gap:.85rem;display:grid}.overview-filter-shell,.overview-events-panel{gap:1rem;display:grid}.overview-events-heading{align-items:center}.overview-legend{color:var(--text-muted);flex-wrap:wrap;gap:.45rem .9rem;margin-top:.45rem;font-size:.8rem;display:flex}.overview-legend-item{align-items:center;gap:.4rem;display:inline-flex}.overview-legend-dot{border:1px solid #344d431f;border-radius:999px;flex:none;width:.65rem;height:.65rem}.overview-legend-dot-open{background:#ffffffdb}.overview-legend-dot-paperwork{background:#e2daf5b8}.overview-legend-dot-completed{background:#d2eed7cc}.overview-legend-dot-urgent{background:#fad7e0db}.overview-table{gap:.5rem;display:grid}.overview-table-header,.overview-table-row{grid-template-columns:minmax(110px,.8fr) minmax(105px,.9fr) minmax(180px,1.4fr) minmax(140px,1fr) minmax(135px,.9fr);align-items:center;gap:.8rem;display:grid}.overview-table-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:0 .75rem .35rem;font-size:.78rem}.overview-table-body{gap:.45rem;display:grid}.overview-table-row{color:var(--text-strong);border:1px solid #344d4324;border-radius:10px;padding:.55rem .75rem;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s}.overview-table-row:hover,.overview-table-row:focus-visible{border-color:#516f2257;transform:translateY(-1px);box-shadow:0 10px 20px #22453714}.overview-cell{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.92rem;overflow:hidden}.overview-date,.overview-status{font-size:.85rem}.overview-registration,.overview-event-type{font-weight:600}.overview-row-open{background:#ffffffdb}.overview-row-paperwork{background:#e2daf5b8}.overview-row-completed{background:#d2eed7cc}.overview-row-urgent{background:#fad7e0db}.event-inline-actions{gap:1rem;display:grid}.collapsible-section{border-radius:var(--radius-medium);background:#ffffff8f;border:1px solid #344d4324}.collapsible-summary{cursor:pointer;color:var(--text-strong);padding:.9rem 1rem;font-weight:600;list-style:none}.collapsible-summary::-webkit-details-marker{display:none}.collapsible-summary:before{content:"+";width:1rem;color:var(--text-muted);margin-right:.5rem;display:inline-block}.collapsible-section[open] .collapsible-summary{border-bottom:1px solid #344d431a}.collapsible-section[open] .collapsible-summary:before{content:"−"}.collapsible-content{gap:1rem;padding:1rem;display:grid}.item-summary-table{gap:.45rem;display:grid}.item-summary-header,.item-summary-row{grid-template-columns:minmax(0,1.7fr) minmax(90px,.7fr) minmax(90px,.7fr);align-items:center;gap:.8rem;display:grid}.item-summary-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:0 .75rem .35rem;font-size:.78rem}.item-summary-body{gap:.45rem;display:grid}.item-summary-row{width:100%;color:var(--text-strong);text-align:left;background:#ffffffbd;border:1px solid #344d4324;border-radius:10px;padding:.65rem .75rem;transition:border-color .16s,box-shadow .16s,transform .16s}.item-summary-row:hover,.item-summary-row:focus-visible{border-color:#516f2257;transform:translateY(-1px);box-shadow:0 10px 20px #22453714}.item-summary-cell{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.item-summary-description{font-weight:600}.item-summary-status,.item-summary-total{font-size:.9rem}.item-summary-total{text-align:right}.access-card{gap:.9rem;display:grid}.title-block{gap:.25rem;display:grid}.title-block span{color:var(--text-muted);font-size:.9rem}.compact-actions{align-items:center}.feedback-success{color:#205b33}.feedback-error{color:#8a1f1f}.feedback-line{border-radius:var(--radius-small);background:#ffffffb8;border:1px solid #344d432e;margin-top:1rem;padding:.75rem .9rem;line-height:1.4}.compact-list{gap:.7rem}.detail-stack,.item-workflow-grid{gap:1rem;display:grid}.item-workflow-grid{grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);align-items:start}.detail-card{border-radius:var(--radius-medium);background:#ffffffa8;border:1px solid #344d4324;padding:1rem}.selectable-card{text-align:left;cursor:pointer;width:100%}.selectable-card.active{border-color:#516f226b;box-shadow:0 14px 28px #2245371a}.action-card{align-content:start;gap:1rem;display:grid}.recurrence-card{border-radius:var(--radius-medium);background:linear-gradient(#eff7e6eb,#fffcf7e0);border:1px solid #516f2238;gap:.85rem;padding:1rem;display:grid}.nested-card{box-shadow:none;background:#ffffffc7}.detail-note{color:var(--text-muted);margin-top:.75rem}.title-block{align-items:center;gap:.65rem;display:inline-flex}.event-type-swatch{border:1px solid #344d432e;border-radius:999px;flex:none;width:.95rem;height:.95rem}.card-copy{color:var(--text-muted);margin:.75rem 0 0}.feedback-line{border-radius:12px;margin:0;padding:.9rem 1rem}.feedback-success{color:#1f5b36;background:#37784f1f}.feedback-error{color:#7b1f1f;background:#a336361f}.action-feedback{margin-top:1rem}.history-card h4{color:var(--text-strong);margin:0;font-size:1rem}.history-timestamp{color:var(--text-muted);margin:.4rem 0 .75rem;font-size:.9rem}.history-meta-row{color:var(--text-muted);flex-wrap:wrap;margin-top:.85rem;font-size:.88rem}.panel,.hero-card,.status-screen{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffcf7d1;padding:1.5rem}.feature-grid{gap:1rem;display:grid}.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-panel{align-content:start;gap:.85rem;min-height:220px;display:grid}.calendar-toolbar,.calendar-heading-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.calendar-toggle-group{justify-content:flex-end}.calendar-board{gap:.85rem;display:grid}.calendar-day-labels,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.75rem;display:grid}.calendar-day-label{text-align:center;color:var(--text-muted);padding:.4rem .25rem;font-size:.85rem}.calendar-cell{border-radius:var(--radius-medium);cursor:pointer;background:#ffffffb8;border:1px solid #344d4324;align-content:start;gap:.65rem;min-height:8.5rem;padding:.75rem;display:grid}.calendar-cell-placeholder{min-height:8.5rem}.calendar-cell:focus-visible{outline-offset:2px;outline:2px solid #516f228c}.calendar-cell-today{border-color:#516f2273;box-shadow:inset 0 0 0 1px #516f222e}.calendar-cell-header{min-width:0;color:var(--text-strong);justify-content:space-between;align-items:center;gap:.5rem;font-weight:700;display:flex}.calendar-count-pill{color:#516f22;background:#516f221f;border-radius:999px;flex:0 auto;justify-content:center;align-items:center;min-width:1.4rem;max-width:100%;height:1.4rem;padding:0 .35rem;font-size:.78rem;line-height:1;display:inline-flex;overflow:hidden}.calendar-bookings-list{gap:.4rem;display:grid}.calendar-booking-pill,.calendar-more-bookings{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:.35rem .55rem;font-size:.82rem;overflow:hidden}.calendar-booking-pill{background:linear-gradient(160deg,#e1f2eae6,#fffcf7e0)}.calendar-more-bookings{background:#e5edecd1}.year-calendar-grid{grid-template-columns:1fr;gap:1rem;display:grid}.year-month-card{border-radius:var(--radius-medium);background:#ffffff9e;border:1px solid #344d4324;padding:1rem}.compact-calendar-board .calendar-day-labels,.compact-calendar-board .calendar-grid{gap:.35rem}.compact-calendar-board .calendar-day-label{font-size:.72rem}.compact-calendar-board .calendar-cell{gap:.4rem;min-height:5.4rem;padding:.45rem}.compact-calendar-board .calendar-cell-placeholder{min-height:5.4rem}.compact-calendar-board .calendar-booking-pill,.compact-calendar-board .calendar-more-bookings{padding:.2rem .4rem;font-size:.72rem}.modal-overlay{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#11182773;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--border);border-radius:var(--radius-large);width:min(42rem,100%);max-height:calc(100vh - 3rem);box-shadow:var(--shadow-soft);background:#fffcf7f5;padding:1.5rem;overflow:auto}.accent-amber{background:linear-gradient(#fff4dbeb,#fffcf7e0)}.accent-teal{background:linear-gradient(#e1f2eaf2,#fafdfbe0)}.accent-slate{background:linear-gradient(#e5edecf2,#fafdfce0)}.section-heading-row{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.metric-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:.35rem;font-size:.78rem;display:block}.hero-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:center;gap:1.5rem;min-height:100vh;padding:2rem;display:grid}.auth-layout{grid-template-columns:minmax(0,1fr);justify-items:center}.hero-copy{gap:1rem;display:grid}.auth-layout .hero-copy{text-align:center;width:min(100%,46rem)}.config-panel{align-content:start;gap:.75rem;display:grid}.config-list{padding-left:1.25rem}.primary-button,.secondary-button,.ghost-button{appearance:none;cursor:pointer;border-radius:8px;margin-top:.625rem;padding:.44rem .72rem;transition:transform .14s,box-shadow .14s,border-color .14s}.primary-button{color:#fffef9;background:linear-gradient(135deg,#516f22,#224537);border:none;box-shadow:0 16px 30px #2245373d}.ghost-button,.secondary-button{color:var(--text-strong);background:#ffffff8c;border:1px solid #344d4338}.primary-button:hover,.secondary-button:hover,.ghost-button:hover{transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.secondary-button:disabled,.ghost-button:disabled{color:#4b3a2b94;background:#8a6e5214;border-color:#8a6e5238}.primary-button:disabled:hover,.secondary-button:disabled:hover,.ghost-button:disabled:hover{transform:none}.status-screen{place-content:center;justify-items:center;gap:1rem;min-height:100vh;display:grid}@media (width>=1600px){.year-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1080px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.events-layout,.subpanel-grid,.item-workflow-grid,.vehicle-filter-panel,.overview-filter-panel,.event-filter-panel,.event-form-grid,.three-up,.status-grid,.hero-layout{grid-template-columns:1fr}.calendar-day-labels,.calendar-grid{gap:.4rem}.calendar-cell{align-content:center;min-height:7rem;padding:.55rem}.calendar-cell-placeholder{min-height:7rem}.calendar-cell-header{text-align:center;justify-content:center;justify-items:center;gap:.45rem;display:grid}.calendar-bookings-list{display:none}.calendar-header-row{flex-direction:column}.calendar-header-row .calendar-toolbar{justify-content:flex-start;width:100%}.overview-table-header,.overview-table-row{grid-template-columns:minmax(95px,.8fr) minmax(95px,.85fr) minmax(150px,1.1fr) minmax(120px,.95fr) minmax(120px,.9fr)}.vehicle-summary-header,.vehicle-summary-row{grid-template-columns:minmax(90px,.8fr) minmax(140px,1.1fr) minmax(95px,.85fr) minmax(110px,.9fr) minmax(110px,.95fr) 1.25rem}.item-summary-header,.item-summary-row{grid-template-columns:minmax(0,1.45fr) minmax(88px,.8fr) minmax(88px,.7fr)}}@media (width<=720px){.content,.sidebar,.hero-layout{padding:1.25rem}.overview-legend{gap:.35rem .75rem;font-size:.76rem}.overview-table-header,.vehicle-summary-header,.item-summary-header{display:none}.overview-table-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"date status""registration registration""makeModel eventType";gap:.4rem .75rem}.overview-date{grid-area:date}.overview-status{text-align:right;grid-area:status}.overview-registration{grid-area:registration}.overview-make-model{grid-area:makeModel}.overview-event-type{text-align:right;grid-area:eventType}.vehicle-summary-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"registration chevron""vehicle vehicle""mileage status""assignee assignee";gap:.35rem .75rem}.vehicle-summary-registration{grid-area:registration}.vehicle-summary-status{text-align:right;grid-area:status}.vehicle-summary-vehicle{grid-area:vehicle}.vehicle-summary-mileage{grid-area:mileage}.vehicle-summary-assignee{grid-area:assignee}.vehicle-summary-chevron{grid-area:chevron;align-self:start}.item-summary-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"description total""status status";gap:.35rem .75rem}.item-summary-description{grid-area:description}.item-summary-total{grid-area:total}.item-summary-status{grid-area:status}}
