/* Update 65: quiet chrome, solid event colors, and a readable calendar at phone width. */
#seafix-demo .sf-calendar-open .sf-layovers-layout {display:block;}
#seafix-demo .sf-calendar-open .sf-layovers-sidebar {display:none;}
#seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel) {min-width:0;scroll-margin-top:24px;outline:none;}
#seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel,.sf-cal-dialog) {--cal-ink:var(--sf-heading);--cal-soft:var(--sf-muted);--cal-rule:var(--sf-line);color:var(--sf-heading);}
#seafix-demo [data-category=tasks]{--cal-color:#365ca8}#seafix-demo [data-category=service]{--cal-color:#237968}#seafix-demo [data-category=ulsfo]{--cal-color:#846232}#seafix-demo [data-category=mgo]{--cal-color:#ad572b}#seafix-demo [data-category=fuel]{--cal-color:#775138}#seafix-demo [data-category=lo]{--cal-color:#8251ac}#seafix-demo [data-category=sludge]{--cal-color:#6f6b5c}#seafix-demo [data-category=water]{--cal-color:#247998}#seafix-demo [data-category=food_waste]{--cal-color:#4b7a45}#seafix-demo [data-category=drill]{--cal-color:#b74151}#seafix-demo [data-category=DMA]{--cal-color:#6855ae}#seafix-demo [data-category=DNV]{--cal-color:#2b6873}#seafix-demo [data-category=internal]{--cal-color:#526a87}#seafix-demo [data-category=PSC]{--cal-color:#954573}#seafix-demo [data-category=smt]{--cal-color:#53545a}
#seafix-demo [data-layoff-color=sand]{--layoff:#f5eddf;--layoff-ink:#705732}#seafix-demo [data-layoff-color=lilac]{--layoff:#eee8f5;--layoff-ink:#685084}#seafix-demo [data-layoff-color=sea]{--layoff:#e0efeb;--layoff-ink:#33665c}
#seafix-demo[data-theme=dark] [data-layoff-color=sand]{--layoff:#393329;--layoff-ink:#e5ceab}#seafix-demo[data-theme=dark] [data-layoff-color=lilac]{--layoff:#332e40;--layoff-ink:#d5bee9}#seafix-demo[data-theme=dark] [data-layoff-color=sea]{--layoff:#243b35;--layoff-ink:#b1d8cc}
#seafix-demo button.sf-cal-button {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;border:1px solid var(--sf-line);border-radius:12px;background:var(--sf-surface);color:var(--sf-heading);font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
#seafix-demo button.sf-cal-button.is-primary {background:var(--sf-heading);color:var(--sf-canvas);border-color:var(--sf-heading);}
#seafix-demo button.sf-cal-button svg {width:16px;height:16px;flex:none;}
#seafix-demo #sf-layover-calendar-panel>button.sf-cal-button {padding:0;border:0;background:none;color:var(--sf-muted);font-weight:500;min-height:32px;margin-bottom:22px;}
#seafix-demo .sf-cal-top {display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;}
#seafix-demo .sf-cal-eyebrow {display:block;font-size:10px;letter-spacing:1.9px;font-weight:650;color:var(--sf-muted);line-height:1.5;}
#seafix-demo .sf-cal-top h2 {font-size:clamp(29px,3.5vw,42px);line-height:1.1;letter-spacing:-1.6px;font-weight:650;margin:7px 0 10px;}
#seafix-demo .sf-cal-top p {font-size:13px;line-height:1.6;margin:0;color:var(--sf-muted);}
#seafix-demo .sf-cal-actions {display:flex;flex-wrap:wrap;gap:9px;}
#seafix-demo .sf-cal-toolbar {display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:24px;}
#seafix-demo .sf-cal-scope {display:flex;gap:3px;padding:4px;background:var(--sf-surface-raised);border:1px solid var(--sf-line);border-radius:14px;min-width:0;}
#seafix-demo .sf-cal-scope button {display:flex;align-items:center;justify-content:center;gap:8px;border:0;padding:11px 15px;min-height:42px;border-radius:10px;font:inherit;font-size:12px;font-weight:550;color:var(--sf-muted);background:transparent;cursor:pointer;}
#seafix-demo .sf-cal-scope button[aria-pressed=true] {background:var(--sf-surface);color:var(--sf-heading);box-shadow:0 1px 5px #0000000d;}
#seafix-demo .sf-cal-scope svg {width:17px;height:17px;flex:none;}
#seafix-demo .sf-cal-filter select {width:100%;max-width:260px;min-height:42px;border:1px solid var(--sf-line);border-radius:11px;background:var(--sf-surface);color:var(--sf-heading);padding:9px 30px 9px 12px;font:inherit;font-size:12px;}
#seafix-demo .sf-cal-scope-note {color:var(--sf-muted);font-size:12px;margin:-10px 0 18px;}
#seafix-demo .sf-cal-status {display:flex;align-items:center;gap:12px;padding:12px;margin:0 0 16px;border:1px solid var(--sf-line);border-radius:12px;font-size:13px;}
#seafix-demo .sf-cal-month-card {border:1px solid var(--sf-line);border-radius:22px;overflow:hidden;background:var(--sf-surface);box-shadow:0 10px 38px #00000004;}
#seafix-demo .sf-cal-month-heading {display:flex;justify-content:space-between;align-items:center;gap:14px;padding:24px 26px;}
#seafix-demo .sf-cal-month-heading h3 {margin:0;font-size:23px;font-weight:600;line-height:1.3;letter-spacing:-.75px;text-transform:capitalize;}
#seafix-demo .sf-cal-month-heading p {margin:5px 0 0;font-size:11px;color:var(--sf-muted);}
#seafix-demo .sf-cal-month-nav {display:flex;align-items:center;gap:5px;flex:none;}
#seafix-demo .sf-cal-month-nav>button {display:flex;align-items:center;justify-content:center;width:38px;height:40px;min-height:40px;padding:0;border:0;background:none;border-radius:10px;color:var(--sf-heading);cursor:pointer;}
#seafix-demo .sf-cal-month-nav>button svg {width:18px;height:18px;}
#seafix-demo .sf-cal-month-nav>button.sf-cal-button {width:auto;padding:0 12px;font-size:12px;}
#seafix-demo .sf-cal-week {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));}
#seafix-demo .sf-cal-week:first-child {border-top:1px solid var(--sf-line);background:var(--sf-canvas);}
#seafix-demo .sf-cal-week>[role=columnheader] {padding:14px 10px;font-size:10px;letter-spacing:.7px;text-transform:uppercase;font-weight:600;color:var(--sf-muted);text-align:right;}
#seafix-demo .sf-cal-day {position:relative;min-width:0;min-height:116px;padding:8px;border-top:1px solid var(--sf-line);border-right:1px solid var(--sf-line);background:var(--sf-surface);}
#seafix-demo .sf-cal-day:last-child {border-right:0;}
#seafix-demo .sf-cal-day.is-outside {background:var(--sf-canvas);}
#seafix-demo .sf-cal-day[data-layoff-color] {background:var(--layoff);}
#seafix-demo .sf-cal-day.is-range-preview {background:var(--sf-surface-raised);box-shadow:inset 0 0 0 1px var(--sf-muted);}
#seafix-demo .sf-cal-day.is-selected:after {content:"";position:absolute;inset:0;border:2px solid var(--sf-heading);pointer-events:none;z-index:1;border-radius:2px;}
#seafix-demo button.sf-cal-day-number {display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;width:100%;min-height:30px;padding:0 1px 5px;border:0;background:none;color:var(--sf-heading);font:inherit;font-size:12px;cursor:pointer;font-weight:600;}
#seafix-demo button.sf-cal-day-number span {display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;}
#seafix-demo button.sf-cal-day-number svg {width:13px;height:13px;color:var(--layoff-ink);}
#seafix-demo .sf-cal-day.is-today button.sf-cal-day-number span {background:var(--sf-heading);color:var(--sf-canvas);}
#seafix-demo .sf-cal-day.is-outside button.sf-cal-day-number {color:var(--sf-muted);font-weight:400;}
#seafix-demo .sf-cal-day-events {display:grid;gap:5px;}
#seafix-demo button.sf-cal-event {display:block;width:100%;min-width:0;padding:7px 8px;border:0;border-radius:6px;background:var(--cal-color);color:#fff;font:inherit;font-size:10px;font-weight:550;line-height:1.35;text-align:left;cursor:pointer;}
#seafix-demo .sf-cal-event-full {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}
#seafix-demo .sf-cal-event-short {display:none;}
#seafix-demo button.sf-cal-more {border:0;background:none;color:var(--sf-muted);font:inherit;font-size:10px;font-weight:600;text-align:left;padding:3px 2px;min-height:23px;cursor:pointer;}
#seafix-demo .sf-cal-legend {margin:18px 0 28px;}
#seafix-demo .sf-cal-legend summary {display:flex;gap:8px;align-items:center;list-style:none;font-size:12px;color:var(--sf-muted);cursor:pointer;min-height:38px;}
#seafix-demo .sf-cal-legend summary::-webkit-details-marker{display:none;}
#seafix-demo .sf-cal-legend summary svg {width:15px;height:15px;}
#seafix-demo .sf-cal-legend summary svg:last-child {margin-left:auto;}
#seafix-demo .sf-cal-legend>div {display:flex;flex-wrap:wrap;gap:8px 18px;padding:12px 0 4px;}
#seafix-demo .sf-cal-legend button {display:inline-flex;align-items:center;gap:7px;border:0;background:none;color:var(--sf-muted);font:inherit;font-size:11px;min-height:30px;padding:0;cursor:pointer;}
#seafix-demo .sf-cal-legend button[aria-pressed=true] {color:var(--sf-heading);text-decoration:underline;}
#seafix-demo .sf-cal-dot {display:inline-block;flex:none;width:9px;height:9px;border-radius:50%;background:var(--cal-color);}
#seafix-demo .sf-cal-layoff-key {display:flex;align-items:center;gap:7px;font-size:11px;color:var(--sf-muted);}
#seafix-demo .sf-cal-layoff-key svg {width:14px;height:14px;}
#seafix-demo .sf-cal-agenda {outline:none;scroll-margin-top:110px;}
#seafix-demo .sf-cal-agenda-heading {display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 18px;}
#seafix-demo .sf-cal-agenda-heading h3 {font-size:22px;line-height:1.4;letter-spacing:-.65px;font-weight:600;margin:7px 0 0;}
#seafix-demo .sf-cal-count {display:grid;place-items:center;border:1px solid var(--sf-line);border-radius:50%;width:36px;height:36px;font-size:13px;}
#seafix-demo .sf-cal-agenda-list {display:grid;gap:10px;}
#seafix-demo button.sf-cal-agenda-card {display:flex;align-items:center;gap:18px;width:100%;text-align:left;border:1px solid var(--sf-line);border-radius:16px;background:var(--sf-surface);color:var(--sf-heading);padding:18px;font:inherit;cursor:pointer;}
#seafix-demo .sf-cal-date-block {display:grid;gap:1px;text-align:center;min-width:44px;border-right:1px solid var(--sf-line);padding-right:16px;}
#seafix-demo .sf-cal-date-block strong {font-size:26px;font-weight:550;letter-spacing:-1px;line-height:1.15;}
#seafix-demo .sf-cal-date-block small {font-size:10px;color:var(--sf-muted);text-transform:uppercase;}
#seafix-demo .sf-cal-agenda-copy {display:grid;gap:4px;flex:1;min-width:0;}
#seafix-demo .sf-cal-type {font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--sf-muted);}
#seafix-demo .sf-cal-agenda-copy strong {font-size:14px;line-height:1.5;font-weight:600;overflow-wrap:anywhere;}
#seafix-demo .sf-cal-agenda-copy small {font-size:11px;color:var(--sf-muted);}
#seafix-demo button.sf-cal-agenda-card>svg {width:17px;height:17px;flex:none;color:var(--sf-muted);}
#seafix-demo .sf-cal-empty {padding:28px 20px;border:1px dashed var(--sf-line);border-radius:16px;color:var(--sf-muted);font-size:13px;line-height:1.6;text-align:center;}
#seafix-demo .sf-cal-empty svg {width:26px;height:26px;opacity:.6;}
#seafix-demo .sf-cal-empty p {margin:9px 0 0;}
#seafix-demo .sf-cal-range-hint {display:flex;align-items:center;gap:12px;padding:12px;margin:0 0 18px;background:var(--sf-surface-raised);border-radius:14px;font-size:12px;}
#seafix-demo .sf-cal-range-hint>span{flex:1;}
#seafix-demo .sf-cal-range-hint>svg {width:20px;height:20px;flex:none;}
#seafix-demo button.sf-cal-range-card {display:flex;gap:12px;align-items:center;width:100%;padding:16px 18px;margin:0 0 12px;border:0;border-radius:14px;background:var(--layoff);color:var(--layoff-ink);text-align:left;font:inherit;cursor:pointer;}
#seafix-demo button.sf-cal-range-card>span {display:grid;gap:4px;flex:1;min-width:0;overflow-wrap:anywhere;}
#seafix-demo button.sf-cal-range-card strong {font-size:13px;font-weight:600;}
#seafix-demo button.sf-cal-range-card small {font-size:11px;}
#seafix-demo button.sf-cal-range-card svg {width:18px;height:18px;flex:none;}
#seafix-demo .sf-cal-dialog {box-sizing:border-box;width:min(550px,calc(100% - 32px));max-width:calc(100% - 32px);height:fit-content;max-height:calc(100dvh - 40px);margin:auto;padding:28px;border:1px solid var(--sf-line);border-radius:24px;background:var(--sf-canvas);color:var(--sf-heading);box-shadow:0 24px 100px #0003;overflow:auto;overscroll-behavior:contain;}
#seafix-demo .sf-cal-dialog::backdrop {background:#15171a66;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
#seafix-demo .sf-cal-dialog-top {display:flex;align-items:center;justify-content:space-between;gap:14px;}
#seafix-demo .sf-cal-dialog-top>button {display:grid;place-items:center;width:36px;height:36px;background:var(--sf-surface-raised);border:0;border-radius:50%;color:var(--sf-heading);cursor:pointer;flex:none;}
#seafix-demo .sf-cal-dialog-top svg {width:18px;height:18px;}
#seafix-demo .sf-cal-dialog h2 {font-size:26px;line-height:1.25;letter-spacing:-.8px;font-weight:600;margin:17px 0 22px;overflow-wrap:anywhere;}
#seafix-demo .sf-cal-detail-type {display:inline-flex;border-radius:7px;padding:7px 11px;font-size:11px;background:var(--cal-color);color:#fff;}
#seafix-demo .sf-cal-detail-type.is-layoff {background:var(--layoff);color:var(--layoff-ink);}
#seafix-demo .sf-cal-details {margin:20px 0;display:grid;gap:0;}
#seafix-demo .sf-cal-details>div {display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--sf-line);}
#seafix-demo .sf-cal-details dt {font-size:12px;color:var(--sf-muted);}
#seafix-demo .sf-cal-details dd {margin:0;font-size:13px;line-height:1.5;font-weight:550;overflow-wrap:anywhere;}
#seafix-demo .sf-cal-detail-notes {white-space:pre-wrap;font-size:13px;line-height:1.7;overflow-wrap:anywhere;}
#seafix-demo .sf-cal-dialog-actions {display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:24px;}
#seafix-demo :is(#sf-cal-form,#sf-parcel-form,#sf-calendar-print-form) {display:grid;gap:18px;margin:0;}
#seafix-demo :is(#sf-cal-form,#sf-parcel-form,#sf-calendar-print-form) label {display:grid;gap:8px;min-width:0;margin:0;font-size:12px;font-weight:550;}
#seafix-demo :is(#sf-cal-form,#sf-parcel-form,#sf-calendar-print-form) :is(input:not([type=radio]):not([type=checkbox]),select,textarea) {box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;min-height:46px;padding:12px;border:1px solid var(--sf-line);border-radius:11px;background:var(--sf-surface);color:var(--sf-heading);font:inherit;font-size:16px;}
#seafix-demo :is(#sf-cal-form,#sf-parcel-form,#sf-calendar-print-form) textarea {resize:vertical;line-height:1.6;}
#seafix-demo .sf-cal-form-pair {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
#seafix-demo .sf-cal-colors {display:flex;gap:8px;border:0;padding:0;margin:0;min-width:0;}
#seafix-demo .sf-cal-colors legend {margin-bottom:10px;font-size:12px;font-weight:550;}
#seafix-demo :is(#sf-cal-form,#sf-parcel-form,#sf-calendar-print-form) .sf-cal-colors label {display:flex;align-items:center;gap:6px;flex:1;border-radius:10px;padding:12px 8px;background:var(--layoff);color:var(--layoff-ink);cursor:pointer;font-size:11px;}
#seafix-demo :is(#sf-cal-form,#sf-parcel-form,#sf-calendar-print-form) input[type=radio] {width:16px;height:16px;min-height:0;margin:0;accent-color:var(--layoff-ink);flex:none;}
#seafix-demo .sf-cal-dialog-error {color:#ba3249;font-size:13px;line-height:1.6;}
#seafix-demo .sf-cal-delete-confirm {border-top:1px solid var(--sf-line);padding-top:12px;}
#seafix-demo .sf-cal-sr {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
#seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel,.sf-cal-dialog) [hidden]{display:none!important;}
#seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel,.sf-cal-dialog) :is(button,input,select,textarea):focus-visible {outline:2px solid var(--sf-heading);outline-offset:3px;}
#seafix-demo button.sf-cal-event:focus-visible {outline-offset:1px;}
#seafix-demo .sf-cal-dialog button:disabled {opacity:.55;cursor:wait;}
@media(hover:hover){#seafix-demo button.sf-cal-event:hover{filter:brightness(1.12)}#seafix-demo :is(button.sf-cal-agenda-card,button.sf-cal-button):hover{box-shadow:0 3px 12px #00000009}#seafix-demo button.sf-cal-day-number:hover span{box-shadow:0 0 0 1px var(--sf-muted)}}
@media(max-width:759px){
 #seafix-demo .sf-cal-top{display:block;margin-bottom:22px}#seafix-demo .sf-cal-top h2{font-size:34px}#seafix-demo .sf-cal-top p{font-size:12px}#seafix-demo .sf-cal-actions{margin-top:18px}#seafix-demo .sf-cal-actions button.sf-cal-button{flex:1;padding:11px 10px;font-size:11px}
 #seafix-demo .sf-cal-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:18px}#seafix-demo .sf-cal-scope{width:100%}#seafix-demo .sf-cal-scope button{flex:1;padding:10px 5px;font-size:11px;gap:6px}#seafix-demo .sf-cal-filter{width:100%}#seafix-demo .sf-cal-filter select{max-width:none;font-size:16px;padding:10px 30px 10px 12px}
 #seafix-demo .sf-cal-month-card{border-radius:16px}#seafix-demo .sf-cal-month-heading{padding:18px 12px;gap:5px}#seafix-demo .sf-cal-month-heading h3{font-size:19px;letter-spacing:-.7px}#seafix-demo .sf-cal-month-heading p{font-size:9px}#seafix-demo .sf-cal-month-heading p span{display:none}#seafix-demo .sf-cal-month-nav{gap:0}#seafix-demo .sf-cal-month-nav>button{width:29px}#seafix-demo .sf-cal-month-nav>button.sf-cal-button{padding:0 5px;font-size:10px}
 #seafix-demo .sf-cal-week>[role=columnheader]{padding:11px 4px;font-size:8px;letter-spacing:0;text-align:center}#seafix-demo .sf-cal-day{padding:4px 3px;min-height:92px}#seafix-demo button.sf-cal-day-number{font-size:10px;min-height:30px;padding:0 0 4px}#seafix-demo button.sf-cal-day-number span{width:23px;height:23px}#seafix-demo button.sf-cal-day-number svg{width:10px;height:10px}
 #seafix-demo .sf-cal-day-events{gap:4px}#seafix-demo button.sf-cal-event{padding:5px 3px;font-size:9px;font-weight:500;border-radius:4px;line-height:1.35;min-height:33px}#seafix-demo .sf-cal-event-full{display:none}#seafix-demo .sf-cal-event-short{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:normal}#seafix-demo button.sf-cal-more{font-size:8px;min-height:22px;padding:2px 0;line-height:1.3}
 #seafix-demo .sf-cal-agenda-heading h3{font-size:20px}#seafix-demo button.sf-cal-agenda-card{padding:14px 12px;gap:12px}#seafix-demo .sf-cal-agenda-copy strong{font-size:13px}#seafix-demo button.sf-cal-agenda-card>svg{width:14px}#seafix-demo .sf-cal-date-block{min-width:37px;padding-right:12px}
 #seafix-demo .sf-cal-range-hint{flex-wrap:wrap;font-size:11px}#seafix-demo .sf-cal-range-hint>span{flex-basis:70%}#seafix-demo .sf-cal-range-hint button.sf-cal-button{flex:1;font-size:11px}
 #seafix-demo .sf-cal-dialog{padding:20px;width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:21px}#seafix-demo .sf-cal-dialog h2{font-size:24px}#seafix-demo .sf-cal-details>div{grid-template-columns:82px minmax(0,1fr);gap:12px}#seafix-demo .sf-cal-dialog-actions button.sf-cal-button{font-size:12px;padding:10px 12px}#seafix-demo .sf-cal-form-pair{gap:10px}#seafix-demo :is(#sf-cal-form,#sf-parcel-form,#sf-calendar-print-form) .sf-cal-colors label{flex-direction:column;font-size:10px;padding:10px 4px}
}
@media(prefers-reduced-motion:no-preference){#seafix-demo .sf-cal-dialog[open]{animation:sf-cal-enter .18s ease-out}@keyframes sf-cal-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media print{#seafix-demo :is(.sf-cal-actions,.sf-cal-toolbar,.sf-cal-legend,.sf-cal-month-nav){display:none}#seafix-demo .sf-cal-day{break-inside:avoid}#seafix-demo button.sf-cal-event{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

#seafix-demo .sf-cal-agenda-heading h3::first-letter {text-transform:uppercase;}
#seafix-demo .sf-cal-draft-note {display:grid;gap:8px;font-size:12px;color:var(--sf-muted);}

@media(max-width:380px){#seafix-demo .sf-cal-form-pair{grid-template-columns:minmax(0,1fr);}}

/* Update 66: four department views and a separate layoff browser. */
#seafix-demo .sf-screen-title.sf-cal-top{display:flex;align-items:flex-start;gap:24px;margin:0 0 18px;}
#seafix-demo .sf-screen-title.sf-cal-top>div:first-child{min-width:0;flex:1;}
#seafix-demo .sf-screen-title.sf-cal-top h2{font-size:1.375rem;line-height:1.3;font-weight:650;letter-spacing:-.025em;margin:0;}
#seafix-demo .sf-screen-title.sf-cal-top p{font-size:13px;line-height:normal;margin:0 0 3px;}
#seafix-demo .sf-cal-top .sf-cal-scope{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:auto;flex:none;gap:4px;}
#seafix-demo .sf-cal-top .sf-cal-scope button{padding:9px 12px;font-size:11px;gap:7px;min-width:0;}
#seafix-demo .sf-cal-toolbar .sf-cal-actions{margin:0;}
#seafix-demo [data-layoff-color=sand]{--layoff:#e8d5b5;--layoff-ink:#57401e;}
#seafix-demo [data-layoff-color=lilac]{--layoff:#dcd0ec;--layoff-ink:#51366d;}
#seafix-demo [data-layoff-color=sea]{--layoff:#beded3;--layoff-ink:#234f43;}
#seafix-demo[data-theme=dark] [data-layoff-color=sand]{--layoff:#51432e;--layoff-ink:#f3d8ad;}
#seafix-demo[data-theme=dark] [data-layoff-color=lilac]{--layoff:#473950;--layoff-ink:#e6c8f5;}
#seafix-demo[data-theme=dark] [data-layoff-color=sea]{--layoff:#294d43;--layoff-ink:#c1eddf;}
#seafix-demo .sf-cal-day.is-range-preview{background:#e8d5b5;box-shadow:inset 0 0 0 1px #b39462;}
#seafix-demo[data-theme=dark] .sf-cal-day.is-range-preview{background:#51432e;}
#seafix-demo .sf-cal-saved{padding:24px;border:1px solid var(--sf-line);border-radius:22px;background:var(--sf-surface);}
#seafix-demo .sf-cal-saved-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;}
#seafix-demo .sf-cal-saved-heading h3{font-size:20px;margin:0;}
#seafix-demo .sf-cal-period{display:flex;gap:6px;}
#seafix-demo .sf-cal-period button{font-size:11px;}
#seafix-demo .sf-cal-period button[aria-pressed=true]{background:var(--sf-heading);color:var(--sf-canvas);}
#seafix-demo .sf-cal-pager{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;margin-top:20px;}
#seafix-demo .sf-cal-chooser-intro{font-size:13px;color:var(--sf-muted);line-height:1.6;margin:-10px 0 20px;}
#seafix-demo .sf-cal-chooser{display:grid;gap:4px;}
#seafix-demo button.sf-cal-create-option{display:flex;align-items:center;gap:14px;padding:12px 8px;width:100%;border:0;border-bottom:1px solid var(--sf-line);border-radius:10px;background:transparent;color:var(--sf-heading);text-align:left;font:inherit;cursor:pointer;}
#seafix-demo button.sf-cal-create-option:hover{background:var(--sf-surface-raised);}
#seafix-demo .sf-cal-create-option>span:nth-child(2){display:grid;gap:4px;min-width:0;flex:1;}
#seafix-demo .sf-cal-create-option strong{font-size:13px;font-weight:600;}
#seafix-demo .sf-cal-create-option small{font-size:11px;color:var(--sf-muted);line-height:1.5;}
#seafix-demo .sf-cal-create-option>svg{width:16px;height:16px;flex:none;color:var(--sf-muted);}
#seafix-demo .sf-cal-create-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--sf-line);border-radius:12px;flex:none;}
#seafix-demo .sf-cal-create-icon svg{width:19px;height:19px;}
#seafix-demo .sf-shortcut-grid .sf-shortcut-calendar-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sf-shortcut-gap,10px);grid-column:1/-1;}
@media(min-width:1300px){#seafix-demo .sf-cal-top .sf-cal-scope{grid-template-columns:repeat(4,minmax(0,1fr));}#seafix-demo .sf-cal-top .sf-cal-scope button{flex-direction:column;gap:6px;}}
@media(max-width:999px){#seafix-demo .sf-screen-title.sf-cal-top{flex-direction:column;gap:18px;}#seafix-demo .sf-cal-top .sf-cal-scope{width:100%;}}
@media(max-width:759px){
 #seafix-demo .sf-screen-title.sf-cal-top p{font-size:12px;}
 #seafix-demo .sf-cal-top .sf-cal-scope button{font-size:11px;padding:9px 4px;gap:5px;}
 #seafix-demo .sf-cal-top .sf-cal-scope svg{width:15px;height:15px;}
 #seafix-demo .sf-cal-toolbar .sf-cal-actions{width:100%;}
 #seafix-demo .sf-cal-saved{padding:16px 12px;}
 #seafix-demo .sf-cal-saved-heading{display:block;}#seafix-demo .sf-cal-period{margin-top:16px;}
 #seafix-demo .sf-cal-period button{flex:1;padding:10px 6px;}
 #seafix-demo .sf-cal-pager .sf-cal-button{font-size:10px;padding:8px;}
}

/* Update 67: add, vessel and own department share one row at every width. */
#seafix-demo .sf-cal-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:stretch;gap:8px;width:min(620px,58%);flex:none;}
#seafix-demo .sf-cal-controls.is-readonly{grid-template-columns:minmax(0,1fr);}
#seafix-demo .sf-cal-controls>button.sf-cal-button{height:100%;min-width:0;padding:10px 12px;font-size:12px;line-height:1.45;}
#seafix-demo .sf-cal-top .sf-cal-controls .sf-cal-scope{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;box-sizing:border-box;gap:3px;padding:3px;}
#seafix-demo .sf-cal-top .sf-cal-controls .sf-cal-scope button{flex-direction:row;gap:6px;padding:10px 8px;line-height:1.45;}
#seafix-demo .sf-cal-top .sf-cal-controls .sf-cal-scope button:only-child{grid-column:1/-1;}
@media(max-width:999px){#seafix-demo .sf-cal-controls{width:100%;}}
@media(max-width:759px){
 #seafix-demo .sf-cal-controls{gap:6px;}
 #seafix-demo .sf-cal-controls>button.sf-cal-button{flex-direction:column;gap:5px;padding:9px 5px;font-size:11px;font-weight:600;}
 #seafix-demo .sf-cal-top .sf-cal-controls .sf-cal-scope button{flex-direction:column;gap:5px;padding:6px 3px;font-size:11px;min-height:68px;}
 #seafix-demo .sf-cal-controls button>span{min-width:0;white-space:normal;overflow-wrap:anywhere;}
 #seafix-demo .sf-cal-controls>button.sf-cal-button svg{width:15px;height:15px;}
}

/* Update 75: distinct bunkering and sludge colors in events and details. */
#seafix-demo :is([data-category="ulsfo"],[data-category="fuel"]){--cal-color:#846232;}
#seafix-demo [data-category]{--cal-event-ink:#fff;}
#seafix-demo [data-category="mgo"]{--cal-color:#f2a53d;--cal-event-ink:#261805;}
#seafix-demo [data-category="lo"]{--cal-color:#f6d74b;--cal-event-ink:#292307;}
#seafix-demo [data-category="sludge"]{--cal-color:#24272c;--cal-event-ink:#fff;}
#seafix-demo button.sf-cal-event{color:var(--cal-event-ink,#fff);}
#seafix-demo .sf-cal-dialog h2.sf-cal-detail-title{display:block;min-height:0;margin:0 0 16px;padding:16px 52px 16px 18px;border-radius:12px;background:var(--cal-color,var(--layoff));color:var(--cal-ink,var(--layoff-ink,#fff));font-size:26px;line-height:1.25;font-weight:600;letter-spacing:-.8px;}
#seafix-demo .sf-cal-dialog h2[data-layoff-color]{--cal-ink:var(--layoff-ink);}
#seafix-demo .sf-cal-dialog-top>button{z-index:1;}
#seafix-demo .sf-cal-members{margin:0;padding-left:17px;}
#seafix-demo .sf-cal-members li+li{margin-top:5px;}
#seafix-demo[data-theme=dark] [data-category="sludge"]{--cal-color:#1b1d20;--cal-event-ink:#f7f7f8;}
#seafix-demo .sf-cal-dialog-top{position:relative;height:0;display:block;}
#seafix-demo .sf-cal-dialog-top>button{position:absolute;right:0;top:0;background:var(--sf-surface-raised,var(--sf-surface));border:1px solid var(--sf-line);}
#seafix-demo .sf-cal-dialog h2{margin:0 0 22px;padding-right:48px;min-height:36px;}
#seafix-demo .sf-smt-meeting-dialog fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:16px;}
#seafix-demo .sf-smt-meeting-dialog label{display:grid;gap:7px;font-size:14px;font-weight:600;}
#seafix-demo .sf-smt-meeting-dialog :is(input,textarea){box-sizing:border-box;min-width:0;width:100%;padding:12px;border:1px solid var(--sf-line);border-radius:12px;color:var(--sf-heading);background:var(--sf-surface-raised,var(--sf-surface));font:inherit;}
#seafix-demo .sf-smt-meeting-dialog textarea{resize:vertical;min-height:96px;}
#seafix-demo .sf-smt-meeting-dialog :is(.sf-meeting-zone,.sf-meeting-hint){font-size:12px;line-height:1.5;color:var(--sf-muted);}
#seafix-demo .sf-smt-meeting-dialog .sf-meeting-zone{margin:0;}
#seafix-demo .sf-meeting-message{white-space:pre-wrap;overflow-wrap:anywhere;}
#seafix-demo .sf-smt-meeting-dialog [role="status"]{font-size:14px;line-height:1.5;}

/* Update 76: the event color fills the dialog header edge to edge. */
#seafix-demo .sf-cal-dialog.sf-cal-detail-dialog h2.sf-cal-detail-title{
  box-sizing:border-box;margin:-28px -28px 18px;padding:18px 70px 18px 28px;
  min-height:72px;border-radius:23px 23px 0 0;
  background:var(--cal-color,var(--layoff));color:var(--cal-event-ink,var(--layoff-ink,#fff));
  display:flex;align-items:center;
}
#seafix-demo .sf-cal-dialog.sf-cal-detail-dialog{
  border:0;outline:0;
  box-shadow:0 28px 90px -26px light-dark(#25354e47,#000000b3),0 6px 22px -8px #00000014;
}
/* Use the report confirmation's separate blur layer under the native dialog. */
#seafix-demo .sf-cal-detail-backdrop[hidden]{display:none!important;}
#seafix-demo .sf-cal-detail-backdrop{position:fixed;inset:0;z-index:99;pointer-events:none;}
#seafix-demo .sf-cal-detail-backdrop::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse at center,light-dark(#d7dce4b3,#030810b8) 0%,light-dark(#d7dce470,#03081080) 35%,transparent 75%);
}
#seafix-demo .sf-cal-dialog.sf-cal-detail-dialog::backdrop{
  background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;
}
@supports ((mask-image:radial-gradient(black,transparent)) or (-webkit-mask-image:radial-gradient(black,transparent))){
  #seafix-demo .sf-cal-detail-backdrop::before{
    background:light-dark(#d7dce452,#03081066);
    backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);
    mask-image:radial-gradient(ellipse 58% 78% at center,#000 18%,#000d 36%,#0005 65%,transparent 100%);
    -webkit-mask-image:radial-gradient(ellipse 58% 78% at center,#000 18%,#000d 36%,#0005 65%,transparent 100%);
  }
}
#seafix-demo .sf-cal-detail-dialog .sf-cal-dialog-top>button{
  top:-10px;right:-12px;width:38px;height:38px;
  border:1px solid color-mix(in srgb,var(--cal-event-ink,var(--layoff-ink)) 28%,transparent);
  background:color-mix(in srgb,var(--cal-event-ink,var(--layoff-ink)) 14%,transparent);
  color:var(--cal-event-ink,var(--layoff-ink));backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
}
@media(max-width:759px){
  #seafix-demo .sf-cal-dialog.sf-cal-detail-dialog h2.sf-cal-detail-title{
    margin:-20px -20px 18px;padding:16px 64px 16px 20px;
    min-height:68px;border-radius:20px 20px 0 0;
  }
  #seafix-demo .sf-cal-detail-dialog .sf-cal-dialog-top>button{top:-10px;right:-8px;}
}
@media(min-width:760px){
  #seafix-demo .sf-cal-sticky-controls[hidden]{display:none!important;}
  #seafix-demo .sf-cal-sticky-controls{
    display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);
    position:absolute;top:50%;right:0;align-items:stretch;gap:6px;width:100%;min-width:0;
    opacity:0;transform:translateY(calc(-50% + 7px));pointer-events:none;
  }
  #seafix-demo .sf-cal-sticky-controls.is-readonly{grid-template-columns:minmax(0,1fr);}
  #seafix-demo .sf-cal-sticky-controls>button.sf-cal-button{min-width:0;height:100%;padding:8px 9px;font-size:11px;line-height:1.25;}
  #seafix-demo .sf-cal-sticky-controls .sf-cal-scope{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:3px;gap:3px;}
  #seafix-demo .sf-cal-sticky-controls .sf-cal-scope button{min-width:0;min-height:40px;padding:6px 5px;gap:5px;font-size:10px;line-height:1.2;}
  #seafix-demo .sf-cal-sticky-controls button span{min-width:0;white-space:normal;overflow-wrap:anywhere;}
  /* Both sets occupy one stable right-aligned slot. Scroll drives the fade. */
  #seafix-demo.sf-cal-actions-ready .sf-topbar .sf-top-actions{
    position:relative;flex:0 1 min(620px,58vw);width:min(620px,58vw);
    min-width:0;min-height:50px;justify-content:flex-end;gap:7px;
  }
  #seafix-demo.sf-cal-actions-ready .sf-top-actions> :is(#sf-settings-back,#sf-logout,.sf-account-menu){
    opacity:clamp(0,calc((.64 - var(--sf-cal-actions-progress,0)) * 1.82),1);
    transform:translateY(calc(-3px * var(--sf-cal-actions-progress,0)));
  }
  #seafix-demo.sf-cal-actions-ready .sf-cal-sticky-controls{
    opacity:clamp(0,calc((var(--sf-cal-actions-progress,0) - .32) * 1.47),1);
    transform:translateY(calc(-50% + 4px * (1 - var(--sf-cal-actions-progress,0))));
  }
  #seafix-demo.sf-cal-sticky-on .sf-cal-sticky-controls{pointer-events:auto;}
  #seafix-demo.sf-cal-actions-ready #sf-layover-calendar-panel .sf-cal-top .sf-cal-controls{
    opacity:clamp(0,calc(1 - var(--sf-cal-actions-progress,0) * 1.65),1);
  }
  #seafix-demo.sf-cal-actions-ready :is(.sf-cal-sticky-controls,.sf-top-actions> #sf-settings-back,.sf-top-actions> #sf-logout,.sf-top-actions> .sf-account-menu,#sf-layover-calendar-panel .sf-cal-top .sf-cal-controls){
    transition:opacity .26s cubic-bezier(.2,.7,.25,1),transform .32s cubic-bezier(.2,.7,.25,1);
  }
}
@media(min-width:760px) and (prefers-reduced-motion:reduce){
  #seafix-demo.sf-cal-actions-ready :is(.sf-cal-sticky-controls,.sf-top-actions> #sf-settings-back,.sf-top-actions> #sf-logout,.sf-top-actions> .sf-account-menu,#sf-layover-calendar-panel .sf-cal-top .sf-cal-controls){transition:none;}
  #seafix-demo.sf-cal-actions-ready .sf-top-actions> :is(#sf-settings-back,#sf-logout,.sf-account-menu){opacity:1;transform:none;}
  #seafix-demo.sf-cal-actions-ready .sf-cal-sticky-controls{opacity:0;transform:translateY(-50%);}
  #seafix-demo.sf-cal-sticky-on .sf-top-actions> :is(#sf-settings-back,#sf-logout,.sf-account-menu){opacity:0;}
  #seafix-demo.sf-cal-sticky-on .sf-cal-sticky-controls{opacity:1;}
  #seafix-demo.sf-cal-actions-ready #sf-layover-calendar-panel .sf-cal-top .sf-cal-controls{opacity:1;}
  #seafix-demo.sf-cal-sticky-on #sf-layover-calendar-panel .sf-cal-top .sf-cal-controls{opacity:0;}
}
@media(max-width:759px){#seafix-demo .sf-cal-sticky-controls{display:none!important;}}

/* Phone calendar: one compact control row, with the month grid edge to edge. */
@media(max-width:759px){
  #seafix-demo #sf-layover-calendar-panel .sf-screen-title.sf-cal-top{display:block;margin-bottom:12px;}
  #seafix-demo #sf-layover-calendar-panel .sf-cal-top>div:first-child{
    position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;
  }
  #seafix-demo #sf-layover-calendar-panel .sf-cal-controls{
    display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.28fr);
    width:100%;gap:8px;align-items:stretch;
  }
  #seafix-demo #sf-layover-calendar-panel .sf-cal-controls.is-readonly{grid-template-columns:minmax(0,1fr);}
  #seafix-demo #sf-layover-calendar-panel .sf-cal-controls .sf-cal-scope{order:0;min-width:0;}
  #seafix-demo #sf-layover-calendar-panel .sf-cal-controls>button.sf-cal-button{
    order:1;min-width:0;min-height:68px;padding:10px 8px;font-size:12px;
  }
  #seafix-demo #sf-layover-calendar-panel .sf-cal-controls .sf-cal-scope button{
    min-height:68px;font-size:10px;padding:6px 2px;
  }
  #seafix-demo #sf-layover-calendar-panel .sf-cal-month-card{
    width:calc(100% + 2 * var(--sf-page-gutter,16px));
    margin-inline:calc(-1 * var(--sf-page-gutter,16px));
    border-left:0;border-right:0;border-radius:0;
  }
  #seafix-demo #sf-layover-calendar-panel .sf-cal-agenda-heading .sf-cal-eyebrow{display:none;}
}

