.public-map{margin:30px 0 0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}
.public-map>img{display:block;width:100%;height:auto}
.public-map.is-interactive>img{cursor:zoom-in}
.public-map-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 6px 4px}
.public-map-caption p{margin:0;font-size:14px;color:var(--muted)}
.public-map-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.public-map-actions button{cursor:pointer;font:inherit}
.public-map-actions a{font-size:14px}
.word-map-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;color:var(--ink);background:var(--paper)}
.word-map-dialog::backdrop{background:#173931d9}
.word-map-dialog[open]{display:flex;flex-direction:column}
.word-map-toolbar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px clamp(12px,2vw,28px);border-bottom:1px solid var(--line);flex-wrap:wrap}
.word-map-toolbar h3{font-size:18px;margin:0}
.word-map-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.word-map-controls button{min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:4px;background:var(--card);color:var(--ink);font:inherit;cursor:pointer}
.word-map-controls label{display:flex;align-items:center;gap:8px;font-size:14px}
.word-map-controls input{width:100px;min-height:44px;accent-color:var(--teal)}
.word-map-controls output{min-width:4ch;font-variant-numeric:tabular-nums}
.word-map-stage{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:var(--paper)}
.word-map-stage img{display:block;max-width:none;height:auto;margin:auto}
.word-map-hint{flex:none;margin:0;padding:8px 16px;font-size:13px;border-top:1px solid var(--line);color:var(--muted)}
.about-profile{display:grid;grid-template-columns:minmax(100px,160px) minmax(0,1fr);gap:22px;align-items:center;margin-bottom:24px}
.about-profile figure{margin:0;min-width:0}
.about-profile figure img{width:100%;height:auto;aspect-ratio:6/7;object-fit:cover;margin:0;border:1px solid #a5bba8;border-radius:4px}
.about-profile figcaption{font-size:12px;color:var(--muted);padding-top:7px;line-height:1.4}
.about-profile .about-brand{width:56px;height:44px;margin:0 0 12px}
.about-profile h3{font-size:25px;margin:0;line-height:1.3}
.session-routes{margin:22px 0;padding-left:20px}
.session-routes li{margin:12px 0;color:inherit}
.session-routes strong{color:inherit}
@media(max-width:440px){.about-profile{grid-template-columns:90px minmax(0,1fr);gap:12px}.about-profile h3{font-size:clamp(18px,5vw,22px)}.word-map-toolbar{gap:6px;padding:8px 12px}.word-map-toolbar h3{font-size:16px}.word-map-controls{gap:6px}.word-map-controls button{padding:8px 10px;font-size:14px}.word-map-controls label{font-size:13px}.word-map-controls input{width:80px}}
@media(max-height:500px) and (min-width:600px){.word-map-toolbar{flex-wrap:nowrap;padding:6px 14px}.word-map-toolbar h3{font-size:16px}.word-map-controls{flex-wrap:nowrap}.word-map-hint{padding:5px 14px}}
@media(max-width:360px){.offer-title img{width:38px}.offer-title{gap:10px}.offer h2{font-size:23px}}
@media print{.public-map-actions,.word-map-dialog{display:none!important}.session-routes li,.session-routes strong{color:var(--ink)}}
