:root{--green:#5170ff;--green-light:#dce9f7;--ink:#20365e;--muted:#526783;--bg:#eaf4fc;--lavender:#dce9f7;--line:#c6d6e8;--orange:#ffc58c;--orange-bg:#dce9f7;--purple:#2a4073;--shadow:0 8px 30px #23294310}*{box-sizing:border-box}body{margin:0;font-family:Arial,'Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;color:var(--ink);background:var(--bg);font-size:16px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:var(--green);text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #5170ff;outline-offset:3px}header{height:88px;padding:0 4%;display:flex;align-items:center;gap:52px;background:#ffffff;border-bottom:1px solid var(--line)}.brand{display:flex;gap:11px;align-items:center;font-weight:800;font-size:27px;letter-spacing:.04em;line-height:1.2}.brand-icon{display:grid;place-items:center;background:var(--green);color:white;border-radius:11px;width:43px;height:46px;font-size:29px}.brand small{display:block;color:var(--muted);font-weight:400;font-size:11px;letter-spacing:.03em;margin-top:7px}nav{display:flex;align-self:stretch;gap:30px;align-items:center}nav a{color:var(--muted);height:100%;display:flex;align-items:center;border-bottom:3px solid transparent;font-size:14px;font-weight:700;gap:8px}nav a.active{color:var(--green);border-color:var(--green)}.header-note{margin-left:auto;font-size:10px;letter-spacing:.15em;color:#526783}.demo-label{font-size:11px;border:1px solid #454f70;border-radius:5px;padding:0 5px;font-weight:400}.demo-banner{padding:7px 4%;background:#dce9f7;color:#526783;font-size:12px;display:flex;align-items:center;gap:10px}.demo-banner>span{color:var(--purple);font-weight:700;white-space:nowrap}.page{max-width:1440px;margin:auto;padding:32px 4% 60px}.eyebrow{font-size:11px;letter-spacing:.16em;color:var(--green);font-weight:700;margin:0 0 7px}h1{font-size:30px;line-height:1.45;letter-spacing:.035em;margin:0}h2{font-size:21px;line-height:1.5;margin:0}h3{font-size:18px;margin:0;line-height:1.6}p{margin:0 0 12px}.subtext{font-size:14px;color:var(--muted);margin-top:7px}.search-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.count-caption{font-size:13px;color:var(--muted)}.search-panel{background:#ffffff;border:1px solid var(--line);padding:16px;border-radius:16px;margin-bottom:18px;box-shadow:var(--shadow)}.search-row{display:flex;gap:10px}.search-input-wrap{flex:1;position:relative}.search-input-wrap span{position:absolute;left:15px;top:9px;font-size:25px;color:var(--green)}input,select,textarea{border:1px solid #c6d6e8;background:#ffffff;border-radius:9px;padding:11px 12px;min-height:46px;color:var(--ink);width:100%}.search-input-wrap input{padding-left:45px;background:#f4f8fc}.search-row select{width:170px}.button{border:1px solid var(--green);border-radius:9px;padding:10px 19px;background:var(--green);color:white;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:14px;min-height:44px;white-space:nowrap}.button:hover{background:#2a4073}.button.secondary{color:var(--green);background:#ffffff;border-color:#454f70}.button.quiet{background:var(--green-light);color:var(--green);border-color:transparent}.button.small{padding:6px 12px;min-height:36px;font-size:13px}.filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.chip{border:1px solid var(--line);border-radius:20px;padding:6px 14px;font-size:13px;color:var(--muted);background:#ffffff;min-height:36px}.chip.active{background:var(--green);color:white;border-color:var(--green)}.extra-filters{border-top:1px solid var(--line);margin-top:15px;padding-top:14px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.extra-filters label{font-size:14px;display:flex;align-items:center;gap:8px}.extra-filters input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--green)}.extra-filters select{width:160px}.explorer{display:grid;grid-template-columns:470px minmax(0,1fr);gap:22px;align-items:start}.results-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.results-heading strong{font-size:20px;color:var(--green)}.results-heading span{font-size:13px;color:var(--muted)}.flyer-list{display:grid;gap:13px}.flyer-card{display:grid;grid-template-columns:114px minmax(0,1fr);gap:17px;padding:17px;background:#ffffff;border:1px solid var(--line);border-radius:14px;box-shadow:0 3px 9px #23294303;transition:box-shadow .2s,border-color .2s}.flyer-card:hover{border-color:#8498f5;box-shadow:var(--shadow)}.flyer-card.selected{border-color:var(--green)}.poster-thumb{width:114px;height:160px;object-fit:cover;border-radius:5px;background:var(--lavender)}.flyer-card h3{font-size:17px;line-height:1.5;margin:7px 0 9px;color:var(--ink)}.tag{display:inline-flex;padding:2px 8px;background:var(--lavender);color:var(--purple);font-size:11px;border-radius:4px;line-height:1.7}.card-meta{font-size:12px;color:var(--muted);margin:3px 0}.card-actions{grid-column:1/-1;border-top:1px solid #282832;padding-top:11px;display:flex;align-items:center;justify-content:space-between;gap:8px}.distribution{font-size:12px;color:var(--green);font-weight:700}.status{font-size:12px;background:var(--green-light);color:var(--green);border-radius:20px;padding:3px 9px;display:inline-block;font-weight:700}.status.orange{background:var(--orange-bg);color:var(--orange)}.status.gray{background:#282832;color:#526783}.map-panel{position:sticky;top:18px;border:1px solid #c6d6e8;border-radius:16px;overflow:hidden;background:#ffffff;box-shadow:var(--shadow)}.map-header{padding:16px 19px;display:flex;justify-content:space-between;align-items:center}.map-header span{font-size:12px;color:var(--muted)}.map-frame{height:445px;position:relative;background:#282832}.map-frame iframe{border:0;width:100%;height:100%}.map-info{padding:20px;border-top:1px solid var(--line)}.map-info p{font-size:14px;color:var(--muted);margin:7px 0 13px}.spot-selects{display:flex;gap:7px;flex-wrap:wrap;padding:0 20px 17px}.spot-choice{border:1px solid var(--line);border-radius:7px;background:#ffffff;padding:6px 9px;font-size:12px;color:var(--muted)}.spot-choice.active{border-color:var(--green);color:var(--green);background:var(--green-light)}.map-note{font-size:11px;color:var(--muted);padding:12px 20px;background:#eaf4fc;line-height:1.7}.mobile-toggle{display:none}.empty{text-align:center;padding:55px 20px;border:1px dashed #454f70;border-radius:15px;background:#ffffff}.empty p{color:var(--muted);margin:12px 0 20px}.footer{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:25px}.detail-grid{display:grid;grid-template-columns:350px minmax(0,1fr);gap:48px}.poster-display{padding:22px;background:#282832;border-radius:15px;text-align:center}.poster-display button{padding:0;border:0;background:transparent;display:block;width:100%}.poster-display img{width:100%;max-height:510px;object-fit:contain;box-shadow:0 12px 22px #23294324;display:block}.poster-display small{display:block;color:var(--muted);font-size:12px;margin-top:18px}.detail-body h1{font-size:32px;margin:13px 0 20px}.detail-info{background:#ffffff;border:1px solid var(--line);border-radius:14px;padding:22px;margin:22px 0}.info-row{display:grid;grid-template-columns:80px 1fr;gap:15px;padding:13px 0;border-bottom:1px solid #282832}.info-row:last-child{border-bottom:0}.info-row dt{color:var(--muted);font-size:13px}.info-row dd{margin:0;font-size:15px;font-weight:600}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:42px 0 18px}.section-heading p{font-size:14px;color:var(--muted);margin:6px 0 0}.spot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.spot-card{background:#ffffff;border:1px solid var(--line);padding:22px;border-radius:13px}.spot-card h3{margin:12px 0 8px}.spot-card p{font-size:14px;color:var(--muted)}.spot-card small{display:block;font-size:12px;color:var(--muted);margin:14px 0}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}.stat{border:1px solid var(--line);border-radius:13px;padding:19px 23px;background:#ffffff}.stat .number{font-size:36px;line-height:1.3;font-weight:700;color:var(--green);margin:8px 0}.stat .number small{font-size:14px;font-weight:400;margin-left:7px}.stat p{font-size:13px;color:var(--muted);margin:0}.stat.warning{background:#2e241b;border-color:#64513b}.stat.warning .number{color:var(--orange)}.management-panel{background:#ffffff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.management-toolbar{padding:22px;display:flex;gap:20px;justify-content:space-between;align-items:center;background:#f4f8fc;border-bottom:1px solid var(--line)}.management-toolbar select{max-width:320px}.management-toolbar .subtext{margin:0}.management-actions{padding:16px 22px;display:flex;gap:12px;justify-content:space-between;align-items:center}.management-actions select{width:180px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;font-weight:500;color:var(--muted);padding:13px 20px;background:#eaf4fc;white-space:nowrap}td{padding:20px;border-bottom:1px solid #282832;font-size:14px;vertical-align:middle}td.place{min-width:230px;max-width:320px}td strong{display:block;font-size:15px}td small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.table-button{border:1px solid #454f70;background:#ffffff;color:var(--green);border-radius:7px;white-space:nowrap;padding:7px 12px;font-size:13px}.member-note{display:flex;gap:15px;align-items:start;margin-top:20px;padding:18px 22px;background:var(--lavender);border-radius:12px;font-size:14px}.member-note p{margin:0;color:var(--muted)}.member-note strong{color:var(--ink)}dialog{border:0;border-radius:18px;padding:27px;max-width:560px;width:calc(100% - 32px);max-height:90vh;overflow:auto;box-shadow:0 30px 90px #23294340}dialog::backdrop{background:#23294380;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.icon-button{border:0;background:#dce9f7;border-radius:50%;height:38px;width:38px;font-size:24px;display:grid;place-items:center;color:var(--muted)}.field{display:block;margin:15px 0;font-size:14px;font-weight:600}.field input,.field select,.field textarea{margin-top:6px;font-weight:400}.field textarea{min-height:85px;resize:vertical}.field small{font-weight:400;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#20365e;color:#fff;padding:12px 22px;border-radius:10px;box-shadow:var(--shadow);z-index:100;font-size:14px;transition:.2s;width:max-content;max-width:90vw}#toast.visible{opacity:1;transform:translate(-50%,0)}#poster-view{max-width:650px;background:#282832;text-align:center}#poster-view img{max-width:100%;max-height:80vh;object-fit:contain}.lightbox-close{position:sticky;top:0;margin-left:auto;margin-bottom:8px}.public-toggle{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--green)}.public-toggle input{width:20px;min-height:20px;accent-color:var(--green)}.form-hint{font-size:12px;color:var(--muted)}@media(min-width:1600px){.explorer{grid-template-columns:500px minmax(0,1fr)}.map-frame{height:520px}}@media(max-width:1100px){header{gap:30px}.header-note{display:none}.explorer{grid-template-columns:400px minmax(0,1fr)}.page{padding:26px 3% 40px}.flyer-card{grid-template-columns:94px minmax(0,1fr);gap:13px}.poster-thumb{width:94px;height:137px}.spot-grid{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:290px minmax(0,1fr);gap:28px}.detail-body h1{font-size:27px}}@media(max-width:800px){header{height:72px;padding:0 18px;gap:10px;justify-content:space-between}.brand{font-size:23px}.brand-icon{width:34px;height:38px;font-size:25px}.brand small{font-size:9px}.demo-label{display:none}nav{gap:14px}nav a{font-size:12px}.demo-banner{font-size:10px;padding:7px 18px;align-items:start}.page{padding:23px 18px 35px}h1{font-size:25px}.search-heading{margin-bottom:17px}.count-caption{display:none}.subtext{font-size:13px}.search-panel{padding:12px}.search-row{flex-wrap:wrap}.search-input-wrap{flex-basis:100%}.search-row select{width:auto;flex:1;min-width:0}.search-row>.button{padding:9px 13px}.filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.chip{white-space:nowrap}.explorer{display:block}.mobile-toggle{display:flex;margin:0 0 18px;background:#282832;padding:4px;border-radius:10px}.mobile-toggle button{flex:1;border:0;border-radius:7px;background:transparent;padding:9px;font-size:14px;color:var(--muted)}.mobile-toggle .active{background:#ffffff;color:var(--green);font-weight:700;box-shadow:0 2px 5px #2329430a}.explorer[data-view=list] .map-panel{display:none}.explorer[data-view=map] .result-column{display:none}.map-panel{position:static}.map-frame{height:370px}.flyer-card{grid-template-columns:103px minmax(0,1fr);padding:15px;gap:14px}.poster-thumb{width:103px;height:146px}.flyer-card h3{font-size:17px}.card-meta{font-size:13px}.card-actions .button{font-size:12px;padding:6px 10px}.detail-grid{display:flex;flex-direction:column;gap:25px}.poster-display{max-width:330px;margin:auto;width:100%}.poster-display img{max-height:370px}.detail-body h1{font-size:26px}.detail-info{padding:15px}.spot-grid{grid-template-columns:1fr}.section-heading{margin-top:28px}.page-heading{align-items:start;flex-direction:column;gap:12px}.page-heading h1{font-size:24px}.stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.stat{padding:15px}.stat .number{font-size:30px}.management-toolbar{flex-direction:column;align-items:stretch;padding:16px;gap:12px}.management-toolbar select{max-width:none}.management-actions{padding:13px;gap:8px}.management-actions select{width:145px;font-size:13px}.management-actions .button{font-size:12px;padding:8px 10px}.table-wrap{overflow:visible}table,tbody{display:block}thead{display:none}tr{display:grid;grid-template-columns:1fr 1fr;padding:16px;border-bottom:1px solid var(--line);gap:12px}td{display:block;padding:0;border:0}td.place{grid-column:1/-1;max-width:none;min-width:0}td[data-label]::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.management-panel{border-radius:12px}.member-note{padding:15px;font-size:13px}.footer{font-size:11px;gap:15px}.form-grid{grid-template-columns:1fr;gap:0}.extra-filters{gap:10px}.extra-filters select{width:140px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.poster-crop{position:relative;overflow:hidden;display:block}.poster-crop img{position:absolute;max-width:none;object-fit:fill}.crop-0 img{width:150.5%;height:193.2%;left:-7.4%;top:-37%}.crop-1 img{width:125.4%;height:159%;left:-12.3%;top:-21.1%}.crop-2 img{width:257.3%;height:138.2%;left:-77.4%;top:-11.6%}.crop-3 img{width:170.7%;height:196.5%;left:-32.3%;top:-31.7%}.detail-poster{width:100%;aspect-ratio:0.71}.poster-display .poster-crop{box-shadow:0 12px 22px #23294324}.poster-display .poster-crop img{max-height:none}.poster-display .crop-0 img{width:150.5%}.poster-display .crop-1 img{width:125.4%}.poster-display .crop-2 img{width:257.3%}.poster-display .crop-3 img{width:170.7%}
.header-plan{margin-left:auto;font-size:14px;font-weight:700}.workspace-nav{height:auto;display:flex;gap:8px;margin:0 0 28px;padding-bottom:14px;border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center}.workspace-nav a{padding:8px 14px;border:0;border-radius:8px;height:auto;font-size:14px}.workspace-nav a.selected{background:var(--green);color:white}.usage-strip{background:#dce9f7;border:1px solid #c6d6e8;border-radius:12px;padding:15px 20px;margin-bottom:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}.usage-strip>div{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.usage-strip strong{color:var(--green)}.usage-strip>a{white-space:nowrap}.notice-box{background:#dce9f7;border:1px solid #dce9f7;border-radius:10px;padding:18px 20px;margin:20px 0;font-size:14px}.notice-box p{margin:8px 0}.material-section{padding:20px 22px;border-bottom:1px solid var(--line)}.material-heading{display:flex;justify-content:space-between;gap:15px;align-items:center}.material-heading p{font-size:13px;color:var(--muted);margin:4px 0}.material-list{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0}.material-item{display:flex;gap:12px;padding:14px;background:#eaf4fc;border:1px solid var(--line);border-radius:10px;align-items:center;min-width:270px;flex:1}.material-item strong{display:block;font-size:15px}.material-item small{display:block;font-size:12px;color:var(--muted)}.material-item button{margin-left:auto}.material-symbol{font-size:28px;color:var(--green)}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:32px;align-items:stretch}.plan-card{background:#ffffff;border:1px solid var(--line);border-radius:18px;padding:29px;display:flex;flex-direction:column;align-items:start}.plan-card.featured{border:2px solid var(--green);box-shadow:var(--shadow)}.plan-card h2{margin-top:18px;font-size:24px}.price{font-size:39px;font-weight:800;margin:12px 0}.price small{font-size:14px;font-weight:400;color:var(--muted)}.plan-card p{font-size:14px;color:var(--muted)}.plan-card ul{padding:18px 0 18px 20px;margin:0 0 20px;border-top:1px solid var(--line);width:100%;font-size:15px;flex:1}.plan-card li{margin:10px 0}.plan-card>.button{width:100%}.plan-card>small{display:block;text-align:center;width:100%;font-size:12px;color:var(--muted);margin-top:10px}.upcoming{background:#dce9f7}.pending-price{font-size:30px}.count-guide{background:#ffffff;border:1px solid var(--line);padding:28px;border-radius:15px;margin-top:25px}.count-guide>p{font-size:14px}.count-examples{display:flex;gap:18px;margin:20px 0}.count-examples>div{background:var(--green-light);border-radius:10px;padding:17px;flex:1}.count-examples strong{display:block;font-size:15px}.count-examples span{font-size:13px;color:var(--green)}.billing-page,.management-page{max-width:1060px}.billing-card{background:#ffffff;border:1px solid var(--line);padding:26px;border-radius:15px;margin-bottom:22px}.billing-summary{display:flex;justify-content:space-between;gap:25px;align-items:center}.billing-summary h2{margin:12px 0}.billing-summary p{margin:0;color:var(--muted)}.billing-date{display:flex;flex-direction:column;max-width:320px}.billing-date>span{color:var(--muted);font-size:13px}.billing-date>strong{font-size:23px;color:var(--green)}.billing-date>small{font-size:12px;color:var(--muted)}.billing-usage{display:flex;gap:24px;padding:18px 0;margin:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.upgrade-inline{display:flex;gap:25px;justify-content:space-between;align-items:center}.upgrade-inline p{font-size:14px;color:var(--muted);margin:8px 0}.cancellation>p{margin:14px 0;font-size:15px}.after-cancel{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.after-cancel ul{padding-left:22px;font-size:14px;color:var(--muted)}.after-cancel li{margin:9px 0}.demo-tools{border:1px dashed #454f70;border-radius:10px;padding:15px;color:var(--muted);font-size:13px}.demo-tools summary{cursor:pointer;color:var(--green)}.demo-tools p{margin:15px 0}.demo-tool-buttons{display:flex;gap:10px;flex-wrap:wrap}.email-preview{font:14px/1.8 inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg);padding:18px;border-radius:10px}.billing-card .info-row{grid-template-columns:100px minmax(0,1fr)}.billing-card dd{overflow-wrap:anywhere}.billing-card form .field{max-width:330px}.billing-card .form-hint{margin-top:14px}@media(max-width:1000px){.plan-grid{gap:13px}.plan-card{padding:20px}.price{font-size:30px}}@media(max-width:800px){header{flex-wrap:wrap;height:auto;min-height:76px;padding-top:10px;padding-bottom:8px}header>nav{height:38px;gap:16px}header>nav a{font-size:12px}.header-plan{font-size:12px;margin-left:0}.workspace-nav{margin-bottom:22px;gap:4px}.workspace-nav a{padding:7px 10px;font-size:12px}.usage-strip{align-items:start;flex-direction:column;padding:14px;gap:10px}.usage-strip>div{gap:9px;font-size:13px}.plan-grid{grid-template-columns:1fr;margin-top:22px}.plan-card{padding:24px}.plan-card ul{padding-top:12px;padding-bottom:5px}.plan-card h2{margin-top:12px}.price{font-size:36px}.count-guide{padding:19px}.count-examples{flex-direction:column;gap:10px}.billing-card{padding:19px}.billing-summary{flex-direction:column;align-items:start;gap:15px}.billing-usage{flex-wrap:wrap;gap:10px}.upgrade-inline{flex-direction:column;align-items:start;gap:12px}.material-section{padding:16px}.material-heading{align-items:start;flex-direction:column;gap:8px}.material-item{min-width:0;flex-basis:100%}.notice-box{padding:15px}.after-cancel ul{padding-left:18px}.email-preview{padding:12px;font-size:12px}.billing-page h1{font-size:25px}}
.poster-display .material-tabs{justify-content:center;margin:0 0 16px;flex-wrap:wrap}.poster-display .material-tabs button{width:auto;padding:6px 14px;border:1px solid var(--line);background:#ffffff}.poster-display .material-tabs button.active{background:var(--green);color:white;border-color:var(--green)}.email-preview{font-family:inherit;font-size:14px;line-height:1.8}
.guide-page{max-width:1120px}.guide-heading{padding:12px 0 22px}.guide-heading h1{font-size:36px}.guide-heading>p:last-child{font-size:17px;color:var(--muted);margin-top:14px;line-height:1.9}.guide-intro{background:var(--green-light);border-left:4px solid var(--green);padding:21px 25px;border-radius:0 12px 12px 0}.guide-intro p{margin:8px 0 0;font-size:15px}.guide-contents{height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:24px 0 36px}.guide-contents button{display:flex;gap:12px;align-items:center;padding:13px 16px;background:#ffffff;border:1px solid var(--line);border-radius:10px;color:var(--ink);text-align:left;font-size:14px}.guide-contents button:hover{border-color:var(--green);background:var(--green-light)}.guide-contents button span{color:var(--green);font-size:12px;font-weight:700}.guide-section{background:#ffffff;border:1px solid var(--line);border-radius:16px;padding:30px;margin-bottom:24px;scroll-margin-top:20px}.guide-section-heading{display:flex;gap:17px;align-items:center;padding-bottom:22px;margin-bottom:6px;border-bottom:1px solid var(--line)}.guide-section-heading>span{font-size:30px;font-weight:700;color:var(--green);line-height:1;background:var(--green-light);padding:13px;border-radius:10px}.guide-section-heading .eyebrow{margin:0 0 4px}.guide-section-heading h2{font-size:23px}.guide-section>p{margin-top:20px;line-height:1.9}.guide-steps{list-style:none;margin:8px 0 22px;padding:0}.guide-steps li{display:flex;gap:15px;padding:20px 0;border-bottom:1px solid #282832}.guide-steps li:last-child{border-bottom:0}.step-number{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--lavender);color:var(--purple);font-size:14px;font-weight:700;margin-top:2px}.guide-steps h3{font-size:17px}.guide-steps p{font-size:15px;color:var(--muted);margin:7px 0 0;line-height:1.9}.guide-tip{background:#dce9f7;border-radius:10px;padding:18px 21px;margin:19px 0;font-size:15px}.guide-tip p{margin:8px 0 0;color:var(--muted);font-size:14px}.guide-table-wrap{overflow:auto;margin:20px 0}.guide-table-wrap table{min-width:460px}.guide-table-wrap th{font-size:13px}.guide-table-wrap td{font-size:14px}.guide-table-wrap td:first-child{min-width:160px;color:var(--green);font-weight:600}.guide-note{font-size:13px;color:var(--muted);line-height:1.9}.guide-example{padding-top:24px}.guide-example h3{margin-top:12px}.guide-example>p{font-size:15px;color:var(--muted);margin:8px 0}.guide-list{padding-left:22px;font-size:15px;line-height:1.9}.guide-list li{padding:5px 0}.guide-subheading{margin-top:28px}.guide-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:25px}.guide-two-columns>div{padding:20px;background:#eaf4fc;border-radius:11px}.guide-two-columns h3{font-size:17px}.guide-two-columns .guide-list{font-size:14px;margin-bottom:0}.guide-bottom{display:flex;justify-content:center;gap:14px;margin-top:26px}@media(max-width:1000px){header{gap:24px}header nav{gap:18px}.header-plan{font-size:12px}}@media(max-width:800px){header{gap:6px 15px}.guide-heading h1{font-size:28px}.guide-heading>p:last-child{font-size:15px}.guide-intro{padding:17px}.guide-intro strong{font-size:16px}.guide-contents{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px}.guide-contents button{padding:12px 10px;font-size:13px;gap:8px}.guide-section{padding:20px 17px}.guide-section-heading{gap:12px;padding-bottom:18px}.guide-section-heading>span{font-size:23px;padding:11px}.guide-section-heading h2{font-size:19px}.guide-section-heading .eyebrow{font-size:10px}.guide-steps li{gap:11px}.guide-steps h3{font-size:16px}.guide-steps p{font-size:14px}.guide-two-columns{grid-template-columns:1fr;gap:12px}.guide-tip{padding:15px;font-size:14px}.guide-table-wrap table{display:table;min-width:460px}.guide-table-wrap thead{display:table-header-group}.guide-table-wrap tbody{display:table-row-group}.guide-table-wrap tr{display:table-row}.guide-table-wrap td,.guide-table-wrap th{display:table-cell;padding:12px;vertical-align:top}.guide-bottom{flex-wrap:wrap}.guide-list{font-size:14px}}

.purpose-switch{display:flex;gap:8px;max-width:540px}.purpose-switch button{flex:1;padding:14px 18px;border:1px solid #5170ff;border-radius:12px;background:#ffffff;color:#5170ff;font:inherit;font-weight:700;cursor:pointer}.purpose-switch button.active{background:#5170ff;color:white}.purpose-help{margin:12px 0 20px;color:#526783}.public-preview{margin-top:22px;padding:20px;border:1px solid #454f70;border-radius:12px;background:#eaf4fc}.public-preview h3{margin:8px 0}.public-preview p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.field small{line-height:1.7;margin-top:6px;color:#526783}@media(max-width:600px){.purpose-switch{width:100%}.purpose-switch button{padding:14px 6px}.public-preview{padding:14px}}

/* Warm palette and account registration */
header{gap:24px;height:auto;min-height:88px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}header nav{gap:20px;flex-wrap:wrap}header nav a{min-height:44px}.header-account{margin-left:auto;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.header-account>a:not(.button){font-size:14px}.account-page{max-width:900px}.account-identity{overflow-wrap:anywhere;color:var(--muted)}.account-quota{margin-top:12px}.account-subheading{margin-top:28px}.account-page fieldset{border:0;padding:0;margin:0;min-width:0}.account-message{margin-top:16px;overflow-wrap:anywhere}.account-page [hidden]{display:none}.account-page .field{margin-top:18px}.account-page .button{white-space:normal}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.auth-entry{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 22px;padding:18px;background:var(--green-light);border-radius:12px}.auth-entry p{margin:0;flex:1;min-width:200px}.auth-entry small{display:block;font-size:14px;color:var(--muted)}
@media(max-width:800px){header nav{gap:14px;order:2;width:100%}.header-account{width:100%;margin-left:0;justify-content:space-between}.account-page{padding-top:24px}.account-page h1{font-size:26px}}

/* Registration invitations are shown only to signed-out visitors. */
html:not([data-account-state="anonymous"]) .auth-entry{display:none}

/* Compact mobile header and accessible modal navigation. */
.mobile-menu-button{display:none}.mobile-drawer{padding:0;border:0;border-radius:0;margin:0 0 0 auto;width:min(340px,90vw);max-width:90vw;height:100dvh;max-height:100dvh;background:var(--bg);color:var(--ink);overflow-y:auto;box-shadow:-12px 0 40px #23294326}.mobile-drawer::backdrop{background:#161b3080}.mobile-drawer-heading{display:flex;align-items:center;justify-content:space-between;padding:24px 20px 16px;border-bottom:1px solid var(--line)}.mobile-menu-close{border:1px solid var(--line);background:#ffffff;color:var(--ink);font-size:28px;min-width:44px;min-height:44px;border-radius:8px}.mobile-drawer nav{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:16px 20px}.mobile-drawer nav a{height:auto;min-height:54px;white-space:normal;padding:14px 12px;border-bottom:1px solid var(--line);font-size:16px;color:var(--ink);border-radius:6px}.mobile-drawer nav a[aria-current="page"]{background:var(--green-light);color:var(--green)}.mobile-menu-open{overflow:hidden}
@media(max-width:800px){header{min-height:80px;padding:12px 4%;gap:8px;flex-wrap:nowrap}header>nav,header>.header-account,header>.header-plan{display:none}header>.brand{flex:1;min-width:0;font-size:24px;gap:8px}header .brand-icon{width:36px;height:40px;flex-shrink:0}header .brand small{font-size:10px;letter-spacing:0;line-height:1.5}.mobile-menu-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:52px;min-height:52px;margin-left:auto;padding:6px;border:1px solid var(--line);border-radius:9px;background:#ffffff;color:var(--green);font-size:12px;flex-shrink:0}.hamburger-lines{display:flex;flex-direction:column;gap:5px;width:22px}.hamburger-lines span{height:2px;width:100%;background:currentColor}.mobile-drawer-heading h2{font-size:21px}}

.mypage-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.mypage-choices h2{margin:14px 0}.mypage-choices .billing-card{margin:0}.mypage-link{display:block;margin:14px 0;font-size:16px}.collection-samples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}.collection-samples img{width:100%;height:240px;object-fit:contain;background:var(--green-light);border-radius:10px}.collection-samples h3{margin-top:12px}.sample-schedule{list-style:none;padding:0}.sample-schedule li{display:flex;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.sample-schedule strong{white-space:nowrap}.mobile-submenu{margin-left:16px;padding-left:8px;border-left:2px solid var(--line)}.mobile-drawer .mobile-submenu a{font-size:14px}@media(max-width:600px){.mypage-choices,.collection-samples{grid-template-columns:1fr}.sample-schedule li{gap:12px}}

@media(min-width:801px){header{gap:24px}header>nav{margin-left:auto;gap:20px;flex-wrap:wrap}header>nav a{height:auto;min-height:44px;white-space:nowrap}header>nav a[data-account-entry]{color:var(--muted)}}

/* A single selection keeps the list, details and map together. */
.selection-hint{font-size:14px;color:var(--muted);margin:0 0 12px}.flyer-select{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer}.card-summary{display:block;min-width:0}.card-title{display:block;font-size:17px;line-height:1.5;margin:8px 0}.flyer-select .card-meta{display:block;font-size:14px}.flyer-select .distribution{display:block;margin-top:12px;font-size:14px}.flyer-select.selected{border:2px solid var(--green);background:#dce9f7}.explorer{position:relative;grid-template-columns:minmax(280px,390px) minmax(0,1fr)}.explorer.has-detail{grid-template-columns:minmax(240px,.85fr) minmax(280px,1fr) minmax(280px,1.1fr);gap:14px}.has-detail .flyer-card{grid-template-columns:76px minmax(0,1fr);padding:12px;gap:10px}.has-detail .poster-thumb{width:76px;height:112px}.selection-detail{position:sticky;top:18px;max-height:calc(100dvh - 36px);overflow:auto;border:1px solid var(--line);border-radius:16px;background:#ffffff;box-shadow:var(--shadow);min-width:0}.selection-detail[hidden]{display:none}.selection-top{position:sticky;top:0;z-index:1;background:#ffffff;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--line)}.selection-close{border:1px solid var(--line);background:#ffffff;border-radius:50%;width:44px;height:44px;color:var(--ink);font-size:28px}.selection-body{padding:16px}.selection-materials{display:flex;gap:8px;margin-bottom:12px}.selection-poster{border:0;padding:0;background:var(--bg);width:100%;border-radius:10px;overflow:hidden;cursor:zoom-in}.panel-poster{width:100%;height:220px;object-fit:contain}.panel-poster.poster-crop{height:220px}.panel-poster.poster-crop img{width:100%;height:100%;object-fit:contain}.selection-body h2{font-size:22px;margin:16px 0 10px}.selection-body h3{margin:24px 0 12px}.selection-facts{display:grid;grid-template-columns:60px 1fr;gap:10px;font-size:15px}.selection-facts dt{color:var(--muted)}.selection-facts dd{margin:0}.selection-place{display:block;text-align:left;width:100%;border:1px solid var(--line);border-radius:10px;background:var(--bg);padding:12px;color:var(--ink);margin:10px 0}.selection-place span{display:block;font-size:14px;margin-top:5px}.selection-place:hover{border-color:var(--green)}
@media(min-width:801px) and (max-width:1100px){.explorer.has-detail{grid-template-columns:280px minmax(0,1fr)}.has-detail .selection-detail{position:absolute;left:292px;right:0;top:0;z-index:3;max-height:75dvh}.has-detail .map-panel{grid-column:2}}
@media(max-width:800px){.explorer,.explorer.has-detail{display:block}.has-detail .map-panel{display:block!important}.has-detail .result-column{display:none!important}.has-detail .map-frame{height:45dvh;min-height:220px}.selection-detail{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:20;max-height:52dvh;border-radius:20px 20px 0 0;box-shadow:0 -8px 30px #23294330;padding-bottom:env(safe-area-inset-bottom)}.selection-top{padding:8px 18px}.selection-body{padding:14px 18px}.has-detail{padding-bottom:52dvh}.selection-body .panel-poster{height:190px}.flyer-select .card-title{font-size:17px}}

.mypage-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 24px;border-bottom:1px solid var(--line);overflow-x:auto;padding-bottom:8px}.mypage-tabs [role=tab]{min-width:0;padding:14px 16px;border:1px solid var(--line);background:#ffffff;color:var(--ink);border-radius:10px;font-size:15px;font-weight:700}.mypage-tabs [aria-selected=true]{background:var(--green);color:white;border-color:var(--green)}[role=tabpanel][hidden]{display:none}.account-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.account-page button:disabled{cursor:not-allowed;opacity:.65}.account-page dd{overflow-wrap:anywhere}@media(max-width:600px){.mypage-tabs{gap:6px}.mypage-tabs [role=tab]{min-width:0;font-size:14px;padding:12px 4px;overflow-wrap:anywhere}}

.guide-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:0;margin:24px 0}.guide-flow li{position:relative;padding:22px;background:#ffffff;border:1px solid var(--line);border-radius:14px;min-width:0}.guide-flow li:not(:last-child)::after{content:'→';position:absolute;right:-23px;top:45%;color:var(--green);font-size:22px}.guide-flow h3{font-size:18px;margin:14px 0 8px}.guide-flow p{font-size:16px}.guide-count-diagram{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:22px 0}.guide-count-diagram>div{background:#ffffff;border:1px solid var(--line);border-radius:12px;padding:20px}.guide-count-total{font-weight:700;color:var(--green);border-top:1px solid var(--line);padding-top:16px}.guide-page .guide-two-columns{margin:24px 0}.guide-page .guide-two-columns .button{margin-top:16px}@media(max-width:650px){.guide-flow{grid-template-columns:1fr;gap:28px}.guide-flow li:not(:last-child)::after{content:'↓';right:50%;top:auto;bottom:-29px}.guide-count-diagram{grid-template-columns:1fr;gap:8px}.guide-count-diagram>span{text-align:center}.guide-page .guide-two-columns{grid-template-columns:1fr}}

.genre-checks{border:1px solid var(--line);border-radius:10px;padding:12px;grid-column:1 / -1;min-width:0}.genre-checks legend{font-weight:700}.genre-checks>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.genre-checks label{display:flex;align-items:center;gap:8px;padding:8px;font-size:14px}.genre-checks input{width:18px;height:18px;flex-shrink:0;accent-color:var(--green)}.genre-checks p{font-size:14px;margin:8px 0 0}

.like-button{margin:12px 0}.like-button[aria-pressed=true]{background:var(--green);color:white}.liked-title-list{list-style:none;padding:0;margin:20px 0 0}.liked-title-list li{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line)}.liked-title-list a{color:var(--green);text-decoration:underline;overflow-wrap:anywhere}.liked-title-list button{flex-shrink:0}
/* Leaflet stays beneath site dialogs and navigation. */
.leaflet-surface{height:440px;width:100%;isolation:isolate;z-index:0;background:#f4f8fc}.position-picker{height:280px;width:100%;isolation:isolate;z-index:0;background:#f4f8fc}.position-fields{border:1px solid #454f70;border-radius:12px;padding:16px;margin:16px 0}.position-fields p{font-size:14px;margin-bottom:12px}.map-pin{display:flex;align-items:center;justify-content:center;background:#fff;color:#354bb3;border:2px solid #5170ff;border-radius:50% 50% 50% 0;transform:rotate(-10deg);width:34px;height:34px;box-shadow:0 2px 5px #0003;font-weight:700;font-size:14px}.map-pin.selected{background:#fff;color:#354bb3;box-shadow:0 2px 5px #0003}.tile-warning{background:#ffffff;color:#ffc58c;padding:8px;max-width:220px;font-size:13px}.leaflet-control-attribution{max-width:100%;white-space:normal}.leaflet-container button{color:inherit}.map-header{gap:8px;flex-wrap:wrap}@media(max-width:800px){.leaflet-surface{height:340px}.position-picker{height:250px}}
#auth-form [hidden],#migration-panel[hidden]{display:none!important}#auth-message{margin:18px 0;overflow-wrap:anywhere}#auth-help{margin:16px 0}

/* Compact home search controls */
.search-page .purpose-switch{margin-bottom:12px}
.search-page .search-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,170px) auto;gap:8px}
.search-page .search-input-wrap{min-width:0}
.search-page .search-row select{width:100%;min-width:0}
.mobile-menu-intro{border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:16px;margin-top:24px}
.mobile-menu-intro h3{font-size:16px;line-height:1.7;margin-bottom:10px}
.mobile-menu-intro p{font-size:14px;color:var(--muted);margin:0;line-height:1.8}
@media(max-width:800px){
 .search-page{padding-top:14px}
 .search-page .search-heading{display:none}
 .search-page .mobile-toggle{margin-bottom:10px}
 .search-page .purpose-switch button{padding:9px 6px;font-size:14px;min-height:44px}
 .search-page .search-panel{padding:10px;margin-bottom:14px}
 .search-page .search-row{grid-template-columns:minmax(0,1fr) 88px auto;gap:6px}
 .search-page .search-row input{padding:10px 8px;font-size:16px}
 .search-page .search-input-wrap span{display:none}
 .search-page .search-row select{padding:10px 3px;font-size:14px}
 .search-page .search-row>.button{padding:9px 8px;font-size:14px}
 .search-page .filters{margin-top:10px}
}

.material-viewer{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;padding:10px;background:var(--bg);border-radius:12px;align-items:start}.material-viewer .selection-materials{display:flex;flex-direction:column;gap:8px;margin:0}.material-viewer .chip{padding:8px 3px;min-height:40px;font-size:14px;white-space:nowrap}.material-viewer .selection-poster{min-width:0}.material-viewer .panel-poster{display:block;width:100%;height:auto;max-height:380px;object-fit:contain}.selection-body .material-viewer .panel-poster{height:auto}.material-viewer .selection-poster:focus-visible{outline-offset:0}

/* Task-oriented guide, with secondary explanations collapsed. */
.guide-refresh{max-width:1120px}.guide-refresh .guide-heading{margin-bottom:24px}.guide-refresh .guide-heading h1{font-size:clamp(23px,3vw,32px)}.guide-entry-grid,.guide-image-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.guide-entry{padding:24px;text-align:left;border:1px solid var(--line);border-radius:16px;background:#ffffff;color:var(--ink);font:inherit}.guide-entry:hover{border-color:var(--green);background:#dce9f7}.guide-entry h2{margin:12px 0 8px}.guide-entry p{font-size:15px;color:var(--muted)}.guide-entry-link{color:var(--green);font-weight:700;font-size:14px}.guide-intro{margin:16px 0 22px;color:var(--muted)}.guide-account-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.guide-account-cards article,.guide-image-rules article{border:1px solid var(--line);border-radius:12px;padding:20px;background:#ffffff}.guide-account-cards p,.guide-image-rules p{margin:8px 0 0}.guide-image-rules h3{margin-top:12px}.guide-faq{border:1px solid var(--line);border-radius:12px;background:#ffffff;margin:12px 0;overflow:hidden}.guide-faq summary{cursor:pointer;padding:16px 20px;font-weight:700;min-height:48px}.guide-faq[open] summary{color:var(--green);border-bottom:1px solid var(--line)}.guide-faq>div{padding:16px 20px}.guide-faq p:last-child{margin-bottom:0}.guide-refresh .guide-section{scroll-margin-top:20px}.guide-refresh .guide-contents{margin:24px 0}.guide-refresh .guide-contents button{font-size:14px}.guide-refresh .guide-list{padding-left:22px}.guide-refresh .guide-flow p{font-size:15px;line-height:1.8}
@media(max-width:600px){.guide-entry-grid,.guide-image-rules,.guide-account-cards{grid-template-columns:1fr}.guide-entry{padding:18px}.guide-entry h2{font-size:19px}.guide-refresh .guide-heading p br{display:none}.guide-refresh .guide-section{padding:20px 16px}.guide-faq summary{padding:14px;font-size:15px}.guide-faq>div{padding:14px}.guide-refresh .guide-section-heading h2{font-size:20px}.guide-refresh .guide-contents{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Distinct navigation index and persistent return control for the guide. */
.guide-toc-box{padding:24px;border:2px solid var(--green);border-radius:16px;background:var(--green-light)}.guide-toc-box>h2{font-size:24px;color:var(--green)}.guide-toc-box>p{margin:6px 0 0;font-size:15px}.guide-refresh .guide-toc-box .guide-contents{margin:18px 0 0}.guide-toc-box .guide-contents button{min-height:56px;background:#ffffff;box-shadow:0 2px 0 #5170ff15}.guide-toc-box .guide-contents strong{font-weight:600}.guide-toc-box .guide-toc-arrow{margin-left:auto;font-size:20px}.guide-reading-label{display:flex;align-items:center;gap:16px;margin:40px 0 22px;color:var(--muted);font-size:14px;font-weight:700}.guide-reading-label::after{content:'';height:1px;flex:1;background:var(--line)}.guide-refresh .guide-section{box-shadow:none}.guide-refresh .guide-intro{background:transparent;border:0;border-radius:0;padding:0}.guide-back-top{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 16px;border:1px solid white;border-radius:24px;background:var(--green);color:white;box-shadow:0 4px 16px #23294333;font-size:14px;font-weight:700}.guide-back-top span{font-size:22px;line-height:1}.guide-back-top:hover{background:#2a4073}.guide-refresh{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
@media(max-width:600px){.guide-toc-box{padding:18px 14px}.guide-refresh .guide-toc-box .guide-contents{grid-template-columns:1fr;gap:8px}.guide-toc-box .guide-contents button{padding:12px 14px}.guide-reading-label{margin-top:30px}.guide-back-top{padding:10px 14px}}

.map-legend{display:flex;flex-wrap:wrap;gap:8px 14px;padding:10px 16px;border-top:1px solid var(--line);font-size:14px;background:#ffffff}.map-legend b{color:var(--green)}#map-position-notice:not([hidden]){padding:12px 16px;background:var(--green-light);font-size:14px}.map-point-choice{display:block;text-align:left;padding:10px;border:0;border-bottom:1px solid var(--line);background:#ffffff;color:var(--ink);width:100%;font-size:14px}.map-pin{min-width:34px;width:auto;white-space:nowrap}#logout-dialog{max-width:380px}#logout-dialog p{margin:14px 0}#logout-dialog button{margin:4px}

/* Supplied logo includes the service name and tagline. */
header>.brand{display:block;flex:0 1 288px;min-width:0;max-width:100%;line-height:0}
.brand-logo{display:block;width:288px;max-width:100%;height:auto;object-fit:contain}
@media(max-width:800px){header>.brand{flex:1 1 0;min-width:0}.brand-logo{width:252px;max-width:70%;height:auto}header>.mobile-menu-button{flex:0 0 68px;min-width:68px;white-space:nowrap}}

/* Search introduction is visible on desktop and mobile. */
.search-page .search-heading{display:block;margin-bottom:16px}
.search-page .search-heading h1{font-size:20px;font-weight:600;line-height:1.65;margin:0}
.search-page .search-heading .count-caption{display:none}
.mobile-menu-intro h3{font-size:17px;font-weight:600;line-height:1.65;margin:0}
@media(max-width:800px){.search-page .search-heading h1{font-size:17px}}

.registration-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:20px 0}.registration-steps li{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.registration-steps span{font-size:14px}.registration-steps button{margin-top:auto}.publication-status{padding:12px 16px;background:var(--bg);font-size:16px}.managed-designs{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:16px 0}.managed-design{padding:16px;border:1px solid var(--line);border-radius:12px;min-width:0}.managed-design>strong{overflow-wrap:anywhere}.managed-images{display:flex;gap:8px;align-items:start}.managed-images figure{margin:0;flex:1;min-width:0}.managed-images img{width:100%;height:190px;object-fit:contain;background:#ffffff}.managed-images figcaption{font-size:14px;text-align:center}.design-actions{display:flex;gap:8px;flex-wrap:wrap}.registration-steps button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.registration-steps{grid-template-columns:1fr}.registration-steps li{display:grid;grid-template-columns:1fr auto;align-items:center}.registration-steps li>span{grid-column:1}.registration-steps li>button{grid-column:2;grid-row:1/3;margin:0}.managed-designs{grid-template-columns:1fr}}

/* A single vertical workflow, from event to design to placement. */
.sequential-management .management-stage{padding:22px;border-bottom:1px solid var(--line)}.sequential-management .management-stage:last-child{border-bottom:0}.management-stage h2{font-size:18px;line-height:1.5;margin:0 0 10px}.stage-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.event-stage-controls{display:flex;justify-content:space-between;align-items:center;gap:20px}.event-stage-controls>div{min-width:0;flex:1}.event-selector{max-width:100%;width:420px}.stage-publication{font-size:14px;color:var(--muted);margin:10px 0 0}.sequential-management .managed-designs{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.sequential-management .managed-designs>.form-hint{grid-column:1/-1}.placement-filter{width:220px;max-width:100%;margin:0 0 16px}.sequential-management button:disabled{opacity:.5;cursor:not-allowed}.sequential-management .table-wrap{margin:0 -22px -22px}.sequential-management .managed-images img{height:210px}@media(max-width:600px){.sequential-management .management-stage{padding:16px}.event-stage-controls{align-items:stretch;flex-direction:column;gap:8px}.sequential-management .managed-designs{grid-template-columns:1fr}.sequential-management .table-wrap{margin:0 -16px -16px}.stage-buttons{gap:8px}.management-stage .button.small{font-size:14px}}

.design-image-field{margin:16px 0}.editor-design-image{display:block;max-width:100%;width:auto;height:190px;object-fit:contain;margin:12px 0}.editor-design-image[hidden]{display:none}.image-picker{position:relative;display:inline-block;cursor:pointer}.image-picker input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.image-picker:focus-within{outline:2px solid var(--green);outline-offset:3px}.editor-preview-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.editor-preview-pair figure{margin:0;min-width:0}.editor-preview-pair img{width:100%;height:210px;object-fit:contain;background:#ffffff}.editor-preview-pair figcaption{font-size:14px;margin-top:8px}.design-image-field .form-hint{overflow-wrap:anywhere}

.website-links{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.withdrawal-section{border-color:var(--green)}.withdrawal-section p{margin:12px 0}

.announcement-time{border:0;padding:0;margin:0;min-width:0}.announcement-time legend{font-weight:700;margin-bottom:10px}.announcement-time input[type=time]{width:100%;min-width:0}

#detail-map-dialog{width:min(760px,calc(100vw - 24px));max-width:760px;padding:20px}#detail-map-dialog::backdrop{background:rgba(30,20,15,.55)}.detail-map-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.detail-map-heading h2{font-size:20px}.detail-map-heading button{flex-shrink:0}#detail-place-map{height:min(60dvh,480px);min-height:240px;width:100%;margin-top:12px;border-radius:12px}body:has(#detail-map-dialog[open]){overflow:hidden}

/* Legal navigation and independent signup reader */
.notices-page{max-width:900px}.legal-index{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.legal-index a,.legal-link{text-decoration:underline;text-underline-offset:3px}.legal-index a{padding:10px}.notices-page section{scroll-margin-top:24px;min-height:120px}
#signup-consent{margin:20px 0}.consent-row{display:flex;align-items:flex-start;gap:10px;margin:12px 0}.consent-row input{width:20px;height:20px;min-height:20px;flex:none;margin:2px 0;accent-color:var(--accent,#5170ff)}.legal-link{background:none;border:0;color:#2a4073;cursor:pointer;font:inherit;padding:0;margin:0;display:inline;min-height:0}
.legal-dialog{width:min(680px,calc(100vw - 32px));max-height:85dvh;padding:24px;border:0;border-radius:18px}.legal-dialog::backdrop{background:rgba(40,25,18,.5)}#signup-legal-body{min-height:90px;margin:20px 0}body:has(.legal-dialog[open]){overflow:hidden}

.consent-row>span{line-height:1.6}.consent-row label{display:inline;cursor:pointer}.legal-link:focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* Hide member-only feedback entries before session verification and after logout. */
html:not([data-account-state="signed-in"]) [data-beta-feedback]{display:none!important}
/* Shared bottom navigation: keep controls clear of the phone gesture area. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.with-bottom-nav{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:110;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:stretch;background:#ffffff;border-top:1px solid var(--line);padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left));box-shadow:0 -3px 16px #2329430c}
.bottom-nav a{display:flex;flex-direction:column;justify-content:center;gap:3px;min-height:56px;height:auto;padding:3px 0;border:0;border-radius:8px;font-size:14px;font-weight:700;line-height:1.3;color:var(--muted)}
.bottom-nav a[aria-current=page]{color:var(--green);background:var(--lavender)}
.bottom-nav a::before{content:'';display:block;width:23px;height:23px;background:currentColor;mask:var(--bottom-icon) center/contain no-repeat;-webkit-mask:var(--bottom-icon) center/contain no-repeat}
.bottom-nav [data-bottom=home]{--bottom-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round' d='M3 10 12 3l9 7M5 9v12h5v-7h4v7h5V9'/%3E%3C/svg%3E")}
.bottom-nav [data-bottom=map]{--bottom-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round' d='m3 5 6-2 6 2 6-2v16l-6 2-6-2-6 2Zm6-2v16m6-14v16'/%3E%3C/svg%3E")}
.bottom-nav [data-bottom=account]{--bottom-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3Cpath d='M4 22v-3a8 8 0 0 1 16 0v3'/%3E%3C/g%3E%3C/svg%3E")}
.bottom-nav [data-bottom=auth]{--bottom-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' d='M12 2v10M6 5a9 9 0 1 0 12 0'/%3E%3C/svg%3E")}
.with-bottom-nav #toast{bottom:calc(86px + env(safe-area-inset-bottom,0px));z-index:120}
.with-bottom-nav .guide-back-top{bottom:calc(86px + env(safe-area-inset-bottom,0px))}
.search-page{padding-top:18px}
.search-page .explorer:not(.has-detail){display:block}
.search-page .explorer[data-view=list]:not(.has-detail)>.map-panel{display:none}
.search-page .explorer[data-view=map]>.result-column{display:none}
@media(max-width:800px){.with-bottom-nav .selection-detail{bottom:calc(74px + env(safe-area-inset-bottom,0px));max-height:45dvh}}
/* Left navigation on desktop; matching left drawer on phones. */
@media(min-width:801px){
 body:has(header>nav){padding-left:232px}
 header{flex-wrap:nowrap;min-height:88px;gap:20px}
 header>nav{position:fixed;inset:0 auto 0 0;width:232px;height:100dvh;z-index:115;display:flex;flex-direction:column;align-items:stretch;align-self:auto;gap:4px;flex-wrap:nowrap;padding:24px 16px;background:#ffffff;border-right:1px solid var(--line);overflow-y:auto;overscroll-behavior:contain}
 header>nav::before{content:'メニュー';display:block;padding:4px 12px 18px;color:var(--muted);font-size:14px;font-weight:700;letter-spacing:.08em}
 header>nav a{flex:none;display:flex;align-items:center;width:100%;height:auto;min-height:46px;padding:10px 12px;border:0;border-radius:8px;white-space:normal;overflow-wrap:anywhere;font-size:15px;line-height:1.5}
 header>nav a:hover,header>nav a.active,header>nav a[aria-current=page]{color:var(--green);background:var(--lavender)}
 body:has(header>nav)>.bottom-nav{left:232px}
}
.mobile-drawer{inset:0 auto 0 0;margin:0 auto 0 0;box-shadow:12px 0 40px #23294326}
@media(max-width:800px){
 header>.mobile-menu-button{order:-1;margin-left:0;margin-right:8px}
 header>.brand{flex:1;min-width:0}
 header .brand-logo{width:252px;max-width:100%}
}
/* Keep category tags on one scrollable row at every screen size. */
.search-page .search-panel{min-width:0;max-width:100%}
.search-page .filters{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:8px;overscroll-behavior-x:contain;scrollbar-width:thin}
.search-page .filters .chip{flex:0 0 auto;white-space:nowrap}
.search-page .result-column{min-width:0}
.search-page .explorer:not(.has-detail) .flyer-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.search-page .flyer-card{min-width:0}
.search-page .card-summary{min-width:0;overflow-wrap:anywhere}
.search-page .flyer-list>.empty{grid-column:1/-1}
@media(min-width:641px){
 .search-page .explorer:not(.has-detail) .flyer-card{grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-content:start;gap:16px}
 .search-page .explorer:not(.has-detail) .poster-thumb{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#ffffff}
}
@media(min-width:641px) and (max-width:1199px){
 .search-page .explorer:not(.has-detail) .flyer-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .search-page .explorer:not(.has-detail) .flyer-list{grid-template-columns:minmax(0,1fr);gap:13px}
}

.announcement-dialog{width:min(760px,calc(100% - 24px));max-width:760px;max-height:88dvh;padding:24px;border:1px solid var(--line);border-radius:18px;overflow:auto;background:#ffffff;color:var(--text)}
.announcement-dialog::backdrop,#logout-confirm-dialog::backdrop{background:rgb(35 25 20 / 55%)}
.announcement-dialog .selection-body{overflow:visible;max-height:none;padding:0}
.announcement-dialog .panel-poster{width:100%;height:auto;max-height:50dvh;object-fit:contain}
body:has(.announcement-dialog[open]){overflow:hidden}
#logout-confirm-dialog{width:min(440px,calc(100% - 32px));border:1px solid var(--line);border-radius:16px;padding:24px}
#logout-confirm-dialog .actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}
@media(max-width:640px){.announcement-dialog{padding:18px}}

/* Use the same full-artwork frame in cards, details and the image viewer. */
.artwork-frame{position:relative;display:block;aspect-ratio:1;background:#ffffff;overflow:hidden}
.artwork-crop{position:absolute;display:block;left:50%;top:50%;transform:translate(-50%,-50%);overflow:hidden}
.artwork-crop img{position:absolute;display:block;max-width:none!important;max-height:none!important;object-fit:fill!important}
.artwork-frame>.artwork-original{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.search-page .explorer .flyer-card{grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:center}
.search-page .explorer .poster-thumb{width:100%;height:auto;aspect-ratio:1}
.poster-display .detail-poster.artwork-frame,.announcement-dialog .panel-poster.artwork-frame{width:100%;height:auto;max-height:none;aspect-ratio:1}
#large-poster .lightbox-artwork{width:min(560px,75vh);max-width:100%;height:auto;margin:auto;aspect-ratio:1}
@media(max-width:640px){.search-page .explorer .flyer-card{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:14px}}

/* Independent columns keep each artwork in its column as images load. */
.search-page .explorer:not(.has-detail) .flyer-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;align-items:start}
.gallery-column{display:flex;flex-direction:column;gap:16px;min-width:0}
.search-page .explorer .flyer-card{display:block;width:100%;padding:0;margin:0;border:0;border-radius:8px;background:transparent;box-shadow:none;overflow:hidden;line-height:0}
.search-page .explorer .flyer-card:hover{transform:none;box-shadow:0 3px 12px #23294324}
.search-page .explorer .flyer-card:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.search-page .gallery-artwork{display:block;width:100%;height:auto;aspect-ratio:auto;background:transparent}
.search-page .gallery-artwork>.artwork-original{position:static;display:block;width:100%;height:auto;object-fit:contain}
.search-page .gallery-artwork>.artwork-crop{width:100%!important;height:100%!important;left:0;top:0;transform:none}
@media(max-width:1599px){.search-page .explorer:not(.has-detail) .flyer-list{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1199px){.search-page .explorer:not(.has-detail) .flyer-list{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:899px){.search-page .explorer:not(.has-detail) .flyer-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.search-page .explorer:not(.has-detail) .flyer-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-column{gap:10px}}

#announcement-places-map{height:340px;width:100%;border:1px solid var(--line);border-radius:12px;margin:12px 0;isolation:isolate}
.announcement-map-section{margin-top:24px}
.announcement-place-info{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.announcement-place-info strong{font-size:16px}
.announcement-place-info p{margin:6px 0}
.announcement-place-info+.announcement-place-info{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.unlocated-places{margin-top:16px;font-size:14px}.unlocated-places summary{cursor:pointer;padding:8px 0}
@media(max-width:640px){#announcement-places-map{height:300px}}

/* Desktop navigation lives in the persistent sidebar; mobile keeps its bottom bar. */
@media(min-width:801px){
 .bottom-nav{display:none}
 body.with-bottom-nav{padding-bottom:0}
 .with-bottom-nav #toast{bottom:24px}
 .with-bottom-nav .guide-back-top{bottom:24px}
}

.storage-usage progress{display:block;width:100%;height:16px;accent-color:var(--primary,#5170ff);margin:12px 0}.storage-usage progress[hidden]{display:none}
/* Pricing and location-first registration */
.pricing-refresh .pricing-hero{text-align:center;padding:28px 8px 38px}.pricing-hero h1{font-size:clamp(27px,4vw,44px);line-height:1.45;margin:12px 0 20px}.pricing-hero p{line-height:1.9}.pricing-refresh .plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.pricing-refresh .plan-card{display:flex;flex-direction:column;min-width:0}.pricing-refresh .plan-card .button{margin-top:auto}.pricing-refresh .plan-card>small{margin-top:14px;line-height:1.7}.pricing-refresh .price small{display:block;font-size:14px;margin-top:8px}.sponsor-card{display:flex;align-items:center;gap:24px;justify-content:space-between;margin-top:28px}.sponsor-card .button{flex-shrink:0}.pricing-refresh details{padding:18px 0;border-bottom:1px solid var(--line)}.pricing-refresh summary{font-weight:700;cursor:pointer}.pricing-refresh details p{line-height:1.9}.pricing-comparison{width:100%;min-width:580px}.pricing-comparison th,.pricing-comparison td{text-align:left;padding:14px}.pricing-comparison tbody th{font-weight:600}#form-fields [data-placement-field][hidden]{display:none}#form-fields h3{margin:24px 0 12px}@media(max-width:1050px){.pricing-refresh .plan-grid{grid-template-columns:1fr}.sponsor-card{flex-direction:column;align-items:flex-start}}

.pricing-refresh .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.pricing-refresh .plan-grid{grid-template-columns:1fr}}
.facility-code{overflow-wrap:anywhere;font-size:14px}.facility-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.facility-shared{border-top:1px solid var(--line);padding:16px 0}.facility-shared p{overflow-wrap:anywhere}.facility-management input,.facility-management select,.facility-management textarea{max-width:100%}

/* Plan guides: one account at a time, with keyboard-accessible tabs. */
.account-guide{max-width:1100px}.account-guide .guide-heading{text-align:center;margin-bottom:30px}.account-guide-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:26px}.account-guide-tabs button{border:1px solid var(--line);border-radius:12px;background:#ffffff;color:var(--text);padding:15px 8px;font:inherit;font-weight:700;cursor:pointer}.account-guide-tabs button[aria-selected=true]{background:var(--green);border-color:var(--green);color:white}.account-guide-tabs button:focus-visible{outline:3px solid #2a4073;outline-offset:3px}.guide-account-panel[hidden]{display:none!important}.guide-plan-heading{margin:24px 0}.guide-plan-heading h2{font-size:clamp(24px,3vw,32px);margin:14px 0}.account-guide .guide-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0;list-style:none}.account-guide .guide-flow li{min-width:0}.account-guide .guide-flow li:after{display:none}.guide-subheading{font-size:22px;margin:34px 0 18px}.guide-common{margin-top:36px}.account-guide .guide-bottom{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.beta-plan-note{background:#dce9f7;border:1px solid var(--line);border-radius:14px;padding:18px;max-width:740px;margin:24px auto 0}.beta-plan-note p{font-size:14px;margin:8px 0 0}.plan-guide-link{display:block;text-align:center;margin-top:16px;font-weight:700}.pricing-contract-note{font-size:14px;line-height:1.8;margin:18px 0 30px;color:var(--muted)}.pricing-refresh .plan-card h2{line-height:1.5;font-size:25px}@media(max-width:640px){.account-guide .guide-flow{grid-template-columns:1fr}.account-guide-tabs{gap:6px}.account-guide-tabs button{font-size:14px;padding:14px 4px}.account-guide .guide-bottom a{width:100%;text-align:center}}
.saved-announcement-dialog{width:min(1100px,96vw);max-width:96vw;height:90vh;height:90dvh;max-height:94vh;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--bg)}
.saved-announcement-dialog[open]{display:flex;flex-direction:column}.saved-announcement-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;background:#ffffff;border-bottom:1px solid var(--line);flex-shrink:0}.saved-announcement-heading h2{font-size:18px;margin:0}.saved-announcement-heading button{font-size:14px}.saved-announcement-dialog iframe{width:100%;flex:1;min-height:0;border:0;background:var(--bg)}
.detail-embed body,.detail-embed body.with-bottom-nav{padding:0!important;margin:0!important}.detail-embed header,.detail-embed #bottom-nav,.detail-embed .footer,.detail-embed .breadcrumb{display:none!important}.detail-embed #app{margin:0!important}.detail-embed .page{padding:20px!important;margin:auto!important}
@media(max-width:600px){.saved-announcement-heading{padding:10px;gap:6px}.saved-announcement-heading h2{font-size:15px}.saved-announcement-heading button{font-size:12px;padding:10px}}

/* A taller overview with choice popups contained within its edges. */
#search-map{height:clamp(520px,72vh,820px);height:clamp(520px,72svh,820px)}
.map-choice-popup .leaflet-popup-content{overflow-wrap:anywhere;margin:30px 20px 16px}
.map-choice-popup .leaflet-popup-close-button{width:30px;height:30px;font-size:24px}
.map-choice-popup.map-popup-shifted .leaflet-popup-tip-container{display:none}
@media(max-width:800px){#search-map{height:clamp(420px,68vh,640px);height:clamp(420px,68svh,640px)}}

/* Shared dark surfaces across account, forms, guides and management pages. */
:root{color-scheme:light;--text:#20365e;--shadow:0 8px 30px #00000030}
header,header>nav,.bottom-nav{background:#ffffff}
.brand-logo{background:#ffffff}
a{color:#2a4073}
input,select,textarea{color-scheme:light;background:#f4f8fc;color:#20365e;border-color:#b7c9df}
input::placeholder,textarea::placeholder{color:#60738e;opacity:1}
dialog{background:#ffffff;color:#20365e;border-color:#b7c9df}
dialog::backdrop{background:#0009}
.button{color:#fff}
.button:hover{background:#405de0;color:#fff}
.button.secondary,.button.quiet{color:#2a4073}
.button.secondary:hover,.button.quiet:hover{background:#dce9f7;color:#fff}
nav a.active,.eyebrow{color:#2a4073}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#292929;color-scheme:light}
.leaflet-container a.leaflet-popup-close-button{color:#666}
.leaflet-control-attribution{color-scheme:light;color:#333}
.leaflet-control-attribution a{color:#0078a8}
#mfa-qr{background:#fff;padding:12px}

.leaflet-popup .map-point-choice{background:#fff;color:#292929;border-color:#ededed}
.leaflet-popup .map-point-choice:hover{background:#f4f4f4}

/* A consistent current-page indicator on every navigation surface. */
header>nav a,header>nav a[data-account-entry]{color:#20365e}
header>nav a:hover{background:#dce9f7;color:#fff}
header>nav a.active,header>nav a[aria-current=page],
.mobile-drawer nav a.active,.mobile-drawer nav a[aria-current=page],
.bottom-nav a[aria-current=page]{background:#dce9f7;color:#2a4073}
header>nav a:focus-visible,.mobile-drawer nav a:focus-visible{outline:2px solid #2a4073;outline-offset:2px}

/* Informational pages share the My Page content width and responsive gutters. */
.page.account-guide,.page.pricing-refresh,.page.feedback-page,.page.notices-page{max-width:900px}

/* One compact header across every mobile route, including home and map. */
@media(max-width:800px){
 body>header,body:has(.search-page)>header{height:64px;min-height:64px;padding:10px 16px;gap:16px;justify-content:space-between;flex-wrap:nowrap}
 body>header>.brand,body:has(.search-page)>header>.brand{order:0;flex:0 1 130px;width:130px;max-width:calc(100% - 60px);min-width:0;margin:0}
 body>header>.brand .brand-logo,body:has(.search-page)>header>.brand .brand-logo{width:130px;max-width:100%;height:auto}
 body>header>.mobile-menu-button,body:has(.search-page)>header>.mobile-menu-button{order:1;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;margin:0 0 0 auto;padding:10px;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--ink)}
 body>header>.mobile-menu-button>span:not(.hamburger-lines){display:none}
 .mobile-drawer{inset:0 0 0 auto;margin:0 0 0 auto;box-shadow:-12px 0 40px #23294326}
}

/* Ended saved announcements are text-only, including their detail dialog. */
.saved-text-link{border:0;background:transparent;padding:0;color:var(--accent,#5170ff);text-align:left;text-decoration:underline;font:inherit;cursor:pointer}
.saved-ended-meta{display:block;font-size:.8rem;color:var(--muted,#aaa);line-height:1.6}
.liked-title-list li:has(.saved-ended-meta){flex-wrap:wrap}
.saved-ended-dialog{width:min(560px,calc(100vw - 32px));max-height:85dvh;overflow:auto;background:#ffffff;color:#f4f4f5;border:1px solid #35353b;border-radius:16px;padding:24px}
.saved-ended-dialog::backdrop{background:#0009}
.saved-ended-dialog h2{overflow-wrap:anywhere}

/* Shared desktop/mobile menu groups follow the same order. */
header>nav .menu-divider,.mobile-drawer nav .menu-divider{display:block;flex:none;align-self:stretch;width:auto;height:1px;border:0;background:#45454d;margin:12px 12px}
.mobile-drawer nav a{border-bottom:0}

/* Registration-free public browsing; reveal management entry only after session validation. */
[data-account-entry][hidden]{display:none!important}
