:root{--navy:#102e3d;--teal:#147b78;--paper:#f4f6f4;--ink:#17343f;--muted:#71818a;--line:#dce4e3}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}aside{position:fixed;width:248px;height:100vh;background:var(--navy);padding:36px 24px;color:#fff;display:flex;flex-direction:column}.brand{color:#fff;text-decoration:none;display:flex;gap:12px;font-size:32px;align-items:center}.brand span{font-size:17px;letter-spacing:2px;font-weight:700}.brand small{display:block;font-size:9px;font-weight:400;letter-spacing:3px;color:#91b2bd}.vessel{border-top:1px solid #35515c;border-bottom:1px solid #35515c;margin:36px 0 24px;padding:24px 0}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:700}.vessel .eyebrow{color:#91b2bd}.vessel h3{margin:8px 0}.vessel p{font-size:13px;color:#adc4cd;margin:0}nav button{width:100%;text-align:left;background:transparent;color:#adc4cd;margin:4px 0;padding:12px 14px;border:0}nav button.active{background:#274b58;color:white}.aside-bottom{margin-top:auto;color:#91b2bd;font-size:12px}main{margin-left:248px;padding:0 48px;max-width:1500px}header{height:86px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1px;color:var(--muted)}#identity{display:flex;align-items:center;gap:15px;letter-spacing:0}h1{font-size:34px;line-height:1.2;letter-spacing:-1px;margin:12px 0}h2{font-size:20px;margin:0 0 14px}p{color:var(--muted)}.intro{padding:34px 0 26px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:25px}.stat{font-size:32px;font-weight:650;margin:12px 0 0}.hero{margin:24px 0;background:var(--navy);color:white;padding:30px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;gap:20px}.hero p{color:#adc4cd}.hero h2{font-size:24px}.hero button{background:#cbe8d7;color:var(--navy);white-space:nowrap}.layout{display:grid;grid-template-columns:1.8fr 1fr;gap:20px}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.full{grid-column:1/-1}label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}input,select,textarea{width:100%;font:inherit;color:var(--ink);border:1px solid #cbd7d8;border-radius:7px;padding:11px;background:#fff}textarea{min-height:80px;resize:vertical}button{font:inherit;cursor:pointer;background:var(--teal);color:white;padding:11px 19px;border:0;border-radius:7px;font-weight:600}button:disabled{opacity:.5;cursor:wait}.secondary{background:#e9efed;color:var(--ink)}.small{font-size:12px;padding:7px 12px}.hint{font-size:12px;color:var(--muted);margin:8px 0}.checkrow{padding:18px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 170px;gap:12px}.checkrow textarea{grid-column:1/-1;min-height:42px;font-size:13px}.checkrow label{align-self:center;margin:0}.section{margin:25px 0}.section h2{border-bottom:1px solid var(--line);padding-bottom:12px}.pill{font-size:11px;background:#edf3ef;color:#3a6b55;padding:5px 10px;border-radius:20px;display:inline-block}.record{padding:17px 0;border-bottom:1px solid var(--line)}.record p{margin:6px 0;font-size:13px}.record summary{cursor:pointer;display:flex;gap:12px;align-items:center;flex-wrap:wrap}details .content{padding:18px 0}.auth{max-width:520px;margin:35px auto}.auth input{margin-bottom:16px}.auth button{margin-top:10px}.tabs{display:flex;gap:10px;margin-bottom:24px}.tabs button{flex:1}.warning{border-left:3px solid #bb9650;background:#fff8e8;padding:14px;color:#795e2c;font-size:13px;margin:16px 0}#notice:not(:empty){margin-top:18px;padding:14px;background:#e2eee8;border-radius:8px}footer{font-size:11px;color:var(--muted);padding:35px 0}video{width:100%;max-height:420px;background:#102e3d;border-radius:8px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}a{color:var(--teal)}.value{overflow-wrap:anywhere}dl{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;font-size:13px}dt{color:var(--muted)}dd{margin:0;white-space:pre-wrap}input:focus,textarea:focus,select:focus,button:focus-visible{outline:2px solid #53a8a0;outline-offset:2px}@media(max-width:900px){aside{position:relative;width:100%;height:auto;padding:20px}.brand{font-size:25px}.vessel,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:15px}nav button{width:auto;white-space:nowrap}main{margin:0;padding:0 20px}.grid{gap:10px}.card{padding:18px}.layout{grid-template-columns:1fr}header{height:65px}.hero{align-items:flex-start;flex-direction:column}h1{font-size:29px}}@media(max-width:520px){.grid{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.checkrow{grid-template-columns:1fr 125px}.intro{padding-top:25px}header>span{display:none}.stat{font-size:25px}}
.inlinecheck{width:auto;margin-right:8px}#maintenanceChecks[hidden]{display:none}

.check-instructions{font-size:14px;color:var(--ink)}.check-progress{font-weight:700;color:var(--teal)}.check-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.check-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:8px;min-height:145px;padding:18px 38px 18px 18px;background:#f7f9f8;color:var(--ink);border:2px solid var(--line);border-radius:12px}.check-tile.checked{background:#e5f4ed;border-color:var(--teal)}.task-icon{font-size:28px;line-height:1.2}.task-label{font-size:15px;line-height:1.35}.task-state{font-size:11px;font-weight:500;color:var(--muted)}.checked .task-state{color:var(--teal)}.task-mark{position:absolute;right:14px;top:14px;font-size:22px;color:var(--muted)}.checked .task-mark{color:var(--teal)}.practical-checks .checkrow[hidden]{display:none}@media(max-width:700px){.check-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.check-tile{min-height:145px;padding:16px 30px 16px 14px}}

/* CheckBoard Marine design system */
:root{color-scheme:dark;--navy:#071826;--teal:#00dfff;--paper:#071826;--ink:#f4f9fb;--muted:#acc2ce;--line:rgba(112,207,230,.18);--surface:#0b2638;--aqua:#00f0d0;--radius:18px;--glow:0 0 28px rgba(0,223,255,.08)}
body{background:radial-gradient(ellipse at 88% 0%,rgba(0,116,151,.18),transparent 50%),radial-gradient(ellipse at 20% 90%,rgba(0,240,208,.045),transparent 45%),var(--paper);font-family:Inter,Manrope,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;min-height:100vh}
aside{width:260px;padding:24px 18px;background:rgba(5,20,33,.86);border-right:1px solid var(--line);backdrop-filter:blur(18px);z-index:2}
.brand{display:block}.sidebar-logo{width:224px;height:112px;object-fit:cover;border-radius:12px}.vessel{margin:16px 0;padding:20px 12px;border-color:var(--line)}.vessel h3{font-size:21px;letter-spacing:-.4px}.vessel p,.vessel .eyebrow,.aside-bottom{color:var(--muted)}.aside-bottom{padding:14px}
nav button{display:flex;align-items:center;gap:12px;min-height:48px;padding:12px;color:#bdd0db;border-radius:12px;font-size:13px;font-weight:500;transition:background .18s,color .18s,box-shadow .18s}
nav button svg{width:20px;height:20px;flex:none;color:#77a6b9}nav button:hover{background:rgba(0,223,255,.065);color:white}nav button.active{background:linear-gradient(100deg,rgba(0,223,255,.16),rgba(0,240,208,.04));box-shadow:inset 2px 0 var(--teal);color:#fff}nav button.active svg{color:var(--teal)}
main{margin-left:260px;padding:0 44px 12px;max-width:1600px}header{height:82px;border-color:var(--line);color:var(--muted)}h1{font-size:38px;font-weight:650;letter-spacing:-1.2px}h2{font-weight:600;letter-spacing:-.3px}.intro{padding:38px 0 28px}.intro p{max-width:650px;font-size:15px}.eyebrow{color:#76bacf;font-size:10px;letter-spacing:2.3px}
.card{background:linear-gradient(135deg,rgba(17,50,69,.82),rgba(9,32,49,.88));border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 15px 40px rgba(0,0,0,.13),inset 0 1px rgba(190,244,255,.025);backdrop-filter:blur(14px);padding:26px}
.grid{gap:18px}.grid .card{position:relative;overflow:hidden;min-height:168px}.grid .card:after{content:'';position:absolute;width:75px;height:75px;right:-24px;top:-24px;border:1px solid rgba(0,223,255,.15);border-radius:50%;box-shadow:0 0 0 16px rgba(0,223,255,.018),0 0 0 34px rgba(0,223,255,.014)}.stat{color:#f4f9fb;font-size:30px;line-height:1.25;margin-top:18px;letter-spacing:-.8px}.hint{color:#aec3ce;font-size:12px;line-height:1.65}
.hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#103c51,#092737 70%);border:1px solid rgba(0,223,255,.3);padding:30px;border-radius:var(--radius);min-height:178px;box-shadow:var(--glow)}.hero>div:first-child,.hero>button{position:relative;z-index:1}.hero>div:first-child{max-width:60%}.hero h2{font-size:25px}.hero p{color:#bfd3dc}.hero .eyebrow{color:var(--aqua)}.hero button{background:var(--teal);color:#05202e}.ocean-radar{position:absolute!important;right:8%;top:-80px;width:340px;height:340px;opacity:.24;pointer-events:none;border:1px solid #00dfff;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 55px,rgba(0,223,255,.4) 56px 57px)}.ocean-radar i{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 290deg,rgba(0,223,255,.5) 359deg,transparent);animation:radarSweep 18s linear infinite}.ocean-radar span{position:absolute;left:50%;top:50%;width:6px;height:6px;background:var(--aqua);border-radius:50%;box-shadow:0 0 20px var(--aqua)}
button{background:linear-gradient(115deg,#00dfff,#00d3d0);color:#03212c;border-radius:10px;min-height:44px;font-size:14px;transition:filter .16s,box-shadow .16s,transform .16s}button:hover{filter:brightness(1.1);box-shadow:0 0 20px rgba(0,223,255,.14)}button:active{transform:translateY(1px)}button:disabled{opacity:.45}.secondary{background:rgba(58,106,127,.18);color:var(--ink);border:1px solid var(--line)}.small{min-height:36px}.tabs button{min-height:42px}input,select,textarea{background:rgba(4,20,32,.58);color:var(--ink);border:1px solid rgba(131,179,198,.32);border-radius:10px;min-height:46px}input::placeholder,textarea::placeholder{color:#8daab9}input:focus,textarea:focus,select:focus,button:focus-visible{outline:2px solid var(--teal);outline-offset:3px}label{color:#d7e7ee;font-size:13px}select option{background:#0b2638;color:#fff}textarea{min-height:100px}
.section h2{border-color:var(--line)}.warning{background:rgba(184,140,42,.1);border-left-color:#e7b55b;color:#f3d599;border-radius:0 10px 10px 0;line-height:1.7}.pill{background:rgba(0,240,208,.09);border:1px solid rgba(0,240,208,.15);color:#8aeddc}#notice:not(:empty){background:rgba(0,240,208,.09);border:1px solid rgba(0,240,208,.23);color:#c7f9f0;border-radius:12px}.check-instructions{color:#d4e5ed}.check-progress{color:var(--aqua);display:flex;align-items:center;gap:9px}.check-progress:before{content:'';width:7px;height:7px;background:var(--aqua);border-radius:50%;box-shadow:0 0 12px rgba(0,240,208,.5)}
.check-tiles{gap:14px}.check-tile{background:linear-gradient(140deg,rgba(20,53,73,.7),rgba(8,28,43,.82));border:1px solid rgba(117,169,190,.24);border-radius:14px;min-height:158px;color:var(--ink);box-shadow:none}.check-tile:hover{border-color:rgba(0,223,255,.65)}.check-tile.checked{background:linear-gradient(140deg,rgba(0,110,103,.24),rgba(6,39,49,.8));border:1px solid var(--aqua);box-shadow:inset 0 0 25px rgba(0,240,208,.025)}.task-icon{color:#68c8df}.task-icon svg{width:29px;height:29px}.checked .task-icon{color:var(--aqua)}.task-label{font-weight:550}.task-state{color:#aac2ce}.checked .task-state,.checked .task-mark{color:var(--aqua)}.task-mark{color:#88a7b7}
.record{border-color:var(--line)}details.record{margin:12px 0;border:1px solid var(--line);border-radius:12px;padding:18px;position:relative;background:rgba(5,25,39,.28)}details.record[open]{border-color:rgba(0,223,255,.4)}.record summary{min-height:40px;gap:16px}details .content{border-top:1px solid var(--line);margin-top:14px}.record p{color:#bbcfda}a{color:#60e5ff}footer{color:#8faebb;border-top:1px solid var(--line);margin-top:28px;padding:22px 0;font-size:11px}dl{gap:12px}dd{color:#e0edf2}.auth-mode aside,.auth-mode header{display:none}.auth-mode main{margin:0;padding:28px 24px;max-width:none;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center}.auth-mode #app{width:100%;max-width:430px}.auth-mode #notice:not(:empty){width:100%;max-width:430px}.auth-mode footer{width:100%;max-width:600px;text-align:center;border:0;margin-top:22px;color:#8ca8b8}.auth{margin:0 auto;padding:0 30px 28px;border-color:rgba(0,223,255,.18);border-radius:22px;background:linear-gradient(150deg,rgba(9,32,49,.87),rgba(4,18,31,.96));box-shadow:0 30px 100px rgba(0,0,0,.3)}.login-logo{display:block;width:calc(100% + 60px);max-width:none;margin-left:-30px;height:230px;object-fit:cover;border-radius:22px 22px 0 0}.auth h2{text-align:center;font-size:19px;margin:0 0 24px}.auth .tabs{position:relative;margin:0;display:flex;justify-content:center}.auth .tabs:not(.registration-tabs){position:absolute;bottom:0;left:0;right:0;transform:translateY(38px)}.auth{position:relative}.auth .tabs:not(.registration-tabs) #signin{display:none}.auth .tabs:not(.registration-tabs) #signup{flex:none;min-height:24px;margin:0;padding:0 8px;background:none;border:0;color:#9ac4d5;font-size:12px;box-shadow:none}.auth .registration-tabs{gap:8px;margin-bottom:18px}.auth #authform>button{width:100%;margin-top:14px}.auth input{margin-bottom:18px}.auth-mode footer{margin-top:54px}.auth-mode .auth p.hint{font-size:12px}.auth .registration-tabs~h2{margin-bottom:16px}.inlinecheck{min-height:0;accent-color:var(--aqua)}
@keyframes radarSweep{to{transform:rotate(360deg)}}@keyframes panelIn{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}#app>.intro,#app>.card{animation:panelIn .2s ease-out}
@media(max-width:1100px){main{padding:0 28px}.stat{font-size:25px}.grid .card{padding:20px}.hero>div:first-child{max-width:65%}.check-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){aside{position:relative;width:100%;height:auto;padding:10px 18px;border-right:0;border-bottom:1px solid var(--line)}.brand{width:170px}.sidebar-logo{width:170px;height:72px}.vessel,.aside-bottom{display:none}nav{margin-top:8px;gap:7px;padding-bottom:6px}nav button{width:auto;min-height:44px;font-size:12px;flex-shrink:0;gap:8px}nav button svg{width:17px;height:17px}nav button.active{box-shadow:inset 0 -2px var(--teal)}main{margin-left:0;padding:0 22px}header{height:58px}.intro{padding:28px 0 24px}h1{font-size:32px}.hero{flex-direction:column;align-items:flex-start}.hero>div:first-child{max-width:100%}.ocean-radar{right:-70px;top:0;opacity:.12}.layout{grid-template-columns:1fr}.card{padding:22px}.auth-mode main{padding:28px 20px}}
@media(max-width:520px){.grid{grid-template-columns:1fr}.grid .card{min-height:115px}.stat{font-size:26px;margin-top:10px}.grid .hint{margin-bottom:0}.card{padding:18px}.hero{padding:24px}h1{font-size:29px}.check-tile{padding:15px 29px 15px 14px;min-height:154px}.task-label{font-size:14px}.task-state{font-size:11px}.formgrid{grid-template-columns:1fr}.record summary{gap:10px;font-size:13px}dl{grid-template-columns:1fr;gap:6px}dd{margin-bottom:12px}.auth{padding:0 24px 25px}.login-logo{width:calc(100% + 48px);margin-left:-24px;height:200px}.auth-mode main{padding:20px 18px}.auth-mode footer{font-size:10px}.auth-mode .auth h2{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.login-logo,.sidebar-logo{filter:url(#logo-background-cutout);background:transparent;border-radius:0}

.brand{width:100%;display:flex;justify-content:center;align-items:center}.sidebar-logo{display:block;margin-inline:auto}.login-logo{display:block;margin-inline:auto;width:100%;object-position:center}.auth-mode .login-logo{width:100%;margin-inline:auto}@media(max-width:900px){.brand{width:100%;justify-content:center}}

.daily-duty{margin:0 0 24px;border-color:rgba(0,240,208,.4);box-shadow:0 0 28px rgba(0,240,208,.04)}.daily-duty h2{margin-top:12px;font-size:23px;line-height:1.4}.daily-task{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:16px 0}.daily-task p{margin-bottom:0}@media(max-width:520px){.daily-duty h2{font-size:21px}.daily-task{align-items:flex-start;flex-direction:column}.daily-task button{width:100%}}

.item-reason{margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:12px}.item-reason[hidden]{display:none}.item-reason textarea{margin-top:6px}

@media(max-width:900px){nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:8px;width:100%}nav button{width:100%;min-width:0;white-space:normal;text-align:left;line-height:1.35;padding:12px 10px;margin:0}nav button svg{flex-shrink:0}main,.card,.formgrid>div,.layout>div,.grid>div{min-width:0}input,select,textarea,video{max-width:100%;min-width:0}.daily-task>div{min-width:0}.record summary span,.record summary strong,dd,.value{overflow-wrap:anywhere}.hero button{white-space:normal}.actions>button{max-width:100%;white-space:normal}.sidebar-logo{max-width:100%}}
@media(max-width:380px){nav button{font-size:11px;gap:6px;padding:11px 8px}.check-tile{padding-right:28px}.task-label{overflow-wrap:anywhere}}

@media(max-width:900px){aside{padding:12px 18px 20px}nav{gap:10px;margin-top:12px;grid-auto-rows:minmax(52px,auto)}nav button{display:flex;align-items:center;justify-content:center;text-align:center;font-size:13px;font-weight:550;letter-spacing:0;line-height:1.4;padding:12px 10px;min-height:52px;height:100%;border:1px solid rgba(117,169,190,.18);border-radius:12px;background:rgba(17,50,69,.38);color:#d1e2eb;box-shadow:none}nav button svg{display:none}nav button.active{color:#b9fff3;background:linear-gradient(135deg,rgba(0,223,255,.14),rgba(0,240,208,.07));border-color:rgba(0,240,208,.65);box-shadow:inset 0 0 16px rgba(0,240,208,.025)}nav button:hover{border-color:rgba(0,223,255,.4)}nav button:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:380px){nav{gap:8px}nav button{font-size:12px;padding:11px 8px}}

.mobile-menu-toggle{display:none}@media(max-width:900px){aside{position:relative;padding-bottom:12px}.mobile-menu-toggle{position:absolute;right:18px;top:26px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;color:#d4ecf4;background:rgba(17,50,69,.55);border:1px solid var(--line);border-radius:12px;z-index:3}.mobile-menu-toggle svg{width:22px;height:22px}nav{display:none;margin-top:12px}.mobile-menu-open nav{display:grid}.mobile-menu-open aside{padding-bottom:20px}}

.personal-progress{display:flex;gap:28px;margin-bottom:24px;border-color:color-mix(in srgb,var(--meter-color) 35%,transparent)}.report-thermometer{width:70px;flex:none;display:flex;align-items:center;flex-direction:column;padding-top:10px}.thermometer-tube{width:22px;height:120px;border:1px solid var(--line);border-radius:20px 20px 0 0;background:rgba(3,20,30,.7);position:relative;overflow:hidden}.thermometer-tube span{position:absolute;bottom:0;left:0;right:0;background:var(--meter-color);transition:height .4s}.thermometer-bulb{width:42px;height:42px;margin-top:-6px;border-radius:50%;background:var(--meter-color);box-shadow:0 0 18px color-mix(in srgb,var(--meter-color) 20%,transparent);z-index:1}.report-thermometer strong{font-size:22px;margin-top:12px;color:var(--meter-color)}.personal-progress-content{min-width:0}.personal-progress h2{margin:8px 0;font-size:24px;color:var(--meter-color)}.progress-counts{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}.progress-counts span{padding:8px 10px;border:1px solid var(--line);border-radius:8px}.progress-counts strong{color:var(--ink)}.progress-pending{display:flex;flex-direction:column;gap:8px;margin:16px 0}.progress-pending button{text-align:left;white-space:normal}@media(max-width:520px){.personal-progress{gap:16px}.report-thermometer{width:48px}.thermometer-tube{height:100px}.personal-progress h2{font-size:21px}.progress-counts{gap:7px}}

.service-alerts{margin-bottom:24px;border-color:rgba(239,193,107,.4)}.service-alerts h2{margin-top:12px}.service-date-row{padding:18px 0;border-bottom:1px solid var(--line)}.service-date-row .actions input{width:200px;max-width:100%}.owner-progress h2{margin-top:12px}.owner-meter{display:flex;gap:24px;align-items:center;padding:20px 0;border-top:1px solid var(--line)}.owner-meter .thermometer-tube{height:80px}.owner-meter h3{margin:0}.routine-subnav{margin-top:0;margin-bottom:24px}

.marine-panel{margin:24px 0}.marine-controls{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.marine-controls>div{flex:1;min-width:180px}.marine-tides,.marine-wind{margin-top:24px}.marine-event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px}.marine-event-grid>div{padding:14px;border:1px solid rgba(0,223,255,.18);border-radius:12px;display:flex;flex-direction:column;gap:8px}.marine-event-grid strong{color:#00dfef;font-size:1.2rem}.marine-panel a{color:#72e7ef;overflow-wrap:anywhere}.marine-panel img{width:100%;height:auto;max-width:650px;border-radius:12px}.marine-panel .actions{gap:16px;margin-top:20px}.marine-panel [hidden]{display:none}

/* Keep native Safari date/time controls within their grid cells. */
.formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.formgrid>*,.grid>*,.layout>*,.card,.actions>*{min-width:0}
input,select,textarea{box-sizing:border-box;min-width:0;max-width:100%}
input[type=date],input[type=time],input[type=datetime-local]{display:block;width:100%;min-width:0;max-width:100%;min-height:48px;appearance:none;-webkit-appearance:none;text-align:left}
input::-webkit-date-and-time-value{text-align:left;min-width:0}
input::-webkit-datetime-edit{min-width:0;padding:0}
input[type=file]{overflow:hidden}
.card p,.card a,.record,.daily-task strong{overflow-wrap:anywhere}
@media(max-width:680px){.formgrid{grid-template-columns:minmax(0,1fr)}input,select,textarea{font-size:16px}.actions{flex-wrap:wrap}.service-date-row .actions input{width:100%}.marine-controls>div{min-width:0;width:100%}.daily-task{flex-wrap:wrap}.daily-task>div{min-width:0;flex:1 1 180px}}

#app.sailor-dashboard > :not(.intro){margin-block:0}
#app.sailor-dashboard > :not(.intro) + :not(.intro){margin-top:24px}
#app.sailor-dashboard > .grid{gap:24px}

#app.owner-dashboard > :not(.intro){margin-block:0}#app.owner-dashboard > :not(.intro)+:not(.intro){margin-top:24px}.owner-history-shell{padding:0;background:transparent;border:0;box-shadow:none}.owner-history-section{margin-top:24px}.fuel-history{display:flex;gap:18px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.fuel-history>div{min-width:0;flex:1}.fuel-history strong{font-size:24px;color:#00f0d0}.fuel-history progress{width:100%;max-width:100%;accent-color:#00f0d0}.fuel-history p{margin-bottom:0}.owner-history-section a{color:#72e7ef}.owner-history-section summary{flex-wrap:wrap}

/* Increase the displayed brand by 15% while retaining its centered layout. */
.sidebar-logo,.login-logo{transform:scale(1.15);transform-origin:center}

#identity{min-width:0;flex-wrap:wrap;overflow-wrap:anywhere}#identity button{flex-shrink:0}.config-place label,.config-vessel label{display:flex;flex-direction:column;gap:6px}#profileForm>div{margin-bottom:16px}#configTeam .record p{overflow-wrap:anywhere}@media(max-width:680px){header{height:auto;min-height:58px;padding-block:12px;flex-wrap:wrap;gap:10px}#identity{gap:10px;width:100%}.config-place,.config-vessel{padding:16px}#profileForm input{font-size:16px}}

.presence-summary{margin-top:20px;padding:18px;border:1px solid var(--line);border-left:4px solid #8299a6;border-radius:12px}.presence-summary h3{margin-top:0}.presence-inside{border-left-color:#00cfa5}.presence-outside{border-left-color:#ed8985}.presence-inconclusive,.presence-no_reference{border-left-color:#efc16b}.presence-summary dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.presence-summary dd{overflow-wrap:anywhere}@media(max-width:520px){.presence-summary dl{grid-template-columns:minmax(0,1fr)}}

.visit-controls{padding:20px;border:1px solid var(--line);border-radius:14px;background:rgba(4,23,37,.35)}.visit-checkpoint+.visit-checkpoint{margin-top:20px}.visit-gps{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;white-space:normal}.visit-gps svg{width:20px;height:22px;flex:none}.visit-exceptions details{padding:14px 0;border-top:1px solid var(--line)}.visit-exceptions summary{cursor:pointer;color:#efc16b;overflow-wrap:anywhere}.visit-exceptions label{margin-top:16px}.visit-exceptions button{margin-top:12px;max-width:100%;white-space:normal}.visit-status .presence-summary{margin-top:12px}.visit-summary{margin-top:24px}.presence-exception{border-left-color:#efc16b}.visit-controls input[readonly]{color:var(--muted)}@media(max-width:520px){.visit-controls{padding:16px}.visit-summary,.visit-controls{min-width:0}.visit-summary p{overflow-wrap:anywhere}}

.visit-vessel{margin-bottom:12px;min-width:0}.visit-vessel select{width:100%}

/* Shared access-screen standard: login, recovery and password reset. */
.auth-mode .auth #authform>button,.auth-mode .auth #recoveryform>button,.auth-mode .auth>button{display:block;width:100%;height:44px;margin:16px auto 0;text-align:center;box-sizing:border-box}
.auth-mode footer{margin-top:22px}

.auth-mode #notice:not(:empty){margin:0 auto 24px;flex-shrink:0}

.auth-mode #notice:not(:empty){margin:0 auto;flex-shrink:0}
.auth-mode #notice:not(:empty)+#app{padding-top:24px}
.auth-mode #app{flex-shrink:0}

/* Keep a clear gap between card content and its next action or section. */
#app .card > :not(:first-child):is(button,.actions,form){margin-block-start:24px}
#app .card > details{margin-block-start:24px}

/* Espaço consistente para a seta dos campos de seleção. */
select{appearance:none;-webkit-appearance:none;padding-right:46px;background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2716%27 height=%2716%27 viewBox=%270 0 16 16%27 fill=%27none%27%3E%3Cpath d=%27m3 6 5 5 5-5%27 stroke=%27%23d7e7ee%27 stroke-width=%271.8%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px 16px}

/* Logo ProntoPraSair */
.sidebar-logo,.login-logo{display:block;object-fit:contain!important;object-position:center;filter:none!important;mix-blend-mode:screen;background:transparent;border-radius:0;transform:none!important;height:auto!important;aspect-ratio:3/2}
.sidebar-logo{width:100%!important;max-width:220px!important;max-height:150px;margin-inline:auto}
.login-logo{width:min(100%,540px)!important;max-width:540px!important;max-height:230px;margin:0 auto 28px!important}