/* Invitation form uses the same visible-viewport geometry as the SMT editor. */
@media(max-width:999px){
  #seafix-demo .sf-smt-meeting-dialog{
    position:fixed;top:calc(var(--sf-viewport-top,0px) + max(12px,env(safe-area-inset-top,0px)));
    bottom:auto;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));
    width:auto;max-width:550px;margin:0 auto;
    max-height:calc(var(--sf-viewport-height,100dvh) - max(12px,env(safe-area-inset-top,0px)) - max(12px,env(safe-area-inset-bottom,0px)));
    overflow-y:auto;overscroll-behavior:contain;
  }
  #seafix-demo .sf-smt-meeting-dialog :is(input,textarea){font-size:16px;}
}
/* Compact, quiet phone calendar controls. */
@media(max-width:999px){
 #seafix-demo #sf-layover-calendar-panel .sf-cal-controls:not(.is-readonly){grid-template-columns:minmax(0,1fr) minmax(108px,132px);gap:7px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-controls>button.sf-cal-button{width:100%;padding:8px 7px;line-height:1.25;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-scope{border:1px solid color-mix(in srgb,var(--sf-line) 70%,transparent);background:color-mix(in srgb,var(--sf-surface) 62%,transparent);box-shadow:none;padding:2px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-scope button{color:var(--sf-muted);font-weight:500;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-scope button[aria-pressed=true]{background:color-mix(in srgb,var(--sf-heading) 8%,var(--sf-surface));color:var(--sf-heading);box-shadow:none;font-weight:600;}
}

