/* VESSIGO Fjord: shared presentation tokens; no DOM or data lifecycle hooks. */
:root{
 --v-ink:#173f50;--v-ink-soft:#315d70;--v-accent:#167b94;--v-accent-strong:#12657a;
 --v-bg:#f6f8f9;--v-surface:#fff;--v-soft:#edf3f6;--v-line:#d7e2e8;--v-muted:#526b79;
 --v-shadow:0 5px 18px rgba(23,63,80,.045);--v-radius:14px;
}
body{color:var(--v-ink);background:var(--v-bg)}
/* Keep existing layout, positioning, scroll ownership and breakpoints. */
body button{font-family:inherit;cursor:pointer;color:inherit;border:1px solid var(--v-line);background:var(--v-surface);border-radius:9px;padding:8px 12px;font-weight:650;line-height:1.35}
body button:hover:not(:disabled){border-color:#9bbdcd}
body button:disabled{cursor:default;opacity:.55}
body :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #167b9480;outline-offset:3px}
body input,body select,body textarea{color:var(--v-ink);border-color:var(--v-line);background:var(--v-surface);accent-color:var(--v-accent)}
body input[type=checkbox],body input[type=radio]{accent-color:var(--v-accent)}
body input::placeholder,body textarea::placeholder{color:#647d8a;opacity:1}
body :is(.primary,.primary-btn){background:var(--v-accent);border-color:var(--v-accent);color:white;font-weight:750;box-shadow:0 3px 8px #173f5010}
body :is(.primary,.primary-btn):hover:not(:disabled){background:var(--v-accent-strong);border-color:var(--v-accent-strong)}
body :is(.link,.back,.staff-link,.work-boat-link){background:transparent;border-color:transparent;box-shadow:none}
body :is(.link,.back){color:var(--v-accent-strong)}
body :is(.danger,.danger-btn){background:#b42318;border-color:#b42318;color:white}
body :is(.danger-text,.delete-btn){color:#b42318}
body .topbar{background:#fffffffa;border-color:var(--v-line)}
body .brand .mark{background:transparent;border-radius:0;color:var(--v-ink);flex:none}
body .brand .mark img{width:100%;height:100%;display:block;object-fit:contain}
body .user{background:var(--v-soft);color:var(--v-ink)}
#dashboard .hero{background:linear-gradient(115deg,#e5eff4,#f5f9fa);border:1px solid var(--v-line);color:var(--v-ink);box-shadow:var(--v-shadow)}
#dashboard .hero p{color:var(--v-muted)}
#dashboard .hero .eyebrow{color:var(--v-accent-strong)}
body :is(.card,.boat-card,.work-card,.time-card,.part-card,.v68-order,.v64-work-card){border-color:var(--v-line);box-shadow:var(--v-shadow)}
body .bottomnav{background:#fffffffa;border-color:var(--v-line);box-shadow:0 8px 28px #173f5018}
body .bottomnav button{background:transparent;border:0;color:var(--v-muted)}
body .bottomnav button.active{background:#e5f0f4;color:var(--v-accent-strong)}
body .bottomnav button:hover{background:#f0f5f7}
body :is(.blue,.engine-tag){background:#e7f0f5;color:var(--v-accent-strong)}
body dialog{color:var(--v-ink);background:var(--v-surface);border:1px solid var(--v-line);box-shadow:0 25px 75px #173f5038}
body dialog::backdrop{background:#122d3b88}
body :is(.search,.scan-btn,.compact-btn,.form-section,.match-item,.existing-boat-btn){border-color:var(--v-line)}
body :is(.check,.request-box,.v68-help,.v64-timer,.calendar-summary>div,.part-code){background:var(--v-soft)}
body .time-top>.primary{align-self:flex-start}
body :is(.hint,.meta,.search-info){color:var(--v-muted)}
body .stat.clickable:hover{border-color:#8eafbf;background:#f9fcfd}
body :is(.v660-tabs,.v660-price-group,.v660-invoice-head,.inventory-row){border-color:var(--v-line)}
body .v660-tabs button.active{color:var(--v-accent-strong);border-bottom-color:var(--v-accent)}
body .v873-stat.v873-selected{border-color:var(--v-accent);box-shadow:inset 0 0 0 1px var(--v-accent),0 0 0 3px #167b9415}
body :is(.invoice-table,.v864-table) th{background:var(--v-soft);color:var(--v-muted)}
body :is(.launch-day,.cal-day){border-color:var(--v-line)}
body .cal-day strong{color:var(--v-accent-strong)}
/* Semantic states remain distinct from the brand palette. */
body :is(.low-stock,.inventory-row.low-stock){background:#fffaf1;border-color:#e7c68b}
body :is(.check:has(input:checked),.work-task.done){background:#edf8f0;border-color:#b8dfc1}
body .cal-day.problem{background:#fff3dc;border-color:#efc978}
body .v68-order.completed{border-color:#b8dfc1}
@media(max-width:640px){body .topbar{padding-left:12px;padding-right:12px;flex-wrap:nowrap}body .topbar .brand{gap:7px}body .topbar .brand strong{font-size:14px}body .topbar .brand span{display:none}body .topbar .brand .mark{width:30px;height:30px}body .top-actions{gap:6px}body .top-actions #cloudUserBadge{max-width:70px;font-size:10px}body .top-actions .link{padding:7px 4px;font-size:12px}body .top-actions select{max-width:82px;font-size:12px}body .user{display:none}body .bottomnav button{min-width:0;flex:1 1 0;padding:8px 0;font-size:14px}body .bottomnav button span{font-size:9px}}
@media(prefers-reduced-motion:reduce){body button{transition:none}}
@media print{body{background:white}body .card{box-shadow:none}}

.v952-work-availability{padding:10px 14px;margin:14px 0;border:1px solid var(--v-line);border-radius:10px;background:var(--v-soft)}.v952-work-availability .inline-check{margin:0}.v952-work-availability .hint{margin:7px 0 0;line-height:1.5}

/* Invoice line chooser: stable list height and a compact phone layout. */
.v953-line-dialog{width:min(640px,calc(100vw - 24px));box-sizing:border-box;}
.v953-line-dialog form>label{display:grid;gap:6px;margin-bottom:12px;}
.v953-line-dialog select[size]{height:142px;max-width:100%;width:100%;font-size:14px;}
.v953-line-dialog .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.v953-line-dialog .form-grid label{min-width:0;display:grid;gap:6px;}
.v953-line-dialog input{min-width:0;width:100%;box-sizing:border-box;}
.v953-line-dialog .hint{margin:0 0 12px;}
.v953-line-dialog menu{display:flex;justify-content:flex-end;gap:10px;padding:0;margin-bottom:0;}
.v953-line-error{color:var(--danger,#b42318);}
