[hidden]{display:none!important}
:root{
  --ink:#0D0D0D; --ink-sub:#3D3D3D; --ink-weak:#8F8F8F; --line:#E6E6E6;
  --paper:#FFFFFF; --soft:#F4F4F4;
  --accent:#AE1E2A; --accent-deep:#8E1520;
  --me:color-mix(in srgb,var(--accent) 9%,#FFFFFF); --me-ink:var(--accent-deep);
  --send:var(--accent); --send-ink:#FFFFFF; --shine:#0D0D0D;
  --shadow:0 4px 18px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05);
  --font:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",system-ui,sans-serif;
}
:root[data-accent="pink"]{--accent:#E91E63;--accent-deep:#B0144A}
:root[data-accent="purple"]{--accent:#7E57C2;--accent-deep:#5E35B1}
:root[data-accent="blue"]{--accent:#1A73E8;--accent-deep:#1557B0}
:root[data-accent="green"]{--accent:#188038;--accent-deep:#0F5C27}
:root[data-accent="black"]{--accent:#111111;--accent-deep:#111111}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --ink:#ECECEC; --ink-sub:#C9C9C9; --ink-weak:#8F8F8F; --line:#333333;
    --paper:#1C1C1C; --soft:#2A2A2A;
    --me:color-mix(in srgb,var(--accent) 30%,#1C1C1C); --me-ink:#FFFFFF; --shine:#FFFFFF;
    --shadow:0 4px 18px rgba(0,0,0,.45);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --ink:#ECECEC; --ink-sub:#C9C9C9; --ink-weak:#8F8F8F; --line:#333333;
  --paper:#1C1C1C; --soft:#2A2A2A;
  --me:color-mix(in srgb,var(--accent) 30%,#1C1C1C); --me-ink:#FFFFFF; --shine:#FFFFFF;
  --shadow:0 4px 18px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html,body{height:100%;overflow:hidden;overscroll-behavior:none}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.8;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;display:flex;justify-content:center}
.phone{width:100%;max-width:460px;height:100%;display:flex;flex-direction:column;position:relative;background:var(--paper)}
header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px}
.hb{width:42px;height:42px;border-radius:50%;border:0;background:var(--paper);box-shadow:var(--shadow);display:grid;place-items:center;cursor:pointer;color:var(--ink)}
.hb svg{width:20px;height:20px;stroke:currentColor}
.proto{font-size:11px;color:var(--ink-weak);border:1px solid var(--line);border-radius:999px;padding:2px 10px}
#chat{flex:1;overflow-y:auto;padding:8px 20px 120px;display:flex;flex-direction:column;gap:18px;}
.hello{font-size:22px;font-weight:600;line-height:1.5;margin:24px 0 4px;letter-spacing:.01em}
.lead{margin:0;color:var(--ink-sub);font-size:17px;line-height:1.8}
.cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cat{display:flex;align-items:center;gap:10px;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:13px 14px;cursor:pointer;color:var(--ink);font:inherit;font-size:14.5px;line-height:1.4;transition:background .15s}
.cat:hover,.cat:focus-visible{background:var(--soft);outline:none}
.cat svg{width:20px;height:20px;stroke:var(--ink-sub);flex:none}
.cat small{display:block;font-size:11.5px;color:var(--ink-weak);margin-top:2px}
.me{align-self:flex-end;max-width:80%;background:var(--me);color:var(--me-ink);border-radius:22px;padding:10px 18px;font-size:17px;line-height:1.7}
.bot{display:flex;flex-direction:column;gap:10px;min-width:0}
.bot p{margin:0}
.txt b{font-weight:700;color:var(--ink)}
.txt .h{display:block;font-size:18px;font-weight:700;margin:22px 0 4px;line-height:1.5}
.txt .h:first-child{margin-top:0}
.mark{width:22px;height:22px;display:grid;place-items:center}
.mark svg{width:16px;height:16px;fill:var(--accent)}
.mark.think svg{animation:morph 2.4s ease-in-out infinite}
.mark.talk svg{animation:talk .4s ease-in-out infinite alternate}
@keyframes breathe{0%,100%{transform:scale(.7);opacity:.55}50%{transform:scale(1.1);opacity:1}}
@keyframes talk{from{transform:scale(.8)}to{transform:scale(1.15)}}
.tools{display:flex;gap:14px;color:var(--ink-weak)}
.tools button{background:none;border:0;padding:4px;cursor:pointer;color:inherit;border-radius:6px;display:grid;place-items:center}
.tools button:hover,.tools button:focus-visible{color:var(--ink);background:var(--soft);outline:none}
.tools button.on{color:var(--ink)}
.tools svg{width:19px;height:19px;stroke:currentColor}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:8px 15px;font:inherit;font-size:15.5px;line-height:1.4;cursor:pointer}
.chip:hover,.chip:focus-visible{background:var(--soft);outline:none}
.note{margin:0;font-size:14px;color:var(--ink-weak)}
.act{display:flex;align-items:center;gap:10px;font-size:16px;letter-spacing:.02em;color:var(--ink-weak);min-height:24px}
.act svg{width:19px;height:19px;flex:none}
.shine{background:linear-gradient(90deg,var(--ink-weak) 0%,var(--ink-weak) 38%,var(--shine) 50%,var(--ink-weak) 62%,var(--ink-weak) 100%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sh 1.7s linear infinite}
@keyframes sh{from{background-position:100% 0}to{background-position:0 0}}
.swap{transition:opacity .18s,transform .18s}
.swap.out{opacity:0;transform:translateY(4px)}
.steps{display:flex;flex-direction:column;gap:6px}
.steps .act{align-items:flex-start;line-height:1.6}
.steps .act svg{margin-top:3px}
.steps small{display:block;font-size:12px;color:var(--ink-weak);opacity:.85}
.sum{display:inline-flex;align-items:center;gap:2px;align-self:flex-start;background:none;border:0;padding:0;font:inherit;font-size:16px;color:var(--ink-weak);cursor:pointer;letter-spacing:.02em}
.sum svg{width:15px;height:15px;transition:transform .2s}
.sum[aria-expanded="true"] svg{transform:rotate(90deg)}
.sum:hover,.sum:focus-visible{color:var(--ink-sub);outline:none}
.step{font-size:12px;color:var(--ink-weak);letter-spacing:.04em}
.rank{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.ri{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:start;gap:12px;padding:14px 16px;border-top:1px solid var(--line)}
.ri:first-child{border-top:0}
.ri .no{font-size:26px;font-weight:300;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;padding-top:2px}
.ri .tag{font-size:11.5px;color:var(--ink-weak);letter-spacing:.04em}
.ri b{display:block;font-weight:700;font-size:16px;line-height:1.5}
.ri p{margin:2px 0 0;font-size:15px;color:var(--ink-sub);line-height:1.7}
.ri a{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:15px;color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--ink-weak)}
.ri a svg{width:14px;height:14px}
.ri .warn{font-size:12.5px;color:var(--ink-weak);margin-top:4px}
.aside{font-size:15px;color:var(--ink-sub);background:var(--soft);border-radius:12px;padding:10px 14px;line-height:1.7}
.info{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:16px;margin:0;padding:12px 14px;background:var(--soft);border-radius:14px;line-height:1.6}
.info dt{color:var(--ink-weak);font-size:14.5px}
.info dd{margin:0}
.dock{position:absolute;left:0;right:0;bottom:0;padding:10px 14px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(to bottom,transparent,var(--paper) 35%)}
form{display:flex;align-items:flex-end;gap:6px;background:var(--paper);border-radius:28px;box-shadow:var(--shadow);border:1px solid var(--line);padding:6px 6px 6px 8px}
.plus{width:40px;height:40px;border:0;background:none;display:grid;place-items:center;color:var(--ink);cursor:pointer;flex:none;border-radius:50%}
.plus svg{width:22px;height:22px;stroke:currentColor}
textarea{flex:1;resize:none;border:0;padding:9px 2px;font:inherit;font-size:16px;line-height:1.4;background:transparent;color:var(--ink);max-height:120px}
textarea:focus{outline:none}
textarea::placeholder{color:var(--ink-weak)}
.send{width:40px;height:40px;border-radius:50%;border:0;background:var(--send);display:grid;place-items:center;cursor:pointer;flex:none}
.send svg{width:18px;height:18px;stroke:var(--send-ink)}
form:focus-within{border-color:var(--ink-weak)}
.sr{position:absolute;left:-9999px}
@media (prefers-reduced-motion:reduce){.shine{animation:none;color:var(--ink-weak);background:none}.mark svg{animation:none!important}#chat{scroll-behavior:auto}}
.ri img{width:64px;height:64px;border-radius:12px;object-fit:cover;background:var(--soft)}
.ri .price{display:block;font-size:12.5px;color:var(--ink-weak);margin-top:1px}
.ri .no{font-size:22px}
.err{font-size:16px;color:var(--ink-sub);background:var(--soft);border-radius:12px;padding:10px 14px}
.more{display:flex;flex-direction:column;gap:10px}
.ri .tag{display:inline-block;font-size:11.5px;color:var(--ink-sub);background:var(--soft);border-radius:999px;padding:1px 9px;margin-bottom:3px}
.memory{border:1px solid var(--line);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.memory p{margin:0;font-size:15.5px;color:var(--ink-sub);line-height:1.7}
.mtag{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-weak)}
.mtag svg{width:14px;height:14px}
.starters{display:flex;flex-direction:column;gap:8px}
.starter{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:11px 14px;font:inherit;font-size:14.5px;color:var(--ink);cursor:pointer;line-height:1.5}
.starter:hover,.starter:focus-visible{background:var(--soft);outline:none}
.starter svg{width:17px;height:17px;color:var(--ink-weak);flex:none}
.sec{display:flex;align-items:center;gap:8px;margin:14px 0 0!important;font-size:18px;font-weight:700;color:var(--ink)}
.sec svg{width:19px;height:19px}
.cause{font-size:17px;color:var(--ink);line-height:1.85}
.salon{display:flex;flex-direction:column;gap:8px}
.sv{border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.sv b{font-weight:700;font-size:16px}
.sv p{margin:3px 0 0;font-size:15px;color:var(--ink-sub);line-height:1.7}
.sv a{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:15px;color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--ink-weak)}
.sv a svg{width:14px;height:14px}
.quick{display:flex;gap:8px;overflow-x:auto;padding:0 2px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.quick::-webkit-scrollbar{display:none}
.qk{display:inline-flex;align-items:center;gap:6px;flex:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:8px 14px;font:inherit;font-size:15px;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.qk:hover,.qk:focus-visible{background:var(--soft);outline:none}
.qk svg{width:15px;height:15px;color:var(--ink-sub)}
#chat{padding-bottom:160px}
.speed{font:inherit;font-size:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:4px 12px;cursor:pointer}
.speed.off{color:var(--ink-weak)}
.early{display:flex;flex-direction:column;gap:10px}
@keyframes morph{0%{transform:rotate(0) scale(.8)}25%{transform:rotate(45deg) scale(1.15)}50%{transform:rotate(90deg) scale(.85)}75%{transform:rotate(135deg) scale(1.1)}100%{transform:rotate(180deg) scale(.8)}}
.slow{margin:0;font-size:14.5px;color:var(--ink-weak)}
.bot .mark{order:-1}
.ackbox{display:flex;flex-direction:column;gap:10px}

/* ---- 2026-09-23 第7版：ChatGPTの読みやすさに寄せる ---- */
.txt{margin:0}
.txt p{margin:0 0 10px}
.me{word-break:break-word}
/* 最初だけ出す入口（ChatGPTの「画像を作成」などと同じ並び） */
.starts{display:flex;flex-direction:column;padding:0 6px 10px}
.st{display:flex;align-items:center;gap:16px;background:none;border:0;padding:12px 8px;font:inherit;font-size:17px;color:var(--ink-sub);text-align:left;cursor:pointer;border-radius:12px}
.st:hover,.st:focus-visible{background:var(--soft);outline:none}
.st svg{width:24px;height:24px;color:var(--ink);flex:none}
/* 下に続きがあるときの矢印 */
.tobottom{position:absolute;left:50%;top:-50px;transform:translateX(-50%);width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);display:grid;place-items:center;cursor:pointer;color:var(--ink)}
.tobottom svg{width:20px;height:20px;stroke:currentColor}
/* 作業の流れ：終わった行は残し、今の行だけ光らせる */
.flow{display:flex;flex-direction:column;gap:6px}
.flow .act{align-items:flex-start;line-height:1.55}
.flow .act svg{margin-top:2px}
.flow .act.done{color:var(--ink-weak)}
.pills{display:flex;flex-wrap:wrap;gap:6px;padding-left:29px}
.pill{display:inline-flex;align-items:center;gap:5px;font-size:14px;line-height:1.3;color:var(--ink-sub);background:var(--soft);border-radius:999px;padding:6px 11px;animation:pop .25s ease-out}
.pill svg{width:14px;height:14px}
@keyframes pop{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.steps .pills{padding-left:29px;margin:-2px 0 4px}
/* メニュー：吹き出しの色 */
.menu{position:absolute;top:58px;left:12px;z-index:5;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:14px 16px;width:min(300px,calc(100% - 24px))}
.menu-t{margin:0 0 10px;font-size:15px;font-weight:700}
.menu-n{margin:10px 0 0;font-size:13px;color:var(--ink-weak);line-height:1.6}
.swatches{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 8px}
.sw{width:36px;height:36px;border-radius:50%;border:2px solid var(--paper);box-shadow:0 0 0 1px var(--line);cursor:pointer;padding:0}
.sw[aria-checked="true"]{box-shadow:0 0 0 2px var(--ink)}
.sw-l{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11.5px;color:var(--ink-sub)}
.speed{font-size:13px}
@media (prefers-reduced-motion:reduce){.pill{animation:none}}

/* 第9版：スクロールはChatGPTと同じ考え方。画面全体は動かさず、会話の枠の中だけ動く */
.phone{height:100dvh}
#chat{position:relative;overscroll-behavior:contain}
.spacer{flex:none;margin-top:-18px}
.hapt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);opacity:0;pointer-events:none}
/* 第10版：上の帯を透明にして、会話がその下まで見えるようにする（ボタンだけ浮かせる） */
header{position:absolute;top:0;left:0;right:0;z-index:4;background:transparent;padding:calc(8px + env(safe-area-inset-top,0px)) 12px 8px;pointer-events:none}
header>*{pointer-events:auto}
#chat{padding-top:calc(60px + env(safe-area-inset-top,0px))}
.speed{box-shadow:var(--shadow);border-color:transparent}
.menu{top:calc(58px + env(safe-area-inset-top,0px))}
/* 第11版：行間をChatGPTに合わせる（実測：ChatGPT 61px／こちら72px ＝ 1.8倍→約1.53倍。字間は同じだったので変えない） */
body{line-height:1.55}
.me{line-height:1.5}
.lead,.cause{line-height:1.55}
.ri p,.sv p,.memory p,.aside{line-height:1.6}
.steps .act,.flow .act{line-height:1.45}
/* 第12版：設定（左から出る引き出し）・肌メモの確認シート・文字の大きさ */
html{font-size:17px}
html[data-size="s"]{font-size:15px}
html[data-size="l"]{font-size:19.5px}
body{font-size:1rem}
.me,.lead,.cause,.st{font-size:1rem}
.hello{font-size:1.3rem}
.txt .h,.sec{font-size:1.06rem}
.ri b,.sv b,.act,.sum,.info{font-size:.94rem}
.ri p,.sv p,.ri a,.sv a,.aside,.memory p,.qk{font-size:.88rem}
.chip{font-size:.91rem}
.scrim{position:absolute;inset:0;z-index:8;background:rgba(0,0,0,.28)}
.drawer{position:absolute;top:0;bottom:0;left:0;z-index:9;width:min(330px,86%);background:var(--paper);box-shadow:var(--shadow);overflow-y:auto;padding:calc(12px + env(safe-area-inset-top,0px)) 18px 28px;display:flex;flex-direction:column;gap:22px;animation:slidein .22s ease-out}
@keyframes slidein{from{transform:translateX(-100%)}to{transform:none}}
.dr-head{display:flex;align-items:center;justify-content:space-between}
.dr-t{margin:0;font-size:19px;font-weight:700}
.drawer section{display:flex;flex-direction:column;gap:8px}
.dr-l{margin:0;font-size:15px;font-weight:700}
.dr-n{margin:0;font-size:13px;color:var(--ink-weak);line-height:1.55}
.dr-in{font:inherit;font-size:16px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--paper);color:var(--ink)}
.dr-in:focus{outline:none;border-color:var(--accent)}
.seg{display:grid;grid-template-columns:repeat(3,1fr);background:var(--soft);border-radius:12px;padding:3px}
.seg button{font:inherit;border:0;background:none;border-radius:10px;padding:8px 0;color:var(--ink-sub);cursor:pointer}
.seg button:nth-child(1){font-size:13px}.seg button:nth-child(2){font-size:15px}.seg button:nth-child(3){font-size:17px}
.seg button[aria-checked="true"]{background:var(--paper);color:var(--ink);font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.memo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.memo-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:12px;padding:8px 8px 8px 12px;font-size:15px;line-height:1.4}
.memo-list li small,.fact small{display:block;font-size:11.5px;color:var(--ink-weak)}
.memo-list li button{border:0;background:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--ink-weak);cursor:pointer;flex:none}
.memo-list li button:hover{background:var(--soft);color:var(--ink)}
.memo-list svg,.x svg{width:18px;height:18px}
.memo-list .memo-empty{border:0;padding:0;color:var(--ink-weak);font-size:13.5px;line-height:1.6}
.dr-link{align-self:flex-start;font:inherit;font-size:14px;border:0;background:none;color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px;padding:4px 0;cursor:pointer}
.x{border:0;background:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--ink-sub);cursor:pointer}
.x:hover{background:var(--soft)}
.sheet{position:absolute;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:7;background:var(--paper);border-radius:22px;box-shadow:0 10px 40px rgba(0,0,0,.18),0 1px 3px rgba(0,0,0,.08);padding:18px 18px 16px;display:flex;flex-direction:column;gap:10px;animation:sheetup .25s ease-out}
@keyframes sheetup{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
.sheet .x{position:absolute;top:8px;right:8px}
.sheet-t{margin:0;padding-right:36px;font-size:17px;font-weight:700;line-height:1.4}
.sheet-n{margin:0;font-size:13.5px;color:var(--ink-sub);line-height:1.55}
.facts{display:flex;flex-wrap:wrap;gap:8px}
.fact{display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:15px;line-height:1.3;text-align:left;border:1.5px solid var(--line);background:var(--paper);color:var(--ink-weak);border-radius:14px;padding:7px 12px 7px 9px;cursor:pointer}
.fact svg{width:16px;height:16px;opacity:0}
.fact[aria-pressed="true"]{border-color:var(--accent);color:var(--ink)}
.fact[aria-pressed="true"] svg{opacity:1;color:var(--accent)}
.sheet-b{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}
.sheet-b button{font:inherit;font-size:15px;border-radius:999px;padding:11px 0;cursor:pointer;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.sheet-b .primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}
.toast{position:absolute;left:50%;bottom:calc(150px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:7;background:#1F1F1F;color:#fff;font-size:14px;border-radius:999px;padding:9px 16px;white-space:nowrap;box-shadow:var(--shadow)}
@media (prefers-reduced-motion:reduce){.drawer,.sheet{animation:none}}

/* 第13版：設定画面も文字の大きさに合わせて変わる／テーマカラーの自由選択／肌メモの直接設定 */
.dr-t{font-size:1.12rem}
.dr-l{font-size:.9rem}
.dr-n{font-size:.78rem}
.memo-list li{font-size:.9rem}
.sw-l{font-size:.7rem}
.sheet-b .primary{color:var(--send-ink)}
.sw-any{position:relative;display:block;overflow:hidden;background:conic-gradient(#f44336,#ffeb3b,#4caf50,#00bcd4,#3f51b5,#e91e63,#f44336)}
.sw-any input{position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);opacity:0;cursor:pointer;border:0;padding:0}
.mg{display:flex;flex-direction:column;gap:6px;padding:4px 0 8px}
.mg-t{margin:0;font-size:.82rem;color:var(--ink-sub);font-weight:700}
.opts{display:flex;flex-wrap:wrap;gap:6px}
.opt{font:inherit;font-size:.82rem;line-height:1.3;border:1px solid var(--line);background:var(--paper);color:var(--ink-sub);border-radius:999px;padding:6px 12px;cursor:pointer}
.opt[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--send-ink);font-weight:700}
.addrow{display:flex;gap:6px;background:none;border:0;box-shadow:none;padding:0;border-radius:0;align-items:stretch}
.addrow .dr-in{flex:1;min-width:0;padding:8px 10px}
.addrow button{font:inherit;font-size:.85rem;border:1px solid var(--line);background:var(--soft);color:var(--ink);border-radius:12px;padding:0 14px;cursor:pointer;flex:none}
.memo-edit{display:flex;flex-direction:column;gap:4px}

/* 第14版：肌メモは「見る→編集→登録」／候補リスト／キーボード／入力のカーソルもテーマカラー */
.phone{height:var(--vvh,100dvh)}
:root{accent-color:var(--accent)}
input,textarea{caret-color:var(--accent)}
::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}
#f:focus-within{border-color:var(--accent)}
.memo-view{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;font-size:.88rem;line-height:1.5}
.memo-view dt{color:var(--ink-weak);font-size:.78rem;padding-top:2px;white-space:nowrap}
.memo-view dd{margin:0;color:var(--ink);font-weight:600}
.memo-view dd.none{color:var(--ink-weak);font-weight:400}
.memo-edit-btn{display:flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:.9rem;font-weight:700;border:1.5px solid var(--accent);color:var(--accent-deep);background:var(--paper);border-radius:999px;padding:10px 0;cursor:pointer;margin-top:4px}
.memo-edit-btn svg{width:17px;height:17px}
.mg-t small{font-weight:400;color:var(--ink-weak);margin-left:4px}
.memo-bar{position:sticky;bottom:-28px;display:grid;grid-template-columns:1fr 1.6fr;gap:8px;padding:12px 0 16px;background:linear-gradient(to bottom,transparent,var(--paper) 30%)}
.memo-bar button{font:inherit;font-size:.9rem;border-radius:999px;padding:11px 0;cursor:pointer;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.memo-bar .primary{background:var(--accent);border-color:var(--accent);color:var(--send-ink);font-weight:700}
.sugg{display:flex;flex-direction:column;gap:4px}
.sugg-list{list-style:none;margin:0;padding:4px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);background:var(--paper)}
.sugg-list button{display:block;width:100%;text-align:left;font:inherit;font-size:.88rem;border:0;background:none;color:var(--ink);padding:9px 10px;border-radius:8px;cursor:pointer}
.sugg-list button:hover,.sugg-list button:focus-visible{background:var(--soft);outline:none}
.addrow{display:flex}
