/* ============================================================
   about.css — 設定の「アプリ情報」（利用規約・プライバシーポリシー・バージョン）
   スコープ: .ab-* / #aboutSheet（js/about.js が作る）
   ============================================================ */
.ab-card{padding:2px 16px}
.ab-row{display:flex;align-items:center;gap:14px;width:100%;box-sizing:border-box;padding:16px 0;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text);font:inherit;font-size:1.05rem;text-align:left;cursor:pointer}
.ab-row:first-child{border-top:0}
.ab-row:active{opacity:.6}
.ab-row svg{flex:none;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ab-app{cursor:default}
.ab-app:active{opacity:1}
.ab-app img{flex:none;width:28px;height:28px;border-radius:7px}
.ab-app div{min-width:0}
.ab-app span{display:block}
.ab-app small{display:block;margin-top:2px;font-size:.9rem;color:var(--sub);overflow-wrap:anywhere}
.ab-app small:empty{display:none}
#aboutSheet{display:none}
#aboutSheet.on{display:block;position:fixed;inset:0;z-index:650;background:var(--bg);color:var(--text);overflow:auto;box-sizing:border-box;padding:calc(12px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom))}
.ab-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:1.2rem;margin-bottom:8px}
.ab-top button{flex:none;border:0;border-radius:18px;background:var(--tint);color:var(--btn-text);font:inherit;font-size:1rem;font-weight:bold;padding:10px 14px;cursor:pointer}
.ab-body{max-width:640px;margin:0 auto}
.ab-body h3{margin:18px 0 4px;font-size:1.05rem}
.ab-body p{margin:0;font-size:1rem;line-height:1.7;white-space:pre-line}
.ab-body .ab-date{margin-top:20px;font-size:.85rem;color:var(--sub)}

/* 初回の「同意して始める」画面（かんたん／通常の選択 #easyMode(500) より前に出す。規約の画面 #aboutSheet(650) はこの上に開く） */
#aboutConsent{position:fixed;inset:0;z-index:600;display:flex;flex-direction:column;box-sizing:border-box;background:var(--bg);color:var(--text);overflow:auto;padding:calc(24px + env(safe-area-inset-top)) 18px calc(20px + env(safe-area-inset-bottom))}
.ac-in{width:100%;max-width:640px;margin:auto}
.ac-in h2{margin:0 0 4px;text-align:center;font-size:1.4rem}
.ac-lead{margin:0 0 16px;text-align:center;color:var(--sub)}
.ac-pt{margin-bottom:10px;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:var(--card-bg)}
.ac-pt b{display:block;margin-bottom:2px;font-size:1.1rem}
.ac-pt p{margin:0;font-size:1rem;line-height:1.6}
#aboutConsent .ab-card{margin:14px 0 12px}
.ac-go{display:block;width:100%;padding:18px;border:0;border-radius:18px;background:var(--primary);color:var(--on-primary);font:inherit;font-size:1.4rem;font-weight:bold;cursor:pointer}
.ac-go:active{opacity:.75}
.ac-note{margin:10px 0 0;text-align:center;font-size:.85rem;line-height:1.5;color:var(--sub)}