/* A quiet calendar choice with a clear two-line label. */
#seafix-demo .sf-cal-scope-label{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;line-height:1.2;min-width:0;}
#seafix-demo .sf-cal-scope-label small{font-size:10px;opacity:.7;font-weight:400;}
#seafix-demo .sf-cal-scope-label strong{font-size:12px;font-weight:600;overflow-wrap:anywhere;}
#seafix-demo .sf-cal-top .sf-cal-scope button{justify-content:flex-start;}
@media(max-width:999px){
  #seafix-demo #sf-layover-calendar-panel .sf-cal-controls:not(.is-readonly){grid-template-columns:minmax(0,1fr) minmax(100px,124px);}
  #seafix-demo #sf-layover-calendar-panel .sf-cal-scope button{flex-direction:row;min-width:0;gap:4px;padding-inline:5px;}
  #seafix-demo #sf-layover-calendar-panel .sf-cal-scope-label small{font-size:9px;}
  #seafix-demo #sf-layover-calendar-panel .sf-cal-scope-label strong{font-size:10px;}
  #seafix-demo #sf-layover-calendar-panel .sf-cal-scope svg{width:14px;height:14px;}
}

@media(max-width:999px){
  #seafix-demo .sf-cal-dialog{
    position:fixed;
    inset:calc(var(--sf-viewport-top,0px) + max(76px,env(safe-area-inset-top,0px) + 58px)) 12px max(24px,env(safe-area-inset-bottom,0px) + 16px);
    width:min(550px,calc(100% - 24px));max-width:calc(100% - 24px);
    height:fit-content;max-height:calc(var(--sf-viewport-height,100dvh) - max(76px,env(safe-area-inset-top,0px) + 58px) - max(24px,env(safe-area-inset-bottom,0px) + 16px));
    margin:auto;overflow-y:auto;
  }
  #seafix-demo .sf-cal-detail-backdrop{display:none!important;}
  #seafix-demo .sf-cal-dialog.sf-cal-detail-dialog::backdrop{background:rgb(10 14 24 / .44);backdrop-filter:none;-webkit-backdrop-filter:none;}
}

