/* 週末イベントの1日プラン（おでまる 愛知の weekend と同じ見た目） */
.btn-plan{border:0;background:#2E64C7;color:#fff;border-radius:999px;font:inherit;font-weight:800;font-size:13.5px;
  padding:11px 16px;cursor:pointer;min-height:44px;flex:1 1 100%;text-align:center}
.btn-plan:hover{background:#2553a8}
.btn-plan[disabled]{background:#c8c4bd;cursor:not-allowed}
/* ---- プランナー（安城デモから移植。色はこのページの配色に合わせる） ---- */
#planDlg{--main:#2E64C7; --main-d:#2553a8; --main-dd:#1d4184; --main-l:#e8effb; --main-ll:#f3f7fd; --main-line:#b9cdf0; --line:#e7ddcd; --sub:#7a746a;
  --accent-l:#fff4e6; --panel:#f7f8fa; --faint:#8a8378; --ok:#1c7a4a; --ok-l:#e4f4ec; --warn:#8a5a00; --warn-l:#fdf1dc}
dialog#planDlg{border:0;padding:0;border-radius:16px 16px 0 0;width:100%;max-width:640px;margin:auto auto 0;max-height:92vh;background:#fff;box-shadow:0 -8px 40px rgba(0,0,0,.24)}
dialog#planDlg::backdrop{background:rgba(40,35,30,.45)}
.dlg-head{position:sticky;top:0;background:#fff;display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);z-index:1}
.dlg-head h2{margin:0;font-size:1rem;flex:1;line-height:1.4}
.btn-x{border:0;background:#f1ede6;width:38px;height:38px;border-radius:50%;font-size:18px;cursor:pointer;flex:0 0 auto}
.dlg-body{padding:12px 14px 24px;overflow:auto;max-height:calc(92vh - 62px)}
.pl-days{display:flex;gap:8px;margin:0 0 10px}
.pl-day{flex:1;min-height:44px;border:2px solid var(--line);background:#fff;border-radius:10px;font:inherit;font-weight:800;color:var(--sub);cursor:pointer}
.pl-day.on{border-color:var(--main);color:var(--main-dd);background:var(--main-l)}
.pl-datesingle{margin:0 0 8px;font-weight:800;color:var(--main-dd)}
.pl-flow{margin:0 0 12px;padding:8px 12px;background:var(--main-ll);border:1px solid var(--main-line);border-radius:10px;font-size:.9rem;font-weight:800;color:var(--main-dd)}
.pl-notes{margin:0 0 10px}
.pl-notes p{margin:4px 0;font-size:.83rem;color:var(--warn);background:var(--warn-l);border-radius:8px;padding:7px 10px;line-height:1.6}
.pl-list{list-style:none;margin:0;padding:0}
.pl-row{display:flex;gap:12px;position:relative;padding:0 0 20px}
.pl-row::before{content:'';position:absolute;left:27px;top:34px;bottom:-2px;width:2px;background:var(--main-line)}
.pl-row:last-child::before{display:none}
.pl-time{flex:0 0 56px;text-align:center}
.pl-time span{display:block;font-weight:800;color:var(--main-dd);font-size:.95rem}
.pl-time i{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--main-l);border:2px solid var(--main-line);font-style:normal;font-size:1rem;margin-top:2px}
.pl-body{flex:1;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.pl-row.ev .pl-body{background:var(--accent-l);border-color:#f5dcb9}
.pl-leg{font-size:.78rem;color:var(--faint);margin-bottom:4px}
.pl-head{font-size:.78rem;font-weight:800;color:var(--sub);margin-bottom:2px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.pl-swap{border:1.5px solid var(--main-line);background:#fff;color:var(--main-d);border-radius:999px;font:inherit;font-size:.72rem;font-weight:800;padding:3px 10px;cursor:pointer;flex:0 0 auto;line-height:1.2}
.pl-body strong{font-size:1rem;line-height:1.45;display:inline}
.pl-local,.pl-chain{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;font-size:.72rem;font-weight:800;vertical-align:2px}
.pl-local{background:var(--ok-l);color:var(--ok)}
.pl-chain{background:#eef2f4;color:var(--sub)}
.pl-sub{font-size:.82rem;color:var(--sub);margin-top:3px}
.pl-sub2{font-size:.8rem;color:var(--sub);margin-top:3px;line-height:1.55}
.pl-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.pl-chips span{background:var(--main-l);color:var(--main-dd);border:1px solid var(--main-line);border-radius:999px;padding:2px 9px;font-size:.74rem;font-weight:700}
.pl-note{margin-top:6px;font-size:.78rem;color:var(--warn)}
.pl-links{display:flex;gap:12px;margin-top:7px}
.pl-links a{font-size:.82rem;font-weight:800;color:var(--main-d);text-decoration:none}
.pl-gmaps{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin-top:4px;background:#1a73e8;color:#fff;border-radius:12px;font-weight:800;font-size:.95rem;text-decoration:none}
.pl-gmapsnote{margin:5px 0 10px;font-size:.73rem;color:var(--sub);text-align:center}
.pl-again{width:100%;min-height:48px;margin-top:4px;border:2px solid var(--main);background:#fff;color:var(--main-dd);border-radius:10px;font:inherit;font-weight:800;cursor:pointer}
.pl-empty{padding:14px;background:var(--warn-l);border-radius:10px;color:var(--warn);font-size:.9rem}
.pl-foot{margin:12px 0 0;font-size:.76rem;color:var(--faint);line-height:1.7}
.card>.btn-plan{display:block;width:100%;margin:10px 0 0}
@media(min-width:640px){.card>.btn-plan{max-width:420px}}
