:root{
  font-family:system-ui,sans-serif;color:var(--text);background:var(--app-bg);color-scheme:light;
  --brand-primary:#17365d;--brand-accent:#e54a07;
  --brand-tint:#fff0e8;--brand-tint-overlay:#fff0e8e8;--brand-tint-border:#e9a383;
  --app-bg:#f5f5f5;--text:#192b43;--muted:#48566a;--header-text-muted:#e9f0fa;
  --border:#dce3eb;--control-border:#aebccc;--shadow-rgb:16 39 68
}
*{box-sizing:border-box}body{margin:0}body.flow-ready{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}body.flow-ready input,body.flow-ready textarea,body.flow-ready [contenteditable=true]{-webkit-user-select:text;user-select:text}button,input,select{font:inherit}button{min-height:44px;border:1px solid var(--control-border);border-radius:8px;background:white;color:var(--text);padding:8px 11px;font-weight:650;cursor:pointer}button:disabled{opacity:.45;cursor:default}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--brand-accent);outline-offset:2px}
.top{background:linear-gradient(to top,var(--brand-accent) 0 3px,var(--brand-primary) 3px);color:white;padding:15px max(16px,env(safe-area-inset-left))}
.top-inner{max-width:1260px;margin:auto;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.eyebrow{color:var(--header-text-muted);font-size:12px;font-weight:750;letter-spacing:.1em;margin:0 0 4px}
h1{font-size:clamp(22px,4vw,34px);line-height:1.13;margin:0}h2{font-size:18px;line-height:1.2;margin:0}
main{max-width:1292px;margin:auto;padding:16px;display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:14px;align-items:start}
.card{background:white;border:1px solid var(--border);border-radius:12px;overflow:hidden}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px}
.toolbar p,.credit,#status{color:var(--muted);font-size:13px;margin:4px 0 0}.zoom{display:flex;gap:5px}.zoom button{min-width:44px;font-size:22px;padding:0}
.map-scroll{overflow:auto;background:#dedce0;max-height:72vh}#map{display:block;width:100%;height:auto;user-select:none}#markers g{cursor:grab;touch-action:none;outline:none}#markers g:active{cursor:grabbing}#markers text,#markers .selection{pointer-events:none}
.credit{padding:3px 14px 9px}aside{display:grid;gap:14px}.editor,.legend-card{padding:14px}.editor label{display:block;margin:10px 0 4px;font-size:13px;font-weight:650}.editor input,.editor select{display:block;width:100%;min-height:44px;border:1px solid var(--control-border);border-radius:7px;padding:8px;background:#fff;color:inherit;font-size:16px}.editor input:disabled{background:var(--app-bg)}
.actions{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 6px}.actions button{flex:1;padding:6px}
.legend-card h3{font-size:14px;margin:15px 0 5px}.legend-row{display:flex;width:100%;align-items:center;text-align:left;gap:9px;min-height:38px;padding:5px 4px;border:0;border-radius:5px;font-size:14px;font-weight:500}.legend-row.selected{background:var(--brand-tint)}.legend-row.static{cursor:default}.legend-row small{display:block;color:var(--muted);font-size:12px}
.key{display:grid;flex:0 0 24px;height:24px;place-items:center;background:var(--key);color:white;font-weight:750;font-size:12px;border-radius:50%}.key.hut{border-radius:4px}.key.pavilion,.key.long{border:1px solid var(--text);border-radius:1px;color:var(--text)}.key.fence{height:5px;border-radius:0;background:#dfba00}
@media(max-width:730px){main{grid-template-columns:minmax(0,1fr);padding:9px;gap:10px}.map-scroll{max-height:58vh}.top-inner{gap:8px}.top button{font-size:13px}.toolbar{padding:9px}.editor,.legend-card{padding:12px}}
.apply-label{display:block;width:100%;margin:8px 0 0;color:var(--brand-primary)}

.editor input[type=color]{width:100%;cursor:pointer;padding:5px 7px}
.editor input[type=color]:disabled{cursor:default}
.key{color:var(--key-text,#fff)}
.key.round,.key.circle{border-radius:50%}
.key.square,.key.rectangle{border-radius:0}
.key.rectangle{height:16px}
.key.triangle{clip-path:polygon(50% 0,100% 100%,0 100%);border-radius:0;padding-top:6px}
.key.pavilion,.key.long{color:var(--key-text,var(--text))}
.project-panel{grid-column:1/-1;padding:14px}.project-row{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.project-row[hidden]{display:none}.project-picker{display:block;flex:1;min-width:185px;font-weight:650;font-size:14px}.project-panel input,.project-panel select{display:block;width:100%;min-height:44px;margin:4px 0 0;border:1px solid var(--control-border);border-radius:7px;padding:7px;background:white;color:inherit;font:inherit;font-size:16px}.project-panel input[type=file]{font-size:14px}.project-panel button{white-space:nowrap}#project-status,#geo-status,.map-help{color:var(--muted);font-size:13px;margin:6px 0}#project-create{margin:10px 0}#map-settings{margin-top:10px;border-top:1px solid var(--border);padding-top:9px}#map-settings summary{cursor:pointer;font-weight:700;padding:6px 0}.upload-row{margin-top:10px}.geo-result{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--border);padding:7px 0}.geo-result span{flex:1;min-width:140px;font-size:14px}.geo-result a{padding:8px;color:var(--brand-primary);font-weight:650}.key.vehicle{border-radius:4px;height:18px}.key.walking{border-radius:7px}
.geo-preview{margin:9px 0;border:1px solid var(--border);border-radius:8px;padding:9px}.geo-preview h3{margin:0 0 8px;font-size:15px}.geo-preview img{display:block;width:min(100%,560px);margin:9px 0;border-radius:5px}.geo-tools{display:flex;gap:6px;align-items:end;flex-wrap:wrap}.geo-tools label{font-size:13px;font-weight:650}.geo-tools button{min-width:44px}

.export-actions{display:flex;flex-wrap:wrap;gap:6px}
.top button{border-color:#fff}
.transform-label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:4px}
.transform-label output{font-size:13px;font-variant-numeric:tabular-nums;color:var(--brand-primary);font-weight:700}
.editor input[type=range]{padding:0;border:0;min-height:36px;margin:0;accent-color:var(--brand-primary);cursor:ew-resize}
.editor input[type=range]:disabled{cursor:default}
#print-plan{display:none}
@page{size:A4 landscape;margin:9mm}
@media print{
  html,body{background:#fff!important;margin:0!important;padding:0!important}
  body.printing>.top,body.printing>main{display:none!important}
  body.printing>#print-plan{display:block;width:100%;height:190mm;object-fit:contain;object-position:top center;break-inside:avoid}
}
[hidden]{display:none!important}.welcome{display:none;grid-column:1/-1;text-align:center;padding:34px 18px 30px}.welcome h2{font-size:clamp(22px,5vw,34px);margin:6px 0}.welcome p{color:var(--muted);margin-bottom:0}.welcome-mode .welcome{display:block}.welcome-mode .export-actions,.welcome-mode #map-settings,.welcome-mode #save-project,.welcome-mode .map-card,.welcome-mode aside{display:none}.planning-tools{border-top:1px solid var(--border);padding:8px 12px 10px}.planning-tools summary{cursor:pointer;font-weight:700;padding:5px 0}.planning-row{display:flex;align-items:end;flex-wrap:wrap;gap:5px;margin-top:6px}.planning-row button{padding:5px 8px}.planning-row button[aria-pressed=true]{background:var(--brand-primary);color:#fff}.planning-row label{display:grid;gap:4px;font-size:13px;font-weight:650}.planning-row input{min-height:40px;padding:5px;border:1px solid var(--border);border-radius:6px;max-width:100%;font-size:16px}.planning-tools p,#parade-total,#metric-hint{font-size:13px;color:var(--muted);margin:6px 0}.metric-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.metric-fields label{min-width:0}.metric-fields input{min-width:0;margin-top:3px}.drawing-row,#parade-order li{display:flex;align-items:center;gap:5px;margin:5px 0}.drawing-row span,#parade-order li span{flex:1;min-width:0;overflow-wrap:anywhere}.drawing-row button,#parade-order button{padding:4px 8px}.drawing-row{border-top:1px solid var(--border);padding-top:5px}#parade-order{list-style:none;padding:0;margin:10px 0 0}.key.annotation{height:5px;border-radius:0}.key.annotation.area{height:17px;border-radius:2px}.drawing-active{cursor:crosshair}#map.drawing-active #markers g{cursor:crosshair}#markers g[data-locked=true]{cursor:default}
.palette{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.palette button{min-height:34px;width:34px;padding:0;background:var(--swatch);border:1px solid #9e969c}.palette button[aria-pressed=true]{outline:2px solid var(--text);outline-offset:1px}.palette button:focus-visible{outline:3px solid var(--brand-accent)}#drawing-fields[hidden]+.palette{display:none}

.welcome-mode #delete-project{display:none}#delete-project{color:#a42130}.project-archive-list{display:none;margin-top:12px;gap:8px}.welcome-mode .project-archive-list{display:grid}.project-archive-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:9px;border:1px solid var(--border);border-radius:10px;background:#fff}.project-archive-name{min-width:0;font-weight:700;overflow-wrap:anywhere}.project-archive-name small{display:block;margin-top:2px;color:var(--muted);font-size:12px;font-weight:500}.project-archive-delete{color:#a42130;border-color:#d6a5ac;background:#fff5f6}.project-archive-empty{margin:4px 0;color:var(--muted)}#delete-project-dialog{width:min(92vw,460px);padding:20px;border:1px solid var(--border);border-radius:13px;color:var(--text)}#delete-project-dialog::backdrop{background:rgb(var(--shadow-rgb) / 0.467)}#delete-project-dialog .danger{color:white;background:#a42130;border-color:#a42130}
@media screen and (max-width:560px){.project-archive-item{grid-template-columns:minmax(0,1fr) 1fr 1fr}.project-archive-name{grid-column:1/-1}.project-archive-item button{width:100%;white-space:normal;min-height:46px}}
#walk-open{background:var(--brand-tint);color:var(--brand-primary)}
#walk-dialog{width:min(1280px,calc(100% - 26px));max-width:none;height:min(850px,calc(100% - 26px));max-height:none;padding:0;border:1px solid var(--control-border);border-radius:14px;background:var(--app-bg);color:var(--text);overflow:hidden}
#walk-dialog[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}
#walk-dialog::backdrop{background:rgb(var(--shadow-rgb) / 0.788)}
#walk-dialog,#walk-dialog *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
#walk-dialog input,#walk-dialog textarea,#walk-dialog [contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
.walk-top{padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:7px;flex-wrap:wrap}
.walk-top h2{margin:0;color:var(--brand-primary)}
#walk-status,.walk-help{margin:4px 0;font-size:13px;color:var(--muted)}
.walk-actions{display:flex;gap:5px;flex-wrap:wrap}
#walk-standalone{display:inline-grid;place-items:center;min-height:44px;padding:5px 10px;border:1px solid var(--control-border);border-radius:8px;background:#fff;color:var(--brand-primary);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.walk-view{position:relative;overflow:hidden;background:#a8cbe3;min-height:0}
#walk-canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}
#walk-canvas:active{cursor:grabbing}
#walk-canvas:focus-visible{outline:3px solid var(--brand-accent);outline-offset:-3px}
#walk-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}
#walk-fire{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.walk-label{position:absolute;transform:translate(-50%,-100%);white-space:nowrap;max-width:190px;overflow:hidden;text-overflow:ellipsis;background:#251b24d9;color:#fff;border-radius:4px;padding:2px 5px;font-size:12px}
.walk-controls{position:absolute;inset:auto 10px 10px;display:flex;justify-content:space-between;align-items:end;pointer-events:none}
.walk-controls button{pointer-events:auto;touch-action:none;min-width:44px;padding:5px;font-size:21px;background:#fffef4ee;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
.walk-controls button[data-pressed=true]{background:var(--brand-primary);color:#fff}
.walk-pad{display:grid;grid-template-columns:repeat(3,44px);gap:4px}
.walk-pad button:first-child{grid-column:2}
.walk-pad button:nth-child(2){grid-column:1}
.walk-turn{display:flex;gap:4px}
.walk-help{padding:5px 13px}
@media(max-width:640px){#walk-dialog{width:100%;height:100%;height:100dvh;border:0;border-radius:0}.walk-top{padding:8px}.walk-actions button{min-height:40px;padding:5px;font-size:13px}.walk-controls{bottom:max(8px,env(safe-area-inset-bottom))}}
.walk-glow-stage{background:radial-gradient(circle,#fff 0%,#ffd875dd 12%,#ba5dff66 34%,transparent 72%)}
.walk-glow-railway{background:radial-gradient(circle,#fff 0%,#ffe06bdd 13%,#ff4f9c77 31%,#438dff55 49%,transparent 74%);animation:rideLights .74s steps(4,end) infinite}
.walk-glow-carousel{background:radial-gradient(circle,#fff 0%,#ff77dadd 11%,#438dff77 31%,#ffe13755 48%,transparent 74%);animation:rideLights .58s steps(5,end) infinite reverse}
.walk-glow-hut,.walk-glow-pavilion{background:radial-gradient(circle,#fff8d4 0%,#ffd56be0 14%,#ff9b3d66 38%,transparent 74%)}
.walk-glow-tree{background:radial-gradient(circle,#fff 0%,#ffe36bd9 12%,#ff4c7b55 34%,transparent 72%)}
.walk-glow-lantern-table,.walk-glow-truss-gate{background:radial-gradient(circle,#fff8d4 0%,#ffd25be0 13%,#ff963d66 37%,transparent 74%)}
.walk-glow-firebasket,.walk-glow-firebowl{background:radial-gradient(circle,#fff6b8 0%,#ffbb35d9 16%,#ff5b175c 40%,transparent 74%);animation:fireGlow 1.15s ease-in-out infinite alternate}
.walk-flame{position:absolute;transform:translate(-50%,-92%);pointer-events:none;clip-path:polygon(50% 0,67% 25%,83% 45%,74% 76%,50% 100%,25% 77%,14% 48%,34% 27%);background:radial-gradient(ellipse at 50% 78%,#fff7a3 0 18%,#ffc129 32%,#ff6b16 60%,#d5250900 78%);filter:drop-shadow(0 0 7px #ff8a1b);transform-origin:50% 100%;animation:fireFlicker .62s ease-in-out infinite alternate}
@keyframes fireFlicker{0%{transform:translate(-50%,-92%) scale(.88,1.02) rotate(-3deg);opacity:.83}32%{transform:translate(-50%,-92%) scale(1.04,.9) rotate(2deg);opacity:1}68%{transform:translate(-50%,-92%) scale(.94,1.12) rotate(-1deg);opacity:.9}100%{transform:translate(-50%,-92%) scale(1.08,.96) rotate(3deg);opacity:1}}
@keyframes fireGlow{from{opacity:.72;transform:translate(-50%,-50%) scale(.88)}to{opacity:1;transform:translate(-50%,-50%) scale(1.12)}}
@keyframes rideLights{0%{filter:hue-rotate(0deg);opacity:.74;transform:translate(-50%,-50%) scale(.88)}25%{filter:hue-rotate(75deg);opacity:1;transform:translate(-50%,-50%) scale(1.08)}50%{filter:hue-rotate(155deg);opacity:.82;transform:translate(-50%,-50%) scale(.95)}75%{filter:hue-rotate(245deg);opacity:1;transform:translate(-50%,-50%) scale(1.12)}100%{filter:hue-rotate(360deg);opacity:.76;transform:translate(-50%,-50%) scale(.9)}}
@media print{#walk-dialog{display:none!important}}
#walk-fallback{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
#tent-settings{margin:10px 0 0;border:1px solid var(--border);border-radius:8px;padding:5px 9px 9px}#tent-settings legend{font-size:14px;font-weight:700}#tent-align{margin-top:5px;width:100%}.tent-sides{display:grid;grid-template-columns:1fr 1fr;gap:0 8px}.tent-sides label{display:flex;align-items:center;gap:5px;margin:4px 0}.tent-sides input[type=checkbox]{width:18px;min-height:18px;margin:0;accent-color:var(--brand-primary)}.walk-bottom{max-height:33dvh;overflow:auto;padding:4px 12px}.walk-bottom .walk-help{padding:0}.walk-info{display:flex;align-items:center;gap:5px 8px;flex-wrap:wrap;margin:4px 0;font-size:13px}.walk-info span{font-weight:700;flex:1;min-width:140px}.walk-info button{min-height:34px;font-size:13px;padding:4px 8px}.walk-info input,.walk-info select{min-height:34px;max-width:100%;font:inherit}.walk-viewpoints summary{font-weight:700;font-size:14px;cursor:pointer}.walk-actions button[aria-pressed=true]{background:var(--brand-primary);color:#fff}.walk-view.measuring #walk-canvas{cursor:crosshair}#walk-dusk,#walk-measure-line{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#walk-dusk{display:none;background:#16214792}#walk-dialog.evening #walk-dusk{display:block}.walk-glow{position:absolute;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#fff9cf 0%,#ffd875bc 11%,#ffb53855 31%,transparent 70%);mix-blend-mode:screen}#walk-measure-line line{stroke:#fff6a7;stroke-width:3;vector-effect:non-scaling-stroke;stroke-dasharray:6 3}
button.walk-label{pointer-events:auto;min-height:20px;border:1px solid #ffffff55;font-weight:600;color:#fff}button.walk-label:hover,button.walk-label:focus-visible{background:var(--brand-primary)}.walk-gap-label{background:#533909;color:#fff6a7}

.mobile-only{display:none}
.walk-tools-buttons{display:flex;gap:5px;flex-wrap:wrap}
#walk-tools-menu>summary{display:none}
@media screen and (max-width:730px){
  :root{scroll-padding-top:145px}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom));overflow-wrap:anywhere}
  main{display:block;padding:8px max(8px,env(safe-area-inset-left)) 14px;min-width:0}
  .top{position:sticky;top:0;z-index:10;padding:10px max(12px,env(safe-area-inset-left)) 7px}
  .top-inner{display:block}
  .eyebrow{font-size:10px;letter-spacing:.07em;margin-bottom:3px}
  h1{font-size:21px;line-height:1.2}
  .export-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:8px}
  .export-actions>button{font-size:14px;min-height:44px;padding:6px}
  #walk-open{grid-column:1;grid-row:1}
  #mobile-save{grid-column:2;grid-row:1;background:#fff;color:var(--brand-primary)}
  #mobile-export{grid-column:3;grid-row:1;position:relative}
  #mobile-export>summary{display:grid;place-items:center;height:44px;border:1px solid #fff;border-radius:8px;background:#fff;color:var(--text);font-size:14px;font-weight:650;cursor:pointer;list-style:none}
  #mobile-export>summary::-webkit-details-marker{display:none}
  #mobile-export>div{position:absolute;right:0;top:49px;min-width:200px;padding:6px;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:0 5px 20px rgb(var(--shadow-rgb) / 0.200);z-index:15}
  #mobile-export button{display:block;width:100%;margin:2px 0;border-color:var(--border);text-align:left;min-height:44px}
  .export-actions>#welcome-back,.export-actions>#print,.export-actions>#export-jpg,.export-actions>#export{display:none}
  .mobile-only{display:block}
  #mobile-feedback{font-size:12px;line-height:1.3;min-height:0;max-height:48px;overflow:auto;margin:6px 0 0;color:var(--header-text-muted)}
  #mobile-feedback:empty{display:none}
  .welcome-mode #mobile-feedback{display:none}
  #mobile-nav{position:fixed;z-index:12;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:6px max(5px,env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fff;box-shadow:0 -3px 15px rgb(var(--shadow-rgb) / 0.043)}
  #mobile-nav button{min-width:0;min-height:48px;padding:4px 1px;border-color:transparent;font-size:12px;letter-spacing:-.15px}
  #mobile-nav button[aria-current=page]{background:var(--brand-tint);color:var(--brand-primary);border-color:var(--brand-tint-border)}
  .welcome-mode #mobile-nav,.mobile-typing #mobile-nav,body:has(dialog[open]) #mobile-nav{display:none}
  aside{display:block}
  main>.card,aside>.card{margin-bottom:10px;min-width:0}
  body:not(.welcome-mode) main>.project-panel{display:none}
  body[data-mobile-panel=archive] main>.project-panel{display:block}
  body[data-mobile-panel=library] .map-card,body[data-mobile-panel=edit] .map-card,body[data-mobile-panel=list] .map-card{display:none}
  body[data-mobile-panel=map] aside{display:none}
  body[data-mobile-panel=library] #element-panel,body[data-mobile-panel=library] #parade-panel,body[data-mobile-panel=library] .legend-card{display:none}
  body[data-mobile-panel=edit] #library-panel,body[data-mobile-panel=edit] #parade-panel,body[data-mobile-panel=edit] .legend-card{display:none}
  body[data-mobile-panel=list] #library-panel,body[data-mobile-panel=list] #element-panel{display:none}
  body.welcome-mode .welcome{display:block}
  .welcome{padding:24px 12px}
  .welcome h2{font-size:24px}
  .project-panel{padding:12px}
  .project-row{gap:8px}
  .project-picker{min-width:0;flex-basis:100%}
  .project-panel .project-row>button{flex:1 1 calc(50% - 8px);white-space:normal}
  #project-status{overflow-wrap:anywhere}
  .map-card .toolbar h2{font-size:16px}
  .map-card .toolbar p{font-size:12px}
  .map-card .toolbar{padding:9px}
  .zoom{flex-shrink:0}
  .map-scroll{max-height:calc(100svh - 265px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  #mobile-selection{display:flex;align-items:center;gap:8px;padding:6px 9px;border-top:1px solid var(--border);background:var(--brand-tint)}
  #mobile-selection span{flex:1;font-size:13px;font-weight:650;min-width:0}
  #mobile-selection button{min-height:44px;font-size:13px}
  .editor,.legend-card{padding:13px}
  .editor input,.editor select,.planning-row input,.walk-info input,.walk-info select{font-size:16px}
  .editor label{font-size:14px;margin-top:12px}
  .editor input[type=range]{min-height:44px}
  .palette{gap:7px;padding:3px 0}
  .palette button{width:40px;min-height:40px}
  .tent-sides label{min-height:44px;margin:0}
  .tent-sides input[type=checkbox]{width:22px;min-height:22px}
  .actions{gap:7px}
  .actions button{min-height:46px}
  .apply-label{min-height:48px}
  #apply-label{position:sticky;bottom:calc(66px + env(safe-area-inset-bottom));z-index:2;background:var(--brand-primary);color:#fff;border-color:var(--brand-primary);box-shadow:0 2px 9px rgb(var(--shadow-rgb) / 0.133)}
  .mobile-typing #apply-label{bottom:8px}
  .legend-row{min-height:46px}
  #parade-order button,.drawing-row button{min-width:44px;min-height:44px;flex-shrink:0}
  .planning-tools{padding:7px 9px}
  .planning-row button{min-height:44px}
  .planning-row label{min-width:0;max-width:100%}
  .geo-result span{flex-basis:100%}
  .geo-result button,.geo-result a{min-height:44px}
  #walk-dialog{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;margin:0;inset:0}
  .walk-top{padding:calc(7px + env(safe-area-inset-top)) max(8px,env(safe-area-inset-left)) 7px;flex-wrap:nowrap;align-items:center}
  .walk-top>div:first-child{flex:1;min-width:0}
  .walk-top h2{font-size:16px;white-space:nowrap}
  .walk-top{display:grid;grid-template-columns:minmax(0,1fr) auto}
  .walk-top>div:first-child{grid-column:1/-1}
  .walk-actions{grid-column:1/-1;justify-content:flex-end}
  #walk-status{font-size:12px;max-height:44px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1.25}
  .walk-actions{flex-shrink:0;position:relative;flex-wrap:nowrap;gap:5px}
  #walk-tools-menu{position:relative}
  #walk-tools-menu>summary{display:grid;place-items:center;min-height:44px;padding:5px 8px;border:1px solid var(--control-border);border-radius:8px;background:#fff;font-size:12px;font-weight:650;list-style:none}
  #walk-tools-menu>summary::-webkit-details-marker{display:none}
  #walk-tools-menu[open] .walk-tools-buttons{position:absolute;z-index:8;right:0;top:49px;min-width:190px;padding:6px;border:1px solid var(--control-border);border-radius:8px;background:#fff;box-shadow:0 5px 15px rgb(var(--shadow-rgb) / 0.200);display:grid}
  #walk-close{font-size:12px;min-height:44px;padding:5px 8px}
  #walk-tools-menu .walk-tools-buttons button{font-size:14px;min-height:44px}
  .walk-controls{bottom:max(9px,env(safe-area-inset-bottom));left:max(9px,env(safe-area-inset-left));right:max(9px,env(safe-area-inset-right))}
  .walk-pad{grid-template-columns:repeat(3,48px);gap:5px}
  .walk-controls button{min-height:48px;min-width:48px}
  .walk-bottom{padding:5px 9px calc(5px + env(safe-area-inset-bottom));max-height:32dvh}
  .walk-viewpoints summary{min-height:38px;padding:8px 0}
  .walk-info{font-size:13px;gap:7px}
  .walk-info span{flex-basis:100%}
  .walk-info input,.walk-info select{min-height:44px;min-width:0;flex:1 1 140px}
  .walk-info label{flex-basis:100%}
  .walk-info button{min-height:44px}
  .walk-help{font-size:11px;line-height:1.25}
  button.walk-label{min-height:29px;padding:4px 6px}
}

/* Muss am Dateiende stehen, damit spätere Desktopregeln das Querformat nicht überstimmen. */
@media screen and (max-width:900px) and (orientation:landscape) and (max-height:520px){
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] main{padding:0!important;margin:0!important;height:calc(100dvh - 46px - 54px - env(safe-area-inset-bottom));overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top{height:46px!important;padding:3px 7px!important;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner{height:40px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner>div:first-child{width:auto;min-width:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .eyebrow{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] h1{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-actions{display:flex!important;gap:4px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences{display:block}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences>*:not(#project-manage){display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #project-manage,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #walk-open{height:38px;min-height:38px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-status{grid-column:3;min-width:0;margin:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state{width:12px;height:12px;padding:0;border-radius:50%;overflow:hidden;font-size:0;background:#72bb78;border:2px solid #fff}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-retry,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #mobile-feedback{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card{height:100%;width:100%;margin:0!important;border:0;border-radius:0;display:grid;grid-template-rows:46px 46px auto minmax(0,1fr) 0;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar{height:46px;padding:3px 7px;display:block}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar>div:first-child{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom{width:100%;height:40px;display:grid;grid-template-columns:44px 44px minmax(92px,150px) 50px;gap:5px;justify-content:start}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom button{height:40px;min-height:40px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions{height:46px;padding:3px 7px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions button{min-height:40px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #daily-tools,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #team-tools,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #plus-tools,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #planning-tools{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-scroll{height:100%!important;min-height:0!important;max-height:none!important;touch-action:none!important;overflow:scroll!important;-webkit-overflow-scrolling:touch}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #map-source{height:0;padding:0;margin:0;overflow:hidden}
  .flow-ready #mobile-nav{height:calc(54px + env(safe-area-inset-bottom));padding:3px max(4px,env(safe-area-inset-left)) calc(3px + env(safe-area-inset-bottom))}
  .flow-ready #mobile-nav button{min-height:46px}
  #walk-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0}
  #walk-dialog[open]{grid-template-rows:auto auto minmax(150px,1fr) minmax(46px,30dvh)}
  .walk-top{padding:4px 7px}.walk-top h2{font-size:18px}.walk-top #walk-status{display:none}
  #walk-edit-toolbar{padding:3px 7px;flex-wrap:nowrap}
  #walk-edit-toolbar label{display:none}
  #walk-element-select,#walk-edit-selected{min-height:38px;height:38px}
  .walk-bottom{overflow-y:auto!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}
  #add-dialog,#output-dialog,#project-wizard,#project-manager,#walk-element-dialog,#tent-join-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;overflow:auto}
}

/* 3D im Handy-Querformat: Blickfläche statt übereinander gestapelter Bedienfelder. */
@media screen and (max-width:900px) and (orientation:landscape) and (max-height:520px){
  #walk-dialog[open]{display:grid;grid-template-rows:44px minmax(0,1fr)!important;grid-template-columns:1fr}
  #walk-dialog .walk-top{grid-row:1;padding:3px max(7px,env(safe-area-inset-left));display:flex;flex-wrap:nowrap;align-items:center;background:var(--app-bg);z-index:12}
  #walk-dialog .walk-top>div:first-child{display:block;flex:1;min-width:0}
  #walk-dialog .walk-top h2{display:block;font-size:17px;white-space:nowrap;margin:0}
  #walk-dialog .walk-top #walk-status{display:none}
  #walk-dialog .walk-actions{display:flex;flex-wrap:nowrap;gap:5px;grid-column:auto}
  #walk-dialog #walk-tools-menu>summary,#walk-dialog #walk-close{height:38px;min-height:38px;padding:3px 8px}
  #walk-dialog .walk-view{grid-row:2;min-height:0;height:auto;overflow:hidden}
  #walk-dialog .walk-bottom{display:none!important}
  #walk-dialog #walk-edit-toolbar{position:absolute;z-index:11;top:50px;left:max(8px,env(safe-area-inset-left));width:min(360px,calc(100vw - 190px));height:42px;padding:2px 4px;border:0;border-radius:8px;background:var(--brand-tint-overlay);display:flex;flex-wrap:nowrap;gap:4px}
  #walk-dialog #walk-edit-toolbar label{display:none}
  #walk-dialog #walk-element-select{height:38px;min-height:38px;font-size:14px}
  #walk-dialog #walk-edit-selected{height:38px;min-height:38px;padding:3px 8px;font-size:13px}
  #walk-dialog .walk-controls{display:flex!important;z-index:10;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));align-items:end;justify-content:space-between}
  #walk-dialog .walk-pad{display:grid!important;grid-template-columns:repeat(3,50px);gap:5px}
  #walk-dialog .walk-turn{display:flex!important;gap:6px}
  #walk-dialog .walk-controls button{display:block!important;min-width:50px;min-height:50px;font-size:23px;border:2px solid #fff;box-shadow:0 2px 8px rgb(var(--shadow-rgb) / 0.333)}
  #walk-dialog #walk-overview{top:52px;right:max(8px,env(safe-area-inset-right));width:118px;max-height:118px;z-index:9}
  #walk-dialog #walk-overview summary{font-size:10px;padding:3px}
}

/* Querformat: kompakte Leisten und frei verschiebbare/scrollbare Arbeitsflächen. */
@media screen and (max-width:900px) and (orientation:landscape) and (max-height:520px){
  .flow-ready:not(.welcome-mode)[data-flow-page=plan]{overflow:hidden;padding-bottom:calc(54px + env(safe-area-inset-bottom))}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top{height:46px;padding:3px 7px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner{height:40px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner>div:first-child{width:auto;min-width:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .eyebrow{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] h1{font-size:15px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-actions{display:flex!important;gap:4px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences{display:block}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences>*:not(#project-manage){display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #project-manage,
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #walk-open{height:38px;min-height:38px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-status{grid-column:3;min-width:0;margin:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state{width:12px;height:12px;padding:0;border-radius:50%;overflow:hidden;font-size:0;background:#72bb78;border:2px solid #fff}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-retry,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #mobile-feedback{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] main{height:calc(100dvh - 46px - 54px - env(safe-area-inset-bottom))}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card{height:100%;margin:0;border:0;border-radius:0;display:grid;grid-template-rows:46px 46px auto minmax(0,1fr) 0;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar{height:46px;padding:3px 7px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar>div:first-child{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom{height:40px;grid-template-columns:44px 44px minmax(92px,150px) 50px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom button{height:40px;min-height:40px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions{height:46px;padding:3px 7px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions button{min-height:40px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #daily-tools,
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #team-tools,
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plus-tools,
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #planning-tools{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-scroll{touch-action:none!important;overflow:scroll!important;-webkit-overflow-scrolling:touch}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #map-source{height:0;padding:0;margin:0;overflow:hidden}
  .flow-ready #mobile-nav{height:calc(54px + env(safe-area-inset-bottom));padding-top:3px;padding-bottom:calc(3px + env(safe-area-inset-bottom))}
  .flow-ready #mobile-nav button{min-height:46px}
  .walk-bottom{overflow-y:auto!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}
  #walk-dialog[open]{grid-template-rows:auto auto minmax(150px,1fr) minmax(46px,30dvh)}
  .walk-top{padding:4px 7px}.walk-top h2{font-size:18px}.walk-top #walk-status{display:none}
  #walk-edit-toolbar{padding:3px 7px;flex-wrap:nowrap}
  #walk-edit-toolbar label{display:none}
  #walk-element-select,#walk-edit-selected{min-height:38px;height:38px}
  #add-dialog,#output-dialog,#project-wizard,#project-manager,#walk-element-dialog,#tent-join-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;overflow:auto}
}
@media screen and (max-width:730px) and (max-height:480px){
  .walk-top{padding-top:4px;padding-bottom:4px}
  .walk-top h2{display:none}
  .walk-bottom{max-height:28dvh}
  .walk-help{display:none}
  .walk-viewpoints summary{padding:4px 0;min-height:30px}
  .walk-pad{grid-template-columns:repeat(3,44px)}
  .walk-controls button{min-height:40px;min-width:44px}
}
@media print{#mobile-nav,#mobile-feedback,#mobile-export,#mobile-selection{display:none!important}}

#walk-element-dialog{width:min(94vw,480px);max-height:90dvh;overflow:auto;padding:20px;border:1px solid var(--control-border);border-radius:12px;color:var(--text);background:var(--app-bg)}
#walk-element-dialog::backdrop{background:rgb(var(--shadow-rgb) / 0.600)}
#walk-element-form label{display:block;font-size:14px;font-weight:650;margin-top:10px}
#walk-element-form input{display:block;width:100%;min-height:44px;padding:8px;margin-top:4px;font-size:16px;border:1px solid var(--control-border);border-radius:7px;min-width:0}
#walk-element-form input[type=color]{padding:4px;background:#fff}
#walk-element-hint{font-size:13px;color:var(--muted)}
#walk-element-save{background:var(--brand-primary);color:white}
@media print{#walk-element-dialog{display:none!important}}
#plus-tools details{border-top:1px solid var(--border);padding:7px 0;margin:5px 0}#plus-tools p{font-size:13px;color:var(--muted);line-height:1.45}#plus-tools label{display:block;margin:8px 0;font-weight:600;font-size:14px}#plus-tools input:not([type=checkbox]),#plus-tools textarea,#plus-tools select{font:inherit;font-size:16px;display:block;width:100%;min-height:44px;border:1px solid var(--control-border);border-radius:7px;padding:8px;background:white;color:var(--text);min-width:0}#plus-tools .check-label,#batch-list label{display:flex;align-items:center;gap:8px;min-height:44px}#plus-tools input[type=checkbox]{width:22px;height:22px;accent-color:var(--brand-primary);flex-shrink:0}#batch-list{max-height:240px;overflow:auto;border:1px solid var(--border);padding:7px;border-radius:8px}#batch-list label{border-bottom:1px solid #eee;margin:0}#plan-warnings{max-height:260px;overflow:auto}#plan-warnings button{display:block;width:100%;text-align:left;margin:5px 0;font-size:13px;font-weight:500}#plan-report{width:min(95vw,1200px);max-height:90dvh;padding:20px;border:1px solid var(--control-border);border-radius:12px;color:var(--text);background:var(--app-bg)}#plan-report::backdrop{background:rgb(var(--shadow-rgb) / 0.600)}.report-scroll{overflow:auto}#report-table{width:100%;border-collapse:collapse;background:white;font-size:13px}#report-table th,#report-table td{padding:9px;border:1px solid var(--border);text-align:left;white-space:pre-wrap;min-width:75px}#report-table th{background:var(--brand-tint)}#walk-manipulator{position:absolute;display:flex;gap:5px;transform:translate(-50%,-100%);z-index:4;white-space:nowrap}#walk-manipulator button{background:var(--brand-primary);color:white;border-color:white;touch-action:none;font-size:13px;box-shadow:0 2px 8px rgb(var(--shadow-rgb) / 0.267);min-height:44px;padding:6px 8px}#walk-manipulator button:active{background:var(--brand-primary)}#walk-deselect{min-width:44px;background:var(--text)!important;font-size:22px!important}
@media print{body:has(#plan-report[open])>*:not(#plan-report){display:none!important}#plan-report[open]{display:block!important;position:static;width:100%;height:auto;max-height:none;border:0;margin:0;padding:0;overflow:visible}#plan-report .actions{display:none}.report-scroll{overflow:visible}#report-table{font-size:9pt}#report-table th,#report-table td{min-width:0;padding:5px}#report-table tr{break-inside:avoid}}
@media screen and (max-width:360px){#mobile-nav button{font-size:11px;white-space:nowrap;letter-spacing:-.3px}}
#team-tools details{border-top:1px solid var(--border);margin:6px 0;padding:7px 0}#team-tools p{font-size:13px;line-height:1.45;color:var(--muted)}#team-tools label{display:block;font-size:14px;font-weight:650;margin:9px 0}#team-tools input:not([type=checkbox]),#team-tools select{display:block;width:100%;font-size:16px;font-family:inherit;min-height:44px;margin-top:4px;padding:8px;border:1px solid var(--control-border);border-radius:7px;min-width:0;background:white}#team-tools .check-label{display:flex;align-items:center;gap:8px;min-height:44px}#team-tools input[type=checkbox]{width:22px;height:22px;accent-color:var(--brand-primary);flex-shrink:0}#team-role{font-weight:700}#team-message{color:var(--brand-primary)!important}.file-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid var(--border);padding:9px 0}.file-row span{flex-basis:100%;overflow-wrap:anywhere}.file-row a{padding:9px;color:var(--brand-primary);font-weight:700;min-height:44px}.activity-entry{padding:9px 0;border-top:1px solid var(--border);font-size:13px}#activity-list{max-height:380px;overflow:auto}#photo-dialog{width:min(95vw,1000px);max-height:92dvh;border:1px solid var(--control-border);border-radius:12px;padding:15px}#photo-image{display:block;max-width:100%;max-height:75dvh;object-fit:contain;margin:auto}#photo-dialog::backdrop{background:rgb(var(--shadow-rgb) / 0.733)}.export-profile-label{font-size:12px;display:grid;gap:3px}.export-profile-label select{font:inherit;font-size:14px;min-height:44px;border-radius:8px;padding:6px;background:#fff;color:var(--text);max-width:100%}.viewer-mode #team-role{color:var(--brand-primary)}.viewer-mode #element-panel::before{content:'Nur ansehen – dieses Teamprojekt kann von dir nicht bearbeitet werden.';display:block;background:var(--brand-tint);border-radius:8px;padding:9px;font-size:13px;margin-bottom:10px}
@media screen and (max-width:730px){.export-profile-label{grid-column:1/-1;display:flex;align-items:center;gap:8px}.export-profile-label select{flex:1;min-width:0}body:not(.welcome-mode) #team-invitation{display:block}.map-scroll{max-height:calc(100svh - 310px)}}
@media print{#photo-dialog,#team-invitation{display:none!important}}
.viewer-mode #map-settings{display:none}
#progress-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}#progress-overview button{min-width:0;min-height:60px;text-align:left;overflow-wrap:normal}#team-tools .actions button{flex:1 1 calc(50% - 8px)}
@media screen and (max-width:730px){#progress-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.file-row button,.file-row a{flex:1 1 120px}}
body[data-ui-mode=simple] #planning-tools,body[data-ui-mode=simple] #plus-tools,body[data-ui-mode=simple] #team-tools,body[data-ui-mode=simple] #parade-panel{display:none!important}
body[data-ui-mode=simple] #element-panel .transform-label,body[data-ui-mode=simple] #element-panel #size,body[data-ui-mode=simple] #element-panel #rotation,body[data-ui-mode=simple] #element-panel .metric-fields,body[data-ui-mode=simple] #tent-settings{display:none}

/* Freigegebene Besucherlinks zeigen bewusst nur Plan und Rundgang. */
.viewer-mode main{display:block!important;width:100%;max-width:none;padding-bottom:0}
.viewer-mode main>:not(.map-card),.viewer-mode aside,.viewer-mode #mobile-nav,.viewer-mode #inline-sheet,.viewer-mode #plan-actions,.viewer-mode #daily-tools,.viewer-mode #team-tools,.viewer-mode #plus-tools,.viewer-mode #planning-tools,.viewer-mode #mobile-selection{display:none!important}
.viewer-mode .map-card{display:block!important;grid-column:1/-1;width:100%;max-width:none;margin:0}
.viewer-mode .map-card>.toolbar p{display:none}
.viewer-mode #markers{pointer-events:none}
.viewer-mode .top .eyebrow,.viewer-mode #cloud-status,.viewer-mode #flow-output{display:none!important}
.viewer-mode .export-actions>*:not(#walk-open):not(#install-app){display:none!important}
.viewer-mode #walk-open,.viewer-mode #install-app{place-items:center;min-width:72px}
.viewer-mode #install-app:not([hidden]){display:inline-grid!important;background:var(--text);color:#fff;border-color:var(--text)}
.viewer-mode.standalone-app #install-app{display:none!important}
.viewer-mode #walk-picker-toggle,.viewer-mode #walk-tools-menu,.viewer-mode #walk-edit-toolbar,.viewer-mode #walk-manipulator,.viewer-mode .walk-bottom,.viewer-mode #walk-element-dialog{display:none!important}
.viewer-mode #walk-dialog[open]{grid-template-rows:auto minmax(0,1fr)!important}
.viewer-mode #walk-dialog .walk-top{grid-row:1!important}
.viewer-mode #walk-dialog .walk-view{grid-row:2!important}
@media screen and (max-width:730px){
  .viewer-mode .top-inner{display:flex;align-items:center;justify-content:space-between;gap:8px}
  .viewer-mode .top h1{font-size:18px}
  .viewer-mode .export-actions{display:flex!important;margin:0}
  .viewer-mode .map-scroll{max-height:none;height:calc(100dvh - 164px)}
  .viewer-mode #walk-dialog[open]{grid-template-rows:44px minmax(0,1fr)!important}
}
#install-dialog{width:min(92vw,480px);padding:20px;border:1px solid var(--control-border);border-radius:14px;background:var(--app-bg);color:var(--text)}
#install-dialog::backdrop{background:rgb(var(--shadow-rgb) / 0.733)}
#install-dialog h2{color:var(--brand-primary);margin-top:0}
#install-dialog ol{padding-left:24px;line-height:1.6}
#install-dialog strong{color:var(--brand-primary)}
#install-close{width:100%;background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}
.export-preferences{display:flex;gap:7px;align-items:end}.export-preferences label{min-width:0}.export-preferences #project-manage{min-height:44px}.archive-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(100px,1fr) minmax(140px,1fr);gap:9px;align-items:end;margin-bottom:12px}.archive-filters label{font-size:13px;font-weight:650}.archive-filters p{font-size:12px;margin:0;color:var(--muted)}body:not(.welcome-mode) .archive-filters{display:none}
#daily-tools{padding:10px 12px;border-top:1px solid var(--border)}#daily-tools details{border-top:1px solid var(--border);margin:8px 0 0;padding:6px 0}#daily-tools p{font-size:13px;line-height:1.4;color:var(--muted)}#daily-tools label,#project-manager label{display:block;font-size:14px;font-weight:650;margin:6px 0}#daily-tools input:not([type=checkbox]),#daily-tools select,#project-manager input:not([type=checkbox]),#project-manager select{font:inherit;font-size:16px;min-height:44px;width:100%;padding:8px;border:1px solid var(--control-border);border-radius:7px;min-width:0;background:white;margin-top:3px}#daily-tools .check-label,#project-manager .check-label{display:flex;gap:8px;align-items:center;min-height:44px}#daily-tools input[type=checkbox],#project-manager input[type=checkbox]{width:22px;height:22px;accent-color:var(--brand-primary);flex-shrink:0}.plan-search-row{display:flex;gap:7px;align-items:end}.plan-search-row label{flex:1;min-width:0}.plan-search-row>button{margin-bottom:6px}#search-results{max-height:260px;overflow:auto}#search-results button{display:block;width:100%;text-align:left;margin:4px 0}.checklist-row{display:flex;gap:8px;align-items:center;border-bottom:1px solid #eee}.checklist-row label{flex:1;display:flex!important;gap:8px;align-items:center;min-height:44px}.checklist-row button{font-size:12px;font-weight:500;padding:5px}#project-manager{width:min(94vw,550px);max-height:90dvh;overflow:auto;border:1px solid var(--control-border);border-radius:12px;padding:18px;background:var(--app-bg);color:var(--text)}#project-manager::backdrop{background:rgb(var(--shadow-rgb) / 0.667)}#project-manager p{font-size:13px;color:var(--muted);line-height:1.4}
#walk-overview{position:absolute;right:10px;top:10px;width:164px;background:#fffffff0;border-radius:8px;overflow:hidden;border:1px solid var(--control-border);z-index:2}#walk-overview summary{font-size:11px;font-weight:650;padding:6px;cursor:pointer}#walk-minimap{display:block;width:100%;height:auto;pointer-events:none}
@media screen and (max-width:730px){.export-preferences{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 72px;gap:6px}.export-preferences .export-profile-label{display:block;grid-column:auto;font-size:10px}.export-preferences select{display:block;width:100%;font-size:12px;margin-top:4px}.export-preferences #project-manage{font-size:11px;padding:4px;min-width:0;height:44px}.archive-filters{grid-template-columns:1fr 1fr}.archive-filters label:first-child{grid-column:1/-1}.archive-filters select{font-size:14px}#daily-tools{padding:8px}.plan-search-row{gap:5px}.plan-search-row>button{font-size:12px;padding:6px}#walk-overview{width:110px;top:7px;right:7px}#walk-overview summary{font-size:10px;padding:4px}}
@media print{#project-manager,#walk-overview{display:none!important}}
@media screen and (max-width:360px){.map-card .toolbar h2{font-size:14px;overflow-wrap:normal}#daily-tools summary{font-size:14px}}
.flow-ready{padding-bottom:76px}.flow-ready #mobile-nav{display:grid!important;position:fixed;bottom:0;left:0;right:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:7px max(8px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--border);z-index:30}.flow-ready #mobile-nav button{min-height:46px;font-size:14px;padding:5px;border:0;min-width:0}.flow-ready #mobile-nav button[aria-current]{color:var(--brand-primary);background:var(--brand-tint)}.flow-ready:has(dialog[open]) #mobile-nav,.flow-ready.mobile-typing #mobile-nav{display:none!important}
.flow-ready main{display:block}.flow-ready aside{display:block}.flow-ready .map-card,.flow-ready #library-panel{max-width:1260px;margin:auto}.flow-ready[data-flow-page=plan] main>aside,.flow-ready[data-flow-page=projects] main>aside,.flow-ready[data-flow-page=elements] .map-card{display:none}.flow-ready[data-flow-page=elements] aside>:not(#library-panel){display:none}.flow-ready:not(.welcome-mode) main>.project-panel{display:none}.flow-ready #mobile-selection,.flow-ready #mobile-save,.flow-ready #mobile-export,.flow-ready #print,.flow-ready #export,.flow-ready #export-jpg,.flow-ready .export-preferences label:has(#export-profile),.flow-ready #welcome-back{display:none!important}.flow-ready .export-preferences{display:flex;gap:7px}.flow-ready .export-preferences .export-profile-label{font-size:12px}.flow-ready .top-inner{gap:8px}.flow-ready .export-actions{display:flex;align-items:end;margin:0}.flow-ready .export-actions button{min-height:44px}.flow-ready #flow-output{min-height:44px}.flow-ready .welcome-mode #cloud-status{display:none}#cloud-status{display:flex;align-items:center;gap:7px;font-size:12px}#cloud-state{padding:5px 8px;border-radius:6px;background:#ffffff22}#cloud-state[data-state=local],#cloud-state[data-state=failed]{background:#fff0cc;color:#6d4300}#cloud-retry{font-size:12px;padding:4px 7px;min-height:36px}.welcome-mode #cloud-status,.welcome-mode #flow-output{display:none!important}#plan-actions{display:flex;gap:7px;padding:9px 12px;border-top:1px solid var(--border)}#quick-add{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary);flex:1}#quick-undo,#quick-redo{min-width:46px;font-size:22px;padding:4px}#placement-banner{background:var(--brand-tint);padding:10px;font-weight:650;border-top:1px solid var(--border)}#placement-banner button{margin-left:6px}
#inline-sheet{position:fixed;bottom:76px;right:20px;width:min(460px,calc(100vw - 24px));max-height:54dvh;display:block;background:#fff;border:1px solid var(--control-border);border-radius:14px;box-shadow:0 4px 30px rgb(var(--shadow-rgb) / 0.251);z-index:25;overflow:auto;padding:9px}.inline-head{display:flex;align-items:center;gap:6px}.inline-head strong{flex:1;min-width:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:14px}.inline-head button{min-width:40px;padding:4px;font-size:20px}#inline-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:7px 0}#inline-actions button{font-size:11px;padding:5px 2px;min-width:0;overflow-wrap:normal;min-height:44px}#inline-form label{display:block;font-size:13px;font-weight:650;margin:6px 0}.inline-row{display:flex;gap:8px;align-items:end}.inline-row label:first-child{flex:1;min-width:0}.inline-row label:last-child{width:64px}#inline-form input:not([type=range]),#inline-form select{display:block;width:100%;min-height:44px;border:1px solid var(--control-border);border-radius:7px;font:inherit;font-size:16px;padding:7px;margin-top:3px;min-width:0}#inline-form input[type=color]{padding:4px}#inline-form input[type=range]{width:100%;min-height:40px;accent-color:var(--brand-primary)}#inline-sheet details{border-top:1px solid var(--border);margin-top:8px;padding-top:6px}#inline-sheet summary{font-size:14px;font-weight:650;min-height:36px;padding:6px 0;cursor:pointer}#inline-sheet #inline-more #element-panel{display:block!important;padding:5px;border:0}#inline-sheet[data-collapsed=true]>form,#inline-sheet[data-collapsed=true]>#inline-extras{display:none}.flow-ready #daily-tools>details:has(#checklist-items){display:none}
#add-dialog,#output-dialog,#project-wizard{width:min(94vw,560px);max-height:90dvh;overflow:auto;border:1px solid var(--control-border);border-radius:14px;padding:18px;background:var(--app-bg);color:var(--text)}#add-dialog::backdrop,#output-dialog::backdrop,#project-wizard::backdrop{background:rgb(var(--shadow-rgb) / 0.667)}#add-dialog label,#output-dialog label,#project-wizard label{display:block;font-size:14px;font-weight:650;margin:12px 0}#add-dialog input,#add-dialog select,#output-dialog select,#project-wizard input,#project-wizard select{display:block;width:100%;font:inherit;font-size:16px;min-height:44px;padding:8px;border:1px solid var(--control-border);border-radius:7px;background:white;margin-top:4px;min-width:0}#add-dialog p,#output-dialog p,#project-wizard p{font-size:13px;line-height:1.45}#wizard-error{color:#a42130}#inline-info input,#inline-info textarea{display:block;width:100%;font:inherit;font-size:16px;min-height:44px;margin:5px 0;padding:7px;border:1px solid var(--control-border);border-radius:7px}#inline-info label{display:block;font-size:13px;margin-top:7px}
@media screen and (max-width:730px){.flow-ready .top{padding:8px 10px}.flow-ready .top-inner{display:flex;align-items:center}.flow-ready .top-inner>div:first-child{width:100%}.flow-ready h1{font-size:20px}.flow-ready .export-actions{flex:1}.flow-ready .export-preferences .export-profile-label select{font-size:13px}.flow-ready #mobile-feedback{max-height:18px;font-size:11px;width:100%;margin:0}.flow-ready #cloud-status{font-size:11px}.flow-ready .map-scroll{max-height:calc(100svh - 300px)}#inline-sheet{bottom:calc(66px + env(safe-area-inset-bottom));left:6px;right:6px;width:auto;max-height:46dvh;border-radius:12px}#inline-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-typing #inline-sheet{bottom:0;max-height:50dvh}.flow-ready #mobile-nav button{font-size:13px}.flow-ready[data-flow-page=elements] main{padding:8px}}
@media print{#inline-sheet,#plan-actions,#cloud-status,#flow-output,#mobile-nav,#add-dialog,#output-dialog,#project-wizard{display:none!important}}
.flow-ready #flow-output{display:none}
.flow-ready.welcome-mode .export-actions{display:none!important}
@media screen and (max-width:730px){.flow-ready .export-actions{flex:0 1 auto;gap:6px}.flow-ready .export-preferences .export-profile-label select{width:84px}.flow-ready #project-manage{width:58px;font-size:12px;padding:5px}.flow-ready #walk-open{min-width:44px;font-size:13px;padding:6px}.flow-ready #cloud-status{margin-left:auto}.flow-ready #cloud-state{font-size:10px;padding:4px 6px}}
@media screen and (max-width:730px){.flow-ready.mobile-typing #inline-sheet{bottom:calc(66px + env(safe-area-inset-bottom));max-height:46dvh}}

/* Keep all planning tools reachable in both interaction modes. */
.flow-ready #mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
.flow-ready[data-flow-page=organisation] .map-card{display:none}
.flow-ready[data-flow-page=organisation] main>aside{display:block;max-width:1260px;margin:auto}
.flow-ready[data-flow-page=organisation] main>aside>:not(#planning-tools):not(#plus-tools):not(#team-tools):not(#daily-tools):not(#parade-panel){display:none!important}
.flow-ready[data-flow-page=organisation] #planning-tools,.flow-ready[data-flow-page=organisation] #plus-tools,.flow-ready[data-flow-page=organisation] #team-tools,.flow-ready[data-flow-page=organisation] #parade-panel{display:block!important}
body[data-ui-mode=simple] #inline-more #tent-settings:not([hidden]){display:block}
#inline-actions:has([data-inline=walls]:not([hidden])){grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:730px){#inline-actions:has([data-inline=walls]:not([hidden])){grid-template-columns:repeat(3,minmax(0,1fr))}}
.flow-ready[data-flow-page=organisation] .map-card{display:block}
.flow-ready[data-flow-page=organisation] .map-card>:not(#planning-tools):not(#plus-tools):not(#team-tools):not(#daily-tools){display:none!important}
.flow-ready[data-flow-page=organisation] #daily-tools{display:none!important}

#visitor-access{max-width:1260px;margin:12px auto;padding:14px}#visitor-access a{display:inline-block;color:var(--brand-primary);padding:10px;font-weight:650}
body.anonymous-visitor #archive-tools,body.anonymous-visitor #project-archive,body.anonymous-visitor #new-project,body.anonymous-visitor #sync-projects,body.guest-visitor #new-project,body.guest-visitor #project-manage{display:none!important}
.flow-ready:not(.welcome-mode) #visitor-access:not([hidden]){display:block}
body.anonymous-visitor #project-select,body.anonymous-visitor label[for=project-select]{display:none!important}
body.anonymous-visitor section[aria-labelledby=projects-title]{display:none!important}

#walk-edit-toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--brand-tint);flex-shrink:0;border-bottom:1px solid var(--border)}
#walk-edit-toolbar label{font-size:14px;font-weight:650}#walk-element-select{flex:1;min-width:0;max-width:500px;padding:8px;font:inherit;font-size:16px;min-height:44px;border:1px solid var(--control-border);border-radius:7px;background:white}#walk-edit-selected,#walk-edit-direct{background:var(--brand-primary);color:white;min-height:44px}
#walk-tent-fields{margin:12px 0;padding:9px;border:1px solid var(--control-border);border-radius:8px}#walk-element-form select{font:inherit;font-size:16px;width:100%;min-height:44px;margin-top:5px;padding:7px;border:1px solid var(--control-border);border-radius:7px;background:white}
#walk-element-form .tent-sides label,#walk-element-form .walk-check{display:flex;align-items:center;gap:8px;min-height:44px}#walk-element-form input[type=checkbox]{width:22px;min-height:22px;height:22px;margin:0;accent-color:var(--brand-primary);flex-shrink:0}
@media(max-width:730px){#walk-edit-toolbar{flex-wrap:wrap;padding:6px 9px;gap:6px}#walk-edit-toolbar label{width:100%;font-size:12px}#walk-element-select{flex-basis:60%;width:0}#walk-edit-selected{flex-shrink:0}}

#tent-join-dialog{width:min(94vw,560px);max-height:90dvh;overflow:auto;background:var(--app-bg);color:var(--text);padding:18px;border:1px solid var(--control-border);border-radius:14px}#tent-join-dialog::backdrop{background:rgb(var(--shadow-rgb) / 0.667)}#tent-join-dialog p{font-size:14px;line-height:1.45}#tent-join-dialog label{display:block;font-size:14px;font-weight:650;margin:10px 0}#tent-join-dialog select,#tent-join-dialog input:not([type=checkbox]){display:block;width:100%;min-height:44px;padding:8px;font:inherit;font-size:16px;border:1px solid var(--control-border);border-radius:7px;background:#fff;margin-top:5px}#tent-join-list{max-height:220px;overflow:auto;background:#fff;padding:8px;border-radius:8px;margin:10px 0}#tent-join-list label{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;border-bottom:1px solid #eee}#tent-join-list input{width:22px;height:22px;flex-shrink:0;accent-color:var(--brand-primary)}#tent-join-error{color:#a42139;font-weight:650}#tent-join-form button[type=submit]{background:var(--brand-primary);color:#fff}#walk-tent-join{min-height:44px}#inline-actions [data-inline=join]{background:var(--brand-tint);color:var(--brand-primary)}

#walk-canvas{touch-action:none}#walk-dolly-in,#walk-dolly-out{min-height:44px}#walk-dolly-in{background:var(--brand-primary);color:#fff}

.flow-ready .map-scroll{max-height:none;min-height:140px;overscroll-behavior:contain}#map{margin:0 auto;max-width:none}#zoom-fit{font-size:13px;white-space:nowrap;padding:0 9px}#map-zoom-value{font-size:12px;align-self:center;min-width:40px;text-align:center}.zoom{align-items:stretch;flex-wrap:wrap;justify-content:flex-end}@media(max-width:730px){.toolbar{flex-wrap:wrap}.toolbar .zoom{width:100%;justify-content:flex-start}.zoom button{min-height:44px}#map-zoom-value{margin-left:auto}}

/* Mobile Arbeitsansicht: Die Karte bekommt den Bildschirm, Werkzeuge bleiben erreichbar. */
@media screen and (max-width:730px){
  .flow-ready:not(.welcome-mode)[data-flow-page=plan]{overflow:hidden;padding-bottom:calc(62px + env(safe-area-inset-bottom))}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top{height:58px;padding:5px 8px;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner{height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner>div:first-child{width:auto;min-width:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .eyebrow{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] h1{font-size:16px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-actions{display:flex!important;gap:4px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences{display:block}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences>*:not(#project-manage){display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #project-manage{width:48px;height:44px;font-size:0;padding:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #project-manage::after{content:'⚙';font-size:22px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #walk-open{width:48px;min-width:48px;height:44px;padding:0;font-size:13px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-status{grid-column:3;min-width:0;margin:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state{width:12px;height:12px;padding:0;border-radius:50%;overflow:hidden;font-size:0;background:#72bb78;border:2px solid #fff}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state[data-state=pending],
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state[data-state=saving]{background:#f3b840}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state[data-state=local],
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state[data-state=failed]{background:#e25b62}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-retry,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #mobile-feedback{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] main{height:calc(100dvh - 58px - 62px - env(safe-area-inset-bottom));padding:0;margin:0;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card{height:100%;margin:0;border:0;border-radius:0;display:grid;grid-template-rows:54px 54px auto minmax(0,1fr) 0;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar{grid-row:1;padding:5px 8px;background:#fff;border-bottom:1px solid var(--border);display:block;position:relative}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar>div:first-child{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom{width:100%;height:44px;display:grid;grid-template-columns:48px 48px minmax(92px,1fr) 52px;gap:5px;align-items:stretch}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom button{height:44px;min-height:44px;font-size:20px;padding:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #zoom-fit{font-size:13px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #map-zoom-value{margin:0;display:grid;place-items:center;font-size:12px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions{grid-row:2;padding:5px 8px;height:54px;background:#fff;z-index:3}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions button{min-height:44px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #placement-banner{grid-row:3;padding:7px 9px;font-size:13px;z-index:3}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #daily-tools,
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #team-tools,
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plus-tools,
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #planning-tools{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-scroll{grid-row:4;height:100%!important;min-height:0!important;max-height:none!important;overflow:auto;background:#cac7cc;touch-action:pan-x pan-y;overscroll-behavior:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #map-source{grid-row:5;height:0;padding:0;margin:0;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #markers g:focus .selection{stroke-width:6}
  .flow-ready[data-flow-page=organisation] #daily-tools{display:block!important}
  .flow-ready #mobile-nav{height:calc(62px + env(safe-area-inset-bottom));padding:5px max(4px,env(safe-area-inset-left)) calc(5px + env(safe-area-inset-bottom));gap:2px}
  .flow-ready #mobile-nav button{min-height:50px;font-size:12px;padding:3px 1px;border-radius:9px}
  #add-dialog,#output-dialog,#project-wizard,#project-manager,#walk-element-dialog,#tent-join-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;padding:16px 14px calc(16px + env(safe-area-inset-bottom))}
  #add-dialog form,#output-dialog form,#project-wizard form,#project-manager form,#walk-element-dialog form,#tent-join-dialog form{max-width:520px;margin:auto}
  #inline-sheet{left:0;right:0;bottom:calc(62px + env(safe-area-inset-bottom));width:auto;max-height:52dvh;border-radius:16px 16px 0 0;padding:10px 12px;box-shadow:0 -5px 28px rgb(var(--shadow-rgb) / 0.259)}
  #inline-sheet[data-collapsed=true]{max-height:126px}
  #inline-actions button{min-height:48px;font-size:12px}
}

@media screen and (max-width:900px) and (orientation:landscape) and (max-height:520px){
  .flow-ready:not(.welcome-mode)[data-flow-page=plan]{overflow:hidden;padding-bottom:calc(54px + env(safe-area-inset-bottom))}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] main{padding:0!important;margin:0!important;height:calc(100dvh - 46px - 54px - env(safe-area-inset-bottom));overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top{height:46px!important;padding:3px 7px!important;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner{height:40px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .top-inner>div:first-child{width:auto;min-width:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .eyebrow{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] h1{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-actions{display:flex!important;gap:4px;align-items:center}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences{display:block}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .export-preferences>*:not(#project-manage){display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #project-manage,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #walk-open{height:38px;min-height:38px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-status{grid-column:3;min-width:0;margin:0}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-state{width:12px;height:12px;padding:0;border-radius:50%;overflow:hidden;font-size:0;background:#72bb78;border:2px solid #fff}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #cloud-retry,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #mobile-feedback{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card{height:100%;width:100%;margin:0!important;border:0;border-radius:0;display:grid;grid-template-rows:46px 46px auto minmax(0,1fr) 0;overflow:hidden}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar{height:46px;padding:3px 7px;display:block}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-card>.toolbar>div:first-child{display:none}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom{width:100%;height:40px;display:grid;grid-template-columns:44px 44px minmax(92px,150px) 50px;gap:5px;justify-content:start}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .toolbar .zoom button{height:40px;min-height:40px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions{height:46px;padding:3px 7px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #plan-actions button{min-height:40px}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #daily-tools,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #team-tools,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #plus-tools,.flow-ready:not(.welcome-mode)[data-flow-page=plan] #planning-tools{display:none!important}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] .map-scroll{height:100%!important;min-height:0!important;max-height:none!important;touch-action:none!important;overflow:scroll!important;-webkit-overflow-scrolling:touch}
  .flow-ready:not(.welcome-mode)[data-flow-page=plan] #map-source{height:0;padding:0;margin:0;overflow:hidden}
  .flow-ready #mobile-nav{height:calc(54px + env(safe-area-inset-bottom));padding:3px max(4px,env(safe-area-inset-left)) calc(3px + env(safe-area-inset-bottom))}
  .flow-ready #mobile-nav button{min-height:46px}
  #walk-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0}
  #walk-dialog[open]{grid-template-rows:auto auto minmax(150px,1fr) minmax(46px,30dvh)}
  .walk-top{padding:4px 7px}.walk-top h2{font-size:18px}.walk-top #walk-status{display:none}
  #walk-edit-toolbar{padding:3px 7px;flex-wrap:nowrap}
  #walk-edit-toolbar label{display:none}
  #walk-element-select,#walk-edit-selected{min-height:38px;height:38px}
  .walk-bottom{overflow-y:auto!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}
  #add-dialog,#output-dialog,#project-wizard,#project-manager,#walk-element-dialog,#tent-join-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;overflow:auto}
}