/* The calendar choices use the same centered stack as the add button. */
@media(max-width:999px){
  #seafix-demo .sf-layovers-page.sf-layovers-mobile-detail #sf-layover-inspections-panel .sf-cal-top>div:first-child{display:none;}
  #seafix-demo .sf-layovers-page.sf-layovers-mobile-detail #sf-layover-inspections-panel .sf-cal-top{margin:0 0 12px;}
  #seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel) .sf-cal-top .sf-cal-controls .sf-cal-scope button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:68px;padding:5px 3px;text-align:center;}
  #seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel) .sf-cal-top .sf-cal-controls .sf-cal-scope button svg{flex:none;width:17px;height:17px;}
  #seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel) .sf-cal-top .sf-cal-controls .sf-cal-scope-label{align-items:center;text-align:center;}
  #seafix-demo :is(#sf-layover-calendar-panel,#sf-layover-inspections-panel) .sf-cal-top .sf-cal-controls .sf-cal-scope-label :is(small,strong){text-align:center;}
}

/* One calendar surface, shared by Layovers and standalone shortcuts.
   Event chips and category colors deliberately retain their existing styles. */
#seafix-demo .sf-cal-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-workspace{border:1px solid var(--sf-line);border-radius:22px;background:var(--sf-surface);overflow:hidden;box-shadow:0 8px 28px #00000004;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 24px;padding:22px 22px 18px;margin:0;background:transparent;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav{gap:2px;min-width:0;}
#seafix-demo .sf-cal-month-nav h3{margin:0 6px;font-size:clamp(20px,2.2vw,29px);font-weight:500;letter-spacing:-1px;line-height:1.3;text-transform:capitalize;white-space:nowrap;}
#seafix-demo .sf-cal-month-nav h3 span{font-size:.83em;font-weight:400;letter-spacing:-.5px;color:var(--sf-muted);}
#seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav>button{width:30px;height:38px;min-height:38px;border-radius:8px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav>button.sf-cal-button{width:auto;margin-left:10px;padding:0 12px;border-radius:0;border-left:1px solid var(--sf-line);color:var(--sf-muted);font-size:12px;font-weight:400;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-controls{display:flex;flex-wrap:wrap;gap:18px;align-items:center;width:auto;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-controls>button.sf-cal-button{order:1;width:auto;height:auto;flex-direction:row;min-height:40px;padding:10px 14px;border-radius:9px;font-size:12px;font-weight:500;box-shadow:0 3px 7px #0000000b;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-scope{display:flex;width:auto;gap:12px;border:0;border-radius:0;padding:0;background:none;box-shadow:none;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-top .sf-cal-controls .sf-cal-scope button{position:relative;flex-direction:row;gap:7px;min-height:40px;padding:8px 1px;border-radius:0;border:0;border-bottom:2px solid transparent;background:none;box-shadow:none;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-top .sf-cal-controls .sf-cal-scope button[aria-pressed=true]{border-bottom-color:var(--sf-heading);}
#seafix-demo #sf-layover-calendar-panel .sf-cal-scope-label{display:block;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-scope-label small{display:none;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-scope-label strong{font-size:12px;font-weight:450;text-transform:capitalize;white-space:nowrap;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-scope svg{width:17px;height:17px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-scope-note{margin:0;padding:0 25px 12px;font-size:11px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-status{margin:0 22px 12px;padding:9px 12px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-month-card{width:100%;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-week:first-child{background:transparent;border-top:1px solid var(--sf-line);}
#seafix-demo #sf-layover-calendar-panel .sf-cal-week>[role=columnheader]{padding:15px 14px;text-align:left;font-size:10px;font-weight:450;letter-spacing:.3px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-day{min-height:110px;padding:9px 8px;border-color:color-mix(in srgb,var(--sf-line) 65%,transparent);}
#seafix-demo #sf-layover-calendar-panel .sf-cal-day.is-outside{background:color-mix(in srgb,var(--sf-canvas) 35%,var(--sf-surface));}
#seafix-demo #sf-layover-calendar-panel .sf-cal-day[data-layoff-color]{background:var(--layoff);}
#seafix-demo #sf-layover-calendar-panel .sf-cal-day.is-selected:after{border-width:1.5px;border-radius:0;}
#seafix-demo #sf-layover-calendar-panel button.sf-cal-day-number{flex-direction:row;justify-content:flex-start;gap:5px;min-height:28px;font-size:11px;font-weight:450;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-day-number>span{flex:none;width:23px;height:23px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-day-number .sf-cal-layover-label{min-width:0;font-size:9px;font-weight:500;color:var(--layoff-ink);line-height:1.2;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-legend{padding:8px 22px;margin:0;border-top:1px solid var(--sf-line);}
#seafix-demo .sf-cal-layover-swatch{display:inline-block;flex:none;width:9px;height:9px;border:1px solid var(--layoff-ink,#af9465);border-radius:2px;background:var(--layoff,#f5eddf);}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;padding:23px 26px;background:#252a31;color:#f3f5f7;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda-heading{margin:0;align-self:start;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-selected-date{display:flex;align-items:center;gap:15px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-selected-date>strong{font-size:48px;font-weight:350;line-height:1;letter-spacing:-2px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda h3{margin:0;line-height:1.5;letter-spacing:0;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda h3 span{display:block;font-size:12px;font-weight:450;text-transform:capitalize;white-space:nowrap;color:#f3f5f7;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda h3 small{display:block;font-size:10px;font-weight:400;color:#b6bec9;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda .sf-cal-count{display:none;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:12px 0;align-content:start;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda :is(.sf-cal-agenda-card,.sf-cal-range-card){gap:12px;align-items:center;min-width:0;padding:0 18px;margin:0;border:0;border-left:1px solid #ffffff26;border-radius:0;background:transparent;color:#f3f5f7;box-shadow:none;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda .sf-cal-date-block{display:none;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda .sf-cal-type{font-size:8px;color:#b6bec9;letter-spacing:.6px;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda :is(.sf-cal-agenda-copy strong,.sf-cal-range-card strong){font-size:12px;font-weight:500;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda :is(small,button>svg){color:#b6bec9;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda .sf-cal-empty{padding:6px 18px;border:0;border-left:1px solid #ffffff26;border-radius:0;color:#b6bec9;text-align:left;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda .sf-cal-empty svg{display:none;}
#seafix-demo #sf-layover-calendar-panel .sf-cal-agenda .sf-cal-empty p{margin:0;font-size:12px;}
#seafix-demo .sf-cal-dialog.sf-cal-chooser-dialog{width:min(840px,calc(100% - 32px));max-width:840px;padding:24px;border-radius:18px;background:var(--sf-surface);box-shadow:0 18px 60px #00000022;}
#seafix-demo .sf-cal-chooser-dialog .sf-cal-dialog-top{position:absolute;top:16px;right:16px;}
#seafix-demo .sf-cal-chooser-dialog h2{margin:0;padding-right:40px;font-size:21px;font-weight:500;letter-spacing:-.4px;}
#seafix-demo .sf-cal-chooser-context{display:flex;align-items:center;gap:6px;margin:8px 0 18px;font-size:11px;color:var(--sf-muted);}
#seafix-demo .sf-cal-chooser-context svg{width:14px;height:14px;}
#seafix-demo .sf-cal-chooser{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;padding-top:16px;border-top:1px solid var(--sf-line);}
#seafix-demo .sf-cal-chooser-group{min-width:0;}
#seafix-demo .sf-cal-chooser-group+.sf-cal-chooser-group{padding-left:18px;border-left:1px solid var(--sf-line);}
#seafix-demo .sf-cal-chooser-group h3{display:flex;align-items:center;gap:8px;min-height:26px;margin:0 0 8px;font-size:12px;font-weight:500;}
#seafix-demo .sf-cal-chooser-group h3 svg{width:16px;height:16px;flex:none;color:var(--sf-muted);}
#seafix-demo .sf-cal-chooser .sf-cal-create-option{display:flex;align-items:flex-start;gap:9px;width:100%;padding:9px 5px;min-height:37px;margin:0;border:0;border-radius:7px;box-shadow:none;background:transparent;}
#seafix-demo .sf-cal-chooser .sf-cal-create-icon{width:19px;height:19px;padding:0;border:0;border-radius:0;background:none;flex:none;}
#seafix-demo .sf-cal-chooser .sf-cal-create-icon svg{width:16px;height:16px;color:var(--sf-muted);}
#seafix-demo .sf-cal-chooser .sf-cal-create-option strong{font-size:12px;font-weight:450;line-height:1.4;}
#seafix-demo .sf-cal-chooser .sf-cal-create-option small{margin-top:3px;font-size:10px;line-height:1.4;}
#seafix-demo .sf-cal-chooser [data-cal-create=layoff]{margin-top:12px;padding-top:13px;border-top:1px solid var(--sf-line);border-radius:0;}
#seafix-demo .sf-cal-range-copy{margin:0;color:var(--sf-muted);font-size:12px;line-height:1.5;}
#seafix-demo .sf-cal-chooser .sf-cal-create-option:hover{background:var(--sf-surface-raised);}
#seafix-demo #sf-layover-calendar-panel :is(.sf-cal-month-nav button,.sf-cal-scope button):hover{color:var(--sf-heading);background:color-mix(in srgb,var(--sf-heading) 4%,transparent);}
@media(min-width:1000px){
 #seafix-demo .sf-layovers-page.sf-calendar-embedded .sf-layovers-content{padding-right:2px;}
 #seafix-demo .sf-layovers-page.sf-calendar-embedded .sf-cal-top{gap:10px;}
 #seafix-demo .sf-calendar-embedded #sf-layover-calendar-panel .sf-cal-controls{width:100%;justify-content:space-between;gap:12px;}
}
@media(max-width:999px){
 #seafix-demo .sf-layovers-page.sf-calendar-embedded:not(.sf-layovers-mobile-detail) .sf-layovers-content{display:block;margin-top:24px;}
 #seafix-demo .sf-layovers-page.sf-calendar-embedded:not(.sf-layovers-mobile-detail) .sf-layovers-mobile-heading{display:none;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-top{padding:15px 14px 12px;gap:12px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-controls{width:100%;justify-content:space-between;gap:10px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-controls .sf-cal-scope{order:0;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-top .sf-cal-controls .sf-cal-scope-label{align-items:start;text-align:left;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-workspace{border-radius:16px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-day{min-height:92px;padding:6px 3px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-week>[role=columnheader]{padding:11px 7px;font-size:9px;letter-spacing:0;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-agenda{grid-template-columns:145px minmax(0,1fr);gap:10px;padding:19px 16px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-selected-date{gap:10px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-selected-date>strong{font-size:40px;}
}
@media(max-width:599px){
 #seafix-demo .sf-cal-dialog.sf-cal-chooser-dialog{padding:20px;}
 #seafix-demo .sf-cal-chooser{grid-template-columns:1fr;gap:13px;}
 #seafix-demo .sf-cal-chooser-group+.sf-cal-chooser-group{padding:12px 0 0;border-left:0;border-top:1px solid var(--sf-line);}
 #seafix-demo .sf-cal-chooser-group h3{margin-bottom:3px;}
 #seafix-demo .sf-cal-chooser .sf-cal-create-option{padding-block:10px;}
 #seafix-demo .sf-cal-chooser [data-cal-create=layoff]{margin-top:3px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav>button.sf-cal-button{margin-left:4px;padding-inline:10px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-controls{gap:6px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-controls>button.sf-cal-button{font-size:10px;padding:10px 8px;gap:5px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-scope{gap:7px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-scope-label strong{font-size:10px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-top .sf-cal-controls .sf-cal-scope button{gap:4px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-day-number{gap:2px;flex-wrap:wrap;align-content:start;height:42px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-day-number .sf-cal-layover-label{font-size:8px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-legend{padding-inline:12px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-agenda{grid-template-columns:1fr;gap:17px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-agenda-list{gap:14px;}
 #seafix-demo #sf-layover-calendar-panel .sf-cal-agenda :is(.sf-cal-agenda-card,.sf-cal-range-card,.sf-cal-empty){padding:0 0 0 13px;}
}

