:root{color-scheme:dark;--bg:#111512;--panel:#1a201b;--line:#323b32;--muted:#9ba79c;--ink:#edf1e9;--lime:#c9f178;--warn:#f2be77;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}header{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;padding:0 clamp(20px,5cqi,80px)}header a{font-size:13px;font-weight:600;text-decoration:none}main{max-width:1500px;margin:auto;padding:clamp(20px,4cqi,64px)}h1{font-size:clamp(36px,4.7cqi,65px);line-height:1.06;letter-spacing:-2.8px;font-weight:500;margin:0}h1 em{font-style:normal;color:var(--lime)}p{color:var(--muted);line-height:1.6}.actions{display:flex;gap:8px;margin-bottom:6px}button,input,select,textarea{font:inherit}button{background:#252e25;color:var(--ink);border:1px solid #414d40;border-radius:8px;padding:10px 14px;cursor:pointer;transition:background .35s}button:hover{background:#3d4a36}button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:3px}.muted{color:var(--muted);font-size:12px;letter-spacing:0;font-weight:400}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:24px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}h2{font-size:16px;font-weight:550;margin:0}h2 span{font-family:monospace;font-size:11px;color:var(--lime);margin-right:10px}.settings-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.settings{margin-bottom:32px}label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--muted)}input,select,textarea{min-width:0;max-width:100%;background:#111712;color:var(--ink);border:1px solid #3c473b;border-radius:7px;padding:10px;width:100%}input[type=checkbox]{width:17px;height:17px;accent-color:var(--lime)}.check{flex-direction:row;align-items:center;align-self:end;min-height:39px}.workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}.stop{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:18px;background:var(--panel)}.stop-top{display:grid;grid-template-columns:1fr 118px;gap:18px;align-items:center}.stop-title{display:flex;gap:12px;align-items:center}.town-dot{width:8px;height:8px;background:var(--lime);border-radius:50%}.stop h3{font-size:16px;margin:0 0 5px}.stepper{display:flex;gap:5px;align-items:center}.stepper input{text-align:center;padding:8px 0;-moz-appearance:textfield}.stepper button{padding:6px 10px;font-size:18px}.stepper input::-webkit-inner-spin-button{appearance:none}.stop-controls{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:10px}.status{font-size:11px;color:var(--muted)}.confirmed{color:var(--lime)}.none{font-size:11px;padding:6px 8px;background:transparent}summary{cursor:pointer;color:var(--muted);font-size:12px;padding:10px 0}details[open] summary{margin-bottom:8px}.constraint-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wide{grid-column:1/-1}.travel{margin-top:22px}.travel summary{color:var(--ink);font-size:15px}.travel summary span{display:block;margin-top:5px}.travel-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.route{position:static}.live{font-size:9px;letter-spacing:1px;color:var(--lime);border:1px solid #50643e;border-radius:4px;padding:5px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:22px}.stat strong{display:block;font-size:29px;font-weight:500;margin-bottom:3px}.stat span{font-size:11px;color:var(--muted)}.finish{background:var(--lime);color:#172113;padding:18px;border-radius:10px;margin-bottom:24px}.finish small{display:block;font-size:10px;letter-spacing:1px;margin-bottom:7px}.finish strong{font-size:25px;font-weight:550}.timeline{border-left:1px solid #4a5744;margin-left:8px;padding-left:24px}.waypoint{position:relative;padding:0 0 25px}.waypoint:before{content:'';position:absolute;left:-30px;top:5px;width:10px;height:10px;background:var(--lime);border:2px solid var(--panel);border-radius:50%}.waypoint h3{font-size:16px;margin:5px 0}.time{font-size:13px;color:var(--lime);font-variant-numeric:tabular-nums}.waypoint p{font-size:12px;margin:7px 0}.leg{font-size:11px;color:var(--muted);margin-bottom:16px}.badge{display:inline-block;font-size:10px;padding:4px 7px;border:1px solid var(--line);border-radius:5px;color:var(--muted)}.warning,#error{color:var(--warn);background:#342c1e;border:1px solid #715333;padding:12px;border-radius:8px;font-size:12px;line-height:1.6;margin-bottom:18px}#error[hidden]{display:none}.empty{padding:32px 8px;text-align:center}.empty .symbol{font-size:42px;color:var(--lime)}.empty h3{font-size:21px;font-weight:500}.empty p{max-width:300px;margin:12px auto}.notes{font-size:11px;line-height:1.6;color:var(--muted);border-top:1px solid var(--line);padding-top:16px}footer{margin-top:35px;font-size:11px;line-height:1.8;color:var(--muted)}@container (max-width:1050px){.settings-grid{grid-template-columns:repeat(3,1fr)}.workspace{grid-template-columns:minmax(0,1fr)}}@container (max-width:760px){header{height:56px;padding:0 20px}.actions{margin-top:24px}.workspace{grid-template-columns:1fr}.route{position:static}.settings-grid{grid-template-columns:1fr 1fr}.section-head{align-items:flex-start}.section-head>.muted{max-width:120px;text-align:right}.panel{padding:18px}.stats{grid-template-columns:1fr}.stat{display:flex;align-items:center;gap:14px}.stat strong{font-size:23px;min-width:70px}.travel-grid{grid-template-columns:1fr}h1{letter-spacing:-1.8px}}@media print{header,.settings,.workspace>section,footer,.live{display:none}.workspace{display:block}.route{position:static;border:0}.panel{background:white;color:black}.time,.muted,.notes,.waypoint p,.leg{color:#333}.finish{background:#eee;color:black}body{background:white;color:black}main{padding:0}.waypoint{break-inside:avoid}}
.actions{flex-wrap:wrap}.mail-panel{margin-bottom:32px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;color:var(--muted);font-weight:500}th,td{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:top}td:first-child{min-width:115px}td:nth-child(3){min-width:230px;line-height:1.6}td small{display:block;color:var(--muted);margin-top:4px}td strong{font-weight:500;color:var(--lime)}td:last-child{white-space:nowrap}.mail-source{margin:10px 0;line-height:1.6}.stop-title .muted{display:block;font-size:11px;line-height:1.6}a{color:var(--lime)}.stop-top{grid-template-columns:minmax(0,1fr) 154px}.notes{line-height:1.8}@media print{.mail-panel{display:none}}@container (max-width:760px){.stop-top{gap:8px}.stop h3{font-size:14px}}
.reorder{display:flex;gap:6px;margin-bottom:12px}.reorder button{padding:5px 10px}.drag-handle{touch-action:none;cursor:grab;font-size:22px;line-height:1}.dragging{opacity:.55}.drop-target{outline:2px solid var(--lime);outline-offset:2px}button:disabled{opacity:.35;cursor:default}.weather{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.weather>span{font-size:23px}.weather strong{color:var(--ink)}.weather small{color:var(--muted)}#route-status{font-size:12px;line-height:1.6}.route>.actions{margin-bottom:20px}.stat strong{font-size:clamp(18px,2cqi,26px);overflow-wrap:anywhere}@media print{.route>.actions,#route-status{display:none}}

.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{min-width:0}.stat strong{font-size:clamp(17px,1.65cqi,23px)}@container (max-width:760px){.stats{grid-template-columns:1fr}.stat strong{font-size:23px}}
.login{max-width:520px;margin:10vh auto;padding:20px}.login .panel{padding:clamp(22px,4cqi,40px)}.login h1{font-size:clamp(30px,4cqi,48px)}.login form{display:grid;gap:18px}.honeypot{position:absolute;left:-9999px}.public-day{max-width:850px;margin:30px auto;padding:clamp(14px,3cqi,30px);font-size:21px}.public-day .route{position:static}.public-day h1{font-size:clamp(39px,6cqi,60px);margin:0}.public-day .live{font-size:13.5px}.public-day .muted{font-size:18px}.public-day .waypoint h3{font-size:24px}.public-day .time{font-size:19.5px}.public-day .waypoint p{font-size:18px}.public-day .weather>span{font-size:34.5px}.public-day .notes{font-size:16.5px}.public-day .warning{font-size:18px}.public-day .empty h3{font-size:31.5px}.public-day .no-plan{border:1px solid var(--line);border-radius:12px;padding:clamp(26px,6cqi,52px) 18px;margin:26px 0}.public-day .no-plan time{display:block;color:var(--lime);font-variant-numeric:tabular-nums}.departed{opacity:.65}.departure-controls{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:14px 0}.departure-controls label{max-width:160px}.departure-controls button{min-height:42px}@container (max-width:760px){.public-day{font-size:16.8px}.public-day h1{font-size:clamp(31.2px,8cqi,48px)}.public-day .live{font-size:10.8px}.public-day .muted{font-size:14.4px}.public-day .waypoint h3{font-size:19.2px}.public-day .time{font-size:15.6px;white-space:nowrap}.public-day .waypoint p{font-size:14.4px}.public-day .weather>span{font-size:27.6px}.public-day .notes{font-size:13.2px}.public-day .warning{font-size:14.4px}.public-day .empty h3{font-size:25.2px}}

#advance-day{background:var(--lime);border-color:var(--lime);color:#172016;font-weight:700}#advance-day:hover:not(:disabled){background:#d8fa91}#advance-day:disabled{opacity:.45}#advance-status{margin:0 0 16px}

.public-day .waypoint.departed::before{background:#9aa39b}.public-day .waypoint.current::before{background:var(--lime);animation:current-stop-pulse 1.8s ease-out infinite}@keyframes current-stop-pulse{0%{box-shadow:0 0 0 0 rgba(201,241,120,.7)}70%,100%{box-shadow:0 0 0 13px rgba(201,241,120,0)}}@media(prefers-reduced-motion:reduce){.public-day .waypoint.current::before{animation:none;box-shadow:0 0 0 3px rgba(201,241,120,.35)}}

/* Indoor Vision design system: shared visual language for planner, public day and login. */
:root {
  --bg:var(--iv-bg);--panel:var(--iv-surface);--line:var(--iv-border);
  --muted:var(--iv-muted);--ink:var(--iv-text);--lime:var(--iv-yellow);
  --warn:#f5cf6e;
  font-family:var(--iv-font);font-size:14px;
}
html{color-scheme:dark}
body{background:var(--iv-bg);color:var(--iv-text);font-family:var(--iv-font);line-height:1.5}
a{color:var(--iv-link);text-underline-offset:3px}
a:hover{color:#a9dcfa}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--iv-link);outline-offset:3px}
.site-header{height:auto;min-height:86px;padding:12px clamp(16px,4cqi,64px);justify-content:space-between;gap:20px;background:var(--iv-surface);border-color:var(--iv-border)}
.site-header>a:last-child{color:var(--iv-link);font-weight:700}
.brand-logo,.public-brand,.login-brand{display:block;line-height:0}
.brand-logo img,.public-brand img,.login-brand img{display:block;width:100%;height:auto}
.brand-logo{width:clamp(170px,20cqi,238px);flex:none}
main{max-width:1460px;padding:clamp(20px,4cqi,56px)}
.panel{background:var(--iv-surface);border-color:var(--iv-border);border-radius:var(--iv-radius);padding:clamp(20px,2.6cqi,32px);box-shadow:0 14px 36px rgba(4,7,22,.12)}
.section-head{gap:16px;margin-bottom:24px;flex-wrap:wrap}
h1,h2,h3{color:var(--iv-text);letter-spacing:-.035em}
h1{font-size:clamp(38px,5cqi,64px);font-weight:800;letter-spacing:-.055em}
h2{font-size:clamp(17px,1.6cqi,21px);font-weight:750}
h2 span{color:var(--iv-link);font-weight:800}
.stop h3,.waypoint h3{font-weight:740}
p,.muted,.status,.leg,.notes,footer{color:var(--iv-muted)}
.muted{font-size:12px}
.live{border-color:var(--iv-yellow);border-radius:6px;color:var(--iv-yellow);font-weight:800;letter-spacing:.08em;padding:6px 9px}
button{min-height:44px;background:#2b3049;color:var(--iv-text);border:1px solid #505b78;border-radius:10px;padding:9px 14px;font-weight:700;transition:background .35s ease,border-color .35s ease,transform .35s ease}
button:hover:not(:disabled){background:#39415d;border-color:#7c89a6}
button:active:not(:disabled){transform:translateY(1px)}
button:disabled{opacity:.46}
input,select,textarea{min-height:44px;background:#15192b;color:var(--iv-text);border-color:#566078;border-radius:9px;padding:10px 12px}
input[readonly]{color:var(--iv-muted);background:#191d2e}
input[type=checkbox]{min-height:17px;accent-color:var(--iv-yellow)}
label{color:var(--iv-muted);font-size:12px;gap:8px}
.check{min-height:44px}
.stop{background:#191d30;border-color:var(--iv-border);border-radius:14px;padding:20px}
.town-dot{background:var(--iv-blue);width:9px;height:9px;flex:none}
.confirmed{color:#68d499}
.stop-top{gap:16px}
.reorder button,.stepper button{min-width:44px;min-height:44px}
.stepper input{width:54px;min-width:0;flex:0 0 54px}
.none{background:transparent;color:var(--iv-link);border-color:var(--iv-border);min-height:38px}
summary{color:var(--iv-text)}
.travel summary{font-weight:750}
.location-group{margin-bottom:14px}.location-group.paired{border:1px solid #526143;border-radius:15px;padding:10px;background:rgba(201,241,120,.035)}.location-group.paired .stop{margin-bottom:8px}.location-group.paired .stop:last-child{margin-bottom:0}.location-group-label{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:5px 8px 13px;color:var(--lime)}.location-group-label strong{font-size:14px}.location-group-label span,.co-location-note,.site-continuation{font-size:10px;color:var(--muted);letter-spacing:.04em}.co-location-note{display:block;margin-top:5px}.waypoint.same-location{margin-top:-12px;padding-top:12px;border-top:1px dashed #526143}.waypoint.same-location:before{background:var(--panel);border-color:var(--lime)}.site-continuation{display:block;margin-bottom:6px;color:var(--lime);text-transform:uppercase}.public-day .waypoint.same-location{margin-left:10px;padding-left:12px;border-left:2px solid #526143}@container (max-width:760px){.location-group-label{align-items:flex-start;flex-direction:column;gap:4px}}
.route>.actions{margin-bottom:20px}
#advance-day,#asw-send,.login form button{background:var(--iv-button);border-color:var(--iv-button);color:var(--iv-button-text);font-weight:800}
#advance-day:hover:not(:disabled),#asw-send:hover:not(:disabled),.login form button:hover:not(:disabled){background:#ffda51;border-color:#ffda51}
.stats{gap:12px}
.stat strong{font-weight:750;color:var(--iv-text)}
.stat span{color:var(--iv-muted)}
.finish{background:var(--iv-purple);color:#fff;border:1px solid #5150a0;border-radius:12px;padding:20px}
.finish small{color:#d1d3ea;font-weight:750}
.finish strong{color:var(--iv-yellow);font-weight:800}
.timeline{border-color:#59617a}
.waypoint:before{background:var(--iv-blue);border-color:var(--iv-surface)}
.time{color:var(--iv-link);font-weight:750}
.waypoint p,.leg,.badge,.notes{color:var(--iv-muted)}
.badge{border-color:var(--iv-border);border-radius:6px}
.warning{color:#ffe3a5;background:#342b1c;border-color:#82632d}
#error{color:#ffd6d3;background:#3a2025;border-color:#99504e}
.empty .symbol,.public-day .no-plan time{color:var(--iv-yellow)}
.table-scroll{border:1px solid var(--iv-border);border-radius:10px}
th,td{border-color:var(--iv-border)}
th{font-weight:750}
td strong{color:var(--iv-link);font-weight:750}
.mail-panel{margin-bottom:28px}
footer{border-top:1px solid var(--iv-border);padding-top:20px}
.eyebrow{color:var(--iv-link);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:800;letter-spacing:.1em}
.login{max-width:560px;margin:6vh auto;padding:20px}
.login .panel{padding:clamp(24px,5cqi,44px)}
.login-brand{width:min(100%,300px);margin:0 0 32px}
.login h1{font-weight:800;margin:10px 0 18px}
.login form{margin:28px 0 22px}
.login form button{width:100%;min-height:48px}
.public-day{max-width:900px;margin:clamp(16px,4cqi,42px) auto;padding:0 clamp(16px,3cqi,28px)}
.public-day .panel{padding:clamp(24px,4cqi,42px)}
.public-brand{width:min(100%,290px);margin:0 0 34px}
.public-day .section-head{align-items:center;justify-content:center;text-align:center;margin-bottom:12px}
.public-day h1{font-weight:800;font-size:clamp(37px,6cqi,60px);letter-spacing:-.055em}
.public-plan-heading{padding:clamp(10px,1.5cqi,16px) clamp(8px,2cqi,18px) clamp(22px,3cqi,30px)}
.public-day #day-status{text-align:center;margin:0}
.public-day .muted{color:var(--iv-muted)}
.public-day .waypoint h3{font-weight:760}
.public-day .time{display:block;color:var(--iv-link)}
.public-day .time-kind::before{content:' · '}
.public-day .waypoint.departed{opacity:.42}
.public-day .waypoint.departed::before{background:#8791a8}
.public-day .waypoint.current::before{background:var(--iv-yellow);animation:iv-current-pulse 1.8s ease-out infinite}
@keyframes iv-current-pulse{0%{box-shadow:0 0 0 0 rgba(249,195,18,.6)}70%,100%{box-shadow:0 0 0 13px rgba(249,195,18,0)}}
@container (max-width:760px){
  .site-header{min-height:72px;padding:10px 16px}
  .brand-logo{width:clamp(160px,45cqi,210px)}
  main{padding:20px 16px}
  .panel{padding:20px}
  .settings-grid{gap:12px}
  .public-day{padding:0 16px}
  .public-day .panel{padding:clamp(20px,5cqi,30px)}
  .public-brand{width:min(100%,230px);margin-bottom:26px}
  .public-plan-heading{padding:8px 6px 24px}
  .public-day .waypoint:is(.same-location,.departed) .time{white-space:normal}
  .public-day .waypoint:is(.same-location,.departed) .time-kind{display:block;margin-top:4px}
  .public-day .waypoint:is(.same-location,.departed) .time-kind::before{content:''}
  .login{padding:16px}
}
@container (max-width:420px){
  .settings-grid{grid-template-columns:1fr}
  .stop-top{grid-template-columns:minmax(0,1fr)}
  .stop-top>label{max-width:200px}
  .site-header>a:last-child{font-size:12px}
}
@media(prefers-reduced-motion:reduce){button{transition:none}.public-day .waypoint.current::before{animation:none;box-shadow:0 0 0 3px rgba(249,195,18,.35)}}
@media print{.panel,.stop{box-shadow:none}.finish{background:#eee;color:#222;border-color:#bbb}.finish strong{color:#222}.site-header{display:none}}

.report-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.report-controls label{width:min(100%,220px)}
.workspace{gap:14px}.admin-accordion{margin:0}.admin-accordion>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:0;list-style:none}.admin-accordion>summary::-webkit-details-marker{display:none}.admin-accordion>summary:after{content:'+';flex:none;color:var(--iv-link);font-size:24px;font-weight:500;line-height:1;transition:transform .35s ease-in-out}.admin-accordion[open]>summary:after{content:'−';transform:rotate(180deg)}.accordion-title{display:flex;align-items:baseline;gap:10px;color:var(--iv-text);font-size:clamp(17px,1.6cqi,21px);font-weight:750;letter-spacing:-.035em}.accordion-title>span{color:var(--iv-link);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:800;letter-spacing:0}.admin-accordion>summary>.live,.admin-accordion>summary>.muted{margin-left:auto}.accordion-body{padding-top:24px}.section-actions{display:flex;justify-content:flex-end;margin-bottom:14px}.travel{margin-top:22px;border:1px solid var(--iv-border);border-radius:12px;padding:12px 16px;background:#191d30}.settings{margin-bottom:0}@container (max-width:760px){.admin-accordion>summary{align-items:flex-start;flex-wrap:wrap}.admin-accordion>summary:after{margin-left:auto}.admin-accordion>summary>.live,.admin-accordion>summary>.muted{order:3;width:100%;margin-left:0}.section-actions{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){.admin-accordion>summary:after{transition:none}}
.report-page{background:#eef0f7;color:#17192d}.report-toolbar{max-width:1000px;margin:24px auto 0;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.report-toolbar a{font-weight:700}.report-shell{max-width:1000px;padding:20px;margin:0 auto}.report-sheet{background:#fff;color:#17192d;border-radius:16px;padding:clamp(28px,5cqi,56px);box-shadow:0 18px 55px rgba(35,32,95,.14)}.report-header{height:auto;display:flex;align-items:flex-start;justify-content:space-between;gap:32px;padding:0 0 28px;border-bottom:3px solid var(--iv-yellow)}.report-header img{width:min(230px,36%);height:auto}.report-header>div{min-width:0;text-align:right}.report-kicker{margin:0 0 8px;color:var(--iv-blue);font-size:11px;font-weight:800;letter-spacing:.12em}.report-header h1{margin:0;color:var(--iv-purple);font-size:clamp(28px,4cqi,44px);line-height:1.05}.report-period{margin:10px 0 0;color:#596374;font-size:18px}.report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:30px 0 38px}.report-summary div{border:1px solid #dde3e8;border-top-width:4px;border-radius:12px;padding:15px 18px 18px}.report-summary div:nth-child(1){background:#f1f0f9;border-top-color:var(--iv-purple)}.report-summary div:nth-child(2){background:#eef8fd;border-top-color:var(--iv-blue)}.report-summary div:nth-child(3){background:#fff9e5;border-top-color:var(--iv-yellow)}.report-summary div:nth-child(4){background:#edf7f1;border-top-color:var(--iv-green)}.report-summary strong{display:block;color:var(--iv-purple);font-size:28px}.report-summary div:nth-child(2) strong{color:#176a9a}.report-summary div:nth-child(3) strong{color:#8a6500}.report-summary div:nth-child(4) strong{color:var(--iv-green)}.report-summary span{display:block;margin-top:4px;color:#596374;font-size:12px}.report-sheet h2{color:var(--iv-purple);font-size:19px;margin:0 0 14px}.report-table{width:100%;border-collapse:collapse;color:#17192d;font-size:12px}.report-table th{background:var(--iv-purple);color:#fff;font-weight:700;text-align:left}.report-table th,.report-table td{padding:12px 10px;border:1px solid #dde3e8}.report-table td:nth-child(n+3),.report-table th:nth-child(n+3){text-align:center}.report-table tbody tr:nth-child(even){background:#f1f7fb}.report-table strong{display:block;color:#17192d}.report-table small{display:block;margin-top:3px;color:#596374}.report-empty{text-align:center!important;color:#596374;padding:30px!important}.report-footer{display:flex;justify-content:space-between;gap:20px;margin-top:34px;padding-top:16px;border-top:2px solid var(--iv-yellow);color:#596374;font-size:10px}
@container (max-width:700px){.report-header{display:block}.report-header img{width:220px;max-width:100%;margin-bottom:28px}.report-header>div{text-align:left}.report-summary{grid-template-columns:1fr 1fr}.report-table{font-size:10px}.report-table th,.report-table td{padding:8px 6px}.report-toolbar{align-items:flex-start}.report-footer{display:block}.report-footer span{display:block;margin-top:5px}}
@page{size:A4;margin:8mm}@media print{html{color-scheme:light}.report-page{background:#fff}.report-toolbar{display:none}.report-shell{max-width:none;padding:0;margin:0}.report-sheet{padding:10mm;border-radius:0;box-shadow:none}.report-header{align-items:center;gap:22px;padding-bottom:22px}.report-header img{width:190px}.report-header h1{font-size:21px;line-height:1.12}.report-period{font-size:14px}.report-summary{margin:22px 0 28px}.report-summary div{padding:12px}.report-summary strong{font-size:23px}.report-table{font-size:9.5pt}.report-table thead{display:table-header-group}.report-table tr{break-inside:avoid}.report-footer{margin-top:24px;font-size:9px}}

/* Tvoj dan: kompaktni redak lokacije s redoslijedom i brojem auta */
.stop-line{display:grid;grid-template-columns:152px minmax(0,1fr) auto;gap:14px;align-items:center}
.stop-line .reorder{display:flex;gap:4px;margin:0;align-items:center}
.stop-line .reorder button{padding:0}
.stop-line .co-location-note{margin:0}
.stop-row h3{margin:3px 0 0}
.stop-info p{margin:5px 0 0}
.stop-row.skipped .stop-info{opacity:.6}
.stop-row.skipped::before{background:var(--iv-surface,var(--panel))}
.stop-row.dragging{opacity:.55}
.stop-row.drop-target{outline:2px solid var(--iv-link,var(--lime));outline-offset:4px;border-radius:10px}
.drag-handle{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.link-button{min-height:0;padding:0;margin-top:6px;background:none;border:0;color:var(--iv-link,var(--lime));font-size:12px;font-weight:600;text-decoration:underline}
@container (max-width:640px){
  .stop-line{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"info info" "order cars";row-gap:10px}
  .stop-line .stop-info{grid-area:info}
  .stop-line .reorder{grid-area:order}
  .stop-line .stepper{grid-area:cars}
  .stop-line{column-gap:10px}
  .stop-line .reorder,.stop-line .stepper{gap:3px}
  .stop-line .reorder button,.stop-line .stepper button{min-width:40px;width:40px}
  .stop-line .stepper input{width:40px;flex-basis:40px}
}
@container (max-width:360px){
  .stop-line{grid-template-columns:minmax(0,1fr);grid-template-areas:"info" "order" "cars"}
}

.day-finished{margin:0 0 20px;padding:12px 14px;border:1px solid var(--iv-line,var(--line));border-radius:10px;font-weight:650}

/* Raspored ovisi o širini tijela stranice (container), ne prozora: admin je i na desktopu širok kao mobitel. */
body{container-type:inline-size}
body.admin{max-width:480px;margin-inline:auto}

.house-picks{border:1px solid var(--line);border-radius:10px;padding:12px 16px 14px;margin:0 0 16px}.house-picks legend{font-size:11px;color:var(--muted);padding:0 6px}.house-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:2px 16px}.house-grid .check{align-self:auto;font-size:13px;color:var(--ink);gap:10px;cursor:pointer}.house-picks>.muted{margin:8px 0 0}.pick-actions{display:flex;gap:16px}
