@import url('data:text/css,');
:root{--paper:#f7f8f5;--card:#fff;--ink:#20332d;--muted:#7b8780;--line:#e4e8e1;--green:#276550;--soft:#eaf2eb;--orange:#dc6c38;--shadow:0 10px 40px #263c2820;--map:#e8eadc;font-family:Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button{border:1px solid var(--line);border-radius:9px;padding:9px 13px;background:var(--card);color:var(--ink);transition:background .15s,transform .15s}button:hover{background:var(--soft)}button:active{transform:translateY(1px)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #e89b45;outline-offset:3px}input,select,textarea{border:1px solid var(--line);border-radius:8px;padding:9px;background:var(--card);color:var(--ink);max-width:100%}label{display:block;color:var(--muted);font-size:12px;margin-bottom:12px}label input,label select,label textarea{display:block;width:100%;margin-top:6px}h1,h2,h3,p{margin-top:0}h1{font-size:23px;letter-spacing:-.7px;margin-bottom:5px}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:15px}p{line-height:1.6}small,.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--muted)}.primary{background:var(--green);color:#fff;border-color:var(--green)}.primary:hover{background:#194937}.orange{background:var(--orange);color:white;border-color:var(--orange)}.danger{color:#b24b38}.ghost{background:transparent;border-color:transparent}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:12px}.badge{font-size:11px;line-height:1.5;border-radius:5px;padding:3px 7px;background:var(--soft);color:var(--green);white-space:nowrap}.badge.amber{color:#986327;background:#fbefd6}.badge.gray{color:var(--muted);background:var(--paper)}.badge.red{background:#fae6df;color:#a34633}.shell{display:grid;grid-template-columns:82px 1fr;min-height:100vh}.rail{background:#20382f;color:#b9cdc1;padding:25px 9px;display:flex;align-items:center;flex-direction:column;gap:13px;position:fixed;inset:0 auto 0 0;width:82px;z-index:20}.brand{font-weight:800;color:#fff;letter-spacing:-3px;font-size:29px;margin-bottom:25px}.rail button{width:64px;border:0;background:none;color:#a8bfb1;padding:12px 2px;font-size:10px;border-radius:12px}.rail button svg{display:block;margin:0 auto 7px;width:21px;height:21px}.rail button.active{background:#3b5647;color:#fff}.rail button:hover{background:#304c3e}.rail .bottom{margin-top:auto}.workspace{grid-column:2;min-width:0}.topbar{height:77px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:var(--card);border-bottom:1px solid var(--line);gap:12px}.breadcrumbs{color:var(--muted);font-size:12px}.breadcrumbs strong{color:var(--ink);font-weight:500}.avatar{width:31px;height:31px;border-radius:50%;background:#e5e8dc;display:grid;place-items:center;font-size:11px;font-weight:700}.demobar{padding:7px 28px;background:#f1eddf;color:#82704d;font-size:11px;display:flex;justify-content:space-between;gap:10px}.demobar button{padding:0;border:0;background:none;color:inherit;text-decoration:underline}.planner{display:grid;grid-template-columns:310px minmax(300px,1fr) 288px;height:calc(100vh - 108px);min-height:660px}.routepanel{background:var(--card);border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:auto}.triphead{padding:24px 22px 17px}.triphead h1{font-size:23px;line-height:1.25;margin-top:10px}.triphead .sub{font-size:12px;color:var(--muted);line-height:1.6;margin:10px 0 16px}.tabs{display:flex;gap:3px;background:var(--paper);border-radius:8px;padding:4px;margin-top:15px}.tabs button{flex:1;border:0;font-size:12px;padding:7px;background:none}.tabs .active{background:var(--card);box-shadow:0 1px 4px #0001}.pointlist{padding:0 14px;flex:1}.point{display:flex;gap:11px;padding:14px 8px;position:relative;border-bottom:1px solid var(--line);align-items:flex-start;cursor:pointer;border-radius:7px}.point:hover,.point.selected{background:var(--soft)}.point .number{flex:0 0 25px;height:25px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:var(--card);font-size:11px;color:var(--green)}.point.selected .number{background:var(--green);color:white}.point strong{font-size:13px;display:block;margin:1px 0 6px}.point small{font-size:11px}.point .more{margin-left:auto;color:var(--muted);font-size:13px}.dayheading{font-size:10px;letter-spacing:1.2px;color:var(--muted);text-transform:uppercase;padding:18px 8px 0;font-weight:700}.panelbottom{padding:18px 22px;border-top:1px solid var(--line);margin-top:10px}.panelbottom button{width:100%}.mapcol{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden}.maparea{position:relative;flex:1;min-height:360px;background:var(--map);overflow:hidden}.terrain{width:100%;height:100%;display:block;position:absolute;inset:0;touch-action:none}.terrain text{user-select:none;pointer-events:none;font-family:Segoe UI,Arial,sans-serif}.terrain .marker{cursor:pointer}.maptools{position:absolute;top:18px;left:18px;right:18px;display:flex;justify-content:space-between;gap:10px;pointer-events:none}.maptools>*{pointer-events:auto}.searchbox{background:var(--card);border:1px solid var(--line);box-shadow:0 3px 12px #0001;border-radius:9px;display:flex;align-items:center;width:235px;max-width:65%;padding:0 10px}.searchbox input{border:0;width:100%;font-size:12px;padding:11px 5px;outline:none}.floattools{position:absolute;right:17px;bottom:50px;display:flex;flex-direction:column;gap:6px}.floattools button{box-shadow:0 2px 8px #0001;padding:9px;width:38px;height:38px;display:grid;place-items:center}.mapcaption{position:absolute;left:18px;bottom:14px;font-size:10px;color:#617259;background:#ffffffa8;padding:5px 9px;border-radius:4px;pointer-events:none}.maphint{position:absolute;bottom:50px;left:18px;right:65px;background:#20382fe8;color:white;border-radius:9px;padding:12px;font-size:12px}.profile{height:162px;background:var(--card);border-top:1px solid var(--line);padding:14px 24px 8px}.profile svg{width:100%;height:85px;display:block}.profile .axis{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.detailpanel{background:var(--card);border-left:1px solid var(--line);padding:23px 20px;overflow:auto}.stats{display:grid;grid-template-columns:1fr 1fr;gap:20px 10px;margin:22px 0}.stat b{font-size:25px;font-weight:600;display:block;letter-spacing:-1px}.stat small{font-size:10px;text-transform:uppercase;letter-spacing:.7px;display:block;margin-top:5px}.divider{border-top:1px solid var(--line);margin:21px 0}.callout{background:#faf0de;border:1px solid #ecdfbc;border-radius:10px;padding:14px;color:#896132;font-size:12px;line-height:1.6}.callout strong{display:block;margin-bottom:5px}.callout button{margin-top:9px;font-size:11px;background:transparent;border-color:#e2d4b6;color:#896132}.mini-weather{display:flex;justify-content:space-between;align-items:center;margin:20px 0}.big-temp{font-size:29px}.progress{height:6px;background:var(--line);border-radius:10px;overflow:hidden;margin:12px 0}.progress>div{height:100%;background:var(--green);transition:width .25s}.recordbar{border-radius:10px;background:var(--paper);padding:13px;margin-top:15px}.record-dot{display:inline-block;width:8px;height:8px;background:#bfc9c1;border-radius:50%;margin-right:7px}.record-dot.on{background:#dc6c38;animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.35}}.viewpage{padding:32px;max-width:1500px;margin:0 auto}.pageheading{margin-bottom:25px}.pageheading h1{font-size:29px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:22px}.card h3{margin-bottom:10px}.card .cardnum{font-size:30px;font-weight:600;margin:17px 0}.span2{grid-column:span 2}.listrow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}.listrow:last-child{border:0}.listrow p{margin:3px 0 0;font-size:12px;color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-size:10px;letter-spacing:.7px;color:var(--muted);font-weight:600;padding:14px 12px;border-bottom:1px solid var(--line);text-transform:uppercase}td{padding:15px 12px;border-bottom:1px solid var(--line)}td input{max-width:80px;padding:6px}.tablewrap{overflow:auto}.schedulebar{display:flex;gap:18px;align-items:center;margin:20px 0}.schedulebar label{margin:0}.schedulebar input{max-width:125px}.modalback{position:fixed;inset:0;background:#132b2560;backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:var(--card);border-radius:16px;width:580px;max-width:100%;max-height:90vh;overflow:auto;box-shadow:var(--shadow)}.modal.wide{width:800px}.modalhead{display:flex;align-items:center;justify-content:space-between;padding:21px 25px;border-bottom:1px solid var(--line)}.modalhead h2{margin:0}.modalbody{padding:24px 25px}.modalfoot{padding:17px 25px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.formgrid .full{grid-column:1/-1}.toggle{display:flex;align-items:center;gap:9px;padding:10px 0}.toggle input{accent-color:var(--green);width:17px;height:17px}.empty{padding:40px 20px;text-align:center;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#20382f;color:#fff;border-radius:9px;padding:12px 20px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.2s;z-index:200;max-width:90vw;font-size:13px}#toast.show{opacity:1;transform:translate(-50%,0)}.screenitem{padding:13px 0;border-bottom:1px solid var(--line)}.screenitem button{font-size:12px}.mobile-preview .planner{max-width:450px;margin:auto;grid-template-columns:1fr;height:auto;min-height:0}.mobile-preview .routepanel{max-height:260px}.mobile-preview .maparea{height:440px;flex:none}.mobile-preview .detailpanel{border-left:0}.mobile-preview .maptools .searchbox{width:200px}.mobile-preview .profile{height:140px}.footnote{font-size:11px;color:var(--muted);line-height:1.6}.dark{--paper:#1c2823;--card:#24352d;--ink:#e2e9df;--muted:#9aad9c;--line:#3a4a3f;--green:#4e9270;--soft:#31483b;--map:#4f6150}.dark .demobar{background:#443e2e;color:#d9cba8}.dark .callout{background:#423b2b;border-color:#62543a;color:#e5c598}.dark .terrain{filter:brightness(.63) saturate(.7)}.dark .mapcaption{background:#23372b;color:#d1dac5}.dark .avatar{background:#425442}.dark .badge.amber{background:#4e422b;color:#ead1a2}.dark .badge.red{background:#53392f;color:#fac3ad}.dark .maptools{filter:none}@media(min-width:1600px){.planner{grid-template-columns:340px 1fr 310px}.triphead{padding:28px}.detailpanel{padding:26px}.profile{height:185px}.profile svg{height:104px}}@media(max-width:1200px){.planner{grid-template-columns:270px 1fr}.detailpanel{display:none}.topbar{padding:0 20px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-preview .detailpanel{display:block}}@media(max-width:760px){.shell{grid-template-columns:60px 1fr}.rail{width:60px;padding:20px 3px}.rail button{width:52px;font-size:9px}.topbar{height:auto;min-height:75px;flex-wrap:wrap;padding:12px}.topbar .breadcrumbs{display:none}.demobar{padding:8px 12px}.planner{grid-template-columns:1fr;height:auto}.routepanel{max-height:280px}.maparea{height:450px;flex:none}.detailpanel{display:block}.viewpage{padding:18px}.grid{grid-template-columns:1fr}.span2{grid-column:auto}.schedulebar{flex-wrap:wrap}.formgrid{grid-template-columns:1fr}.topbar .row{gap:5px}.topbar button{font-size:11px;padding:7px}.modalback{padding:12px}}@media print{.rail,.demobar,.topbar,.modalback,button{display:none!important}.shell{display:block}.workspace{display:block}.viewpage{padding:0}.card{break-inside:avoid}.planner{height:auto}.maparea{height:500px}}
.point.selected{background:var(--soft);border:2px solid var(--green);box-shadow:inset 4px 0 var(--green)} .point.selected .number{background:var(--green);color:white}
.point-editor{position:fixed;z-index:100;width:300px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow:auto;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 32px #102a3540;padding:14px}.point-editor label{margin-bottom:8px}.point-editor input,.point-editor select,.point-editor textarea{padding:6px 8px}.point-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.point-editor button{padding:6px 8px}.point-editor [aria-invalid=true]{border-color:#ba4934}
.real-layout{display:grid;grid-template-columns:310px 1fr;height:calc(100vh - 108px);min-height:600px}.real-sidebar{padding:22px;background:var(--card);overflow:auto}.real-sidebar h1{font-size:21px}.real-map-wrap{position:relative;min-width:0}#real-map{position:absolute;inset:0}.real-readout{position:absolute;bottom:42px;left:12px;right:12px;background:var(--card);padding:10px;border-radius:8px;pointer-events:none;z-index:2}.maplibregl-ctrl-attrib a{color:#333}@media(max-width:760px){.real-layout{grid-template-columns:220px 1fr}}

.data-panel{border-top:1px solid var(--line);padding:12px 0;margin:12px 0}.data-panel summary{cursor:pointer;font-weight:600}.real-sidebar input[type=checkbox]{display:inline-block;width:auto;margin-right:6px}.real-sidebar .footnote{font-size:12px;line-height:1.5}.coverage-unavailable{margin-top:12px}.maplibregl-popup-content{color:#20332d;background:#fff;max-width:280px}.maplibregl-popup-content p{font-size:12px;line-height:1.4}.real-sidebar select{width:100%}

.savebar{padding:7px 28px;background:var(--soft);font-size:11px;color:var(--muted)}.nav-icon{display:block;font-size:24px;line-height:28px;margin-bottom:5px}.real-layout{grid-template-columns:350px 1fr}.real-sidebar{padding:20px}.route-point{display:flex;align-items:center;border-bottom:1px solid var(--line);gap:4px;border-radius:8px}.route-point.selected{background:var(--soft);outline:2px solid var(--green)}.point-select{display:flex;align-items:center;gap:10px;flex:1;min-width:0;text-align:left;border:0;background:transparent;padding:12px 4px}.point-select strong,.point-select small{display:block;overflow-wrap:anywhere}.point-select small{font-size:11px;margin-top:5px}.number{border-radius:50%;background:var(--soft);padding:5px;min-width:25px;text-align:center}.route-point>button:not(.point-select){padding:6px}.selected-marker{filter:drop-shadow(0 0 5px #e88032)}.geo-point-editor{width:265px;padding:3px}.geo-point-editor input,.geo-point-editor textarea,.geo-point-editor select{padding:6px 8px}.geo-point-editor label{margin-bottom:8px}.geo-point-editor button{padding:5px 8px}.trip-fields{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:16px;margin-top:25px}.summary-strip{display:flex;gap:30px;flex-wrap:wrap;padding:20px;background:var(--card);border:1px solid var(--line);border-radius:12px;margin:16px 0}.summary-strip b{font-size:24px}.contact{padding:8px;border:1px solid var(--line);border-radius:7px;color:var(--green)}.real-map-wrap .maplibregl-popup-content{max-width:300px}.maplibregl-popup-content label{color:#456154}.maplibregl-popup-content input,.maplibregl-popup-content textarea,.maplibregl-popup-content select,.maplibregl-popup-content button{background:white;color:#20332d}.point-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.real-readout{bottom:65px}@media(max-width:900px){.trip-fields{grid-template-columns:1fr 1fr}.real-layout{grid-template-columns:290px 1fr}.topbar{padding:10px}.savebar{padding:7px 12px}}

.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photo-card{border:1px solid var(--line);border-radius:10px;padding:10px}.photo-card img{width:100%;height:150px;object-fit:cover;border-radius:6px}.photo-card p{overflow-wrap:anywhere}.photo-card button{margin-top:8px}.photo-file{border:1px solid var(--line);padding:8px;border-radius:8px;margin:0}.photo-file input{max-width:180px;font-size:11px}#point-camera{width:100%;max-height:320px;margin:15px 0}.photo-gallery:empty{display:none}

.map-legend-button{position:absolute;top:14px;left:14px;z-index:3}.map-legend-button button{box-shadow:0 2px 9px #0003}.modalbody .listrow:has(img){justify-content:flex-start}.modalbody .listrow>img{flex-shrink:0}

/* Floating route tools and cumulative waypoint labels. */
.map-commandbar{position:absolute;z-index:5;top:14px;left:14px;right:58px;display:flex;flex-wrap:wrap;gap:8px;pointer-events:none}.map-toolgroup{display:flex;gap:3px;padding:5px;background:var(--card,#fff);border:1px solid #d3ded6;border-radius:16px;box-shadow:0 3px 14px #15362420;pointer-events:auto}.map-tool{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:11px;background:transparent;color:inherit}.map-tool.active{background:#dcebb5;color:#26451c}.map-tool:hover{background:#edf2e7}.map-tool:disabled{opacity:.3}.marker-mileage{position:absolute;top:32px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#fff;color:#24372e;border:1px solid #c4d2c8;box-shadow:0 2px 5px #0002;border-radius:6px;padding:3px 6px;font:600 11px/1.2 system-ui;pointer-events:none}.selected-marker .marker-mileage{background:#254f3e;color:#fff}.list-mileage{display:block;font-size:12px;font-weight:650;color:#38664d;margin-top:4px}.new-trip-choices{display:grid;gap:10px}.new-trip-choice{text-align:left;padding:18px;display:grid;gap:6px}.new-trip-choice span{font-size:13px;font-weight:400}.map-legend-button{display:none}.real-sidebar .point-history{display:none}.real-sidebar> .row [data-action="real-add"],.real-sidebar> .row [data-action="real-measure"]{display:none}
@media(max-width:760px){.map-commandbar{gap:4px;top:8px;left:8px}.map-tool{width:32px;height:32px}.map-toolgroup{padding:3px;border-radius:12px}}

.route-custom-marker{width:28px;height:28px;background:#fff;border:2px solid #276550;border-radius:50%;display:grid;place-items:center;color:#276550;font-size:11px;font-weight:700;box-shadow:0 2px 5px #0003;cursor:pointer}.route-custom-marker.route-start{background:#197443;color:#fff;border-color:white;border-radius:50%}.route-custom-marker.route-finish{background:#bc4236;color:#fff;border-color:white;border-radius:5px}.route-custom-marker .marker-mileage{top:30px}.travel-label{width:38px;height:38px;padding:0;display:grid;place-items:center;font-size:22px;background:var(--card);border:3px solid var(--label-color);border-radius:11px;box-shadow:0 3px 8px #0003;color:var(--label-color)}.label-icon-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:7px;margin:10px 0 18px}.label-all{max-height:230px;overflow:auto}.label-icon{padding:6px;font-size:23px;border-bottom:4px solid var(--label-color);color:var(--label-color)}.label-icon.selected{outline:3px solid var(--label-color);background:var(--soft)}.label-icon[hidden]{display:none}.label-frequent small{grid-column:1/-1}#label-color{height:36px;width:80px}
.route-style-panel{position:absolute;z-index:8;top:76px;left:14px;width:265px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--card);box-shadow:var(--shadow)}.route-style-panel[hidden]{display:none}.route-style-panel label{margin-top:12px}.route-style-panel input[type=color]{width:100%;height:35px;padding:3px}.route-style-panel .footnote{font-size:11px;margin-bottom:10px}

.label-preview-row{display:flex;align-items:center;gap:18px;margin-bottom:18px}.label-preview{width:74px;height:74px;flex-shrink:0;border-width:4px;border-radius:16px}.label-preview img{width:55px;height:55px}.label-preview-row p{margin:5px 0 0}.label-all{--label-color:#617569}.label-frequent{max-height:132px;overflow:auto}.travel-label.selected-label{outline:3px solid #f2a348;outline-offset:3px}.group-selected-marker{outline:4px solid #be46d2;outline-offset:3px}.group-selected-row{background:#be46d21a;outline:2px solid #be46d2}#route-selection-frame{position:absolute;z-index:4;border:2px dashed #be46d2;pointer-events:none;border-radius:5px}#route-selection-frame.selecting{background:#be46d21a}.group-move-handle{position:absolute;top:-18px;transform:translateX(-50%);pointer-events:auto;cursor:move;background:#fff;color:#9e27b1;border:2px solid #be46d2;padding:3px 12px;font-size:20px;line-height:24px}#group-selection-controls{position:absolute;bottom:112px;left:12px;right:12px;z-index:5;padding:9px 12px;display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);font-size:12px}#group-selection-controls span{flex:1}#group-selection-controls[hidden],#route-selection-frame[hidden]{display:none}

.label-editor-modal{display:flex;flex-direction:column;overflow:hidden}.label-editor-modal .modalhead,.label-editor-modal .modalfoot{flex-shrink:0}.label-editor-modal .modalbody{overflow:auto;min-height:0}.label-editor-modal .label-frequent{padding:4px}.label-editor-modal .label-all{padding:4px}

.route-point-glyph{display:grid;place-items:center;line-height:1;pointer-events:none}

.label-color-controls{display:flex;align-items:center;gap:16px;margin-bottom:12px}.label-color-controls label{margin:0}.label-color-controls button.active{background:var(--soft);border-color:var(--green);color:var(--green)}

body.paper-mode .real-sidebar>:not(#print-controls){display:none}body.paper-mode .real-map-wrap .route-custom-marker,body.paper-mode .real-map-wrap .travel-label{pointer-events:none}body.paper-mode .map-commandbar{display:none}.print-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.print-fields label{margin:0}.print-switches{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:14px 0}.print-switches label{margin:0}#print-pages-list{display:flex;flex-wrap:wrap;gap:5px;max-height:180px;overflow:auto;margin:10px 0}.paper-page-number{border:2px solid #235d4e;background:#fff;color:#235d4e;border-radius:50%;font-weight:bold;width:34px;height:34px;padding:0;cursor:move}.paper-page-number.active{background:#b65a20;border-color:#fff;color:#fff}.paper-export-map{position:fixed;left:-20000px;top:0;pointer-events:none}.paper-sheet-preview{display:block;width:100%;height:auto;border:1px solid #ccd4ce}#print-progress,#print-coverage{font-size:12px;padding:8px 0;overflow-wrap:anywhere}#paper-drag-area{position:absolute;border:2px dashed #235d4e;background:#235d4e20;pointer-events:none;z-index:5}

#real-readout:empty{display:none}
.layer-columns {display:grid;grid-template-columns:1fr 1fr;gap:24px}.layer-columns label,.team-trip{display:block;margin:10px 0}.map-source-credit{background:#fff;color:#234;padding:3px 7px;font-size:11px}.map-source-credit a{color:inherit}.account-status{font-size:12px}.account-form{max-width:440px}.captcha-image{display:block;width:220px;height:72px;margin:12px 0}.sync-error{color:#ad3826}@media(max-width:700px){.layer-columns{grid-template-columns:1fr}}

.layer-columns label,.team-trip{display:flex;align-items:center;gap:9px;line-height:1.4}.layer-columns input[type=radio],.layer-columns input[type=checkbox],.team-trip input{width:auto;flex:0 0 auto;margin:0}

.real-sidebar.layers-open>:not(#layers-panel){display:none!important}.layers-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;background:var(--card);z-index:2;padding:4px 0 12px;border-bottom:1px solid var(--line)}.layers-panel-head h2{margin:0;font-size:19px}#layers-panel .layer-columns{display:block}#layers-panel section{margin-bottom:22px}#layers-panel h3{font-size:14px;line-height:1.4;margin-top:18px}#layers-panel label{font-size:12px}#layers-panel .footnote{margin:8px 0}#layers-panel{padding-bottom:12px}

.reserve-opacity-control{display:flex;align-items:center;gap:8px;font-size:12px;flex-wrap:wrap}.reserve-opacity-control input[type=range]{flex:1 1 90px;width:90px;min-width:70px;padding:0;accent-color:#8754b5}.reserve-opacity-control output{min-width:34px;text-align:right}

/* Inline waypoint names and meal planning. */
.point-select{min-width:0}.point-select>span:last-child{min-width:0;flex:1}.point-name-line{display:flex;align-items:center;gap:6px}.point-name-inline{font:inherit;font-weight:700;color:inherit;background:transparent;border:1px solid transparent;border-radius:6px;min-width:0;width:100%;padding:4px}.point-name-inline:focus{outline:2px solid #d99736;background:var(--panel,#fff);color:#183d30}.point-type-picker{display:grid;place-items:center;flex:0 0 36px;padding:4px;min-width:36px}.point-type-picker img,.route-point-glyph img{object-fit:contain}.point-icon-popover{position:fixed;z-index:2000;width:290px;max-height:min(410px,85vh);overflow:auto;background:#fff;color:#183d30;border:1px solid #9daf9f;box-shadow:0 6px 24px #0004;border-radius:12px;padding:12px}.point-icon-options{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:8px 0}.point-icon-options button{display:flex;align-items:center;gap:6px;text-align:left;font-size:13px;padding:6px}.point-icon-options svg,.point-icon-options img{flex-shrink:0}.point-icon-popover input{max-width:100%}.food-table-wrap{overflow-x:auto;margin:12px 0}.food-table{width:100%;border-collapse:collapse}.food-table td,.food-table th{padding:8px;text-align:left;border-bottom:1px solid #aaa5}.food-table input{min-width:85px;width:110px}.route-point .point-select{text-align:left;display:flex;align-items:center;gap:8px;flex:1}.route-point>.point-select>.number{flex-shrink:0}.point-name-line input{margin:0}
/* Browser planner: controls live in the point sidebar; the map uses the full window. */
.compact-planner>.real-layout{height:100vh;height:100dvh;min-height:0}
.planner-shortcuts{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin:4px 0 8px}
.planner-shortcuts .topbar,.planner-shortcuts .topbar .row,.planner-shortcuts .savebar{display:contents}
.planner-shortcuts .breadcrumbs,.planner-shortcuts .savebar>span{display:none}
.planner-shortcuts button{display:inline-grid;place-items:center;width:32px;height:32px;min-height:0;margin:0;padding:0;border-radius:8px;line-height:1}
.planner-shortcuts [data-symbol]{font-size:0}
.planner-shortcuts [data-symbol]::before{content:"";width:18px;height:18px;background:currentColor;mask:var(--planner-glyph) center/contain no-repeat}
.planner-shortcuts .planner-save-state{font-size:16px}.planner-shortcuts .planner-save-state.warn{background:#ffe0a6;color:#612d00}
@media print{.planner-shortcuts{display:none!important}}
.compact-planner .real-sidebar{min-width:0;overflow-x:auto}
.planner-edge{position:absolute;top:0;bottom:0;left:0;width:8px;z-index:8;cursor:col-resize;touch-action:none}
.planner-edge:hover,.planner-edge:focus-visible,.planner-drag .planner-edge{background:#68977b77}
.planner-toggle{position:absolute;z-index:9;top:50%;left:3px;transform:translateY(-50%);width:24px;height:46px;padding:0;border-radius:0 8px 8px 0;font-size:23px;line-height:1;background:var(--card,#fff);box-shadow:0 1px 5px #0003}
.planner-drag{user-select:none;cursor:col-resize}
.real-map-wrap[data-pointer=add] canvas,.real-map-wrap[data-pointer=measure] canvas,.real-map-wrap[data-pointer=box] canvas,.real-map-wrap[data-pointer=draw] canvas{cursor:crosshair!important}
.real-map-wrap[data-pointer=label] canvas{cursor:copy!important}
@media print{.planner-edge,.planner-toggle{display:none!important}}
.planner-hint-row{flex:0 0 100%;min-width:0;pointer-events:none}
.planner-hint-row:has(>#real-readout:empty){display:none}
.planner-hint-row>#real-readout{position:static;display:block;width:fit-content;max-width:100%;box-sizing:border-box;padding:2px 6px;border-radius:4px;font-size:12px;line-height:1.35;overflow-wrap:anywhere;background:var(--card);pointer-events:none}
.planner-hint-row>#real-readout:empty{display:none}