#seafix-demo #sf-layover-calendar-panel .sf-cal-range-card>.sf-cal-layover-swatch{display:block;flex:none;width:9px;height:9px;min-width:9px;}

@media(max-width:359px){#seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav{width:100%;gap:0;}#seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav h3{font-size:18px;margin-inline:2px;letter-spacing:-.7px;}#seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav>button{width:22px;}#seafix-demo #sf-layover-calendar-panel .sf-cal-month-nav>button.sf-cal-button{padding-inline:6px;margin-left:auto;font-size:10px;}}
@media(min-width:1000px){#seafix-demo .sf-cal-dialog.sf-cal-chooser-dialog::backdrop{background:rgb(20 25 33 / .12);backdrop-filter:none;-webkit-backdrop-filter:none;}}

/* Deliveries, parcel collection and calendar print controls. */
#seafix-demo [data-category=delivery]{--cal-color:#a64b78}
#seafix-demo .sf-cal-event[data-category=delivery]{color:var(--delivery-ink,#fff)}
#seafix-demo .sf-delivery-swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin:10px 0}
#seafix-demo .sf-delivery-swatches button{width:100%;aspect-ratio:1;border:2px solid transparent;border-radius:8px;cursor:pointer;min-height:28px}
#seafix-demo .sf-delivery-swatches button[aria-pressed=true]{outline:2px solid var(--sf-heading);outline-offset:2px}
#seafix-demo .sf-delivery-swatches button:disabled{opacity:.2;cursor:not-allowed;background-image:linear-gradient(45deg,transparent 45%,#fff 45%,#fff 55%,transparent 55%)!important}
#seafix-demo .sf-delivery-colors{border:0;margin:12px 0;padding:0;font-size:12px}
#seafix-demo .sf-delivery-custom-color{display:flex;align-items:center;justify-content:space-between}
#seafix-demo .sf-delivery-custom-color input{max-width:70px;padding:4px;height:38px}
#seafix-demo .sf-delivery-colors small,#seafix-demo .sf-delivery-routine-hint,#seafix-demo #sf-parcel-recipients{font-size:11px;line-height:1.6;color:var(--sf-muted)}
#seafix-demo .sf-delivery-type-list{display:grid;gap:8px}
#seafix-demo .sf-delivery-type-list button{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--sf-line);border-radius:10px;background:var(--sf-surface);color:var(--sf-heading);text-align:left;font:inherit;font-size:13px}
#seafix-demo .sf-delivery-type-list button>span{width:18px;height:18px;border-radius:5px;flex:none}
#seafix-demo .sf-delivery-type-list svg{width:15px;margin-left:auto}
#seafix-demo .sf-delivery-manage-link{margin-top:18px}
#seafix-demo .sf-parcel-message{padding:18px;border-radius:14px;background:var(--sf-canvas);font-size:16px;line-height:1.6;color:var(--sf-heading);overflow-wrap:anywhere}
@media print{
 @page calendar-landscape{size:A4 landscape;margin:12mm}
 #seafix-demo #sf-print-report[data-report=calendar-grid]{page:calendar-landscape}
 #sf-print-report .sf-calendar-print-grid{width:100%;border-collapse:collapse;table-layout:fixed;font-size:8pt}
 #sf-print-report .sf-calendar-print-grid th{padding:2mm;text-align:right;color:#616973;background:#f0f1f3;border:1px solid #d9dde2}
 #sf-print-report .sf-calendar-print-grid td{border:1px solid #d9dde2;vertical-align:top;padding:2mm;height:25mm;overflow-wrap:anywhere}
 #sf-print-report .sf-calendar-print-grid td[data-layoff-color]{background:var(--layoff)}
 #sf-print-report .sf-calendar-print-grid td>strong{display:block;text-align:right;margin:0 0 1mm;font-size:9pt}
 #sf-print-report .sf-calendar-print-grid td>small{display:block;margin-bottom:1mm;color:#705732}
 #sf-print-report .sf-calendar-print-event{background:var(--cal-color);color:var(--delivery-ink,#fff);border-radius:3px;padding:1mm;margin-top:1mm;line-height:1.35;break-inside:avoid}
 #sf-print-report .sf-calendar-print-list th:nth-child(1){width:15%}#sf-print-report .sf-calendar-print-list th:nth-child(2){width:12%}#sf-print-report .sf-calendar-print-list th:nth-child(3){width:20%}
}

/* Print follows the calendar choices, preserving the original single toolbar. */
#seafix-demo .sf-cal-scope-tools{display:flex;align-items:center;gap:22px;min-width:0;flex:none}
#seafix-demo .sf-cal-print-button{display:inline-flex;align-items:center;justify-content:center;gap:0;width:40px;min-width:40px;height:40px;min-height:40px;padding:10px;border:0;border-radius:6px;background:transparent;color:var(--sf-muted);font:inherit;font-size:12px;font-weight:450;cursor:pointer;flex:none}
#seafix-demo .sf-cal-print-button svg{width:17px!important;height:17px!important;stroke-width:1.7;flex:none}
#seafix-demo .sf-cal-print-button:hover{color:var(--sf-heading);background:color-mix(in srgb,var(--sf-heading) 4%,transparent)}
#seafix-demo .sf-cal-print-button:disabled{opacity:.4;cursor:default}
#seafix-demo .sf-cal-sticky-controls:has(.sf-cal-scope-tools){display:flex;gap:18px;width:auto;align-items:center}
#seafix-demo .sf-cal-sticky-controls .sf-cal-scope-tools{gap:14px}
#seafix-demo #sf-parcel-form label.sf-parcel-onboard{display:flex;flex-direction:row;align-items:center;gap:10px;margin:5px 0 10px;font-weight:400}
#seafix-demo #sf-parcel-form .sf-parcel-onboard input{width:18px;height:18px;min-height:18px;flex:none;accent-color:var(--sf-heading)}
@media(max-width:599px){#seafix-demo .sf-cal-scope-tools{gap:16px}#seafix-demo .sf-cal-print-button{padding:8px}}


/* Event details keep the same foreground as the calendar chip. */
#seafix-demo .sf-cal-dialog.sf-cal-detail-dialog h2.sf-cal-detail-title{color:var(--delivery-ink,var(--cal-event-ink,var(--layoff-ink,#fff)))!important;}
#seafix-demo .sf-cal-detail-backdrop{display:none!important;}
#seafix-demo .sf-cal-dialog.sf-cal-detail-dialog::backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;}
#seafix-demo .sf-cal-dialog.sf-cal-detail-dialog{box-shadow:0 6px 24px rgb(0 0 0 / .14),0 1px 5px rgb(0 0 0 / .08);}
#seafix-demo .sf-inspections-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:220px;padding:32px 20px;text-align:center;color:var(--sf-muted);}
#seafix-demo .sf-inspections-empty .sf-empty-work-symbol svg{width:38px;height:38px;stroke-width:1.5;}
#seafix-demo .sf-inspections-empty p{margin:0;font-size:14px;}


/* The phone calendar occupies the entire viewport width with straight strips. */
@media(max-width:999px){
 #seafix-demo .sf-main:has(>.sf-calendar-embedded:not([hidden])),
 #seafix-demo .sf-main:has(>.sf-calendar-open:not([hidden])){padding-inline:0;}
 #seafix-demo .sf-layovers-page:is(.sf-calendar-embedded,.sf-calendar-open),
 #seafix-demo .sf-layovers-page:is(.sf-calendar-embedded,.sf-calendar-open) .sf-layovers-content{padding-inline:0;margin-inline:0;width:100%;max-width:none;}
 #seafix-demo #sf-layover-calendar-panel{padding-inline:0;margin-inline:0;width:100%;max-width:none;}
 #seafix-demo #sf-layover-calendar-panel :is(.sf-cal-workspace,.sf-cal-top,.sf-cal-month-card,.sf-cal-legend,.sf-cal-agenda,.sf-cal-agenda-card,.sf-cal-range-card,.sf-cal-empty,.sf-cal-event,.sf-cal-button){border-radius:0;}
}
/* Delivery controls follow the same compact, neutral form language as Settings. */
#seafix-demo .sf-cal-delivery-dialog h2{font-size:23px;font-weight:550;letter-spacing:-.6px;margin-bottom:18px;}
#seafix-demo .sf-cal-delivery-dialog #sf-cal-form{gap:13px;}
#seafix-demo .sf-cal-delivery-dialog #sf-cal-form label{gap:6px;font-weight:500;}
#seafix-demo .sf-cal-delivery-dialog #sf-cal-form :is(input,select){font-weight:400;}
#seafix-demo .sf-cal-delivery-dialog .sf-cal-dialog-actions{margin-top:5px;}
#seafix-demo .sf-delivery-time-field{display:grid;gap:6px;min-width:0;}
#seafix-demo #sf-cal-form .sf-delivery-time{display:flex;align-items:center;min-width:0;min-height:46px;padding:0 10px;border:1px solid var(--sf-line);border-radius:11px;background:var(--sf-surface);color:var(--sf-heading);font-size:16px;font-variant-numeric:tabular-nums;direction:ltr;}
#seafix-demo .sf-cal-delivery-dialog #sf-cal-form .sf-delivery-time select{appearance:none;-webkit-appearance:none;flex:0 0 40px;width:40px;min-height:44px;padding:10px 0;border:0;border-radius:6px;background:transparent;color:inherit;text-align:center;font:inherit;cursor:pointer;}
#seafix-demo #sf-cal-form .sf-delivery-time select:focus-visible{outline-offset:-4px;}
#seafix-demo .sf-delivery-time>svg{width:16px;height:16px;margin-left:auto;color:var(--sf-muted);pointer-events:none;}

#seafix-demo .sf-cal-delivery-dialog .sf-delivery-manage-link{margin-top:14px;padding-top:12px;border-top:1px solid var(--sf-line);}
#seafix-demo .sf-cal-delivery-dialog .sf-delivery-manage-link .sf-cal-button{padding:4px 0;min-height:32px;border:0;background:transparent;box-shadow:none;color:var(--sf-muted);font-size:12px;}
#seafix-demo #sf-cal-form .sf-delivery-audience{min-width:0;margin:0;padding:10px 12px 12px;border:1px solid var(--sf-line);border-radius:13px;background:var(--sf-surface);}
#seafix-demo #sf-cal-form .sf-delivery-audience legend{padding:0 5px;color:var(--sf-heading);font-size:12px;line-height:1.4;font-weight:550;}
#seafix-demo #sf-cal-form .sf-delivery-audience>p{margin:0 0 10px;color:var(--sf-muted);font-size:12px;line-height:1.5;}
#seafix-demo .sf-delivery-departments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
#seafix-demo #sf-cal-form label.sf-delivery-recipient{display:flex;align-items:center;gap:9px;min-height:39px;padding:8px 10px;border:1px solid var(--sf-line);border-radius:9px;background:var(--sf-canvas);font-size:12px;font-weight:400;line-height:1.4;cursor:pointer;}
#seafix-demo #sf-cal-form label.sf-delivery-recipient:has(input:checked){border-color:color-mix(in srgb,var(--sf-heading) 28%,var(--sf-line));background:color-mix(in srgb,var(--sf-heading) 5%,var(--sf-surface));}
#seafix-demo #sf-cal-form .sf-delivery-recipient input[type=checkbox]{display:block;flex:0 0 17px;width:17px;height:17px;min-height:17px;margin:0;padding:0;accent-color:var(--sf-heading);cursor:pointer;}
#seafix-demo .sf-delivery-recipient>span{min-width:0;overflow-wrap:anywhere;}
#seafix-demo .sf-delivery-recipient strong{display:block;font-size:12px;font-weight:500;}
#seafix-demo .sf-delivery-recipient small{display:block;margin-top:2px;color:var(--sf-muted);font-size:11px;}
#seafix-demo .sf-delivery-extra-people{margin-top:8px;border-top:1px solid var(--sf-line);}
#seafix-demo :is(.sf-delivery-extra-people,.sf-delivery-colors)>summary{display:flex;align-items:center;gap:9px;min-height:38px;list-style:none;cursor:pointer;font-size:12px;font-weight:500;}
#seafix-demo :is(.sf-delivery-extra-people,.sf-delivery-colors)>summary::-webkit-details-marker{display:none;}
#seafix-demo :is(.sf-delivery-extra-people,.sf-delivery-colors)>summary>span:last-of-type{flex:1;}
#seafix-demo :is(.sf-delivery-extra-people,.sf-delivery-colors)>summary>svg{width:15px;height:15px;margin-left:auto;flex:none;color:var(--sf-muted);}
#seafix-demo :is(.sf-delivery-extra-people,.sf-delivery-colors)[open]>summary>svg{transform:rotate(180deg);}
#seafix-demo :is(.sf-delivery-extra-people,.sf-delivery-colors)>summary:focus-visible{outline:2px solid var(--sf-heading);outline-offset:3px;border-radius:5px;}
#seafix-demo .sf-delivery-people{display:grid;gap:5px;max-height:180px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:1px;}
#seafix-demo #sf-cal-form .sf-delivery-colors{margin:0;padding:0 12px;border:1px solid var(--sf-line);border-radius:12px;background:var(--sf-surface);}
#seafix-demo .sf-delivery-color-preview{width:16px;height:16px;flex:none;border-radius:5px;border:1px solid #00000015;}
#seafix-demo .sf-delivery-palette{padding:0 0 12px;}
#seafix-demo .sf-delivery-swatches{grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;margin:4px 0 12px;}
#seafix-demo #sf-cal-form label.sf-delivery-custom-color{display:flex;align-items:center;justify-content:space-between;gap:12px;}
#seafix-demo #sf-cal-form .sf-delivery-custom-color input{width:60px;height:34px;min-height:34px;padding:3px;border-radius:8px;cursor:pointer;}
#seafix-demo .sf-delivery-palette>small{display:block;margin-top:9px;}
#seafix-demo .sf-delivery-routine-hint{margin:0;}

/* The colored parcel grows beside the title, with their lower edges aligned. */
#seafix-demo .sf-cal-dialog.sf-cal-parcel-dialog{--sf-parcel-limit:calc(100dvh - 75px);padding:35px 0 0;border:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible;}
#seafix-demo .sf-parcel-surface{display:flex;flex-direction:column;max-height:var(--sf-parcel-limit);border:1px solid var(--sf-line);border-radius:22px;background:var(--sf-canvas);box-shadow:0 18px 65px #0002;}
#seafix-demo .sf-parcel-hero{position:relative;display:grid;--sf-parcel-art-size:clamp(112px,24vw,116px);grid-template-columns:var(--sf-parcel-art-size) minmax(0,1fr);column-gap:14px;flex:none;padding:14px 24px 20px;border-radius:21px 21px 0 0;border-bottom:1px solid light-dark(#ebdfba,#504831);background:light-dark(#fff5d4,#373324);color:var(--sf-heading);}
#seafix-demo .sf-parcel-hero h2{grid-column:2;grid-row:1;align-self:end;margin:0;padding-right:30px;min-height:28px;font-size:22px;line-height:1.25;font-weight:550;letter-spacing:-.6px;}
#seafix-demo .sf-parcel-hero>p{grid-column:1/-1;margin:14px 0 0;font-size:13px;line-height:1.6;color:light-dark(#786942,#d6cba7);}
#seafix-demo .sf-parcel-hero .sf-parcel-illustration{position:relative;inset:auto;grid-column:1;grid-row:1;align-self:end;display:block;width:var(--sf-parcel-art-size);height:auto;margin:calc(var(--sf-parcel-art-size) * -.5) 0 0;padding:0;border:0;border-radius:0;background:transparent;transform:none;}
#seafix-demo .sf-parcel-hero .sf-parcel-illustration svg{display:block;width:100%!important;height:auto!important;filter:drop-shadow(0 2px 2px #68441f20);}
#seafix-demo .sf-parcel-hero .sf-cal-dialog-top{position:absolute;top:15px;left:24px;right:17px;}
#seafix-demo .sf-parcel-hero .sf-cal-dialog-top>button{background:transparent;border:0;color:inherit;}
#seafix-demo .sf-parcel-body{min-height:0;padding:20px 24px 24px;border-radius:0 0 21px 21px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
#seafix-demo .sf-parcel-body #sf-parcel-form{gap:13px;}
#seafix-demo .sf-parcel-body #sf-parcel-form label{font-weight:500;}
#seafix-demo .sf-parcel-body #sf-parcel-form :is(input,select){font-weight:400;}
#seafix-demo .sf-parcel-body .sf-cal-dialog-actions{margin-top:4px;}
#seafix-demo .sf-parcel-body .sf-parcel-message{margin:0;padding:12px 14px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:11px;font-size:13px;line-height:1.5;}
#seafix-demo .sf-parcel-body #sf-parcel-recipients{margin:0;}
@media(max-width:999px){#seafix-demo .sf-cal-dialog.sf-cal-parcel-dialog{--sf-parcel-limit:calc(var(--sf-viewport-height,100dvh) - max(76px,env(safe-area-inset-top,0px) + 58px) - max(24px,env(safe-area-inset-bottom,0px) + 16px) - 35px);}}
@media(max-width:420px){
 #seafix-demo .sf-delivery-departments{grid-template-columns:1fr;}
 #seafix-demo .sf-parcel-hero{padding-inline:20px;column-gap:12px;}
 #seafix-demo .sf-parcel-body{padding:18px 20px 20px;}
 #seafix-demo .sf-parcel-hero h2{font-size:18px;}
}


@media(max-width:380px){#seafix-demo .sf-parcel-hero{--sf-parcel-art-size:100px;}#seafix-demo .sf-parcel-hero h2{font-size:16px;}}

#seafix-demo .sf-parcel-notice .sf-parcel-message{padding:0;background:transparent;border:0;text-align:left;margin:0 0 20px}
#seafix-demo .sf-parcel-details{display:grid;gap:16px;margin:0;text-align:left}
#seafix-demo .sf-parcel-details>div{display:grid;gap:6px}
#seafix-demo .sf-parcel-details dt{font-size:12px;color:var(--sf-muted)}
#seafix-demo .sf-parcel-details dd{display:flex;align-items:center;gap:8px;margin:0;overflow-wrap:anywhere;color:var(--sf-heading)}
#seafix-demo .sf-parcel-details svg{flex:none;width:20px;height:20px}

/* Fleet inspection types are shared by vessel and Fleet Calendar. */
#seafix-demo [data-category="Lloyds"]{--cal-color:#536b85;--cal-event-ink:#fff}
#seafix-demo [data-category="RINA"]{--cal-color:#387b78;--cal-event-ink:#fff}
#seafix-demo [data-category="slir_blue"]{--cal-color:#2563bf;--cal-event-ink:#fff}
#seafix-demo [data-category="slir_red"]{--cal-color:#ba3345;--cal-event-ink:#fff}
#seafix-demo [data-category="sanitary"]{--cal-color:#987035;--cal-event-ink:#fff}
#seafix-demo [data-category="other"]{--cal-color:#666b7b;--cal-event-ink:#fff}
