:root{--ink:#171a1b;--muted:#596167;--blue:#075aca;--sky:#1892f5;--yellow:#ffe248;--pink:#efb7df;--green:#daeddf;--cream:#f7f7f2;--line:#d9dcda;--warn:#754706;--warn-bg:#fff3d5;--danger:#ac282c;--danger-bg:#fff0ef;--radius:14px;--shadow:0 8px 28px #1326350d;--font:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,"Noto Sans CJK JP",sans-serif}*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}button{border:0;background:none}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}h1{font-size:38px;line-height:1.35;letter-spacing:-1px;font-weight:850}h2{font-size:24px;line-height:1.5}h3{font-size:19px;line-height:1.6}p{overflow-wrap:anywhere}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue)}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:15px;z-index:200;background:white;padding:12px}.skip-link:focus{top:12px}.preview-bar{display:flex;align-items:center;justify-content:space-between;background:#fff2c0;min-height:30px;font-size:11px;font-weight:650;padding:4px 32px;letter-spacing:.03em}.preview-bar>span:first-child{display:flex;gap:8px;align-items:center}.preview-bar i{width:6px;height:6px;background:var(--ink);border-radius:50%}.site-header{position:sticky;top:0;z-index:40;height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 32px;background:#fffffff5;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;line-height:1.2;font-family:Arial,var(--font);font-size:18px;font-weight:900;letter-spacing:-.45px;white-space:nowrap}.brand b{font-weight:500;font-size:13px}.brand small{font-family:var(--font);font-size:10px;display:block;margin-top:7px;font-weight:650;letter-spacing:.25px}.brand-bowl{background:var(--yellow);width:43px;height:43px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:10px 10px 22px 22px;font-size:26px}.desktop-nav{display:flex;gap:5px;height:100%;align-items:center}.desktop-nav button{font-size:14px;min-height:46px;padding:8px 15px;border-radius:30px;font-weight:650}.desktop-nav button[aria-current=page]{background:var(--ink);color:white}.desktop-nav [data-plan-count]{font-family:Arial,var(--font);padding:1px 5px;font-size:11px;min-width:20px;display:inline-block;border-radius:10px;background:#edf0f0;color:var(--ink);margin-left:3px}.header-actions{display:flex;gap:12px;align-items:center}.icon-button{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;font-family:Arial,var(--font);font-size:19px;font-weight:700;background:white}.gf-header{font-size:12px;font-weight:750;min-height:44px;border-left:1px solid var(--line);padding-left:20px}.gf-header span{margin-left:8px}.sample-banner{background:#e4eefb;padding:12px 32px;display:flex;align-items:center;gap:14px;font-size:13px;flex-wrap:wrap;border-bottom:1px solid #b8cbe7}.sample-banner strong{color:#124d95}.sample-banner button{text-decoration:underline;margin-left:auto;min-height:44px;font-size:13px}.storage-warning{padding:16px;background:var(--warn-bg);border:1px solid var(--warn)}main{max-width:1376px;margin:auto;padding:30px 48px 52px;min-height:70vh}main:focus{outline:none}.screen{min-width:0}.eyebrow{font-family:Arial,var(--font);font-size:11px;line-height:1.5;font-weight:750;letter-spacing:1.65px;margin-bottom:10px}.subtle{color:var(--muted);font-size:14px;margin-top:12px}.compact-hero{background:var(--sky);border:1.5px solid var(--ink);border-radius:var(--radius);padding:26px 32px;position:relative;display:flex;align-items:center;justify-content:space-between;min-height:158px;overflow:hidden;margin-bottom:24px}.compact-hero h1{font-size:34px;letter-spacing:-.9px}.compact-hero .eyebrow{margin-bottom:7px}.hero-note{font-size:14px;margin-top:9px;font-weight:600}.hero-art{position:absolute;right:235px;top:6px;width:150px}.hero-art img{width:150px;height:145px}.hero-art span{position:absolute;top:15px;right:-28px;background:var(--yellow);border:1px solid var(--ink);border-radius:100%;padding:6px 11px;transform:rotate(8deg);font-family:Arial,sans-serif;font-size:11px;font-weight:900}.hero-demo{align-self:flex-end;min-height:44px;background:var(--yellow);border:1px solid var(--ink);border-radius:7px;font-size:13px;padding:9px 17px;font-weight:700;z-index:1}.hero-demo span{margin-left:28px}.mobile-only{display:none}.search-area{position:sticky;top:77px;z-index:25;background:var(--cream);padding:0 0 12px;border-bottom:1px solid var(--line)}.day-tabs{display:flex;gap:7px;overflow-x:auto;padding:10px 0 12px;scrollbar-width:thin;white-space:nowrap}.day-tab{border:1px solid var(--line);background:white;min-height:45px;padding:8px 19px;border-radius:30px;display:flex;align-items:center;gap:8px;font-size:15px;font-weight:650;flex-shrink:0}.day-tab small{font-size:12px;font-weight:500}.day-tab[aria-pressed=true]{color:white;background:var(--ink);border-color:var(--ink)}.day-tab.related{font-size:13px}.search-row{display:flex;gap:10px}.searchbox{background:white;border:1px solid #949d9f;display:flex;align-items:center;gap:12px;border-radius:8px;min-height:52px;flex:1;min-width:0;padding:0 14px}.searchbox>span{font-size:30px;line-height:1}.searchbox input{border:0;background:none;font-size:16px;min-width:0;width:100%;height:49px;outline:0}.searchbox:focus-within{outline:2px solid var(--blue);outline-offset:2px}.searchbox button{min-width:44px;min-height:44px;font-size:23px}.filter-button,.candidate-filter{border:1px solid #949d9f;background:white;border-radius:8px;padding:9px 16px;min-height:52px;font-size:14px;font-weight:650;white-space:nowrap}.filter-button>span:last-child{margin-left:16px;font-size:20px}.filter-button #filter-count:empty{display:none}.candidate-filter[aria-pressed=true]{background:var(--yellow);border-color:var(--ink)}.candidate-filter b{margin-left:8px}.results-meta{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0}.results-meta #result-count{font-size:14px;font-weight:700}.results-meta #result-count strong{font:800 23px Arial,var(--font);margin-right:5px}.active-filters{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.active-filters:empty{display:none}.active-filters button{font-size:12px;min-height:36px;background:#e6e9e5;margin-top:6px;border-radius:5px;padding:5px 10px}.active-filters .reset{background:none;text-decoration:underline}.results-tools{display:flex;gap:12px;align-items:center;flex-shrink:0}.small-button{border:1px solid var(--line);border-radius:7px;background:white;min-height:44px;padding:8px 13px;font-size:13px;font-weight:650}.sort-control select{border:1px solid var(--line);border-radius:7px;background:white;min-height:44px;font-size:13px;padding:8px 10px}.event-list{display:flex;flex-direction:column;gap:12px}.event-list.grid{display:grid;grid-template-columns:1fr 1fr;align-items:start}.date-heading{grid-column:1/-1;font-size:18px;margin:15px 0 0;display:flex;align-items:center;gap:15px}.date-heading:after{content:"";height:1px;background:var(--line);flex:1}.event-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;display:grid;grid-template-columns:147px minmax(0,1fr) 148px;column-gap:25px;position:relative;align-items:start;box-shadow:0 1px 2px #15242804}.event-card:hover{border-color:#939f9f}.event-card.selected{border-color:#a5c0e7;box-shadow:inset 3px 0 var(--blue)}.event-clock{font-variant-numeric:tabular-nums;font-family:Arial,var(--font);border-right:1px solid var(--line);padding-right:18px;height:100%}.event-date{font-family:var(--font);font-size:12px;font-weight:700;margin-bottom:8px}.event-time{font-size:25px;line-height:1.4;font-weight:750;letter-spacing:-.8px;white-space:nowrap}.event-time span{font-size:13px;font-weight:500;margin:0 5px}.event-clock .pending{font-family:var(--font);font-size:16px;letter-spacing:0}.event-end{font-size:16px;display:block;color:var(--muted);margin-top:2px;font-weight:500}.event-kind{display:block;font-family:var(--font);font-size:11px;color:var(--muted);margin-top:8px;line-height:1.5}.card-title{font-size:18px;font-weight:750;text-align:left;line-height:1.65;display:block;padding:0;min-height:32px;overflow-wrap:anywhere}.card-title:hover{color:var(--blue)}.event-place{font-size:14px;margin-top:9px;line-height:1.6;font-weight:600}.event-place .area{font-weight:500;color:var(--muted);margin-right:8px}.event-room{font-size:12px;color:var(--muted);margin-top:4px}.badges{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:12px}.badge{font-size:11px;display:inline-flex;align-items:center;gap:5px;border:1px solid #e1e5e2;background:#f3f5f3;border-radius:4px;padding:2px 7px;line-height:1.7;font-weight:650}.badge.blue{color:#144984;background:#e7f0fc;border-color:#d4e2f7}.badge.pink{background:#f8e8f2;border-color:#efd0e4}.badge.green{color:#205a36;background:#e9f4eb;border-color:#cfe3d5}.badge.warn{background:var(--warn-bg);color:var(--warn);border-color:#efd8a5}.badge.danger{background:var(--danger-bg);color:var(--danger);border-color:#f0c5c6}.card-actions{display:flex;flex-direction:column;gap:9px;align-items:stretch}.card-actions button{font-size:13px;min-height:44px;border:1px solid var(--line);border-radius:7px;padding:8px 12px;font-weight:650}.candidate-button{background:white;color:var(--muted)}.candidate-button[aria-pressed=true]{background:#fff9dc;border-color:#cab455;color:var(--ink)}.add-button{background:var(--blue);color:white;border-color:var(--blue)!important}.add-button[aria-pressed=true]{background:#e8f0fc;color:#194884;border-color:#d3e0f4!important}.source-hint{font-size:11px;color:var(--muted);margin-top:9px}.nested-sessions{grid-column:2/-1;margin-top:14px;border-top:1px solid var(--line);padding-top:9px}.nested-sessions summary{min-height:44px;align-content:center;cursor:pointer;color:#265a9e;font-size:13px;font-weight:650}.session-list{display:grid;gap:8px;margin-top:8px}.session-mini{padding:13px;background:#f5f7f7;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:16px}.session-mini .title-button{font-size:14px;text-align:left;font-weight:600;min-height:44px;flex:1}.session-mini .mini-time{font-family:Arial,var(--font);font-size:13px;margin-right:10px;white-space:nowrap}.session-mini .small-button{flex-shrink:0}.event-list.grid .event-card{grid-template-columns:1fr 128px;gap:16px}.grid .event-clock{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line);padding-bottom:12px;display:flex;align-items:center;gap:10px}.grid .event-time{font-size:22px}.grid .event-end{display:inline;font-size:18px;margin-left:8px}.grid .event-end:before{content:"– ";color:var(--muted)}.grid .event-kind{margin:0 0 0 auto}.grid .event-date{margin:0 12px 0 0}.grid .nested-sessions{grid-column:1/-1}.button{min-height:46px;border-radius:8px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:10px 18px;font-size:14px;font-weight:700;line-height:1.5;background:white}.button.primary{background:var(--blue);color:white;border-color:var(--blue)}.button.secondary{background:white}.button.dark{background:var(--ink);color:white;border-color:var(--ink)}.button.yellow{background:var(--yellow);border-color:var(--ink)}.button.danger{background:var(--danger-bg);color:var(--danger);border-color:#e7b3b3}.text-button{min-height:44px;font-size:13px;text-decoration:underline;text-underline-offset:3px;color:var(--muted);padding:6px 0}.load-more{display:flex;justify-content:center;padding:25px}.catalog-footnote{border-top:1px solid var(--line);padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.empty-state{text-align:center;background:white;border:1px dashed #b8c0be;border-radius:var(--radius);padding:50px 24px;grid-column:1/-1}.empty-state .empty-icon{display:inline-grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#edf2ef;font-size:28px;margin-bottom:20px}.empty-state h2{font-size:21px}.empty-state p{font-size:14px;color:var(--muted);margin:10px auto 20px;max-width:520px}.empty-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:10px 0 24px}.heading-count{display:inline-grid;place-items:center;margin-left:12px;min-width:32px;height:32px;padding:0 8px;font-family:Arial,var(--font);font-size:17px;background:var(--yellow);border:1px solid var(--ink);border-radius:50%;vertical-align:middle;letter-spacing:0}.heading-actions{display:flex;gap:10px}.plan-daybar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;border-bottom:1px solid var(--line);padding-bottom:16px}.plan-dates{display:flex;gap:8px;overflow:auto;white-space:nowrap}.plan-date{background:white;border:1px solid var(--line);border-radius:30px;min-height:45px;padding:8px 16px;font-size:14px;font-weight:650}.plan-date[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.plan-date span{display:inline-block;font-size:10px;font-weight:500;margin-left:7px}.plan-stats{display:flex;gap:20px;white-space:nowrap;align-items:center;font-size:12px;color:var(--muted)}.plan-stats strong{font-family:Arial,var(--font);font-size:21px;margin-right:4px;color:var(--ink)}.plan-layout{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:28px;align-items:start}.plan-flow{min-width:0}.flow-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.flow-head h2{font-size:17px}.segmented{display:flex;border:1px solid var(--line);border-radius:7px;overflow:hidden}.segmented button{padding:7px 13px;min-height:44px;font-size:12px;background:white}.segmented button[aria-pressed=true]{background:var(--ink);color:white}.plan-event{display:grid;grid-template-columns:54px minmax(0,1fr);gap:13px;position:relative;margin:0;scroll-margin-top:100px}.plan-time{font:750 18px/1.4 Arial,var(--font);font-variant-numeric:tabular-nums;padding-top:18px;text-align:right}.plan-time small{display:block;font-size:13px;font-weight:500;color:var(--muted);margin-top:5px}.plan-event-card{padding:18px 19px;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 1px 3px #00000004;min-width:0;position:relative}.plan-event.focused .plan-event-card{outline:3px solid #3373c3;outline-offset:2px}.plan-event.garraway .plan-event-card{border-top:3px solid #111}.plan-event-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.stop-id{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:800;letter-spacing:1px}.stop-number{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--ink);color:white;font-family:Arial,sans-serif;font-size:12px;letter-spacing:0}.stop-id .stop-area{color:var(--muted);letter-spacing:.7px}.remove-button{border:1px solid var(--line);border-radius:50%;width:44px;min-height:44px;color:var(--muted);font-size:21px;line-height:1;flex-shrink:0}.plan-event-card h3{font-size:17px;line-height:1.65}.plan-event-card .venue-button{font-size:13px;font-weight:650;text-align:left;color:#26518c;padding:6px 0;min-height:44px;display:block}.plan-event-card .event-room{margin:0 0 9px;font-size:12px}.plan-event-foot{border-top:1px solid #eef0ef;padding-top:10px;margin-top:10px;display:flex;gap:8px;justify-content:space-between;align-items:center;flex-wrap:wrap}.plan-event-foot button{font-size:12px;min-height:44px;padding:7px 10px;border:1px solid var(--line);border-radius:6px}.plan-event-foot .registration{color:#245539;background:#f0f7ef}.plan-event-foot .registration.unknown{background:#fff8e7;color:#705027}.plan-warning{font-size:13px;line-height:1.8;padding:10px 12px;background:var(--warn-bg);color:var(--warn);border-radius:6px;margin-top:10px}.plan-warning.error{color:var(--danger);background:var(--danger-bg)}.plan-warning button{font-size:12px;text-decoration:underline;min-height:44px;margin-left:5px}.visit-line{font-size:11px;color:var(--muted);margin:7px 0}.plan-leg{margin-left:66px;border-left:2px dashed #bdc8c7;padding:15px 0 15px 20px;position:relative}.plan-leg h4{font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:650}.plan-leg h4 strong{font-family:Arial,var(--font);font-size:17px;font-weight:750}.plan-leg .leg-label{font-size:12px;color:var(--muted);margin-top:6px}.plan-leg .leg-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:5px}.plan-leg .leg-actions a,.plan-leg .leg-actions button{font-size:12px;min-height:44px;display:inline-flex;align-items:center;color:#26518c;text-decoration:underline;text-underline-offset:3px;padding:0}.plan-leg .leg-result{font-size:12px;color:var(--muted)}.plan-leg.invalid .leg-result{color:var(--danger)}.plan-gap{margin:0 0 16px 66px;padding:14px 18px;border:1px dashed #bccdbd;border-radius:10px;background:#eef4ee;display:flex;justify-content:space-between;gap:15px;align-items:center}.plan-gap h4{font-size:14px;font-weight:650}.plan-gap p{font-size:11px;color:#526458;margin-top:3px}.plan-gap button{background:white;border:1px solid #bdcebf;font-size:12px;border-radius:6px;min-height:44px;padding:8px 10px;white-space:nowrap}.plan-map-aside{position:sticky;top:99px;min-width:0}.map-panel{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.map-heading{padding:18px 20px 13px;display:flex;justify-content:space-between;align-items:center;gap:14px}.map-heading h2{font-size:17px}.map-heading p{font-size:11px;color:var(--muted);margin-top:3px}.map-display-select{display:flex;background:#f0f3f0;border:1px solid var(--line);border-radius:6px;padding:2px;flex-shrink:0}.map-display-select button{font-size:11px;min-height:36px;padding:6px 10px;border-radius:4px}.map-display-select button[aria-pressed=true]{background:var(--ink);color:white}.geo-map{height:315px;position:relative;overflow:hidden;background:#ecf0e9;isolation:isolate;touch-action:pan-y;outline-offset:-3px}.geo-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#cbd4c761 1px,transparent 1px),linear-gradient(90deg,#cbd4c761 1px,transparent 1px);background-size:45px 45px;z-index:-1}.map-tiles{position:absolute;inset:0;pointer-events:none}.map-tiles img{position:absolute;width:256px;height:256px;max-width:none}.map-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.map-route{stroke:#255a9e;stroke-width:3;stroke-dasharray:7 7;fill:none;opacity:.75}.map-markers{position:absolute;inset:0;pointer-events:none}.map-pin{position:absolute;transform:translate(-50%,-50%);min-width:44px;min-height:44px;border-radius:50%;background:var(--blue);color:white;border:3px solid white;box-shadow:0 2px 8px #17283540;display:grid;place-items:center;font:750 13px Arial,var(--font);padding:3px 7px;pointer-events:auto;z-index:3}.map-pin.gf{background:var(--yellow);color:var(--ink);border-color:#fff}.map-pin.active{outline:3px solid var(--ink);outline-offset:3px;z-index:4}.map-label{position:absolute;transform:translate(-50%,26px);max-width:166px;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:750;background:#fffffff2;text-align:center;box-shadow:0 1px 5px #0000000b;pointer-events:none;line-height:1.5;white-space:normal;word-break:normal;overflow-wrap:anywhere}.map-north{position:absolute;top:12px;left:13px;width:28px;height:42px;background:#ffffffde;border-radius:5px;text-align:center;font:700 10px Arial,sans-serif;padding-top:4px;line-height:1.6;z-index:5}.map-north b{display:block;font-size:18px;line-height:1.1}.map-controls{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden;box-shadow:0 1px 6px #0001;z-index:5}.map-controls button{width:44px;min-height:44px;border-bottom:1px solid var(--line);font-size:21px;background:white;line-height:1}.map-controls button:last-child{font-size:11px;border-bottom:0}.map-attribution{position:absolute;right:0;bottom:0;background:#ffffffdf;font:10px/1.5 Arial,var(--font);padding:2px 6px;z-index:5}.map-attribution a{text-decoration:underline}.map-scale{position:absolute;left:12px;bottom:12px;font:10px Arial,var(--font);background:#ffffffd9;padding:3px 6px;border-radius:3px;z-index:4}.map-scale>i{display:block;border:1px solid var(--ink);border-top:0;height:5px;margin-bottom:4px}.map-status{padding:8px 17px;font-size:11px;color:var(--muted);border-top:1px solid var(--line);background:#f7f9f6}.map-legend{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:12px 17px;font-size:11px;border-top:1px solid var(--line);color:var(--muted)}.map-legend span{display:inline-flex;align-items:center;gap:6px}.map-legend i{width:9px;height:9px;background:var(--blue);border-radius:50%}.map-legend .gf{background:var(--yellow);border:1px solid #8f8544}.map-route-list{padding:4px 18px 14px}.map-route-row{display:flex;align-items:center;gap:10px;padding:8px 0;min-height:51px;border-bottom:1px solid #eef0ed;text-align:left;width:100%;font-size:12px}.map-route-row:last-child{border:0}.map-route-row .stop-number{flex-shrink:0;width:22px;height:22px;font-size:11px;background:#e9edf1;color:var(--ink)}.map-route-row span:nth-child(2){flex:1;min-width:0}.map-route-row small{font:11px Arial,var(--font);color:var(--muted);flex-shrink:0}.map-selected{background:#edf3fb;border-top:1px solid #cedced;padding:13px 18px}.map-selected p{font-size:12px;line-height:1.7}.map-selected strong{font-size:13px}.map-selected .button{margin-top:10px;font-size:12px;min-height:44px}.plan-side-note{margin-top:14px;background:#eeefe9;border:1px solid var(--line);border-radius:11px;padding:16px 18px}.plan-side-note h3{font-size:13px}.plan-side-note p{font-size:12px;color:var(--muted);margin-top:6px}.plan-side-note button{margin-top:8px}.notice{padding:14px 18px;border:1px solid var(--line);border-radius:10px;font-size:13px;margin:14px 0;background:white}.notice.warn{background:var(--warn-bg);color:var(--warn);border-color:#e8d4a8}.notice.error{background:var(--danger-bg);color:var(--danger);border-color:#efc5c4}.notice .issue-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.notice button{min-height:44px;text-decoration:underline;font-size:12px;text-underline-offset:3px}.unresolved-title{font-size:16px;margin:24px 0 12px}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:10px}.plan-table{border-collapse:collapse;width:100%;font-size:13px;min-width:400px}.plan-table th{text-align:left;background:#eef2ed;font-size:12px;padding:12px;border-bottom:1px solid var(--line)}.plan-table td{border-bottom:1px solid var(--line);padding:13px 12px;vertical-align:top;overflow-wrap:anywhere}.plan-table td:first-child{font-family:Arial,var(--font);white-space:nowrap;width:107px}.plan-table tr.move-row{background:#f4f7fb;color:#3f5c7e}.plan-table tr.gap-row{background:#f0f6ef;color:#415943}.plan-table button{text-align:left;font-size:13px;min-height:44px}.today-banner{background:#e8f0fc;border-radius:10px;padding:13px 19px;font-size:13px;color:#1a4e8c;margin-bottom:22px}.today-card{background:var(--yellow);padding:30px;border-radius:var(--radius);border:1px solid var(--ink)}.today-card .eyebrow{font-size:11px}.today-time{font:750 51px/1.1 Arial,var(--font);margin-bottom:13px;letter-spacing:-2px}.today-time small{font:600 16px var(--font);letter-spacing:0}.today-card h2{font-size:24px}.today-card>p{font-size:14px;margin-top:13px}.today-card .today-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.today-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.today-summary{padding:22px;background:white;border:1px solid var(--line);border-radius:12px;margin-top:18px}.today-summary h3{font-size:17px;margin-bottom:8px}.today-summary p{font-size:13px;color:var(--muted)}.clock-label{font-size:12px;color:var(--muted);margin-bottom:16px}.clock-label label{display:inline-flex;gap:8px;align-items:center;margin-left:12px}.clock-label input{border:1px solid var(--line);border-radius:6px;padding:7px;min-height:44px;font-size:16px}.map-filter-bar{display:flex;gap:16px;align-items:end;margin-bottom:20px;flex-wrap:wrap}.map-filter-bar label{font-size:12px;display:flex;flex-direction:column;gap:5px}.map-filter-bar select{min-height:45px;border:1px solid var(--line);border-radius:7px;background:white;padding:8px 13px;font-size:14px;min-width:150px}.allmap-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:25px;align-items:start}.allmap-layout .geo-map{height:490px}.venue-list{background:white;border:1px solid var(--line);border-radius:12px;padding:8px 20px;max-height:680px;overflow:auto}.venue-row{padding:15px 0;border-bottom:1px solid var(--line)}.venue-row:last-child{border:0}.venue-row h3{font-size:15px;line-height:1.6}.venue-row p{font-size:12px;color:var(--muted);margin-top:4px}.venue-row .venue-actions{display:flex;gap:12px;margin-top:7px}.venue-row button,.venue-row a{font-size:12px;min-height:44px;display:inline-flex;align-items:center;color:var(--blue);padding:0}.venue-row .badge{margin-bottom:5px}.gf-hero{display:flex;justify-content:space-between;align-items:center;background:var(--pink);padding:42px;border:1px solid var(--ink);border-radius:var(--radius)}.gf-hero h1{font-size:40px;margin-bottom:18px}.gf-hero p{font-size:15px}.gf-hero .button{margin-top:24px}.gf-address{background:white;border:1px solid var(--line);border-radius:10px;margin-top:18px;padding:20px;display:flex;gap:20px;align-items:center;font-size:13px;flex-wrap:wrap}.gf-address a{color:var(--blue);margin-left:auto;min-height:44px;display:inline-flex;align-items:center}.gf-day-title{font-size:20px;margin:28px 0 14px}#gf-events{display:flex;flex-direction:column;gap:12px}.site-footer{background:white;border-top:1px solid var(--line);padding:28px 48px;max-width:none;font-size:11px;color:var(--muted)}.site-footer>span{font-size:12px}.site-footer b{color:var(--ink);font-family:Arial,var(--font)}.site-footer p{margin-top:9px}.mobile-nav{display:none}dialog{border:1px solid var(--line);border-radius:18px;padding:0;width:min(680px,calc(100vw - 32px));max-height:90vh;color:var(--ink);background:var(--cream);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#14252c88}.dialog-header{position:sticky;top:0;z-index:2;display:flex;gap:20px;align-items:center;justify-content:space-between;background:white;padding:18px 24px;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:18px}.close-dialog{flex-shrink:0}#modal-body{padding:24px}.modal-intro{font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:17px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:17px;min-width:0}.field>span{font-size:13px;font-weight:650}.field select,.field input,.field textarea{min-height:48px;width:100%;min-width:0;border:1px solid #929c9d;border-radius:7px;background:white;padding:10px 12px;font-size:16px}.field textarea{resize:vertical;min-height:80px}.field small{font-size:12px;color:var(--muted)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.check-field{display:flex;align-items:center;gap:10px;min-height:48px;font-size:14px;margin:10px 0}.check-field input{width:22px;height:22px;accent-color:var(--blue)}.form-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.form-error{padding:12px;background:var(--danger-bg);color:var(--danger);border-radius:6px;font-size:13px;margin:12px 0}.detail-title{font-size:25px;line-height:1.6;margin:14px 0}.detail-clock{font:750 28px/1.5 Arial,var(--font);margin:18px 0 10px;letter-spacing:-.5px}.detail-place{font-size:16px;font-weight:700;margin-bottom:5px}.detail-source{background:#eaece7;padding:16px;border-radius:8px;margin-top:24px;font-size:12px;line-height:1.9;color:var(--muted)}.detail-source a{text-decoration:underline;overflow-wrap:anywhere}.detail-description{font-size:14px;white-space:pre-line;line-height:1.95;margin-top:17px}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 10px}.detail-actions>.button{flex:1}.detail-notes p{font-size:14px;padding:9px 0;border-bottom:1px solid var(--line)}.help-section{margin:22px 0;padding-bottom:20px;border-bottom:1px solid var(--line)}.help-section h3{font-size:17px;margin-bottom:10px}.help-section p{font-size:14px;margin-top:10px}.help-section a{color:var(--blue);text-decoration:underline;overflow-wrap:anywhere}.help-steps{counter-reset:s}.help-step{display:flex;gap:14px;margin:15px 0;align-items:flex-start}.help-step:before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--yellow);font:700 14px Arial;flex-shrink:0}.help-step h3{font-size:15px}.help-step p{font-size:13px;color:var(--muted);margin-top:5px}.export-summary{background:white;border:1px solid var(--line);border-radius:10px;padding:16px;font-size:14px;margin:12px 0}.export-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.export-actions .button{justify-content:space-between}.file-help{font-size:12px;color:var(--muted);margin:13px 0}.share-text{width:100%;height:160px;font-size:13px;padding:12px;border:1px solid var(--line);border-radius:7px;background:white}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:var(--ink);color:white;min-width:240px;max-width:calc(100vw - 32px);width:max-content;padding:13px 18px;border-radius:10px;font-size:13px;z-index:120;box-shadow:0 5px 20px #0002;transition:opacity .15s,transform .15s}.toast.visible{opacity:1;transform:translate(-50%,0);pointer-events:auto}.toast button{color:var(--yellow);font-size:13px;min-height:44px;padding:0 0 0 16px;text-decoration:underline}#print-root{display:none}.merge-choice{margin-top:14px}.merge-choice>.button{width:100%;justify-content:center;margin-bottom:10px}.recommend-card{background:white;border:1px solid var(--line);padding:16px;border-radius:10px;margin:10px 0}.recommend-card h3{font-size:16px}.recommend-card p{font-size:13px;margin:5px 0;color:var(--muted)}.recommend-card .button{margin-top:10px}.review-change{font-size:13px;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:13px 0}.review-change>div{padding:14px;border:1px solid var(--line);border-radius:8px;background:white;overflow-wrap:anywhere}.review-change small{display:block;color:var(--muted);margin-bottom:6px}.manual-note{font-size:12px;color:var(--muted);margin-top:9px}.map-unknown{font-size:12px;padding:13px 17px;border-top:1px solid var(--line);background:var(--warn-bg);color:var(--warn)}
@media(min-width:1500px){.compact-hero .hero-art{right:265px}}@media(max-width:1100px){main{padding:25px 28px}.site-header{padding:0 24px;gap:12px}.desktop-nav button{padding:8px 10px;font-size:13px}.gf-header{display:none}.hero-art{right:192px}.plan-layout{grid-template-columns:1.1fr .9fr;gap:20px}.event-card{grid-template-columns:123px minmax(0,1fr) 140px;gap:20px}.event-time{font-size:23px}.event-list.grid .event-card{grid-template-columns:1fr}.grid .card-actions{flex-direction:row}.grid .card-actions>*{flex:1}.map-label{max-width:130px;font-size:10px}.heading-actions .button{font-size:12px;padding:10px 13px}}
@media(max-width:800px){.desktop-nav{display:none}.site-header{height:65px;padding:0 22px}.brand{font-size:17px}.header-actions{gap:5px}.gf-header{display:block;padding-left:12px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;justify-content:space-around;background:white;border-top:1px solid var(--line);padding:8px 8px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -3px 14px #00000006}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1;max-width:150px;min-height:48px;font-size:10px;font-weight:650;border-radius:8px;color:var(--muted)}.mobile-nav button>span{font:500 23px/1.3 Arial,sans-serif;position:relative;min-height:28px}.mobile-nav button[aria-current=page]{background:#eaf1fc;color:#144c92}.mobile-nav b{position:absolute;right:-18px;top:0;font:750 9px Arial,sans-serif;background:var(--blue);color:white;border-radius:10px;min-width:14px;height:14px;padding:2px}.site-footer{padding:23px 24px calc(105px + env(safe-area-inset-bottom))}.search-area{top:64px}.plan-layout,.today-layout{grid-template-columns:1fr}.plan-map-aside{position:static;grid-row:1}.plan-flow{grid-row:2}.plan-map-aside .plan-side-note{display:none}.plan-map-aside .geo-map{height:270px}.plan-map-aside .map-route-list{display:none}.map-label{max-width:155px;font-size:11px}.allmap-layout{grid-template-columns:1fr}.allmap-layout .geo-map{height:360px}.venue-list{max-height:none}.hero-art{display:none}.today-layout>.map-panel{grid-row:1}.toast{bottom:calc(89px + env(safe-area-inset-bottom))}.page-heading{flex-wrap:wrap}.heading-actions{width:100%;justify-content:flex-start}.plan-daybar{flex-wrap:wrap}.plan-stats{justify-content:flex-start;gap:20px}.event-card{grid-template-columns:115px minmax(0,1fr);gap:16px}.card-actions{grid-column:2;flex-direction:row;margin-top:9px}.card-actions button{flex:1}.nested-sessions{grid-column:2}.event-list.grid{display:flex}.results-tools #layout-toggle{display:none}}
@media(max-width:540px){body{font-size:15px}.preview-bar{font-size:9px;padding:4px 16px;min-height:26px}.preview-bar>span:last-child{font-size:8px;letter-spacing:0}.site-header{height:61px;padding:0 16px}.brand{font-size:15px;gap:8px;letter-spacing:-.25px}.brand b{font-size:11px}.brand small{font-size:8px;letter-spacing:0;margin-top:5px}.brand-bowl{width:36px;height:36px;font-size:22px}.header-actions .icon-button{font-size:16px}.gf-header{display:none}main{padding:17px 16px 32px}h1{font-size:29px;letter-spacing:-.8px}.compact-hero{padding:20px 18px;min-height:152px;margin-bottom:9px;border-radius:12px}.compact-hero h1{font-size:25px;line-height:1.4;letter-spacing:-.6px;max-width:235px}.compact-hero .eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:9px}.hero-note{font-size:11px;margin-top:9px;font-weight:500}.mobile-only{display:block}.hero-demo{position:absolute;right:12px;top:17px;background:#ffffffd9;padding:6px 8px;font-size:10px;min-height:40px;max-width:87px;line-height:1.5;border-color:#245179}.hero-demo span{margin-left:4px}.search-area{top:60px;padding-bottom:10px}.day-tabs{gap:6px;padding-top:8px;padding-bottom:11px}.day-tab{min-height:42px;padding:7px 13px;font-size:14px;gap:5px}.day-tab small{font-size:10px}.day-tab.related{font-size:12px}.search-row{gap:7px;flex-wrap:wrap}.searchbox{height:48px;min-height:48px;padding:0 10px;gap:6px}.searchbox input{height:45px;font-size:16px}.searchbox>span{font-size:28px}.filter-button{min-height:48px;padding:8px 11px;font-size:12px}.filter-button>span:last-child{margin-left:6px;font-size:18px}.candidate-filter{display:none}.results-meta{gap:8px;margin:13px 0 15px;align-items:start}.results-meta #result-count{font-size:12px}.results-meta #result-count strong{font-size:21px}.results-tools{gap:0}.sort-control select{font-size:12px;min-height:44px;width:82px;padding:5px}.active-filters button{font-size:11px;min-height:36px;padding:4px 7px}.event-card{padding:16px;display:grid;grid-template-columns:1fr auto;gap:11px;border-radius:12px}.event-clock{grid-column:1/-1;border-right:0;border-bottom:1px solid #edf0ec;padding:0 0 10px;display:flex;align-items:center;gap:8px;line-height:1.2}.event-date{font-size:11px;margin:0 5px 0 0}.event-time{font-size:21px;letter-spacing:-.4px;line-height:1.25}.event-end{font-size:15px;display:inline;margin:0 0 0 6px}.event-end:before{content:"– ";font-size:14px}.event-kind{font-size:9px;margin:0 0 0 auto;line-height:1.6;max-width:65px;text-align:right}.event-copy{grid-column:1/-1}.card-title{font-size:16px;line-height:1.7;min-height:44px}.event-place{font-size:12px;margin-top:7px}.event-room{font-size:11px}.badges{gap:5px;margin-top:10px}.badge{font-size:10px;padding:2px 6px}.card-actions{grid-column:1/-1;gap:8px;margin:3px 0 0;display:grid;grid-template-columns:1fr 1.2fr}.card-actions button{font-size:12px;min-height:44px;padding:8px 9px}.nested-sessions{grid-column:1/-1;margin-top:0;padding-top:3px}.session-mini{padding:9px;gap:6px;flex-wrap:wrap}.session-mini .title-button{font-size:12px}.session-mini .mini-time{font-size:11px;margin-right:4px}.nested-sessions summary{font-size:12px}.session-mini .small-button{font-size:11px;padding:7px;min-height:44px}.source-hint{font-size:10px}.date-heading{font-size:16px;margin-top:10px}.catalog-footnote{flex-direction:column;align-items:start;gap:0;font-size:11px}.page-heading{margin:6px 0 20px;gap:15px}.page-heading .eyebrow{font-size:10px;margin-bottom:9px}.page-heading .subtle{font-size:12px;line-height:1.85;margin-top:9px}.heading-count{height:27px;min-width:27px;font-size:14px;vertical-align:middle}.heading-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:9px}.heading-actions .button{padding:9px;font-size:12px;min-height:45px}.plan-daybar{gap:11px;margin-bottom:15px;padding-bottom:13px}.plan-date{font-size:12px;padding:8px 13px;min-height:42px}.plan-date span{font-size:9px}.plan-stats{gap:18px;font-size:11px}.plan-stats strong{font-size:19px}.plan-layout{gap:22px}.map-heading{padding:14px 15px 12px;gap:10px}.map-heading h2{font-size:15px}.map-heading p{font-size:10px}.map-display-select button{font-size:10px;min-height:36px;padding:5px 8px}.plan-map-aside .geo-map{height:248px}.map-legend{padding:10px 14px;font-size:10px;gap:12px}.map-status{font-size:10px;padding:8px 14px;line-height:1.8}.map-label{font-size:10px;max-width:118px}.map-pin{min-width:42px;min-height:42px;font-size:12px}.map-selected{padding:12px 15px}.map-selected p{font-size:11px}.map-selected strong{font-size:12px}.map-selected .button{font-size:11px}.flow-head{margin-bottom:14px}.flow-head h2{font-size:16px}.segmented button{min-height:42px;font-size:11px;padding:7px 11px}.plan-event{grid-template-columns:46px minmax(0,1fr);gap:10px;scroll-margin-top:78px}.plan-time{font-size:16px;padding-top:20px}.plan-time small{font-size:12px}.plan-event-card{padding:14px}.stop-id{font-size:9px;gap:6px;letter-spacing:.5px}.stop-number{width:23px;height:23px;font-size:11px}.plan-event-header{gap:6px;margin-bottom:6px}.remove-button{width:44px;min-height:44px;font-size:20px}.plan-event-card h3{font-size:15px;line-height:1.7}.plan-event-card .venue-button{font-size:12px;line-height:1.65}.plan-event-card .event-room{font-size:11px}.plan-event-foot{gap:7px;align-items:stretch}.plan-event-foot button{font-size:11px;min-height:44px;padding:6px 8px}.plan-event-foot .registration{width:100%}.visit-line{font-size:10px}.plan-warning{font-size:12px;padding:10px}.plan-leg{margin-left:55px;padding:14px 0 14px 14px}.plan-leg h4{font-size:13px}.plan-leg h4 strong{font-size:16px}.plan-leg .leg-label,.plan-leg .leg-result{font-size:11px}.plan-leg .leg-actions{gap:14px;margin-top:3px}.plan-leg .leg-actions button,.plan-leg .leg-actions a{font-size:12px;min-height:44px}.plan-gap{margin-left:55px;padding:13px;margin-bottom:15px;gap:9px;flex-wrap:wrap}.plan-gap h4{font-size:13px}.plan-gap p{font-size:11px}.plan-gap button{font-size:11px;min-height:44px}.notice{font-size:12px;padding:12px 14px}.notice button{font-size:11px}.empty-state{padding:35px 18px}.empty-state h2{font-size:19px}.empty-state p{font-size:13px}.empty-actions{flex-direction:column}.empty-actions .button{font-size:13px}.sample-banner{padding:9px 16px;gap:4px 10px;font-size:11px;line-height:1.7}.sample-banner>span{flex-basis:100%;order:3}.sample-banner>button{font-size:11px;min-height:38px}.today-banner{padding:12px 15px;font-size:12px}.today-card{padding:22px}.today-time{font-size:42px}.today-card h2{font-size:20px}.today-card>p{font-size:13px}.today-card .today-actions{flex-direction:column;margin-top:20px}.today-card .button{font-size:13px}.today-summary{padding:18px}.clock-label{font-size:11px}.clock-label label{margin-left:7px;gap:5px}.today-layout{gap:18px}.today-layout .geo-map{height:250px}.map-filter-bar{gap:12px}.map-filter-bar label{flex:1;font-size:11px;min-width:0}.map-filter-bar select{min-width:0;width:100%;font-size:12px;padding:8px}.map-filter-bar label:first-child{flex-basis:100%}.allmap-layout .geo-map{height:315px}.venue-list{padding:4px 16px}.venue-row h3{font-size:14px}.gf-hero{padding:24px;position:relative;overflow:hidden}.gf-hero h1{font-size:29px}.gf-hero img{position:absolute;right:-23px;bottom:15px;width:130px;height:125px;opacity:.85;pointer-events:none}.gf-hero p{font-size:13px;position:relative;z-index:1}.gf-hero .button{font-size:12px;position:relative;z-index:1}.gf-hero .eyebrow{font-size:10px}.gf-address{padding:16px;gap:5px 12px}.gf-address>span{font-size:12px;flex-basis:100%}.gf-address a{margin:0;font-size:12px}.site-footer{padding:24px 16px 109px;font-size:10px}.site-footer>span{font-size:11px}.site-footer .text-button{font-size:11px}dialog{width:100%;max-width:100%;margin:auto 0 0;max-height:91dvh;border-radius:18px 18px 0 0;border-bottom:0}.dialog-header{padding:14px 18px;gap:12px}.dialog-header h2{font-size:16px}#modal-body{padding:20px 18px calc(24px + env(safe-area-inset-bottom))}.modal-intro{font-size:13px}.field-grid{gap:0 12px}.field>span{font-size:12px}.field small{font-size:11px}.form-actions{gap:8px;margin-top:18px}.form-actions .button{font-size:13px}.detail-title{font-size:21px}.detail-clock{font-size:26px}.detail-place{font-size:14px}.detail-actions>.button{font-size:12px;padding:10px 12px}.detail-notes p,.detail-description{font-size:13px}.detail-source{font-size:11px;padding:14px}.help-section p{font-size:13px}.help-section h3{font-size:15px}.export-actions{grid-template-columns:1fr}.export-actions .button{font-size:13px}.export-summary{font-size:13px}.review-change{font-size:12px;gap:8px}.review-change>div{padding:11px}.toast{font-size:12px;padding:12px 15px}.toast button{font-size:12px}.map-unknown{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{body{background:white!important;font-size:11pt}.preview-bar,.site-header,.sample-banner,.storage-warning,main,.site-footer,.mobile-nav,dialog,.toast,.skip-link{display:none!important}#print-root{display:block!important;width:100%;color:#111}#print-root .print-day{break-before:page;padding:0 5mm}#print-root .print-day:first-child{break-before:auto}#print-root h1{font-size:23pt;margin-bottom:4mm}#print-root p{font-size:9pt;margin:2mm 0}#print-root .print-map{height:70mm;width:100%;border:1px solid #999;position:relative;margin:5mm 0;overflow:hidden;background:#edf1e9;print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-root .map-controls,#print-root .map-display-select,#print-root .map-north,#print-root .map-selected,#print-root .map-route-list,#print-root .map-scale{display:none!important}#print-root .geo-map{height:70mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-root .map-pin{print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-root .plan-table{font-size:9pt;min-width:0;width:100%}#print-root .plan-table th,#print-root .plan-table td{padding:3mm}#print-root tr{break-inside:avoid}#print-root button{font-size:9pt}#print-root .print-disclaimer{font-size:8pt;line-height:1.6;margin:4mm 0}#print-root .print-note{background:#fff1ca;border:1px solid #a78d51;padding:3mm;font-size:9pt;print-color-adjust:exact;-webkit-print-color-adjust:exact}@page{size:A4;margin:14mm 12mm}}

.candidate-inline{display:none}@media(max-width:540px){.candidate-inline{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:0 9px;min-height:44px;font-size:11px;background:white;border:1px solid var(--line);border-radius:6px}.candidate-inline[aria-pressed=true]{background:var(--yellow);border-color:#b19d38}}

/* Final readability pass: action targets stay reachable, labels never hide controls. */
.event-end:before{content:"– ";font-weight:400}
@media(max-width:540px){
.sample-banner{display:grid;grid-template-columns:1fr auto;gap:0 9px;padding:5px 16px;font-size:10px}.sample-banner strong{grid-row:1;grid-column:1}.sample-banner>span{grid-row:2;grid-column:1;font-size:10px;line-height:1.6}.sample-banner>button{grid-column:2;grid-row:1/3;min-height:44px;font-size:10px;padding:0}
#screen-plan .page-heading .eyebrow{display:none}#screen-plan .page-heading .subtle{display:none}#screen-plan .page-heading{margin-top:3px;gap:12px;margin-bottom:14px}#screen-plan .heading-actions .button{min-height:44px}#screen-plan .page-heading h1{font-size:27px}
.plan-map-aside .geo-map{height:215px}.map-heading{padding:11px 14px 10px}.map-heading p{font-size:10px}.map-display-select button{min-height:40px}.plan-map-aside .map-legend{font-size:10px;padding:7px 14px}.plan-map-aside .map-status{font-size:10px;padding:7px 14px}.map-pin{min-width:44px;min-height:44px}
.day-tab,.plan-date,.segmented button{min-height:44px}.event-card .badge{font-size:12px}.event-place{font-size:13px}.event-room{font-size:12px}.source-hint{font-size:12px}.plan-event-card h3{font-size:16px}.plan-event-foot button{font-size:12px}.plan-leg .leg-actions button,.plan-leg .leg-actions a{font-size:13px}.plan-leg .leg-label,.plan-leg .leg-result{font-size:12px}
}
