:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#242a27;background:#f6f5f1;font-size:14px;--muted:#767c75;--line:#e5e7df;--orange:#e56a42;--green:#356c50}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #e56a4266;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #e56a4244;border-color:var(--orange)}a{color:inherit;text-decoration:none}button{color:inherit;border:0;background:none}h1,h2,h3,p{margin:0}[hidden]{display:none!important}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:22px;padding:0 5vw;background:#faf9f6}.brand{font-size:35px;font-weight:800;letter-spacing:-2px}.brand-dot,footer>span:first-child{color:var(--orange)}.brand-divider{height:25px;width:1px;background:#dedfd7}.workspace-name{font-size:13px;color:#686f68}.city{margin-left:auto;padding:7px 12px;border:1px solid var(--line);border-radius:50px;font-size:12px;display:flex;gap:7px;align-items:center}.live-dot,.tiny-dot{width:6px;height:6px;background:var(--green);border-radius:50%;display:inline-block}main{max-width:1530px;margin:auto;padding:40px 5vw 0}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--muted);margin-bottom:13px}h1{font-size:clamp(26px,2.6vw,38px);letter-spacing:-1.3px;font-weight:650;line-height:1.2}.subtitle{color:var(--muted);font-size:13px;margin-top:13px}.mobile-break{display:none}.date-block{display:flex;align-items:flex-end;flex-direction:column;gap:5px;min-width:135px}.date-block>span:first-child{text-transform:capitalize;font-size:12px;color:var(--muted);margin-bottom:6px}.date-block strong{font-size:33px;color:var(--green);font-weight:600;line-height:1}.date-block>span:last-child{font-size:11px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.stats button{text-align:left;border:1px solid var(--line);border-radius:12px;background:#fff;padding:18px 22px;transition:transform .15s}.stats button:hover{transform:translateY(-2px);border-color:#c7cec4}.stats button:last-child{background:#edf3eb;border-color:#dce7d8}.stats span{display:block;font-size:12px;color:#6b7369}.stats strong{display:block;font-size:32px;font-weight:600;letter-spacing:-1px;margin-top:13px}.stats .tiny-dot{display:inline-block;margin-left:4px}.workspace{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.workspace-toolbar{display:flex;justify-content:space-between;align-items:center;padding:19px 23px;border-bottom:1px solid var(--line)}.views{display:flex;gap:4px;background:#f4f5ef;border-radius:8px;padding:4px}.views button{display:flex;align-items:center;gap:8px;padding:9px 15px;font-size:14px;color:#7b8177;border-radius:6px}.views button.active{background:white;box-shadow:0 1px 4px #25392415;color:#2b332a}.count-pill{font-size:10px!important;background:#e8ece4;padding:2px 5px;border-radius:5px}.quiet-button{color:#777e73;font-size:12px;padding:9px}.filters{display:flex;gap:10px;padding:20px 23px 8px}.search{flex:1;min-width:150px;position:relative;margin:0}.search>span{position:absolute;font-size:24px;left:13px;top:4px;color:#818879}.search input{padding-left:38px;width:100%}input,select,textarea{border:1px solid var(--line);border-radius:7px;background:#fff;min-height:41px;padding:10px 12px;color:#384034;font-size:12px}input::placeholder,textarea::placeholder{color:#959b90}select{min-width:130px;max-width:210px}textarea{resize:vertical;line-height:1.5}.results-heading{display:flex;justify-content:space-between;gap:10px;padding:17px 23px;color:var(--muted);font-size:11px}.results-heading>span{color:#999e96}#content{padding:0 23px 20px;min-height:170px}.venue-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.venue-card{border:1px solid var(--line);border-radius:10px;padding:17px;display:flex;flex-direction:column;min-width:0;transition:border-color .15s}.venue-card:hover{border-color:#b8c4b3}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.badge{display:inline-flex;align-items:center;font-size:10px;gap:5px;border-radius:5px;padding:5px 8px;background:#f1f2ed;color:#737c6c;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;flex:none;border-radius:50%;background:currentColor}.badge.working{background:#fdf0df;color:#a67a35}.badge.waiting{background:#eeeefa;color:#7371a6}.badge.agreed{background:#e9f3e9;color:#467a4e}.badge.rejected{background:#f6eae5;color:#ad7663}.visit-check{display:flex;gap:5px;align-items:center;font-size:10px;color:#8c9486;padding:5px;border-radius:5px}.visit-check.visited{color:#47784f}.visit-check:hover{background:#f2f4ed}.venue-title{display:block;text-align:left;font-size:16px;font-weight:650;line-height:1.35;margin:0 0 6px;overflow-wrap:anywhere;padding:0}.venue-title:hover{color:var(--orange)}.address{font-size:12px;color:#7e847a;line-height:1.5}.meta-line{font-size:10px;color:#92998d;margin-top:7px;line-height:1.5}.card-note{background:#f7f8f3;border-radius:6px;padding:10px 11px;font-size:11px;line-height:1.6;color:#69715f;margin-top:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;white-space:pre-wrap}.card-task{font-size:11px;line-height:1.5;margin-top:12px;color:#71836b}.card-task.overdue{color:#ba6444}.card-task strong{font-weight:500}.card-actions{display:flex;align-items:center;gap:9px;margin-top:auto;padding-top:17px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:7px;min-height:39px;padding:10px 15px;font-size:12px;font-weight:550}.primary{background:var(--orange);color:#fff}.primary:hover{background:#cf5a35}.secondary{border:1px solid var(--line);background:#fff}.secondary:hover{background:#f5f6f0}.card-actions .primary{flex:1;min-height:35px;padding:8px;font-size:11px}.icon-link{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid var(--line);border-radius:7px;color:#77816e;font-size:15px}.icon-link:hover{border-color:#b8c4b3;background:#f5f7f0}.board{display:grid;grid-template-columns:repeat(5,minmax(245px,1fr));gap:12px;overflow-x:auto;padding-bottom:6px}.column{background:#f6f7f2;border-radius:10px;padding:10px;min-height:280px;align-self:start;border:1px solid transparent}.column.drag-over{border:1px dashed var(--orange);background:#fff4e9}.column-heading{display:flex;justify-content:space-between;align-items:center;padding:7px 4px 16px;font-size:12px;font-weight:600}.column-heading .count-pill{color:#7b8375}.column .venue-card{background:white;margin-bottom:10px;padding:13px}.column .venue-title{font-size:14px}.column-more{width:100%;font-size:11px;color:#7e886f;padding:10px}.empty{padding:50px 15px;text-align:center;color:#87907f}.empty strong{display:block;color:#485140;font-size:17px;margin-bottom:9px}.loading{padding:55px;text-align:center;color:var(--muted)}.error-banner{margin:0 23px 16px;background:#fdf0e9;color:#a45133;padding:14px;border-radius:8px;font-size:12px}.warning{background:#fff1de;color:#986b30;font-size:12px;padding:12px;border-radius:7px;line-height:1.5}.archived-label{color:#a67a35;font-size:10px;margin-top:8px}#pagination{display:flex;justify-content:center;align-items:center;gap:15px;margin:0 0 21px;color:var(--muted);font-size:12px}footer{padding:25px 0 30px;display:flex;align-items:center;font-size:19px;font-weight:750;letter-spacing:-.8px;color:#8d9684}footer>span:last-child{font-size:10px;letter-spacing:0;font-weight:400;margin-left:auto;color:#a0a797}dialog{width:min(570px,calc(100vw - 32px));border:none;padding:0;border-radius:16px;box-shadow:0 20px 70px #101f2026;max-height:92dvh;color:inherit}dialog::backdrop{background:#1f2b2466;backdrop-filter:blur(3px)}.dialog-header{display:flex;justify-content:space-between;gap:18px;padding:26px 26px 20px;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:23px;letter-spacing:-.7px}.dialog-header .eyebrow{margin-bottom:9px}.dialog-header .muted{margin-top:7px}.close{font-size:25px;color:#919889;align-self:start;padding:0 4px;line-height:1}.muted{font-size:12px;color:var(--muted);line-height:1.5}.form-body{padding:23px 26px}.form-body label{display:flex;flex-direction:column;gap:7px;font-size:12px;margin-bottom:15px;font-weight:500}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.section-label{border-top:1px solid var(--line);padding-top:17px;margin:7px 0 15px;font-size:11px;font-weight:600;color:#7c8572}.field-title{font-size:12px;font-weight:600;margin-bottom:12px}.result-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:21px}.result-options label{margin:0;position:relative;flex-direction:row;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:12px 10px;cursor:pointer;font-size:11px}.result-options label:has(input:checked){border-color:var(--orange);background:#fff3eb;color:#b85d38}.result-options input{accent-color:var(--orange);min-height:0;margin:0;width:14px;height:14px}.form-hint{font-size:11px;color:var(--muted);line-height:1.5}.form-error{background:#fdf0e9;color:#a45133;padding:12px;border-radius:6px;font-size:12px;line-height:1.5;margin-top:12px}.dialog-actions{padding:16px 26px;display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);background:#fafbf7;position:sticky;bottom:0}.detail-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.timeline{padding:0 26px 25px}.timeline h3{font-size:14px;margin-bottom:17px}.timeline-item{border-left:2px solid #e4e9dd;padding:0 0 21px 15px;position:relative}.timeline-item:before{content:"";position:absolute;left:-5px;top:4px;background:#b7c5ad;border:2px solid #fff;border-radius:50%;width:8px;height:8px}.timeline-item small{display:block;font-size:10px;color:#89917f;margin-bottom:6px}.timeline-item p{font-size:12px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.timeline-item strong{font-size:12px;font-weight:600;display:block;margin-bottom:5px}.toast{position:fixed;bottom:23px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:16px;background:#293e2c;color:#fff;padding:14px 18px;border-radius:10px;box-shadow:0 5px 25px #24342122;z-index:20;font-size:12px;max-width:calc(100vw - 24px)}.toast button{color:#dfedcf;text-decoration:underline;white-space:nowrap}.toast #toast-close{text-decoration:none;font-size:20px}.today-heading{font-size:12px;font-weight:600;margin:9px 0 15px;color:#657059}.today-heading.overdue{color:#b26748}.today-section{margin-bottom:23px}.today-section:last-child{margin-bottom:0}@media(min-width:1500px){.venue-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.venue-list{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{flex-wrap:wrap}.search{flex-basis:100%}.filters select{flex:1;max-width:none;min-width:0}#view-hint{display:none}.stats button{padding:16px}}@media(max-width:640px){.topbar{height:61px;padding:0 18px;gap:14px}.brand{font-size:29px}.workspace-name{font-size:10px}.brand-divider{height:20px}.city{font-size:10px;padding:6px 8px}main{padding:26px 14px 0}.page-heading{margin:0 4px 24px}.page-heading .eyebrow{font-size:9px;letter-spacing:1.3px}.mobile-break{display:block}h1{font-size:28px;letter-spacing:-.9px;line-height:1.2}.subtitle{font-size:12px;line-height:1.6;max-width:270px}.date-block{display:none}.stats{grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:20px}.stats button{padding:13px 15px;border-radius:9px}.stats span{font-size:11px}.stats strong{font-size:26px;margin-top:8px}.workspace-toolbar{padding:12px}.views button{padding:9px 10px;gap:6px;font-size:12px}.quiet-button{font-size:0;padding:7px}.quiet-button:first-letter{font-size:18px}.filters{padding:14px 12px 4px;gap:8px}.filters select{font-size:11px;padding:9px 6px}.results-heading{padding:15px 13px;font-size:10px}#content{padding:0 12px 13px}.venue-list{grid-template-columns:1fr;gap:10px}.venue-card{padding:16px;min-height:0}.venue-title{font-size:17px}.card-actions .primary{min-height:42px;font-size:12px}.icon-link{width:42px;height:42px}.visit-check{padding:8px;min-height:36px;font-size:11px}.badge{font-size:11px}.card-top{margin-bottom:9px}.board{grid-template-columns:repeat(5,260px)}.column .card-actions .primary{min-height:38px}.error-banner{margin:0 12px 15px}.dialog-header{padding:22px 20px 16px}.form-body{padding:20px}.dialog-actions{padding:14px 20px}.timeline{padding:0 20px 20px}dialog{width:calc(100vw - 16px);border-radius:13px;max-height:95dvh}.form-body input,.form-body textarea,.form-body select,#search{font-size:16px}.form-body input,.form-body select{min-height:44px}.result-options label{min-height:45px}.result-options input{min-height:0}.close{min-width:35px;min-height:35px}.toast{bottom:14px;width:max-content}footer{padding:20px 3px}.form-grid{gap:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.form-grid>label{min-width:0}.form-body input:not([type=radio]),.form-body select,.form-body textarea{min-width:0;width:100%}
.route-controls{margin:16px 23px 0;padding:20px;background:#f7f8f2;border:1px solid #e2e7d9;border-radius:10px}.route-intro{display:flex;align-items:center;justify-content:space-between;gap:20px}.route-intro h2{font-size:18px;letter-spacing:-.5px}.route-intro p{font-size:12px;line-height:1.6;color:#7c8473;margin-top:7px;max-width:560px}.route-intro button{flex:none;background:#fff}.location-status{font-size:11px;color:#77836e;line-height:1.6;margin-top:14px}.route-options{display:flex;align-items:flex-end;flex-wrap:wrap;gap:13px;margin-top:18px}.route-options>label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#7a836f}.route-options select{min-width:110px;max-width:220px}.route-options .route-checkbox{flex-direction:row;align-items:center;gap:8px;max-width:270px;line-height:1.5;min-height:41px}.route-checkbox input{accent-color:var(--green);min-height:0;width:16px;height:16px;margin:0;flex:none}.route-build{display:flex;align-items:center;gap:15px;margin-top:19px}.route-build>span{font-size:11px;line-height:1.5;color:#84917a}.route-plan{margin:14px 23px 5px;padding:20px;border:1px solid #dde6d6;border-radius:10px;background:#fff}.route-plan-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.route-plan h3{font-size:15px}.route-plan-heading p,.route-empty-plan p{font-size:11px;line-height:1.5;color:#88927d;margin-top:7px}.route-plan-buttons{display:flex;align-items:center;gap:9px}.route-stop-list{list-style:none;padding:0;margin:17px 0;display:grid;grid-template-columns:1fr 1fr;gap:9px}.route-stop-list li{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:8px;padding:12px;min-width:0}.stop-number{width:25px;height:25px;border-radius:50%;background:#eaf2e3;color:#5b7f48;display:flex;align-items:center;justify-content:center;font-size:11px;flex:none}.stop-info{min-width:0;flex:1}.stop-info button{text-align:left;padding:0;font-size:12px;font-weight:600;overflow-wrap:anywhere}.stop-info p{font-size:10px;line-height:1.5;color:#8b937f;margin-top:4px;overflow-wrap:anywhere}.stop-controls{display:flex;gap:3px;flex:none}.stop-controls button{border:1px solid #e5e9df;border-radius:5px;width:27px;height:30px;color:#889379}.stop-controls button:disabled{cursor:default;opacity:.25}.route-navigation{display:flex;flex-wrap:wrap;gap:8px}.route-footnote{font-size:10px;line-height:1.6;color:#969e8f;margin-top:11px}.route-card-choice{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:13px;padding-top:11px;border-top:1px dashed var(--line)}.route-card-choice label{font-size:11px;display:flex;align-items:center;gap:6px;cursor:pointer;min-height:30px}.route-card-choice input{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--green)}.route-card-choice span{font-size:10px;color:#7b906c}.route-empty-plan strong{font-size:13px;font-weight:550;color:#7c886f}@media(max-width:950px){.route-stop-list{grid-template-columns:1fr}.route-plan-heading{align-items:flex-start;flex-direction:column}.route-intro{align-items:flex-start;flex-direction:column}}@media(max-width:640px){.workspace-toolbar{flex-wrap:wrap;gap:8px}.views{gap:0;flex:1}.views button{padding:9px 7px;gap:4px;font-size:11px}.workspace-toolbar .quiet-button{padding:3px}.route-controls,.route-plan{margin-left:12px;margin-right:12px;padding:15px}.route-intro{gap:13px}.route-intro button{width:100%}.route-options{gap:10px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.route-options select{width:100%;min-width:0;max-width:none;font-size:16px}.route-options .route-checkbox{grid-column:1/-1;max-width:none;min-height:30px}.route-build{align-items:flex-start;flex-direction:column;gap:9px}.route-build .primary{width:100%;min-height:43px}.route-stop-list li{padding:10px 8px;gap:8px}.stop-controls button{width:30px;height:36px}.route-plan-buttons{flex-wrap:wrap}.route-navigation .primary{min-height:42px}.route-card-choice label{min-height:38px}}
/* Quiet motion and shared interactive states. */
:root{--ease:cubic-bezier(.2,.7,.2,1);--ui-duration:180ms}
button,a,input,textarea,.venue-card,.column,.result-options label{transition:background-color var(--ui-duration) var(--ease),border-color var(--ui-duration) var(--ease),color var(--ui-duration) var(--ease),box-shadow var(--ui-duration) var(--ease),opacity var(--ui-duration) var(--ease)}
.stats button:hover{transform:none;box-shadow:0 3px 14px #263b2410}.stats button:active{background:#f1f4ec;box-shadow:none}.stats button:last-child:active{background:#e4eddf}.venue-card:hover{box-shadow:0 3px 15px #263b240b}.primary:hover{background:#d9603b}.primary:active{background:#c65733;box-shadow:inset 0 1px 3px #7f311226}.secondary:active,.icon-link:active{background:#edf1e7;box-shadow:inset 0 1px 2px #334a2210}.quiet-button{border-radius:6px}.quiet-button:hover,.close:hover,.column-more:hover{background:#f1f4eb;color:#59684b}.quiet-button:active,.close:active,.visit-check:active{background:#e8eddf}.stop-controls button:hover:not(:disabled){border-color:#bfccb3;background:#f2f6ed;color:#5a7747}.stop-controls button:active:not(:disabled){background:#e7efde}.venue-title:active,.stop-info button:active{color:#bc603b}
input:focus,textarea:focus{outline:none;border-color:#d99a7d;box-shadow:0 0 0 3px #e56a4213}button:focus-visible,a:focus-visible{outline:2px solid #d79a7a;outline-offset:3px}.result-options label:hover{border-color:#d5dacd;background:#fafbf7}.result-options label:has(input:checked){box-shadow:0 0 0 1px #e56a4210}.route-stop-list li{transition:border-color var(--ui-duration) var(--ease),background-color var(--ui-duration) var(--ease)}.route-stop-list li:hover{border-color:#d2ddc8;background:#fcfdf9}
.views{position:relative;isolation:isolate}.views:before{content:"";position:absolute;top:4px;bottom:4px;left:0;width:var(--tab-width,90px);transform:translateX(var(--tab-left,4px));border-radius:6px;background:#fff;box-shadow:0 1px 5px #25392413;transition:transform 220ms var(--ease),width 220ms var(--ease);pointer-events:none}.views button{position:relative;z-index:1}.views button.active{background:transparent;box-shadow:none;color:#2b332a}.views button:hover:not(.active){background:#e9ede37a;color:#526047}.views button:active{color:#334b26}
dialog{opacity:0;transition:opacity 160ms var(--ease),display 160ms allow-discrete,overlay 160ms allow-discrete}dialog[open]{opacity:1}dialog::backdrop{background:#1f2b2400;backdrop-filter:blur(0);transition:background-color 160ms var(--ease),backdrop-filter 160ms var(--ease),display 160ms allow-discrete,overlay 160ms allow-discrete}dialog[open]::backdrop{background:#1f2b2466;backdrop-filter:blur(3px)}@starting-style{dialog[open]{opacity:0}dialog[open]::backdrop{background:#1f2b2400;backdrop-filter:blur(0)}}
.toast{opacity:0;transition:opacity 150ms var(--ease),display 150ms allow-discrete}.toast:not([hidden]){opacity:1}@starting-style{.toast:not([hidden]){opacity:0}}
/* The visible combobox wraps the native form control. */
.custom-select{display:inline-flex;min-width:0;position:relative;vertical-align:middle}.custom-select>select[hidden]{display:none!important}.select-trigger{width:100%;min-width:0;min-height:41px;border:1px solid var(--line);border-radius:7px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;font-size:12px;font-weight:400;color:#56614d;text-align:left;cursor:pointer}.select-value{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.select-arrow{width:6px;height:6px;border-right:1.5px solid #8a957f;border-bottom:1.5px solid #8a957f;transform:rotate(45deg);flex:none;margin:0 2px 3px 0;transition:transform var(--ui-duration) var(--ease),border-color var(--ui-duration) var(--ease)}.select-trigger:hover{background:#fcfdf9;border-color:#c7d3bc}.select-trigger:active{background:#f4f7ef}.select-trigger[aria-expanded=true]{border-color:#aabf99;box-shadow:0 0 0 3px #76985312;background:#fcfdf9}.select-trigger[aria-expanded=true] .select-arrow{transform:rotate(225deg);margin-bottom:-2px;border-color:#6b8655}.select-trigger:focus-visible{outline:none;border-color:#a4ba91;box-shadow:0 0 0 3px #76985320}.select-trigger.has-value{color:#405735}.select-trigger:disabled{background:#f7f8f4;color:#a4ab9b;cursor:default}
.filters>.custom-select{min-width:130px;max-width:210px;flex:0 1 210px}.filters>.search{flex:1}.route-options .custom-select{width:100%;min-width:110px;max-width:220px}.form-body .custom-select{width:100%}.form-body .select-trigger{font-size:12px}
.select-menu{position:fixed;inset:auto;margin:0;padding:5px;max-height:290px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #e1e7d9;border-radius:10px;background:#fff;box-shadow:0 8px 30px #26372116,0 2px 6px #26372108;color:#425137;z-index:100;scrollbar-width:thin;scrollbar-color:#d4deca transparent;font-size:12px}.select-menu::backdrop{background:transparent}.select-option{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 11px;min-height:38px;border-radius:6px;cursor:pointer;line-height:1.4;transition:background-color 110ms var(--ease),color 110ms var(--ease)}.select-option.is-highlighted{background:#f2f5ec;color:#36502a}.select-option[aria-selected=true]{background:#edf3e6;color:#466137}.select-option[aria-selected=true].is-highlighted{background:#e6efdd}.select-option-check{flex:none;opacity:0;font-size:12px;color:#708e56;transition:opacity 100ms var(--ease)}.select-option[aria-selected=true] .select-option-check{opacity:1}.select-option[aria-disabled=true]{opacity:.4;cursor:default}.select-menu::-webkit-scrollbar{width:5px}.select-menu::-webkit-scrollbar-thumb{background:#d4deca;border-radius:5px}.select-menu::-webkit-scrollbar-track{background:transparent}
@media(max-width:1100px){.filters>.custom-select{flex:1;max-width:none;min-width:0}}@media(max-width:640px){.filters>.custom-select{min-width:0}.filters .select-trigger{font-size:11px;padding:10px 8px;gap:6px}.route-options .custom-select{min-width:0;max-width:none}.route-options .select-trigger,.form-body .select-trigger{font-size:16px;min-height:44px}.select-option{min-height:44px;padding:12px;font-size:13px}}
@media(hover:none){.stats button:hover{box-shadow:none}.venue-card:hover{box-shadow:none;border-color:var(--line)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:0s!important;animation-duration:0s!important;scroll-behavior:auto!important}}
.stats button{transition:background-color var(--ui-duration) var(--ease),border-color var(--ui-duration) var(--ease),box-shadow var(--ui-duration) var(--ease)}.stats button.is-selected{border-color:#b8caa8;box-shadow:0 0 0 1px #77915c08}
@media(max-width:1100px){.filters>.search{flex:1 0 100%}}

.select-menu.is-closing{pointer-events:none}
/* Phone-first field workflow; keep the desktop board and filters available. */
.mobile-copy{display:none!important}.field-caption{display:none}.filter-fields{display:flex;gap:10px;flex:0 1 630px;min-width:0}.filter-field{display:flex;min-width:0;flex:1}.filter-field .custom-select{width:100%;max-width:none;min-width:0}.action-label,.column-chevron{display:none}.column-heading{width:100%;text-align:left}.column-empty{padding:10px 4px;color:#87927b;font-size:12px}.search input{padding-right:42px}#clear-search{position:absolute;right:3px;top:1px;width:38px;height:38px;font-size:23px;color:#8d9981;border-radius:6px}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}.visit-extras{border:1px solid var(--line);border-radius:9px;margin-top:14px;overflow:hidden}.visit-extras summary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:60px;padding:14px 15px;list-style:none;cursor:pointer;font-size:13px;font-weight:550;transition:background-color var(--ui-duration) var(--ease)}.visit-extras summary::-webkit-details-marker{display:none}.visit-extras summary small{display:block;font-size:11px;line-height:1.5;font-weight:400;color:#87947b;margin-top:4px}.visit-extras summary>span:last-child{font-size:22px;font-weight:400;color:#8c9d7b;transition:transform var(--ui-duration) var(--ease)}.visit-extras[open] summary>span:last-child{transform:rotate(45deg)}.visit-extras summary:hover{background:#f8faf4}.visit-extras[open] summary{border-bottom:1px solid var(--line);background:#fafbf7}.extras-body{padding:16px 15px}.extras-body label:last-child{margin-bottom:0}.date-shortcuts{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.date-shortcuts button{padding:8px 12px;border:1px solid #dfe7d6;border-radius:7px;background:#f8faf4;color:#657c50;font-size:12px}.date-shortcuts button:hover{background:#edf3e6}.date-shortcuts button:active{background:#e3edd9}
@media(max-width:1100px){.filter-fields{flex:1 1 100%}}
@media(max-width:760px){
  :root{font-size:16px}.desktop-copy{display:none!important}.mobile-copy{display:inline!important}.mobile-break{display:none}
  body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.topbar{position:sticky;top:0;height:60px;padding:0 14px;gap:11px;background:#f6f5f1f5;backdrop-filter:blur(12px);z-index:15}.brand{font-size:30px}.brand-divider{height:21px}.workspace-name{flex:1;min-width:0;font-size:13px;line-height:1.35}.city{display:none}.topbar #refresh{flex:none;min-width:44px;min-height:44px;padding:0;font-size:0;color:#657556}.topbar #refresh:first-letter{font-size:24px}
  main{padding:19px 12px 0;max-width:none}.page-heading{margin:0 4px 17px;display:block}.page-heading .eyebrow{display:none}.page-heading h1{font-size:28px;line-height:1.2;letter-spacing:-.8px}.subtitle{font-size:14px;line-height:1.5;max-width:none;margin-top:7px;color:#78836e}.date-block{display:none}
  .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 19px}.stats button{min-height:76px;padding:11px 8px;border-radius:9px;text-align:center}.stats span{font-size:11px;line-height:1.3}.stats .mobile-copy{display:block!important}.stats strong{font-size:23px;line-height:1.2;letter-spacing:-.6px;margin-top:7px}.stats .tiny-dot{display:none}
  .workspace{border:0;background:transparent;border-radius:0;overflow:visible}.workspace-toolbar{display:block;height:0;padding:0;border:0}.views{position:fixed;left:0;right:0;bottom:0;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-radius:0;border-top:1px solid #e0e6d8;background:#fff;box-shadow:0 -3px 18px #233a2209;gap:3px;z-index:30;height:auto;min-height:72px}.views:before{display:none}.views button{position:relative;flex:1;min-width:0;min-height:56px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:7px 4px;border-radius:9px;font-size:12px;line-height:1.2;color:#89957d;font-weight:450}.views .mobile-copy{display:block!important}.views .nav-icon{font-size:23px;line-height:1}.views button.active{background:#eef4e8;color:#4d6e36;font-weight:600}.views .count-pill{position:absolute;top:3px;right:10px;background:#e4eedb;font-size:10px!important;border-radius:5px;padding:2px 4px}
  .filters{position:sticky;top:60px;z-index:12;padding:9px 0;background:#f6f5f1f5;backdrop-filter:blur(12px);display:flex;flex-wrap:nowrap;gap:9px;margin-bottom:6px}.filters>.search{flex:1 1 auto;min-width:0;flex-basis:auto}.search input{min-height:48px;font-size:16px;padding-left:37px;padding-right:43px;background:#fff}.search>span{top:7px;font-size:25px}.search #clear-search{width:43px;height:44px;font-size:24px;top:2px;right:2px}#open-filters{display:inline-flex!important;gap:7px;min-height:48px;flex:none;padding:10px 12px;font-size:14px;border-color:#dce4d3;color:#657651;background:#fff}#open-filters.has-filters{background:#edf4e6;border-color:#c4d4b5;color:#4b6b35}#filter-count{display:inline-flex;justify-content:center;align-items:center;background:#dcebcf;min-width:19px;height:19px;border-radius:50%;font-size:12px}.quick-filters.mobile-copy{display:flex!important;gap:8px;overflow-x:auto;scrollbar-width:none;padding:1px 0 10px;margin-bottom:5px}.quick-filters::-webkit-scrollbar{display:none}.quick-filters button{flex:none;min-height:42px;padding:9px 14px;border-radius:22px;border:1px solid #e0e7d8;font-size:14px;background:#fff;color:#77856b}.quick-filters button.active{border-color:#b8cda3;background:#eaf2e2;color:#4e7037}.results-heading{padding:7px 3px 13px;font-size:13px;line-height:1.5}#view-hint{display:none}#content{padding:0;min-height:150px}.venue-list{grid-template-columns:1fr;gap:13px}.venue-card{padding:17px 16px;border-radius:13px;background:#fff;border-color:#e1e6da}.venue-title{font-size:19px;font-weight:650;line-height:1.35;margin-bottom:7px}.address{font-size:15px;line-height:1.5;color:#75826a}.meta-line{font-size:13px;line-height:1.5;margin-top:7px;color:#87947c}.card-top{gap:8px;margin-bottom:11px}.badge{font-size:12px;padding:7px 9px;max-width:50%}.visit-check{min-height:44px;min-width:44px;font-size:12px;padding:9px 7px}.card-note{font-size:14px;line-height:1.55;padding:12px;max-height:none}.card-task{font-size:14px;line-height:1.55;margin-top:13px}.card-actions{flex-wrap:wrap;gap:9px;padding-top:17px}.card-actions .primary{flex:1 0 100%;min-height:49px;padding:12px;font-size:16px;border-radius:9px}.card-actions .icon-link{flex:1;width:auto;min-height:46px;gap:8px;font-size:15px;border-radius:9px;background:#fbfcf8}.action-label{display:inline}.icon-link{min-height:46px;min-width:46px}.archived-label{font-size:12px}.warning{font-size:14px;line-height:1.5}.error-banner{margin:0 0 15px;font-size:14px;padding:15px}.empty{padding:32px 18px;font-size:14px;line-height:1.6}.empty strong{font-size:19px}.loading{font-size:15px;padding:35px 12px}
  #pagination{display:flex;flex-direction:column;gap:13px;padding:18px 0 8px;margin:0;font-size:13px}#pagination button{width:100%;min-height:49px;font-size:15px;border-radius:9px;background:#fff}.board{display:flex;flex-direction:column;gap:12px;overflow:visible;padding:0;grid-template-columns:none}.column{width:100%;min-height:0;padding:9px;background:#eef2e8;border:1px solid #e1e8d9;border-radius:12px}.column-heading{min-height:55px;padding:10px 8px;font-size:16px;gap:10px;justify-content:flex-start}.column-heading>.count-pill{font-size:12px!important;margin-left:auto;padding:5px 8px}.column-chevron{display:inline;font-size:20px;transform:rotate(180deg);transition:transform var(--ui-duration) var(--ease)}.column-collapsed .column-chevron{transform:none}.column-collapsed .column-cards{display:none}.column .venue-card{padding:16px;margin-top:7px;margin-bottom:10px}.column .venue-title{font-size:18px}.column .card-actions .primary{min-height:49px;font-size:16px}.column-more{min-height:48px;width:100%;font-size:14px}.column-empty{font-size:14px;padding:14px 9px}.today-heading{font-size:16px;margin-top:12px}
  .route-controls,.route-plan{margin:0 0 15px;padding:17px 15px;border-radius:12px}.route-intro h2{font-size:20px}.route-intro p{font-size:14px;line-height:1.5}.route-intro button{width:100%;min-height:49px;font-size:15px;line-height:1.4}.location-status{font-size:13px;line-height:1.5;margin-top:13px}.route-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 10px}.route-options>label{font-size:14px;gap:8px;max-width:none}.route-options .custom-select{min-width:0;max-width:none}.route-options label:first-child{grid-column:1/-1}.route-options .route-checkbox{grid-column:1/-1;max-width:none;min-height:44px;font-size:13px}.route-checkbox input{width:19px;height:19px}.route-options .select-trigger{min-height:49px;font-size:16px}.route-build{display:flex;flex-direction:column;align-items:stretch;gap:12px}.route-build .primary{width:100%;min-height:50px;font-size:16px}.route-build>span{font-size:13px}.route-plan-heading h3{font-size:18px}.route-plan-heading p,.route-empty-plan p{font-size:14px}.route-empty-plan strong{font-size:16px}.route-plan-buttons{width:100%;display:flex;gap:8px}.route-plan-buttons .secondary{flex:1;min-height:46px;font-size:13px}.route-plan-buttons .quiet-button{min-height:46px;font-size:13px}.route-stop-list{grid-template-columns:1fr;gap:11px;margin:19px 0}.route-stop-list li{padding:12px 9px;gap:9px;flex-wrap:wrap}.stop-number{width:28px;height:28px;font-size:13px}.stop-info button{font-size:16px;line-height:1.4}.stop-info p{font-size:13px;line-height:1.5}.stop-controls{margin-left:auto;gap:7px;padding-left:36px;width:100%;justify-content:flex-end}.stop-controls button{width:44px;height:44px;font-size:18px;border-radius:7px}.route-navigation{flex-direction:column}.route-navigation .primary{width:100%;min-height:49px;font-size:15px}.route-footnote{font-size:12px;line-height:1.6}.route-card-choice label{min-height:44px;font-size:15px}.route-card-choice span{font-size:13px}.route-card-choice input{width:19px;height:19px}#route-district-picker{min-height:49px;padding:11px 12px;font-size:15px;line-height:1.35;text-align:left;justify-content:flex-start;overflow-wrap:anywhere}
  dialog{width:100%;height:100dvh;max-height:100dvh;max-width:100vw;margin:0;padding:0;border-radius:0}dialog[open]{display:flex;flex-direction:column;overflow:hidden}.dialog-header{flex:none;padding:17px 17px 15px;padding-top:max(17px,env(safe-area-inset-top));background:#fff;gap:12px}.dialog-header h2{font-size:24px;line-height:1.3;letter-spacing:-.7px;overflow-wrap:anywhere}.dialog-header .eyebrow{font-size:11px;margin-bottom:7px}.dialog-header .muted{font-size:14px;line-height:1.5;margin-top:7px}.close{flex:none;min-width:44px;min-height:44px;font-size:30px;line-height:1;display:flex;align-items:center;justify-content:center;border:1px solid #e6ebdf;border-radius:9px;background:#fafbf7}.muted{font-size:14px;line-height:1.6}.form-body{padding:19px 17px}.form-body label{font-size:15px;line-height:1.5;gap:8px;margin-bottom:18px;font-weight:500}.form-body input:not([type=radio]),.form-body textarea,.form-body .select-trigger{font-size:16px;min-height:49px;border-radius:9px;padding:12px}.form-body textarea{line-height:1.55;min-height:100px}.form-body .form-grid{grid-template-columns:1fr;gap:0}.form-body .section-label{font-size:14px}.field-title{font-size:17px;font-weight:600;margin-bottom:14px}.result-options{gap:9px;margin-bottom:23px}.result-options label{font-size:15px;line-height:1.4;min-height:68px;padding:12px 10px;margin:0;border-radius:10px;gap:8px;font-weight:450}.result-options input{flex:none;width:17px;height:17px;min-height:0}.visit-extras{border-radius:11px;margin-top:15px}.visit-extras summary{min-height:72px;padding:14px;font-size:16px}.visit-extras summary small{font-size:13px;line-height:1.45}.extras-body{padding:17px 14px 7px}.date-shortcuts{gap:7px;flex-wrap:wrap}.date-shortcuts button{min-height:44px;padding:10px;font-size:13px}.form-hint{font-size:13px;line-height:1.5}.form-error{font-size:14px;line-height:1.5;padding:14px}
  #visit-form,#login-form{display:flex;flex-direction:column;flex:1;min-height:0}#visit-form>.form-body,#login-form>.form-body{flex:1;overflow-y:auto;overscroll-behavior:contain;min-height:0}#visit-form>.dialog-actions,#login-form>.dialog-actions{position:static;flex:none}.dialog-actions{padding:13px 17px calc(13px + env(safe-area-inset-bottom));gap:9px;z-index:4}.dialog-actions .primary,.dialog-actions .secondary{min-height:50px;font-size:16px;border-radius:9px}.dialog-actions .primary{flex:1}.dialog-actions .secondary{min-width:88px}.dialog-actions .secondary[data-close]{display:none}#detail-body{overflow-y:auto;flex:1;min-height:0;overscroll-behavior:contain}.detail-links{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:23px}.detail-links .primary{flex:1 0 100%;min-height:49px;font-size:16px;order:-1}.detail-links .icon-link{flex:1;width:auto;padding:11px;font-size:15px;gap:8px}.timeline{padding:9px 17px 22px}.timeline h3{font-size:18px;margin-bottom:19px}.timeline-item p,.timeline-item strong{font-size:15px;line-height:1.55}.timeline-item small{font-size:13px;line-height:1.4;margin-bottom:9px}.timeline-item{padding-bottom:24px}
  #filters-dialog{top:auto;bottom:0;height:auto;max-height:85dvh;min-height:0;border-radius:18px 18px 0 0;padding:0}#filters-dialog .dialog-header{padding-top:21px}#mobile-filter-host{overflow-y:auto;flex:1;min-height:0;padding:20px 17px 6px}#mobile-filter-host .filter-fields{flex-direction:column;gap:18px;width:100%}#mobile-filter-host .filter-field{display:flex;flex-direction:column;gap:8px;margin:0;font-size:15px}#mobile-filter-host .field-caption{display:block}.select-menu{font-size:15px;border-radius:12px}.select-option{min-height:49px;padding:13px 12px;font-size:15px}.select-option-check{font-size:15px}.toast{bottom:calc(84px + env(safe-area-inset-bottom));width:calc(100% - 24px);max-width:none;padding:12px 13px;gap:10px;align-items:center;font-size:14px;line-height:1.45;border-radius:12px}.toast #toast-text{flex:1;min-width:0}.toast button{min-height:44px;min-width:44px;font-size:14px}.toast #toast-close{font-size:25px}.toast #undo{padding:4px}footer{display:none}
}
@media(max-width:350px){.topbar{gap:8px;padding:0 12px}.workspace-name{font-size:12px}.stats button{padding:10px 4px}.stats strong{font-size:21px}.stats span{font-size:10px}.result-options label{font-size:14px;padding:10px 8px;gap:6px}.views button{font-size:11px}.card-actions .primary{font-size:15px}#open-filters{padding:10px;font-size:13px}}
[hidden],.quick-filters[hidden]{display:none!important}
@media(max-width:760px){.stats span{font-size:12px}.stats button>span{display:flex;align-items:center;justify-content:center;min-height:31px}.stats strong{margin-top:5px}.views button{font-size:12px}.meta-line{font-size:14px;color:#798a6a}.address{color:#6e7e5f}.location-status{font-size:14px}.stop-info p{font-size:14px}.date-shortcuts button{font-size:14px}dialog[open]{position:fixed;top:var(--visible-top,0px);height:var(--visible-height,100dvh);max-height:var(--visible-height,100dvh)}#filters-dialog[open]{top:auto;bottom:calc(100dvh - var(--visible-height,100dvh) - var(--visible-top,0px));height:auto;max-height:calc(var(--visible-height,100dvh)*.85)}.is-keyboard-open .views{display:none}.is-keyboard-open body{padding-bottom:15px}}

.route-next{margin:18px 0;padding:18px;border:1px solid #dce6d4;border-radius:10px;background:#f6f9f1}.route-next-label{font-size:12px;color:#627b50}.route-next h4{font-size:18px;line-height:1.4;margin:7px 0}.route-next p{font-size:14px;line-height:1.5;color:#6e7e5f}.route-next-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.route-next-actions a,.route-next-actions button{min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center}.route-stop-list li.is-current{border-color:#a8bc96;background:#f6f9f1}.route-stop-list li.is-completed{background:#fafbf8}.stop-status{display:block;margin-top:5px;font-size:12px;color:#859178}.is-current .stop-status,.is-completed .stop-status{color:#597648}.is-current .stop-number{background:#617e4f;color:#fff}@media(max-width:760px){.route-next{padding:16px 13px}.route-next h4{font-size:20px}.route-next-label,.stop-status{font-size:14px}.route-next-actions{flex-direction:column}.route-next-actions a,.route-next-actions button{width:100%;min-height:52px;font-size:16px;line-height:1.4}}

.route-navigation .secondary{display:flex;align-items:center;justify-content:center;min-height:48px;text-align:center;padding:12px 16px}@media(max-width:760px){.route-navigation .secondary{width:100%;min-height:50px;font-size:16px;line-height:1.4}}
