/* LPと同じデザイン（../nana-brand-lp/assets/css/style.css に合わせる）。
   見た目はこのファイルに集約し、style.css・admin.css の後に読み込む。担当：Claude Code（COLLAB.md） */
:root{
  --ivory:#fcfaf6;--ivory-2:#f7f3ec;--lav:#c9bfd6;--lav-deep:#8f83a3;--sage:#a6ad98;--sage-deep:#7f8872;
  --gold:#cbb184;--gold-deep:#a98d5f;--ink:#63524d;--ink-soft:#85766f;--line:#e7ded3;
  --serif:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP",serif;
  --sans:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Noto Sans JP",sans-serif;
  --grad:linear-gradient(110deg,#8f83a3,#9ca894 55%,#cbb184);
  color:var(--ink);font-family:var(--sans);background:var(--ivory);
}
body{min-height:100vh;padding:28px 18px 40px;background:linear-gradient(180deg,#fff 0%,var(--ivory) 45%,#f3eef6 100%);color:var(--ink);letter-spacing:.03em}

/* ===== 利用者向けの画面（案内・アンケート・特典） ===== */
main{max-width:440px;margin:0 auto;padding:0;border:0;border-radius:0;background:transparent}
.brand{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 26px;font-family:var(--serif);font-size:16px;letter-spacing:.2em;color:var(--ink);line-height:1.2}
.brand img{width:34px;height:auto}
.brand small{display:block;font-family:var(--sans);font-size:9.5px;letter-spacing:.14em;color:var(--ink-soft)}
h1{margin:0;text-align:center;font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.75;letter-spacing:.1em;color:var(--ink)}
h1:focus{outline:none}
p{line-height:2;font-size:14.5px}
#status{margin:14px 0 0;text-align:center;color:var(--ink-soft);font-size:14px}

/* ボタン：LPと同じグラデーションの丸ボタン */
button,a{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin:18px 0 0;padding:16px 22px;border:0;border-radius:999px;background:var(--grad);color:#fff;font-family:var(--serif);font-size:15px;letter-spacing:.12em;text-decoration:none;box-shadow:0 16px 26px -18px rgba(99,82,77,.7);transition:transform .2s ease,filter .2s ease}
button:hover,a:hover{transform:translateY(-1px);filter:brightness(1.04)}
button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
#survey-reward{background:linear-gradient(110deg,#cbb184,#b9a06f)}
/* 補助のボタン（確認し直す・友だち追加の別画面など）は白地に */
#retry,#survey-retry,#survey-friend,#add-link,#login,#survey-login,#line-entry-login{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none;font-family:var(--sans);font-size:14px;letter-spacing:.06em}
/* 直接開いたときの戻り先（R09）：講座ページは主ボタン、公式サイト・問い合わせは白地 */
.course-links[hidden]{display:none}
.course-links a:nth-child(n+3){background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none;font-family:var(--sans);font-size:14px;letter-spacing:.06em}

/* アンケート */
#survey{margin-top:22px}
fieldset{margin:0 0 16px;padding:20px 18px 18px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 20px 36px -30px rgba(99,82,77,.5)}
legend{float:left;width:100%;margin-bottom:6px;padding:0;font-family:var(--serif);font-weight:500;font-size:16px;line-height:1.7;letter-spacing:.06em;color:var(--ink)}
legend+*{clear:both}
.question-hint{margin:0 0 10px;color:var(--gold-deep);font-size:12px;letter-spacing:.06em}
.choice{display:flex;gap:10px;align-items:flex-start;margin:8px 0 0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:14px;line-height:1.7;cursor:pointer;transition:background .15s ease,border-color .15s ease}
.choice:has(input:checked){background:rgba(201,191,214,.2);border-color:var(--lav)}
.choice input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--lav-deep)}
.choice:focus-within{outline:2px solid var(--gold);outline-offset:2px}
#survey-complete{margin-top:8px;padding:24px 20px;border:1px solid var(--line);border-radius:22px;background:#fff;text-align:center;box-shadow:0 20px 36px -30px rgba(99,82,77,.5)}
#survey-complete::before{content:"Gift";display:block;font-family:"Cormorant Garamond","Times New Roman",serif;font-style:italic;font-size:30px;color:var(--gold-deep)}
#survey-delivery{font-size:13.5px;color:var(--ink-soft)}

/* 小さな説明・リンク */
.privacy{margin-top:26px;text-align:center;color:#a2958c;font-size:11.5px;line-height:1.9}
.policy-link{display:inline;width:auto;margin:0;padding:0;border-radius:0;background:none;color:var(--ink-soft);font-family:inherit;font-size:inherit;letter-spacing:inherit;text-decoration:underline;box-shadow:none}
.policy-link:hover{transform:none}

/* ===== 管理画面 ===== */
body.admin{padding:0 0 60px;background:var(--ivory)}
body.admin main{max-width:1040px;padding:24px 20px}
body.admin .brand{justify-content:flex-start;margin-bottom:12px}
body.admin h1{text-align:left;font-size:20px}
body.admin h2{margin:30px 0 10px;font-family:var(--serif);font-weight:500;font-size:18px;letter-spacing:.08em;color:var(--ink)}
body.admin h3{font-family:var(--serif);font-weight:500;font-size:16px;letter-spacing:.06em}
.admin #admin-status{position:sticky;top:0;z-index:5;margin:0 -20px;padding:12px 20px;background:rgba(252,250,246,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(6px);font-size:13.5px;color:var(--ink-soft)}
/* メニュー：タブ風 */
.admin nav{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 8px}
.admin nav button{width:auto;margin:0;padding:9px 18px;border:1px solid var(--line);background:#fff;color:var(--ink);font-family:var(--sans);font-size:13.5px;letter-spacing:.06em;box-shadow:none}
.admin nav button[aria-pressed="true"],.admin nav button[aria-current],.admin nav button.is-active{background:var(--lav-deep);border-color:var(--lav-deep);color:#fff}
/* 操作ボタン：小さめの丸ボタン */
.admin button{display:inline-flex;width:auto;margin:6px 8px 6px 0;padding:10px 20px;min-height:42px;font-size:13.5px;letter-spacing:.08em;background:var(--lav-deep);box-shadow:none}
.admin .tools button+button,.admin button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}
.admin a{display:inline;width:auto;margin:0;padding:0;border-radius:0;background:none;color:var(--lav-deep);font-family:inherit;font-size:inherit;letter-spacing:inherit;text-decoration:underline;box-shadow:none}
.admin a:hover{transform:none}
/* 入力欄 */
.admin label{margin:14px 0;font-size:13.5px;color:var(--ink-soft);letter-spacing:.04em}
.admin input[type=text],.admin input[type=url],.admin input[type=number],.admin input[type=datetime-local],.admin textarea,.admin select{margin-top:6px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-family:var(--sans);font-size:14.5px}
.admin input:focus,.admin textarea:focus,.admin select:focus{outline:none;border-color:var(--lav);box-shadow:0 0 0 3px rgba(201,191,214,.35)}
.admin input[type=checkbox]{accent-color:var(--lav-deep)}
/* カード */
.admin fieldset,.admin details{float:none;margin:16px 0;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 32px -30px rgba(99,82,77,.45)}
.admin legend{float:none;width:auto;font-size:15px}
.admin details>summary{cursor:pointer;font-family:var(--serif);font-size:15px;letter-spacing:.06em}
.admin section section{border-top:1px solid var(--line)}
.admin pre{border-radius:12px;background:var(--ivory-2);color:var(--ink);font-size:14px;line-height:1.9}
/* 表 */
.admin .scroll{border:1px solid var(--line);border-radius:14px;background:#fff}
.admin table{font-size:13.5px}
.admin th{background:var(--ivory-2);color:var(--ink-soft);font-weight:500;letter-spacing:.04em}
.admin td,.admin th{padding:10px 12px;border-bottom:1px solid var(--line)}
.admin tr:last-child td{border-bottom:0}
/* タグ・バッジ（Codexが class を付けたら効く） */
.tag,.badge{display:inline-block;margin:2px 4px 2px 0;padding:2px 10px;border-radius:999px;background:rgba(201,191,214,.3);color:var(--lav-deep);font-size:12px;letter-spacing:.04em}
.badge--ok{background:rgba(166,173,152,.25);color:var(--sage-deep)}
.badge--warn{background:rgba(203,177,132,.25);color:var(--gold-deep)}

@media (max-width:400px){body{padding:20px 14px 32px}h1{font-size:20px}fieldset{padding:18px 14px 16px}}

/* ===== 回答・集計（Codexが付ける class に合わせた見た目） ===== */
.admin-card{margin:16px 0;padding:20px 22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 32px -30px rgba(99,82,77,.45)}
.admin-card h3{margin:0 0 12px}
.admin-table{width:100%;border-collapse:collapse;font-size:13.5px}
.admin-table th{background:var(--ivory-2);color:var(--ink-soft);font-weight:500;text-align:left}
.admin-table td,.admin-table th{padding:10px 12px;border-bottom:1px solid var(--line)}
.result-bar{display:grid;grid-template-columns:minmax(8em,14em) 1fr auto;gap:12px;align-items:center;margin:8px 0;font-size:13.5px}
.result-bar__label{color:var(--ink);line-height:1.6}
.result-bar__track,.result-bar>.result-bar__fill:first-child{height:10px;border-radius:999px;background:var(--ivory-2);overflow:hidden}
.result-bar__fill{display:block;height:10px;border-radius:999px;background:var(--grad);min-width:2px}
.result-bar__value{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}
@media (max-width:600px){.result-bar{grid-template-columns:1fr auto}.result-bar__track,.result-bar__fill{grid-column:1/-1}}

/* ===== 特典（Gift）画面：うれしさが伝わる装飾 ===== */
#survey-complete{position:relative;overflow:hidden;padding:34px 22px 26px;border:0;background:
  radial-gradient(circle at 12% 18%,rgba(203,177,132,.55) 0 3px,transparent 4px),
  radial-gradient(circle at 86% 14%,rgba(201,191,214,.9) 0 4px,transparent 5px),
  radial-gradient(circle at 92% 62%,rgba(166,173,152,.7) 0 3px,transparent 4px),
  radial-gradient(circle at 6% 70%,rgba(201,191,214,.8) 0 3px,transparent 4px),
  radial-gradient(circle at 24% 92%,rgba(203,177,132,.6) 0 2px,transparent 3px),
  radial-gradient(circle at 74% 90%,rgba(203,177,132,.5) 0 2px,transparent 3px),
  linear-gradient(180deg,#fff 0%,#fffdf8 60%,#f8f2fb 100%);
  box-shadow:0 0 0 1px rgba(203,177,132,.45),0 26px 44px -30px rgba(143,131,163,.6)}
#survey-complete::before{content:"Gift";position:relative;display:block;margin:0 auto 4px;font-size:40px;line-height:1.1;letter-spacing:.04em;
  background:linear-gradient(110deg,#a98d5f,#cbb184 45%,#8f83a3);-webkit-background-clip:text;background-clip:text;color:transparent}
/* 上部のリボン */
#survey-complete::after{content:"";position:absolute;top:0;left:50%;width:120px;height:6px;transform:translateX(-50%);border-radius:0 0 6px 6px;background:var(--grad)}
#survey-delivery{position:relative;margin-top:8px}
/* 星のきらめき（Giftの左右） */
#survey-complete:not([hidden]){animation:gift-pop .6s cubic-bezier(.2,.9,.3,1.2) both}
#survey-complete #survey-delivery::before,#survey-complete #survey-delivery::after{content:"✦";position:absolute;top:-46px;font-size:16px;color:var(--gold);animation:gift-twinkle 2.4s ease-in-out infinite}
#survey-complete #survey-delivery::before{left:22%}
#survey-complete #survey-delivery::after{right:22%;font-size:12px;color:var(--lav-deep);animation-delay:1.1s}
#survey-reward{margin-top:22px;font-size:16px;padding:18px 22px}
@keyframes gift-pop{from{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:none}}
@keyframes gift-twinkle{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
@media (prefers-reduced-motion:reduce){#survey-complete:not([hidden]),#survey-complete #survey-delivery::before,#survey-complete #survey-delivery::after{animation:none}}
/* プレゼントボックスの絵（Giftの上） */
#survey-complete{padding-top:24px}
#survey-complete::before{padding-top:96px;background-image:linear-gradient(110deg,#a98d5f,#cbb184 45%,#8f83a3)}
#survey-complete{background-image:url(/gift-box.svg),
  radial-gradient(circle at 12% 18%,rgba(203,177,132,.55) 0 3px,transparent 4px),
  radial-gradient(circle at 86% 14%,rgba(201,191,214,.9) 0 4px,transparent 5px),
  radial-gradient(circle at 92% 62%,rgba(166,173,152,.7) 0 3px,transparent 4px),
  radial-gradient(circle at 6% 70%,rgba(201,191,214,.8) 0 3px,transparent 4px),
  radial-gradient(circle at 24% 92%,rgba(203,177,132,.6) 0 2px,transparent 3px),
  radial-gradient(circle at 74% 90%,rgba(203,177,132,.5) 0 2px,transparent 3px),
  linear-gradient(180deg,#fff 0%,#fffdf8 60%,#f8f2fb 100%);
  background-repeat:no-repeat;background-size:96px 90px,auto,auto,auto,auto,auto,auto,auto;background-position:center 26px,0 0,0 0,0 0,0 0,0 0,0 0,0 0}
/* 集計の横棒（progress要素）と絞り込み（2026-11-03） */
progress.result-bar__fill{-webkit-appearance:none;appearance:none;width:100%;height:10px;border:0;border-radius:999px;background:var(--ivory-2);overflow:hidden;vertical-align:middle}
progress.result-bar__fill::-webkit-progress-bar{background:var(--ivory-2);border-radius:999px}
progress.result-bar__fill::-webkit-progress-value{background:var(--grad);border-radius:999px}
progress.result-bar__fill::-moz-progress-bar{background:var(--grad);border-radius:999px}
.admin-table td .result-bar{grid-template-columns:1fr auto;margin:0;min-width:9em}
.admin-table td .result-bar__label{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px}
.admin-filter{background:var(--ivory);border-style:dashed}
.admin-filter label{margin:0}
.results-summary{font-size:13px;color:var(--ink-soft);margin:6px 0 14px}
.customer-source{display:inline-block;font-size:12px;color:var(--ink-soft);background:var(--ivory-2);border-radius:999px;padding:2px 10px;margin:2px 4px 2px 0}
/* 自動応答・予約中止の連絡（2026-11-03） */
.admin-keyword{border-left:4px solid var(--lav)}
.admin-keyword-history{background:var(--ivory)}
.admin-cancellation{border-left:4px solid #cbb184}
.admin-cancellation-preview{white-space:pre-wrap;background:#f3eef6;border-radius:18px 18px 18px 4px;padding:14px 16px;margin:10px 0;line-height:1.8;font-size:14px;color:var(--ink);max-width:32em}
/* リッチ配信・友だち情報・配信の効果・予約配信（2026-11-03） */
.admin-message-editor{background:var(--ivory);border:1px solid var(--line);border-radius:18px;padding:16px}
.message-card-editor{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.message-preview{background:#e9e4ef;border-radius:18px;padding:16px;display:grid;gap:10px}
.message-bubble{background:#fff;color:var(--ink);border-radius:18px 18px 18px 4px;padding:12px 14px;line-height:1.75;font-size:14px;white-space:pre-wrap;box-shadow:0 1px 2px rgba(99,82,77,.08)}
.message-preview img{border-radius:12px;display:block}
.message-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px rgba(99,82,77,.12);max-width:18rem}
.message-card img{border-radius:0;width:100%}
.message-card h3,.message-card h4,.message-card strong{font-family:var(--serif);color:var(--ink);display:block;margin:10px 14px 4px;font-size:15px}
.message-card p{margin:0 14px 10px;font-size:13px;color:var(--ink-soft);line-height:1.7}
.message-card a,.message-card button{display:block;text-align:center;margin:0;padding:10px;border-top:1px solid var(--line);color:var(--lav-deep);background:#fff;font-size:13.5px;text-decoration:none;width:100%;border-radius:0}
.message-carousel{padding-bottom:6px;scroll-snap-type:x mandatory}
.message-carousel .message-card{scroll-snap-align:start}
.admin-profile-field{border-left:4px solid var(--sage)}
.admin-customer-profile{background:var(--ivory);border-radius:14px;padding:12px 14px}
.admin-profile-filter{background:var(--ivory);border:1px dashed var(--line);border-radius:14px;padding:12px 14px}
.admin-effects td,.admin-effects th{font-variant-numeric:tabular-nums}
.admin-effects .muted,.admin-effects small{color:var(--ink-soft);font-size:12px}
.admin-campaign{border-left:4px solid var(--gold)}
.admin-campaign-preview{background:#f3eef6;border-radius:14px;padding:12px 16px;color:var(--ink);font-size:14px}
/* お子さんの月齢（歳・か月の選択）2026-11-03 */
.child-age{display:grid;gap:10px;margin-top:8px}
.child-age__row{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.child-age__row[hidden]{display:none}
.child-age__row h3{grid-column:1/-1;margin:0;font-family:var(--serif);font-size:14px;font-weight:600;color:var(--ink)}
.child-age__row label{display:grid;gap:4px;font-size:12.5px;color:var(--ink-soft);margin:0}
.child-age__row select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--ivory);color:var(--ink);font:inherit;font-size:15px}
.child-age__row select:disabled{opacity:.5}
.child-age__add{justify-self:start;width:auto;min-height:0;box-shadow:none;padding:8px 16px;border:1px dashed var(--lav-deep);border-radius:999px;background:transparent;color:var(--lav-deep);font:inherit;font-size:13.5px;cursor:pointer}
.child-age__add[hidden]{display:none}
.child-age>label{display:flex;gap:10px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:14px;cursor:pointer}
.child-age>label:has(input:checked){background:rgba(201,191,214,.2);border-color:var(--lav)}
.child-age>label input{width:18px;height:18px;margin:0;accent-color:var(--lav-deep)}
/* 管理画面：枠なしデザイン（2026-11-03 本人の要望。枠の入れ子で幅が狭くなるのをやめる） */
.admin .admin-card,.admin fieldset,.admin details,.admin-message-editor,.message-card-editor,.admin-customer-profile,.admin-profile-filter,.admin-filter,.admin-keyword-history{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;margin:0}
.admin .admin-card,.admin-content>fieldset,.admin-content>details{padding:22px 0 26px;border-top:1px solid var(--line)}
.admin .admin-card:first-child,.admin-content>fieldset:first-child,.admin-content>details:first-child{border-top:0;padding-top:8px}
.admin .admin-card .admin-card,.admin .admin-card fieldset,.admin .admin-card details,.admin fieldset fieldset,.admin-message-editor .message-card-editor{padding:14px 0 4px;border-top:1px dashed var(--line);margin-top:14px}
.admin .admin-card h3,.admin fieldset legend,.admin details summary{font-family:var(--serif);font-size:16px;color:var(--ink);padding:0;margin:0 0 10px}
.admin .admin-card .admin-card h3,.message-card-editor h3,.message-card-editor h4,.message-card-editor legend{font-family:var(--sans);font-size:14px;font-weight:700}
.admin-keyword,.admin-cancellation,.admin-profile-field,.admin-campaign{border-left:0}
.admin-keyword>h3::before,.admin-campaign>h3::before,.admin-profile-field>h3::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--lav);margin-right:8px;vertical-align:middle}
.admin input,.admin textarea,.admin select{background:#fff}
.admin-message-editor button,.message-card-editor button{min-height:0;padding:6px 12px;margin:4px 6px 4px 0;font-size:12.5px;letter-spacing:.04em;background:transparent;color:var(--lav-deep);border:1px solid var(--lav)}
.admin-message-editor>button:last-of-type,.admin-message-editor .primary{background:var(--lav-deep);color:#fff;border-color:var(--lav-deep)}
.message-preview{margin-top:8px}
@media (max-width:600px){
 body.admin{padding-left:14px;padding-right:14px}
 body.admin main{padding-left:0;padding-right:0}
 .admin .admin-card,.admin-content>fieldset,.admin-content>details{padding:18px 0 22px}
}
/* 管理メニュー：5つのまとまり（下に固定）＋中のタブ（2026-11-03） */
.admin nav.admin-nav{display:block;margin:6px 0 4px}
.admin-subnav{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0 10px;border-bottom:1px solid var(--line)}
.admin-subnav::-webkit-scrollbar{display:none}
.admin .admin-subnav button{flex:0 0 auto;margin:0;padding:7px 14px;min-height:0;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font-size:13.5px;letter-spacing:.04em;box-shadow:none}
.admin .admin-subnav button[aria-pressed="true"]{background:rgba(201,191,214,.35);color:var(--ink);font-weight:700}
.admin .admin-subnav button[hidden]{display:none}
.admin-groups{position:fixed;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:4px 4px calc(4px + env(safe-area-inset-bottom))}
.admin .admin-groups button{margin:0;padding:10px 2px;min-height:48px;border:0;border-radius:12px;background:transparent;color:var(--ink-soft);font-size:12.5px;letter-spacing:.02em;box-shadow:none;justify-content:center;width:100%}
.admin .admin-groups button[aria-pressed="true"]{color:var(--lav-deep);font-weight:700;background:rgba(201,191,214,.22)}
body.admin{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
@media (min-width:900px){
 .admin-groups{position:static;display:flex;gap:6px;background:transparent;border:0;padding:0 0 8px;backdrop-filter:none}
 .admin .admin-groups button{width:auto;padding:9px 20px;min-height:0;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;color:var(--ink)}
 .admin .admin-groups button[aria-pressed="true"]{background:var(--lav-deep);border-color:var(--lav-deep);color:#fff}
 .admin nav.admin-nav{display:flex;flex-direction:column-reverse}
 body.admin{padding-bottom:60px}
}
/* 配信後の分岐・予定通数・ブロック多め（2026-11-03） */
.admin-campaign-branch{padding:10px 0 4px;border-top:1px dashed var(--line);margin-top:12px}
.admin-quota{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:12px 0;font-size:14px;line-height:1.8}
.admin-quota--warn{background:#fbf5e8;border-color:var(--gold)}
.admin-quota--over{background:#f9ecec;border-color:#c98b8b;color:#7a3f3f;font-weight:600}
.effect-block-high,.effect-block-high td{background:#f9ecec}
.effect-block-high td:first-child::after{content:"ブロック多め";display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:#c98b8b;color:#fff;font-size:11px;font-weight:600}
/* 一覧の見出しと「＋ 新規作成」（2026-11-04） */
.admin-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 14px}
.admin-list-head h2,.admin-list-head h3{margin:0}
.admin .admin-list-add{margin:0;padding:10px 18px;min-height:0;border-radius:999px;background:var(--lav-deep);color:#fff;font-size:14px;font-weight:600;letter-spacing:.06em;white-space:nowrap;box-shadow:0 8px 16px -10px rgba(99,82,77,.6)}
.admin-list-item{display:block;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin:0 0 10px;color:var(--ink);cursor:pointer}
.admin-list-item:active{background:var(--ivory)}
.admin-savebar{position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));z-index:15;display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:rgba(255,255,255,.97);border-top:1px solid var(--line);padding:10px 0;margin-top:20px}
@media (min-width:900px){.admin-savebar{bottom:0}}
.admin-back{background:transparent!important;color:var(--lav-deep)!important;border:0!important;padding:4px 0!important;min-height:0!important;font-size:14px!important}
.admin-section{padding-top:16px;margin-top:16px;border-top:1px solid var(--line)}
.admin .admin-list-head{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;text-align:left;margin:6px 0 14px}
.admin .admin-list-head h2{text-align:left;font-size:19px;margin:0;flex:1 1 auto;min-width:0}
.admin .admin-list-head .admin-list-add{flex:0 0 auto}
.admin-list-item .admin-list-open{display:block;width:100%;text-align:left;background:transparent!important;color:var(--ink)!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0 0 4px!important;min-height:0!important;font-family:var(--serif);font-size:16px;font-weight:600;letter-spacing:.04em}
.admin-list-item p{margin:0;font-size:13px;color:var(--ink-soft);line-height:1.7}
.admin-editor h2{text-align:left;font-size:19px}
.admin-savebar p{flex:1 1 100%;margin:0;font-size:12.5px;color:#a0662f}
.admin-advanced{margin-top:18px}
/* 講座ページからの案内（2026-11-05） */
.admin-guide-lead{font-size:13px;color:var(--ink-soft);margin:0 0 14px;line-height:1.8}
.admin-guide-card .admin-guide-label{margin:10px 0 6px;font-size:11.5px;font-weight:700;letter-spacing:.08em;color:var(--lav-deep)}
.admin-guide-card .message-bubble{background:#e9e4ef;border-radius:4px 18px 18px 18px;max-height:9.5em;overflow:hidden;position:relative;font-size:13px}
.admin-guide-card .message-bubble::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2.2em;background:linear-gradient(transparent,#e9e4ef)}
/* 下メニュー：アイコンと色・高さ固定、詳細の開閉と一覧カードの「押せる」目印、重複表示の非表示（2026-11-05） */
.admin-groups{height:calc(66px + env(safe-area-inset-bottom,0px));padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:#fff;box-shadow:0 -6px 18px -12px rgba(99,82,77,.35);align-items:stretch}
.admin .admin-groups button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:54px;min-height:54px;max-height:54px;padding:4px 2px;font-size:11.5px;font-weight:600;color:var(--ink-soft);border-radius:14px}
.admin .admin-groups button::before{content:"";width:22px;height:22px;background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.admin .admin-groups button[aria-pressed="true"]{background:var(--lav-deep);color:#fff}
.admin-groups button[data-group="home"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011%2012%204l9%207%22/%3E%3Cpath%20d%3D%22M5.5%209.5V20h13V9.5%22/%3E%3Cpath%20d%3D%22M10%2020v-6h4v6%22/%3E%3C/svg%3E")}
.admin-groups button[data-group="collect"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%228%22%20r%3D%223.2%22/%3E%3Cpath%20d%3D%22M3.5%2019c.6-3.2%202.8-5%205.5-5s4.9%201.8%205.5%205%22/%3E%3Cpath%20d%3D%22M18%208v6M15%2011h6%22/%3E%3C/svg%3E")}
.admin-groups button[data-group="know"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%226%22/%3E%3Cpath%20d%3D%22m16%2016%204.5%204.5%22/%3E%3C/svg%3E")}
.admin-groups button[data-group="deliver"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205h16v11H9l-5%204z%22/%3E%3C/svg%3E")}
.admin-groups button[data-group="review"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020V10M10%2020V4M16%2020v-7M21%2020H3%22/%3E%3C/svg%3E")}
@media (min-width:900px){.admin-groups{height:auto;box-shadow:none;background:transparent}.admin .admin-groups button{flex-direction:row;height:auto;min-height:0;max-height:none;gap:8px;font-size:14px}}
.admin-content section .admin-send-status{display:none}
.admin summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--lav-deep);font-weight:600;font-size:14px}
.admin summary::-webkit-details-marker{display:none}
.admin summary::after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.admin details[open]>summary::after{transform:rotate(-135deg) translateY(-2px)}
.admin details[open]>summary{margin-bottom:10px}
.admin-list-item{position:relative;padding-right:40px;box-shadow:0 6px 14px -12px rgba(99,82,77,.5)}
.admin-list-item::after{content:"";position:absolute;right:18px;top:24px;width:9px;height:9px;border-right:2px solid var(--lav-deep);border-top:2px solid var(--lav-deep);transform:rotate(45deg)}
.admin-list-item .admin-list-open{color:var(--lav-deep)!important}
.admin details>summary{display:flex;align-items:center;gap:8px;padding:11px 14px;margin:0;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--lav-deep);font-family:var(--sans);font-weight:700;font-size:14px}
.admin details[open]>summary{margin-bottom:10px;background:var(--ivory)}
/* タグのチップ・リッチメニューのプレビュー・一覧の切替ボタン（2026-11-05） */
.tag-picker{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px}
.tag-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:13px;color:var(--ink);cursor:pointer;line-height:1.4}
.tag-chip input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.tag-chip::before{content:"";width:14px;height:14px;border-radius:50%;border:1.5px solid var(--lav);flex:0 0 auto}
.tag-chip--on{background:var(--lav-deep);border-color:var(--lav-deep);color:#fff}
.tag-chip--on::before{border-color:#fff;background:#fff;box-shadow:inset 0 0 0 3px var(--lav-deep)}
.menu-preview{margin:10px 0 14px}
.menu-preview img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--line)}
.menu-preview__area{font-size:12.5px;color:var(--ink-soft);line-height:1.6}
.admin-version-summary{font-size:13px;color:var(--ink-soft);margin:4px 0 10px}
.admin .admin-list-toggle{position:absolute;right:12px;bottom:10px;margin:0;padding:5px 12px;min-height:0;font-size:12px;border-radius:999px;background:#fff;color:var(--lav-deep);border:1px solid var(--lav)}
.admin-list-item{padding-bottom:16px}
.menu-preview svg{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--line);color:#fff;background:var(--ivory)}
.menu-preview svg text{fill:#fff;font-family:var(--sans);font-weight:700;paint-order:stroke;stroke:rgba(99,82,77,.55);stroke-width:6px}
.menu-preview ul{margin:8px 0 0;padding-left:1.2em;font-size:12.5px;color:var(--ink-soft);line-height:1.8;overflow-wrap:anywhere}
.menu-preview__count{font-size:12.5px;color:var(--ink-soft)}
.survey-intro{margin:0 0 28px;white-space:pre-line;text-align:center;font-size:14.5px;line-height:2.1;color:var(--ink,#5a4a40);letter-spacing:.04em}
/* 2026-11-05 メニューを帯に（PC）／一覧の区切り */
@media (min-width:900px){
 .admin nav.admin-nav{margin:10px 0 18px}
 .admin-groups{display:flex;gap:4px;padding:6px;margin:0 0 10px;border-radius:18px;background:linear-gradient(110deg,rgba(143,131,163,.16),rgba(166,173,152,.14) 55%,rgba(203,177,132,.16));box-shadow:inset 0 0 0 1px rgba(143,131,163,.14)}
 .admin .admin-groups button{flex:1 1 0;justify-content:center;padding:14px 10px;border:0;border-radius:13px;background:transparent;color:var(--ink);font-size:15px;font-weight:600;letter-spacing:.08em}
 .admin .admin-groups button:hover{background:rgba(255,255,255,.6)}
 .admin .admin-groups button[aria-pressed="true"]{background:var(--lav-deep);color:#fff;box-shadow:0 8px 18px -10px rgba(99,82,77,.55)}
 .admin-subnav{gap:2px;padding:0 4px;border-bottom:1px solid var(--line)}
 .admin .admin-subnav button{padding:12px 18px;border-radius:0;border-bottom:3px solid transparent;margin-bottom:-1px;font-size:14px}
 .admin .admin-subnav button[aria-pressed="true"]{background:transparent;border-bottom-color:var(--lav-deep);color:var(--lav-deep)}
}
.admin-list .admin-list-item{border-bottom:1px solid var(--line);border-radius:0;padding-top:16px;padding-bottom:16px}
.admin-list .admin-list-item:last-of-type{border-bottom:0}
.admin-list .admin-list-item:hover{background:rgba(201,191,214,.12)}
.tag-chip--on,.tag-chip--on span,.admin .tag-chip--on span{color:#fff!important;font-weight:600}
/* ===== 管理画面の見直し（2026-11-05 見本どおり） ===== */
.admin{--ok:#6f8f6a;--ok-soft:#e8f0e5;--off:#9a8f88;--off-soft:#f1eeeb;--wait:#a0783f;--wait-soft:#f7efe0;--lav-soft:#f1edf6;--sage-soft:#eef1ea;--gold-soft:#f7f0e3}
/* 自動送信の札 */
.admin .send-pill{display:inline-flex;align-items:center;gap:6px;margin:4px 0 10px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em}
.admin .send-pill::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.admin .send-pill--on{background:var(--ok-soft);color:var(--ok)}
.admin .send-pill--off{background:var(--wait-soft);color:var(--wait)}
/* 一覧の見出し */
.admin .admin-list-head{align-items:flex-start;margin:18px 0 16px}
.admin .admin-list-title{flex:1 1 auto;min-width:0}
.admin .admin-list-head h2{font-size:21px;letter-spacing:.06em}
.admin .admin-count{margin-left:10px;font-family:var(--sans);font-size:12.5px;font-weight:500;color:var(--ink-soft);letter-spacing:.02em}
.admin .admin-lead{margin:4px 0 0;font-size:13px;line-height:1.8;color:var(--ink-soft)}
.admin-empty{padding:22px 18px;color:var(--ink-soft);font-size:13px;text-align:center}
/* 一覧：白い面の中で1件ずつ区切る */
.admin-rows{background:#fff;border-radius:16px;box-shadow:0 1px 0 var(--line),0 12px 26px -24px rgba(79,65,60,.6);overflow:hidden}
.admin .admin-rows>.admin-list-item{margin:0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;padding:16px 92px 16px 18px}
.admin .admin-rows>.admin-list-item:first-child{border-top:0}
.admin .admin-rows>.admin-list-item:hover{background:rgba(201,191,214,.1)}
.admin .admin-rows>.admin-list-item::after{right:20px;top:50%;margin-top:-5px}
.admin-list-item .admin-list-open{font-size:15px!important;font-weight:700!important;color:var(--ink)!important;letter-spacing:.03em}
.admin .admin-meta{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0}
.admin .meta-chip{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--lav-soft);color:#6d627f;font-size:12px;line-height:1.7}
.admin .meta-chip:nth-child(3n+2){background:var(--gold-soft);color:#8a7046}
.admin .meta-chip:nth-child(3n){background:var(--sage-soft);color:#5f6a55}
.state-pill{display:inline-block;padding:3px 11px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em;white-space:nowrap}
.state-pill--ok{background:var(--ok-soft);color:var(--ok)}
.state-pill--off{background:var(--off-soft);color:var(--off)}
.state-pill--wait{background:var(--wait-soft);color:var(--wait)}
.admin .admin-list-state{position:absolute;right:42px;top:16px}
/* 一覧の中の小さな操作（コピー・有効化など）は、控えめな札型 */
.admin .admin-rows>.admin-list-item>button:not(.admin-list-open){margin:10px 8px 0 0;padding:5px 14px;min-height:0;font-size:12.5px;border-radius:999px;background:#fff;color:var(--lav-deep);border:1px solid var(--lav);box-shadow:none}
.admin .admin-rows>.admin-list-item>.admin-list-toggle{position:static}
.admin .admin-rows>.admin-list-item>.badge{display:none}
/* 編集：番号付きのまとまり・面 */
.admin .admin-editor-body>.admin-section,.admin .admin-step,.admin .admin-editor-body>fieldset,.admin .admin-editor-body>details:not(.admin-advanced){background:#fff;border:0;border-radius:16px;padding:18px 18px 8px;margin:0 0 14px;box-shadow:0 12px 26px -24px rgba(79,65,60,.6)}
.admin .admin-step h3{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-family:var(--sans);font-size:15px}
.admin .admin-step-num{font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--lav-deep);color:#fff;font-size:13px;display:grid;place-items:center;flex:0 0 auto}
.admin .admin-step-hint{font-weight:400;color:var(--ink-soft);font-size:12px}
.admin .admin-hint{font-size:12.5px;color:var(--ink-soft);margin:2px 0 10px}
/* タグの条件：色分けした3つの枠＋例 */
.admin .tag-picker{display:block;border:0;border-radius:14px;padding:12px 14px;margin:0 0 10px}
.admin .tag-picker legend{float:left;width:100%;padding:0;margin:0;font-family:var(--sans);font-weight:700;font-size:13.5px;color:var(--ink)}
.admin .tag-picker--all{background:#f6f3fa}.admin .tag-picker--any{background:#f2f5ef}.admin .tag-picker--none{background:#faf5ee}
.admin .tag-picker-example{clear:both;margin:2px 0 8px;font-size:12px;color:var(--ink-soft)}
.admin .tag-picked{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px}
.admin .tag-picked .tag-chip{border:0;padding:5px 12px;font-size:12.5px}
.admin .tag-picked .tag-chip::before{display:none}
.admin .tag-picked .tag-chip::after{content:"×";margin-left:2px;opacity:.8}
.admin .tag-picker--any .tag-picked .tag-chip{background:#7f8a72}.admin .tag-picker--none .tag-picked .tag-chip{background:#b0915f}
.admin .tag-none{font-size:12px;color:var(--ink-soft)}
.admin .tag-more>summary{display:inline-flex;padding:5px 14px;border:1px dashed var(--lav-deep);border-radius:999px;background:transparent;font-size:12.5px;width:auto}
.admin .tag-more>summary::after{display:none}
.admin .tag-more[open]>summary{background:#fff;margin-bottom:8px}
.admin .tag-list{display:flex;flex-wrap:wrap;gap:6px}
.admin .admin-profile-filter{background:#fff;border:1px dashed var(--line);border-radius:14px;padding:4px}
.admin .admin-profile-filter>summary{border:0;background:transparent}
@media (max-width:600px){
 .admin .admin-list-head{flex-direction:column;align-items:stretch}
 .admin .admin-list-head .admin-list-add{align-self:flex-start}
 .admin .admin-rows>.admin-list-item{padding:14px 40px 14px 14px}
 .admin .admin-list-state{position:static;display:inline-block;margin-top:8px}
 .admin .admin-editor-body>.admin-section,.admin .admin-step{padding:16px 14px 6px}
}
/* 回答・集計 */
.admin .admin-reports .admin-filter{background:#fff;border:0;border-radius:16px;padding:16px 18px;box-shadow:0 12px 26px -24px rgba(79,65,60,.6);display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end}
.admin .admin-reports .admin-filter>label{flex:1 1 320px}
.admin .admin-reports .admin-filter>button{margin:0;padding:8px 16px;min-height:0;font-size:13px;border-radius:999px;background:#fff;color:var(--lav-deep);border:1px solid var(--lav);box-shadow:none}
.admin .admin-reports .admin-version-summary{flex:1 1 100%;margin:0}
.admin .report-narrow{flex:1 1 100%}
.admin .report-narrow[open]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.admin .report-narrow[open]>summary{grid-column:1/-1}
.admin .report-narrow>summary{display:inline-flex;width:auto;border:1px dashed var(--lav-deep);border-radius:999px;padding:6px 14px;font-size:13px}
.admin .report-narrow>summary::after{display:none}
.admin .report-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 8px}
.admin .report-kpi{background:#fff;border-radius:16px;padding:14px 18px;box-shadow:0 12px 26px -24px rgba(79,65,60,.6)}
.admin .report-kpi small{display:block;color:var(--ink-soft);font-size:12px}
.admin .report-kpi b{display:block;font-family:"Shippori Mincho",serif;font-size:26px;font-weight:600;color:var(--ink);line-height:1.4}
.admin .results-summary{font-size:12px;color:var(--ink-soft);margin:4px 0 14px}
.admin .report-card{background:#fff;border-radius:16px;padding:16px 20px 10px;margin:0 0 12px;box-shadow:0 12px 26px -24px rgba(79,65,60,.6)}
.admin .report-card h3{font-family:var(--sans);font-size:14.5px;margin:0 0 8px}
.admin .report-card table{width:100%;border:0;background:transparent}
.admin .report-card thead{display:none}
.admin .report-card tr{display:grid;grid-template-columns:minmax(0,1fr) 56px;grid-template-areas:"label count" "bar bar";gap:2px 10px;padding:7px 0;border:0;background:transparent!important}
.admin .report-card th,.admin .report-card td{border:0!important;background:transparent!important;padding:0!important;font-weight:400;font-size:13px;text-align:left}
.admin .report-card th{grid-area:label}
.admin .report-card td:nth-of-type(1){grid-area:count;text-align:right;color:var(--ink-soft)}
.admin .report-card td:nth-of-type(2){grid-area:bar}
@media (max-width:600px){.admin .report-kpis{grid-template-columns:1fr 1fr}.admin .report-kpi:last-child{grid-column:1/-1}}
.admin .quota-big{margin:4px 0 6px;font-size:13px;color:var(--ink-soft)}
.admin .quota-big b{font-family:"Shippori Mincho",serif;font-size:28px;color:var(--ink);font-weight:600}
.admin progress.quota-meter{display:block;width:100%;height:10px;border:0;border-radius:999px;background:var(--lav-soft);overflow:hidden;-webkit-appearance:none;appearance:none}
.admin progress.quota-meter::-webkit-progress-bar{background:var(--lav-soft);border-radius:999px}
.admin progress.quota-meter::-webkit-progress-value{background:linear-gradient(90deg,var(--lav-deep),var(--sage));border-radius:999px}
.admin progress.quota-meter::-moz-progress-bar{background:var(--lav-deep)}
.admin .admin-quota{background:#fff;border:0;box-shadow:0 12px 26px -24px rgba(79,65,60,.6);border-radius:16px;padding:16px 18px}
.admin .admin-step>fieldset.tag-picker--all,.admin .admin-editor-body>fieldset.tag-picker--all{background:#f6f3fa;box-shadow:none}
.admin .admin-step>fieldset.tag-picker--any,.admin .admin-editor-body>fieldset.tag-picker--any{background:#f2f5ef;box-shadow:none}
.admin .admin-step>fieldset.tag-picker--none,.admin .admin-editor-body>fieldset.tag-picker--none{background:#faf5ee;box-shadow:none}
.admin .admin-count-box{margin:6px 0 10px;padding:10px 14px;border-radius:12px;background:var(--lav-soft);color:#6d627f;font-weight:700;font-size:13px}
.admin .admin-count-box p{margin:0;color:inherit}
#status{white-space:pre-line;line-height:1.9}
.booking-details{background:#fff;border-radius:18px;padding:18px 20px;margin:18px 0;box-shadow:0 12px 26px -22px rgba(79,65,60,.55)}
.booking-details .booking-title{font-family:"Shippori Mincho",serif;font-size:17px;margin:0 0 6px;color:var(--ink)}
.booking-details .booking-summary{margin:4px 0;font-size:14px;line-height:1.8}
.booking-details .booking-sub{color:var(--ink-soft);font-size:12.5px}
.booking-details .booking-cancel{margin-top:14px;background:#fff!important;color:var(--ink-soft)!important;border:1px solid var(--line)!important;box-shadow:none!important;font-size:13px}
/* iPhoneは16px未満の入力欄を押すと画面を拡大する（揺れ・縮小の原因）。入力欄はすべて16pxにする。 */
.admin input:not([type=checkbox]):not([type=radio]),.admin select,.admin textarea,.child-age__row select,#survey-form input:not([type=checkbox]):not([type=radio]),#survey-form textarea,#survey-form select{font-size:16px!important}
html,body{overscroll-behavior-x:none}
body.admin{overflow-x:hidden;touch-action:pan-y pinch-zoom}
/* 保存ボタンの列は入力中も動かさない（動かすと押した瞬間に位置がずれて空振りする） */
/* 保存ボタンの列を低く・1行に */
.admin .admin-savebar{gap:8px;padding:8px 0;flex-wrap:wrap;overflow-x:visible}
.admin .admin-savebar p{flex:1 1 100%;font-size:11.5px}
.admin .admin-savebar button{flex:0 0 auto;margin:0;padding:9px 16px;min-height:0;font-size:13.5px;letter-spacing:.04em;border-radius:999px;white-space:nowrap}
.admin .admin-savebar button.secondary,.admin .admin-savebar button:not(:last-child){background:#fff;color:var(--lav-deep);border:1px solid var(--lav)}
.admin .choice-grid{display:grid;gap:8px;margin:8px 0}
.admin .choice-row{display:grid;grid-template-columns:minmax(0,1fr) 40px 40px 40px;gap:6px;align-items:end}
.admin .choice-row>label{margin:0}
.admin .choice-row>button{margin:0;padding:0;height:46px;min-height:0;border-radius:12px;background:#fff;color:var(--lav-deep);border:1px solid var(--line);box-shadow:none;font-size:16px}
.admin .choice-row>button:disabled{opacity:.35}
.admin .choice-row>.choice-delete{font-size:0}
.admin .choice-row>.choice-delete::before{content:"×";font-size:18px;color:#a0662f}
.admin .admin-question>button{margin:6px 6px 0 0;padding:7px 14px;min-height:0;font-size:13px;border-radius:999px;background:#fff;color:var(--lav-deep);border:1px solid var(--lav);box-shadow:none}
.admin .admin-question>button:last-of-type{color:#a0662f;border-color:#e3c9a8}
/* 管理画面のヘッダーを1行に（ブランド・見出し・自動送信の札） */
body.admin .admin-header{display:flex;align-items:center;gap:10px;margin:0 0 6px;padding:8px 0}
body.admin .admin-header .brand{margin:0;transform:scale(.82);transform-origin:left center}
body.admin .admin-header h1{margin:0;font-size:15px;letter-spacing:.12em;color:var(--ink-soft);flex:1 1 auto;text-align:left}
body.admin #admin-send-slot .send-pill{margin:0;font-size:11px;padding:4px 10px;white-space:nowrap}
body.admin #admin-status.admin-status{position:fixed;border:0;backdrop-filter:none;left:50%;top:12px;z-index:40;transform:translate(-50%,-12px);max-width:calc(100% - 32px);margin:0;padding:8px 16px;border-radius:999px;background:rgba(79,65,60,.92);color:#fff;font-size:13px;line-height:1.5;box-shadow:0 10px 24px -12px rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
body.admin #admin-status.admin-status.admin-status--show{opacity:1;transform:translate(-50%,0)}
body.admin .admin-header>*{flex:0 0 auto;min-width:0}
body.admin .admin-header .brand{display:flex;align-items:center;gap:6px;white-space:nowrap;writing-mode:horizontal-tb}
body.admin .admin-header .brand span,body.admin .admin-header .brand small{writing-mode:horizontal-tb;white-space:nowrap}
body.admin .admin-header h1{flex:1 1 auto;white-space:nowrap;writing-mode:horizontal-tb;overflow:hidden;text-overflow:ellipsis}
/* 編集画面では、行き先の入力欄があるので、絵の下の行き先一覧は出さない */
.admin .admin-step .menu-preview ul{display:none}
/* 選択肢：入力欄を広く・折り返して全文表示。↑↓×は小さく右に */
.admin .choice-row{grid-template-columns:minmax(0,1fr) 34px 34px 34px;gap:4px}
.admin .choice-row>button{height:40px;border-radius:10px;font-size:15px}
.admin textarea.choice-text{min-height:46px;resize:none;overflow:hidden;line-height:1.5;padding:10px 12px}
body.admin main{padding-top:8px}
body.admin .admin-header{padding:4px 0;margin:0 0 4px}
body.admin nav.admin-nav{margin:0 0 4px}
/* 一覧のオン・オフのスイッチ */
.admin .admin-rows>.admin-list-item>.list-switch{position:absolute;right:40px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;margin:0;cursor:pointer}
.admin .list-switch input{appearance:none;-webkit-appearance:none;width:46px;height:28px;margin:0;border-radius:999px;background:#ddd5cf;position:relative;cursor:pointer;transition:background .2s}
.admin .list-switch input::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.admin .list-switch input:checked{background:var(--ok)}
.admin .list-switch input:checked::after{transform:translateX(18px)}
.admin .list-switch__label{font-size:10.5px;color:var(--ink-soft);white-space:nowrap}
.admin .admin-rows>.admin-list-item:has(.list-switch){padding-right:104px}
@media (max-width:600px){.admin .admin-rows>.admin-list-item:has(.list-switch){padding-right:100px}}
/* お知らせは下のメニューの上に出す（上に出すとLINEのブラウザで切れる）。長い文も折り返して全文見せる。 */
body.admin #admin-status.admin-status{top:auto;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%,12px);width:max-content;max-width:calc(100% - 32px);white-space:normal;text-align:center;border-radius:16px;line-height:1.6}
body.admin #admin-status.admin-status.admin-status--show{transform:translate(-50%,0)}
@media (min-width:900px){body.admin #admin-status.admin-status{bottom:24px}}

/* 右上の自動送信ON/OFFは押せる（説明→確認→切り替え） */
#admin-send-slot{cursor:pointer;-webkit-tap-highlight-color:transparent}
#admin-send-slot .send-pill{cursor:pointer}
#admin-send-slot .send-pill::after{content:"▾";margin-left:4px;font-size:.8em;opacity:.7}
#admin-send-slot:focus-visible{outline:2px solid var(--lav-deep,#8f83a3);outline-offset:2px;border-radius:999px}

/* 2026-11-06 PCは左にメニュー（管理画面らしく）。スマホ・タブレットは下のメニューのまま */
body.admin nav.admin-side{display:none}
@media (min-width:1024px){
 body.admin main{max-width:1280px;display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:36px;align-items:start}
 body.admin main>.admin-header{grid-column:1/-1}
 body.admin main>:not(.admin-header):not(.admin-side):not(.admin-status){grid-column:2}
 body.admin nav.admin-nav{display:none}
 body.admin nav.admin-side{display:block;grid-column:1;grid-row:2/span 20;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow-y:auto;padding:14px 10px;border-radius:18px;background:linear-gradient(170deg,rgba(143,131,163,.12),rgba(166,173,152,.10) 60%,rgba(203,177,132,.12))}
 .admin-side__group+.admin-side__group{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
 .admin-side__title{margin:0 0 6px;padding:0 10px;font-size:11.5px;font-weight:700;letter-spacing:.16em;color:var(--ink-soft)}
 .admin .admin-side button.admin-side__item{display:block;width:100%;margin:0 0 1px;padding:7px 12px;min-height:0;border:0;border-radius:10px;background:transparent;box-shadow:none;color:var(--ink);font-size:14px;font-weight:500;letter-spacing:.04em;text-align:left;justify-content:flex-start;cursor:pointer}
 .admin .admin-side button.admin-side__item:hover{background:rgba(255,255,255,.7)}
 .admin .admin-side button.admin-side__item[aria-current="page"]{background:var(--lav-deep);color:#fff;font-weight:700;box-shadow:0 8px 18px -12px rgba(99,82,77,.6)}
 .admin .admin-side button.admin-side__item:disabled{opacity:1}
}

/* 2026-11-06 左メニュー：まとまりごとの色・アイコン。スマホの下メニューに「記録・設定」 */
.admin-groups button[data-group="more"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22/%3E%3Cpath%20d%3D%22M12%202v3M12%2019v3M2%2012h3M19%2012h3M4.9%204.9l2.1%202.1M17%2017l2.1%202.1M4.9%2019.1L7%2017M17%207l2.1-2.1%22/%3E%3C/svg%3E")}
.admin-groups button[data-group="deliver"]{order:1}.admin-groups button[data-group="home"]{order:0}.admin-groups button[data-group="collect"]{order:2}.admin-groups button[data-group="know"]{order:3}.admin-groups button[data-group="more"]{order:4}
.admin-side__item[data-view="home"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011l9-7%209%207v9a1%201%200%200%201-1%201h-5v-6H9v6H4a1%201%200%200%201-1-1z%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="workflows"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%206h16M4%2012h10M4%2018h6%22/%3E%3Ccircle%20cx%3D%2219%22%20cy%3D%2217%22%20r%3D%223%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="campaigns"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011l15-6v14L3%2013z%22/%3E%3Cpath%20d%3D%22M7%2013v5h3%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="keywords"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205h16v11H9l-5%204z%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="menus"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%2213%22%20width%3D%2218%22%20height%3D%227%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M9%2013v7M15%2013v7%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="events"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%225%22%20width%3D%2216%22%20height%3D%2215%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M4%2010h16M9%203v4M15%203v4%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="analytics"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%207H7a5%205%200%200%200%200%2010h2M15%207h2a5%205%200%200%201%200%2010h-2M8%2012h8%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="forms"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%223%22%20width%3D%2214%22%20height%3D%2218%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M9%208h6M9%2012h6M9%2016h3%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="guides"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M3%209h18%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="customers"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%228%22%20r%3D%223.5%22/%3E%3Cpath%20d%3D%22M3%2020c0-3.5%202.7-6%206-6s6%202.5%206%206M16%204.5a3.5%203.5%200%200%201%200%207M18%2014c2%20.8%203%203%203%206%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="reports"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020V10M10%2020V4M16%2020v-7M22%2020H2%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="effects"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2017l6-6%204%204%208-8%22/%3E%3Cpath%20d%3D%22M15%207h6v6%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="goals"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228%22/%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224%22/%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%22.5%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="fields"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%206h14M5%2012h14M5%2018h14%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="jobs"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228%22/%3E%3Cpath%20d%3D%22M12%208v4l3%202%22/%3E%3C/svg%3E")}
.admin-side__item[data-view="history"]{--ico:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2012a8%208%200%201%200%203-6.2M4%204v4h4%22/%3E%3C/svg%3E")}
@media (min-width:1024px){
 body.admin nav.admin-side{background:#fff;border:1px solid var(--line);padding:10px 8px;box-shadow:0 14px 30px -26px rgba(99,82,77,.6)}
 .admin-side__group{--tint:transparent;--accent:var(--lav-deep);background:var(--tint);border-radius:14px;padding:8px 6px}
 .admin-side__group+.admin-side__group{margin-top:8px;padding-top:8px;border-top:0}
 .admin-side__group[data-group="home"]{padding:4px 6px}
 .admin-side__group[data-group="home"] .admin-side__title{display:none}
 .admin-side__group[data-group="deliver"]{--tint:rgba(201,191,214,.26);--accent:#8f83a3}
 .admin-side__group[data-group="collect"]{--tint:rgba(166,173,152,.22);--accent:#7d8670}
 .admin-side__group[data-group="know"]{--tint:rgba(203,177,132,.2);--accent:#a98d5f}
 .admin-side__group[data-group="more"]{--tint:transparent;margin-top:14px;border-top:1px solid var(--line);border-radius:0;padding-top:12px}
 .admin-side__title{display:flex;align-items:center;gap:6px;color:var(--accent);font-size:11.5px}
 .admin-side__title::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}
 .admin-side__group[data-group="more"] .admin-side__title{color:#b3a69e}.admin-side__group[data-group="more"] .admin-side__title::before{background:#cfc4bb}
 .admin .admin-side button.admin-side__item{display:flex;align-items:center;gap:10px}
 .admin .admin-side button.admin-side__item::before{content:"";flex:none;width:18px;height:18px;background:var(--accent,var(--lav-deep));-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
 .admin .admin-side button.admin-side__item[aria-current="page"]{background:var(--accent);box-shadow:0 8px 18px -12px rgba(99,82,77,.7)}
 .admin .admin-side button.admin-side__item[aria-current="page"]::before{background:#fff}
 .admin .admin-side__group[data-group="more"] button.admin-side__item{font-size:13px;color:var(--ink-soft);padding:6px 12px}
 .admin .admin-side__group[data-group="more"] button.admin-side__item::before{width:16px;height:16px;background:#b3a69e}
 .admin .admin-side button.admin-side__logout{display:block;width:100%;margin:10px 0 2px;padding:6px 12px;min-height:0;border:0;background:transparent;box-shadow:none;color:#b3a69e;font-size:12px;text-align:left;text-decoration:underline;cursor:pointer}
}
body.admin .admin-logout-mobile{display:none}
@media (max-width:1023px){body.admin main[data-group="more"] .admin-logout-mobile{display:inline-flex;margin-top:18px}}
/* 2026-11-06 一覧カード：誰に（札）・いつ・何を・これまで を枠で並べる */
.admin .admin-list-item.admin-flow-card{padding-right:118px}
.admin-flow-card .admin-meta:empty{display:none}
.who-chip{display:inline-block;margin:2px 0 10px;padding:3px 11px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em;position:relative;z-index:1;pointer-events:none}
.who-chip--a{background:#efe9f5;color:#7c6f92}.who-chip--b{background:#f6efe2;color:#9a7f52}.who-chip--c{background:#eef1ea;color:#6d7a62}
.fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;position:relative;z-index:1;pointer-events:none}
.fact{border-radius:12px;padding:9px 12px;background:#faf7f3;border:1px solid #f0e9e2;min-width:0}
.fact__label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.12em;color:#a99a90;margin-bottom:3px}
.fact__label::before{content:"";width:12px;height:12px;background:currentColor;-webkit-mask:var(--fi) center/contain no-repeat;mask:var(--fi) center/contain no-repeat}
.fact--when{--fi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
.fact--what{--fi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H9l-5 4z'/%3E%3C/svg%3E")}
.fact--count{--fi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M3 20c0-3.5 2.7-6 6-6s6 2.5 6 6'/%3E%3C/svg%3E")}
.fact--when .fact__label{color:#8f83a3}.fact--what .fact__label{color:#7d8670}.fact--count .fact__label{color:#a98d5f}
.fact__value{display:block;font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.5;overflow-wrap:anywhere}
@media (max-width:640px){.fact-grid{grid-template-columns:1fr}.admin .admin-list-item.admin-flow-card{padding-right:16px;padding-bottom:58px}.admin .admin-rows>.admin-list-item.admin-flow-card>.list-switch{top:auto;bottom:14px;transform:none;right:16px;flex-direction:row;gap:8px}.fact{display:grid;grid-template-columns:84px 1fr;align-items:center;padding:7px 10px}.fact__label{margin:0}}
.rule-history__row{display:grid;grid-template-columns:110px 1fr;gap:8px;padding:7px 0;border-top:1px dashed var(--line);font-size:13px}
.rule-history__row:first-of-type{border-top:0}.rule-history__row time{color:var(--ink-soft)}
/* 2026-11-06 ホーム：気にかけること→今週の数字→流入元→全体→よく使う操作 */
.home-head{display:flex;align-items:baseline;gap:12px;margin:4px 0 14px}.home-head h2{margin:0}.home-date{margin:0;color:var(--ink-soft);font-size:13px}
.home-alerts{display:grid;gap:8px;margin:0 0 6px;padding:0;border:0}
.home-alert{display:flex;align-items:center;gap:10px;margin:0;padding:12px 14px;border-radius:14px;font-size:14px;font-weight:600;line-height:1.5}
.home-alert>span{flex:1 1 auto}
.home-alert--ok{background:#eef3ea;color:#5f6d55}.home-alert--ok::before{content:"✓";font-weight:700}
.home-alert--bad{background:#fbeaea;color:#a24f4f}.home-alert--warn{background:#fbf3e2;color:#8a6a2f}.home-alert--info{background:#f2eef6;color:#6f6386}
.admin .home-alert .home-alert__go{flex:none;margin:0;padding:6px 12px;min-height:0;border:0;border-radius:999px;background:rgba(255,255,255,.75);color:inherit;font-size:12.5px;font-weight:700;box-shadow:none}
.home-sub{margin:22px 0 10px;font-size:13px;letter-spacing:.14em;color:var(--ink-soft)}
.home-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:760px){.home-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.admin .home-tile{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0;padding:14px 16px;min-height:0;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 10px 22px -22px rgba(99,82,77,.7);color:var(--ink);text-align:left;cursor:pointer}
.admin .home-tile:disabled{cursor:default;opacity:1}
.home-tile__label{font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--ink-soft)}
.home-tile__num{font-family:var(--serif,serif);font-size:26px;font-weight:500;letter-spacing:.02em;line-height:1.2}
.home-tiles--small .home-tile__num{font-size:19px}
.home-tile__diff{font-size:12px;font-weight:700}.home-tile__diff--up{color:#6d8a5c}.home-tile__diff--down{color:#b06060}.home-tile__diff--flat{color:var(--ink-soft)}
.home-tile--friends{border-top:4px solid #a6ad98}.home-tile--answers{border-top:4px solid #c9bfd6}.home-tile--bonus{border-top:4px solid #cbb184}.home-tile--blocks{border-top:4px solid #d9c3c3}
.home-bars{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff}
.home-bar{display:grid;grid-template-columns:120px 1fr 48px;align-items:center;gap:10px;font-size:13px}
.home-bar__track{height:10px;border-radius:999px;background:#f3eee8;overflow:hidden}.home-bar__fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#8f83a3,#a6ad98)}
.home-bar__num{text-align:right;font-weight:700}
.home-quick{display:flex;flex-wrap:wrap;gap:8px}
.admin .home-quick .home-quick__btn{margin:0;padding:10px 16px;min-height:0;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--lav-deep);font-size:13.5px;font-weight:700;box-shadow:none}
.home .admin-advanced{margin-top:10px}
@media (min-width:1024px){
 /* 保存ボタンの帯は、左メニューを避けて内容の列にそろえる */
 body.admin .admin-savebar{left:calc(max(20px,(100vw - 1280px)/2 + 20px) + 256px);right:max(20px,(100vw - 1280px)/2 + 20px);padding-left:14px;padding-right:14px;border-radius:14px 14px 0 0;box-shadow:0 -8px 20px -16px rgba(99,82,77,.5)}
}
@media (max-width:640px){.admin .admin-list-item.admin-flow-card{padding-right:40px}}
body.admin main[data-group="home"] .admin-subnav{display:none}
/* 2026-11-06 ホーム：起きていること（監視） */
.home-incidents{margin:0 0 12px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff}
.home-incidents__head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.home-incidents__head h3{margin:0;font-size:15px}
.home-incidents__hb{margin-left:auto;font-size:12px;font-weight:700;border-radius:999px;padding:3px 10px}.home-incidents__hb--ok{background:#eef3ea;color:#5f6d55}.home-incidents__hb--bad{background:#fbeaea;color:#a24f4f}
.home-incidents__warn{margin:6px 0;padding:8px 12px;border-radius:10px;background:#fbf3e2;color:#8a6a2f;font-size:13px}
.home-incidents__none{margin:4px 0 0;color:var(--ink-soft);font-size:13px}
.incident{margin-top:8px;border-radius:12px;border:1px solid var(--line);padding:0 12px;background:#fdfbf8}
.incident summary{display:flex;align-items:center;gap:8px;padding:10px 0;cursor:pointer;font-size:14px;list-style:none}
.incident summary::-webkit-details-marker{display:none}
.incident__level,.incident__state{flex:none;font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 9px}
.incident--P0 .incident__level{background:#a24f4f;color:#fff}.incident--P1 .incident__level{background:#fbeaea;color:#a24f4f}.incident--P2 .incident__level{background:#fbf3e2;color:#8a6a2f}.incident--P3 .incident__level{background:#f1eeea;color:var(--ink-soft)}
.incident__state{background:#f2eef6;color:#6f6386}.incident--resolved .incident__state{background:#eef3ea;color:#5f6d55}
.incident dl{display:grid;grid-template-columns:150px 1fr;gap:4px 10px;margin:4px 0 12px;font-size:13px}.incident dt{color:var(--ink-soft)}.incident dd{margin:0}
@media (max-width:640px){.incident dl{grid-template-columns:1fr}.incident dt{margin-top:4px}}
/* R03：見張り・知らせの状態（文字で区別し、色は補助） */
.home-incidents__hb--warn{background:#fbf3e2;color:#7a5a1f}
.home-monitor{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;margin:8px 0 10px;font-size:14px;line-height:1.6}
.home-monitor dt{font-weight:700;color:#3f3833}
.home-monitor dd{margin:0;color:#3f3833}
.home-monitor__bad{color:#9b2d2d!important;font-weight:700}
.home-monitor__warn{color:#7a5a1f!important}
.home-monitor__info{color:#5a524c!important;font-size:13px}
@media (max-width:520px){.home-monitor{grid-template-columns:1fr}.home-monitor dd{margin-bottom:6px}}
/* R02・R08：送信の記録の絞り込みと失敗カード */
.job-filters{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}
.job-filter{width:auto!important;margin:0!important;min-height:44px;padding:8px 14px!important;background:#fff!important;color:#3f3833!important;border:1px solid #cbbfd6!important;box-shadow:none!important;font-family:var(--sans)!important;font-size:14px!important;letter-spacing:.02em!important}
.job-filter.is-active{background:#5b4a73!important;color:#fff!important;border-color:#5b4a73!important}
.job-problem{border:1px solid #e3c9c9;border-left:5px solid #b04a4a;border-radius:12px;background:#fff;padding:12px 14px;margin:0 0 12px}
.job-problem h3{margin:0 0 8px;font-size:16px;color:#3f3833}
.job-problem dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;margin:0;font-size:14px;line-height:1.6}
.job-problem dt{font-weight:700;color:#5a524c}.job-problem dd{margin:0;color:#3f3833}
@media (max-width:520px){.job-problem dl{grid-template-columns:1fr}.job-problem dd{margin-bottom:6px}}
/* R10：配信の設定 */
.pref-state{margin:18px 0 6px;text-align:center;font-weight:700;font-size:15px;color:var(--ink)}
.pref-about{font-size:13px;color:var(--ink-soft);line-height:1.8}
.pref-box .button-danger{background:#fff;color:#9b2d2d;border:1px solid #d9a5a5;box-shadow:none;font-family:var(--sans);font-size:14px;letter-spacing:.06em}
/* R07：配信の効果。スマホはカード、PCは表 */
.effects-cards{display:none}
@media (max-width:767px){.effects-cards{display:grid;gap:12px;margin:10px 0}.effects-table{display:none}}
.effects-card{background:#fff;border:1px solid #e2dbe7;border-radius:12px;padding:12px 14px}
.effects-card.effect-block-high{border-left:5px solid #b04a4a}
.effects-card h3{margin:0 0 8px;font-size:16px;color:#3f3833}
.effects-card__main{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.effects-card__main div{background:#f7f4f9;border-radius:8px;padding:6px 8px}
.effects-card__main dt{font-size:12.5px;color:#5a524c}.effects-card__main dd{margin:2px 0 0;font-size:17px;font-weight:700;color:#3f3833}
.effects-card__flags{margin:8px 0 0;font-size:13px;color:#7a5a1f;font-weight:700}
.effects-card details{margin-top:8px}.effects-card summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:#5b4a73;font-weight:700}
.effects-card details dl{display:grid;grid-template-columns:1fr auto;gap:4px 10px;font-size:13.5px;margin:4px 0 0}.effects-card details dd{margin:0;text-align:right}

/* ===================================================================
   第3段：管理画面の共通の見た目（GPTの修正指示書 4章A・R11）
   ・本文と補足を濃く（通常の文字はコントラスト4.5:1以上）。淡い色は背景と小さな飾りだけに使う
   ・本文・ボタン・数字はゴシック体。明朝はロゴ（.brand）だけ
   ・本文16px、補足14px以上。押すところは高さ44px以上
   ・主ボタンは濃い紫、補助は枠線、危ない操作は赤。押せないボタンは、はっきり押せない見た目に
   ・この決まりは管理画面（body.admin）の中だけ。利用者向けの画面は変えない
   =================================================================== */
html body.admin{--ink:#3d3431;--ink-soft:#5c524d;--primary:#5b4a73;--primary-ink:#fff;--danger:#9b2d2d;--grp-deliver:#5b4a73;--grp-collect:#4f5a45;--grp-know:#6e5525;--grp-more:#4d4541;font-size:16px;letter-spacing:.02em}
html body.admin main{color:var(--ink)}
/* 書体：ロゴ以外はゴシック */
html body.admin main :is(h1,h2,h3,h4,h5,button,strong,b,span,summary,label,legend,a,p){font-family:var(--sans)!important}
html body.admin main .brand,html body.admin main .brand span{font-family:var(--serif)!important}
html body.admin main .brand small{font-family:var(--sans)!important}
/* 見出しは大きさと太さで差を付ける */
html body.admin main h2{font-size:21px;font-weight:700;letter-spacing:.04em;color:var(--ink)}
html body.admin main h3{font-size:17px;font-weight:700;letter-spacing:.03em;color:var(--ink)}
html body.admin main h4{font-size:16px;font-weight:700;color:var(--ink)}
/* 本文16px・読み幅を制限。補足14px以上 */
html body.admin .admin-content :is(p,li,dd){font-size:16px;line-height:1.75;max-width:46em}
html body.admin .admin-content :is(td,th){font-size:14px;color:var(--ink)}
html body.admin main :is(.admin-hint,.admin-lead,.admin-empty,.home-date,.home-incidents__none,.home-monitor__info,.results-summary,.admin-version-summary,.menu-preview__count,.tag-picker-example,.tag-none,.admin-reply-help,.admin-count,.home-tile__label,.home-tile__diff,.admin-field,legend,small){font-size:14px!important;color:var(--ink-soft)!important}
html body.admin main :is(.who-chip,.fact__label,.list-switch__label,.meta-chip,.state-pill,.badge,.tag,.send-pill,.home-incidents__hb,.result-bar__label){font-size:14px!important}
html body.admin main .fact__value{font-size:15px!important;color:var(--ink)}
html body.admin main .home-tile__num{font-size:24px;font-weight:700;color:var(--ink)}
/* 状態の文字（色だけに頼らず、文字で書く）。濃い文字色にそろえる */
html body.admin main .fact__label{color:var(--ink-soft)!important}
html body.admin main :is(.who-chip,.tag){color:var(--primary)!important}
html body.admin main .meta-chip{color:#5e4a22!important}
html body.admin main .state-pill{color:var(--ink)!important}
html body.admin main .badge{color:var(--ink)!important}
html body.admin main .home-tile__diff--up{color:#3f5a32!important}
html body.admin main .home-tile__diff--down{color:var(--danger)!important}
html body.admin .send-pill{font-size:14px;color:#5e4a22}
html body.admin .send-pill--on{color:#3f5a32}
/* ボタン：主（濃い紫）・補助（枠線）・危ない操作（赤）・押せない */
html body.admin .admin-content button:not(.home-tile,.tag,.admin-list-open,.job-filter,.admin-side__item){min-height:44px!important;background:var(--primary)!important;color:var(--primary-ink)!important;font-family:var(--sans)!important;font-size:15px!important;font-weight:700;letter-spacing:.04em;box-shadow:none!important;filter:none}
html body.admin .admin-content button:not(.home-tile,.tag,.admin-list-open,.job-filter,.admin-side__item):hover{filter:brightness(1.08);transform:none}
html body.admin main :is(.home-quick__btn,.admin-list-toggle,.home-alert__go,.job-filter,.tag,.admin-list-add){min-height:44px}
html body.admin .admin-content button:is(.home-quick__btn,.admin-list-toggle,.home-alert__go,.admin-secondary){background:#fff!important;color:var(--primary)!important;border:1.5px solid var(--primary)!important;font-size:15px!important;padding:8px 14px!important}
html body.admin main .admin-list-add{background:var(--primary);color:#fff;font-size:15px}
html body.admin .admin-content button:is(.button-danger,.admin-danger,[data-danger]){background:#fff!important;color:var(--danger)!important;border:1.5px solid var(--danger)!important}
html body.admin .admin-content button:not(.home-tile,.tag,.admin-list-open,.job-filter,.admin-side__item):disabled{background:#e6e1dd!important;color:#6b625d!important;border:1px dashed #a39890!important;cursor:not-allowed;opacity:1;filter:none}
html body.admin main :is(button,a,summary,select,input,textarea):focus-visible{outline:3px solid var(--primary);outline-offset:2px}
/* 一覧の見出し（押すと開く）も押しやすい高さに */
html body.admin main .admin-list-open{min-height:44px;display:flex;align-items:center;background:transparent;color:var(--ink);font-size:17px;font-weight:700;text-align:left;justify-content:flex-start;padding:4px 0}
html body.admin main summary{min-height:44px;display:flex;align-items:center;color:var(--primary);font-weight:700;font-size:15px}
/* 左メニュー（PC）と上のメニュー：濃い文字、押しやすい高さ、いまの場所をはっきり */
html body.admin .admin-side__title{font-size:14px!important}
html body.admin .admin-side__group[data-group="deliver"] .admin-side__title{color:var(--grp-deliver)}
html body.admin .admin-side__group[data-group="collect"] .admin-side__title{color:var(--grp-collect)}
html body.admin .admin-side__group[data-group="know"] .admin-side__title{color:var(--grp-know)}
html body.admin .admin-side__group[data-group="more"] .admin-side__title{color:var(--grp-more)}
html body.admin .admin-side button.admin-side__item{min-height:44px;font-size:15px;color:var(--ink);font-family:var(--sans)}
html body.admin .admin-side button.admin-side__item[aria-current="page"]{background:var(--primary);color:#fff}
html body.admin .admin-side button.admin-side__logout{min-height:44px;font-size:14px;color:var(--ink-soft)}
html body.admin .brand small{font-size:12px;color:var(--ink-soft)}
html body.admin h1{color:var(--ink)}
/* ホームの見出しの間隔 */
html body.admin .home-sub{margin-top:28px;font-size:17px!important;font-weight:700;letter-spacing:.03em;color:var(--ink)!important}
html body.admin .home-sub--first{margin-top:8px}
html body.admin .home-detail{margin-top:24px}
html body.admin .admin-guide-card .admin-guide-label{font-size:14px;color:var(--primary)}
html body.admin .admin-content .message-bubble{font-size:15px}
html body.admin .admin-side button.admin-side__item{font-size:15px!important}
html body.admin .admin-content :is(summary,legend,label) span{font-size:inherit}
html body.admin .admin-content summary{font-size:15px!important}
html body.admin .admin-content label{font-size:15px}
html body.admin .admin-content button.admin-list-open{min-height:44px!important}
/* 第3段：スマホの上の小メニューと下のメニュー（B-13で見つけた分） */
html body.admin .admin-subnav button{min-height:44px;font-size:14px;color:var(--ink);font-family:var(--sans)}
html body.admin .admin-subnav button[aria-pressed="true"]{background:#ece6f2;color:var(--primary);font-weight:700}
html body.admin .admin-groups button{font-size:14px;letter-spacing:0;color:var(--ink);font-family:var(--sans)}
html body.admin .admin-groups button[aria-pressed="true"]{background:var(--primary);color:#fff}
@media (max-width:380px){html body.admin .admin-groups button{font-size:14px;padding-left:0;padding-right:0}}
html body.admin main button.secondary{min-height:44px;font-size:14px;color:var(--ink);font-family:var(--sans)}
html body.admin .admin-savebar button.secondary,html body.admin .admin-savebar button:not(:last-child){color:var(--primary);border-color:var(--primary)}
/* 一覧：1件ずつを独立したカードにし、項目名は「押せる」と分かる紫の下線つきにする（全画面共通） */
html body.admin .admin-rows{display:flex;flex-direction:column;gap:12px;background:transparent!important;box-shadow:none!important;border-radius:0;overflow:visible}
html body.admin .admin-rows>.admin-list-item{background:#fff!important;border:1.5px solid #d6ccd9!important;border-radius:14px!important;box-shadow:0 2px 8px rgba(61,52,49,.07)!important;margin:0!important}
html body.admin .admin-rows>.admin-list-item:first-child{border-top:1.5px solid #d6ccd9!important}
html body.admin .admin-rows>.admin-list-item:hover{border-color:var(--primary)!important;background:#fff!important}
html body.admin .admin-content .admin-list-item button.admin-list-open{color:var(--primary)!important;font-size:18px!important;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px}
html body.admin .admin-content .admin-list-item button.admin-list-open:hover{text-decoration-thickness:3px}
/* リッチメニュー：いま誰に何が出るか＋①②③のまとまりを色の帯で分ける */
html body.admin .menu-summary{background:#fff;border:2px solid var(--primary);border-radius:16px;padding:16px 18px;margin:4px 0 28px}
html body.admin .menu-summary h3{margin:0 0 8px}
html body.admin .menu-summary ul{list-style:none;margin:0;padding:0;max-width:none}
html body.admin .menu-summary li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:10px 0;border-top:1px solid #e4dce6;max-width:none}
html body.admin .menu-summary li:first-child{border-top:0}
html body.admin .menu-summary__who{font-weight:700;color:var(--ink)}
html body.admin .menu-summary__arrow{color:var(--ink-soft)}
html body.admin .menu-summary__menu{color:var(--primary);font-size:17px}
html body.admin .menu-summary__from{font-size:14px;color:var(--ink-soft);background:#f3eff5;border-radius:999px;padding:2px 10px}
html body.admin .menu-group{--g:#5b4a73;--gbg:#f7f4fa;border:1.5px solid #dcd3df;border-left:8px solid var(--g);border-radius:16px;background:var(--gbg);padding:18px 18px 20px;margin:0 0 32px}
html body.admin .menu-group--2{--g:#45654c;--gbg:#f2f6f1;border-color:#cfdccf}
html body.admin .menu-group--3{--g:#80511f;--gbg:#fbf5ec;border-color:#e6d6c0}
html body.admin .menu-group .menu-group__title{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-size:20px!important;color:var(--ink)}
html body.admin .menu-group__num{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--g);color:#fff;font-style:normal;font-size:17px;font-weight:700}
html body.admin .menu-group .menu-group__who{margin:0 0 14px;color:var(--ink);font-weight:700}
html body.admin .menu-group.admin-menu-default{padding-bottom:22px}
html body.admin .menu-group .admin-rows{margin-top:12px}
html body.admin .menu-preview .menu-preview__name{margin:4px 0 8px;font-size:15px;font-weight:700;color:var(--ink)}
@media (max-width:640px){html body.admin .menu-group{padding:14px 12px 16px;border-left-width:6px}html body.admin .menu-group .menu-group__title{font-size:18px!important}}

/* 待ち画面：「…」の間だけ画面全体に出す。上から ブランド／just a moment／見出し／右上がりの点線に7つの丸／点／ひとこと。絵は本人提供 */
.waiting{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:40px 16px;
 font-family:"Shippori Mincho",serif;color:#63524d;background:radial-gradient(ellipse at 50% 35%,#fffdf9 0%,#fcfaf6 45%,#f3eef5 100%)}
.waiting[hidden]{display:none}
.waiting p{margin:0}
.waiting__brand{display:flex;align-items:center;gap:8px;font-size:15px;letter-spacing:.12em;color:#85766f}
.waiting__sub{font-family:"Cormorant Garamond",serif;font-style:italic;color:#a98d5f;letter-spacing:.2em;font-size:15px;margin-bottom:-18px!important}
.waiting__msg{font-size:21px;font-weight:500;letter-spacing:.1em;text-align:center}
.waiting__road{position:relative;width:100%;max-width:400px;height:170px}
.waiting__hill{position:absolute;left:0;right:0;bottom:6px;width:100%;height:120px}
.waiting__step{position:absolute;width:15.5%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;border:1.4px dashed #cbb184;display:flex;align-items:center;justify-content:center;overflow:hidden;opacity:.45;filter:grayscale(.85);transition:opacity .4s,filter .4s}
/* 位置（右上がり）と色。CSPのため style 属性は使わない */
.waiting__step:nth-of-type(1){left:8%;top:84px;background:#fbf7e3}.waiting__step:nth-of-type(2){left:22%;top:80px;background:#fcefee}.waiting__step:nth-of-type(3){left:36%;top:74px;background:#f1ecf6}.waiting__step:nth-of-type(4){left:50%;top:66px;background:#fbf7e3}.waiting__step:nth-of-type(5){left:64%;top:54px;background:#fcefee}.waiting__step:nth-of-type(6){left:78%;top:40px;background:#f1ecf6}.waiting__step:nth-of-type(7){left:92%;top:24px;background:#fbf7e3}
.waiting__step img{width:96%;height:96%;object-fit:contain}
.waiting__step.is-on{opacity:1;filter:none}
.waiting__step.is-now{opacity:1;filter:none;border:2px solid #b8955a;z-index:2;animation:waiting-hop 1.1s ease-in-out infinite}
@keyframes waiting-hop{0%,100%{transform:translateX(-50%) translateY(0) scale(1.08)}50%{transform:translateX(-50%) translateY(-6px) scale(1.12)}}
.waiting__dots{display:flex;gap:9px}
.waiting__dots i{width:7px;height:7px;border-radius:50%;background:#c9bfd6;opacity:.45}
.waiting__dots i.is-on{background:#cbb184;opacity:1}
.waiting__note{font-size:13px;color:#85766f;text-align:center;line-height:1.9}
@media (prefers-reduced-motion:reduce){.waiting__step.is-now{animation:none}}
/* 2026-11-09 ホーム：見張りと知らせを短い一行に。直った出来事はたたむ */
.home-chips{display:flex;flex-wrap:wrap;gap:6px 8px;margin:4px 0 8px}
.home-chip{display:inline-block;border-radius:999px;padding:4px 12px;font-size:14px;font-weight:700;line-height:1.5}
.home-chip--ok{background:#eef3ea;color:#4f5d46}.home-chip--warn{background:#fbf3e2;color:#7a5a1f}.home-chip--bad{background:#f8e6e6;color:#9b2d2d}
.home-mailtest{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 8px;font-size:13px;color:var(--ink-soft)}
.home-past{margin-top:10px;border-top:1px dashed var(--line);padding-top:8px}
.home-past>summary{cursor:pointer;font-size:14px;color:var(--ink-soft);padding:4px 0}
.home-past .incident{opacity:.85}
/* 2026-11-09 ホーム：集客ダッシュボード。区切りごとにカードにする */
.home-block{margin:0 0 16px;padding:16px 18px 18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 24px -24px rgba(99,82,77,.6)}
.home-block__head{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
html body.admin .home-block__title{margin:0;font-size:17px!important;font-weight:700;color:var(--ink)!important;letter-spacing:.03em}
.home-block__note{margin:4px 0 0;font-size:13px;color:var(--ink-soft);line-height:1.6}
.home-block__sub{margin:14px 0 6px;font-size:13px;font-weight:700;color:var(--ink-soft)}
.home-block--todo{border-color:#e8cfcf}
.home-block .home-tile{box-shadow:none;background:#fcfaf8}
.home-block .home-bars{border:0;padding:0;background:transparent}
.home-block .admin-quota{margin:0;border:0;padding:0;background:transparent;box-shadow:none}
.home-block .admin-quota>h3{font-size:14px;color:var(--ink-soft);margin:0 0 4px}
.admin .home-block__more{margin:12px 0 0}
.home-quota-settings{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}
.home-alert--info{background:#f3f1ef;color:#5a524c}
.home-block--monitor .home-block__title{font-size:15px!important}
/* 2026-11-09 アンケートの選択肢：↑↓と「削除」を、入力欄の横にそろえて並べる（PCで文字がはみ出ていた） */
html body.admin .choice-row{grid-template-columns:minmax(0,1fr) 44px 44px auto!important;gap:6px!important;align-items:end}
html body.admin .choice-row>button{height:46px!important;min-height:46px!important;padding:0 10px!important;font-size:15px!important;white-space:nowrap;line-height:1}
html body.admin .choice-row>.choice-delete{font-size:14px!important;color:#a0662f!important;border-color:#e6cfc0!important}
html body.admin .choice-row>.choice-delete::before{content:none!important}
@media (max-width:520px){html body.admin .choice-row{grid-template-columns:minmax(0,1fr) 38px 38px auto!important;gap:4px!important}html body.admin .choice-row>button{height:42px!important;min-height:42px!important;padding:0 8px!important}}
html body.admin .admin-content .choice-row>button.choice-delete,html body.admin main .choice-row>button.choice-delete{background:#fff!important;color:#a0662f!important;border:1.5px solid #e6cfc0!important}
