/* かえひん — 銘板（本体ラベル）をモチーフにした、型番を書き写すためのUI */
:root{
  --paper:#F6F8F7;      /* 背景：冷たい白 */
  --plate:#E2E7EA;      /* 銘板：アルミの灰 */
  --plate-edge:#B9C3CA; /* 銘板のふち */
  --ink:#18222E;        /* 文字：青みの墨 */
  --ink-2:#4A5866;      /* 補足の文字 */
  --rule:#C9D1D7;       /* 罫線 */
  --fit:#1D6F55;        /* 合う・純正 */
  --fit-bg:#E3F1EB;
  --caution:#9A5B00;    /* 互換品の注意 */
  --caution-bg:#FBF0DE;
  --link:#1F4E8C;
  --focus:#2F6FDB;
  --surface:#FFFFFF;
  --radius-plate:6px;
  --radius-btn:4px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#11161C; --plate:#232C35; --plate-edge:#3A4652; --ink:#E7ECEF; --ink-2:#A9B5C0;
    --rule:#33404B; --fit:#6CC8A2; --fit-bg:#16302A; --caution:#E7B062; --caution-bg:#33270F;
    --link:#8DB4F0; --focus:#7FA8F5; --surface:#1A2129;
  }
}
:root[data-theme="dark"]{
  --paper:#11161C; --plate:#232C35; --plate-edge:#3A4652; --ink:#E7ECEF; --ink-2:#A9B5C0;
  --rule:#33404B; --fit:#6CC8A2; --fit-bg:#16302A; --caution:#E7B062; --caution-bg:#33270F;
  --link:#8DB4F0; --focus:#7FA8F5; --surface:#1A2129;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:"BIZ UDPGothic","Hiragino Sans","Noto Sans JP",system-ui,sans-serif;
  font-size:17px;line-height:1.75;letter-spacing:.02em}
a{color:var(--link);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.wrap{max-width:760px;margin:0 auto;padding:0 16px}
.pn{font-family:"BIZ UDGothic","BIZ UDPGothic",ui-monospace,monospace;font-weight:700;letter-spacing:.04em}

/* ヘッダー */
.site-head{border-bottom:1px solid var(--rule);background:var(--paper)}
.site-head .wrap{display:flex;align-items:center;gap:12px;min-height:56px}
.brand{font-weight:700;font-size:18px;color:var(--ink);text-decoration:none;white-space:nowrap}
.brand small{display:block;font-weight:400;font-size:11px;color:var(--ink-2);line-height:1.2}
.head-search{margin-left:auto;flex:1;max-width:320px;position:relative}
.head-search input{width:100%;height:40px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);
  background:var(--surface);color:var(--ink);padding:0 10px;font:inherit;font-size:16px}

/* 銘板（検索の主役） */
.plate{background:var(--plate);border:1px solid var(--plate-edge);border-radius:var(--radius-plate);
  padding:18px 18px 16px;position:relative;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.plate::before,.plate::after{content:"";position:absolute;top:10px;width:8px;height:8px;border-radius:50%;
  background:var(--plate-edge);box-shadow:inset 0 1px 1px rgba(0,0,0,.25)}
.plate::before{left:10px}.plate::after{right:10px}
.plate-title{font-size:13px;color:var(--ink-2);text-align:center;margin:0 0 10px;letter-spacing:.12em}
.plate-row{display:grid;grid-template-columns:4.2em 1fr;border-top:1px solid var(--plate-edge);border-bottom:1px solid var(--plate-edge);align-items:stretch}
.plate-row label{font-size:14px;color:var(--ink-2);display:flex;align-items:center;border-right:1px solid var(--plate-edge);padding-right:8px}
.plate-row input{border:0;background:transparent;color:var(--ink);font:inherit;
  font-family:"BIZ UDGothic",ui-monospace,monospace;font-weight:700;font-size:24px;letter-spacing:.06em;
  padding:12px 10px;min-width:0;width:100%;text-transform:uppercase}
.plate-row input::placeholder{color:#8C99A4;font-weight:400;letter-spacing:.04em;text-transform:none;font-size:18px}
.plate-row input:focus{outline:none;background:rgba(255,255,255,.55)}
:root[data-theme="dark"] .plate-row input:focus{background:rgba(255,255,255,.04)}
.plate-note{font-size:13px;color:var(--ink-2);margin:10px 0 0;line-height:1.6}
.plate-actions{display:flex;gap:8px;margin-top:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:var(--radius-btn);
  border:1px solid var(--ink);background:var(--ink);color:var(--paper);font:inherit;font-weight:700;text-decoration:none;cursor:pointer}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--plate-edge)}

/* 候補リスト */
.suggest{list-style:none;margin:8px 0 0;padding:0;background:var(--surface);border:1px solid var(--plate-edge);border-radius:var(--radius-btn);overflow:hidden}
.suggest[hidden]{display:none}
.suggest li a{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;padding:10px 12px;color:var(--ink);text-decoration:none;border-top:1px solid var(--rule)}
.suggest li:first-child a{border-top:0}
.suggest li a[aria-selected="true"],.suggest li a:hover{background:var(--fit-bg)}
.tag{font-size:12px;border:1px solid var(--plate-edge);border-radius:3px;padding:0 6px;color:var(--ink-2);align-self:center;white-space:nowrap}
.tag.model{border-color:var(--fit);color:var(--fit)}
.suggest .s-main{font-size:17px}
.suggest .s-sub{grid-column:2;font-size:13px;color:var(--ink-2)}
.suggest .s-hint{font-size:12px;color:var(--caution)}
.head-search .suggest{position:absolute;left:0;right:0;z-index:20}

/* 本文 */
main{padding:20px 0 48px}
h1{font-size:28px;line-height:1.35;margin:8px 0 6px;letter-spacing:.02em}
h1 .pn{font-size:32px}
h2{font-size:20px;margin:36px 0 10px;padding-bottom:6px;border-bottom:2px solid var(--ink)}
h3{font-size:17px;margin:20px 0 6px}
.lead{color:var(--ink-2);margin:0 0 16px}
.crumbs{font-size:13px;color:var(--ink-2);margin:4px 0 0}
.crumbs a{color:var(--ink-2)}
.meta{font-size:13px;color:var(--ink-2)}

/* 交換品の一覧（本体ページの結論） */
.fit-list{border:2px solid var(--fit);border-radius:var(--radius-plate);background:var(--surface);overflow:hidden}
.fit-head{background:var(--fit);color:#fff;padding:8px 14px;font-weight:700;font-size:15px}
:root[data-theme="dark"] .fit-head{color:#0E1A15}
.fit-item{padding:14px;border-top:1px solid var(--rule)}
.fit-item:first-of-type{border-top:0}
.fit-kind{font-size:13px;color:var(--fit);font-weight:700}
.fit-pn{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:2px 0 4px}
.fit-pn .pn{font-size:24px}
.copy{font-size:13px;min-height:32px;padding:0 10px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);background:transparent;color:var(--ink);cursor:pointer;font:inherit;font-size:13px}
.facts{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:14px;color:var(--ink-2);margin:0 0 10px;padding:0}
.facts div{display:flex;gap:6px}
.facts dt{color:var(--ink-2)}
.facts dd{margin:0;color:var(--ink);font-weight:700}
.buy{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.buy a{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);
  text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;background:var(--paper)}
.buy a.official{border-color:var(--fit);color:var(--fit)}
.status-end{color:var(--caution);font-weight:700}

/* 互換品の枠 */
.compat{margin-top:28px;border:1px dashed var(--caution);border-radius:var(--radius-plate);background:var(--caution-bg);padding:14px}
.compat h2{border:0;margin:0 0 6px;padding:0;font-size:18px;color:var(--caution)}
.compat ul{margin:6px 0 0;padding-left:1.2em;font-size:14px}

/* 変種・注意 */
.variants{font-size:14px;color:var(--ink-2)}
.note{background:var(--plate);border-left:4px solid var(--plate-edge);padding:10px 14px;font-size:14px;margin:16px 0}

/* マイ家電・交換日 */
.tools{display:grid;gap:12px;margin-top:8px}
.tools label{font-size:14px;color:var(--ink-2)}
.tools input[type=date]{height:44px;font:inherit;padding:0 8px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);background:var(--surface);color:var(--ink)}
.next-list{margin:6px 0 0;padding:0;list-style:none;font-size:15px}
.next-list li{padding:6px 0;border-top:1px solid var(--rule)}

/* 一覧 */
.model-grid{list-style:none;padding:0;margin:8px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.model-grid a{display:block;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--radius-btn);text-decoration:none;color:var(--ink);background:var(--surface)}
.filter-in{width:100%;height:44px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);padding:0 10px;font:inherit;background:var(--surface);color:var(--ink)}
.maker-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.maker-list a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);text-decoration:none;color:var(--ink);background:var(--surface)}
.maker-list .count{font-size:12px;color:var(--ink-2);margin-left:6px}

.mine{margin:18px 0 0}
.mine[hidden]{display:none}

/* フッター */
.site-foot{border-top:1px solid var(--rule);padding:20px 0 40px;font-size:13px;color:var(--ink-2)}
.site-foot a{color:var(--ink-2)}
.site-foot nav{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:10px}

.head-find{display:none;margin-left:auto;min-height:40px;align-items:center;padding:0 14px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);color:var(--ink);text-decoration:none;font-weight:700}
#search-head .pn{font-size:inherit}
@media (max-width:560px){
  .head-find{display:inline-flex}
  .home .head-find{display:none}
  .head-search{display:none}
  .home .head-search{display:none}
  h1{font-size:24px}
  .plate-row input{font-size:21px}
}
@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}

.fit-ok{margin:0 0 6px;font-size:14px;font-weight:700;color:var(--fit)}
.warn-sim{margin:0 0 10px;font-size:14px;color:var(--caution);background:var(--caution-bg);padding:6px 10px;border-radius:var(--radius-btn)}
.read-as{font-size:14px;background:var(--fit-bg);padding:6px 10px;border-radius:var(--radius-btn);margin:8px 0 0}
.read-as[hidden]{display:none}

.others{margin-top:12px;border:1px solid var(--rule);border-radius:var(--radius-plate);background:var(--surface)}
.others summary{padding:12px 14px;cursor:pointer;font-weight:700;min-height:44px}
.others ul{list-style:none;margin:0;padding:0}
.others li{padding:10px 14px;border-top:1px solid var(--rule)}
.others .buy{margin-top:6px}

.fit-row{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}
.fit-row .fit-main{min-width:0}
.thumb{width:88px;height:88px;object-fit:contain;background:#fff;border:1px solid var(--rule);border-radius:var(--radius-btn);padding:4px}
.thumb-link{display:block;flex:none;line-height:0}
.part-head{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.part-head .thumb{width:140px;height:140px}

.body-photo{display:flex;gap:12px;align-items:center;margin:4px 0 16px;padding:10px;border:1px solid var(--rule);border-radius:var(--radius-plate);background:var(--surface)}
.body-photo img{width:120px;height:120px;object-fit:contain;background:#fff;border-radius:var(--radius-btn)}
.body-photo figcaption{font-size:13px;color:var(--ink-2);line-height:1.6}

.cat-card{margin-top:28px}
.cat-card h2 a{color:var(--ink);text-decoration:none}
.cat-card h2 a:hover{text-decoration:underline}
.buy.two{grid-template-columns:1fr 1fr}.buy.one{grid-template-columns:1fr}
.replace-box{margin:20px 0;padding:14px 16px;border:1px solid var(--plate-edge);border-radius:var(--radius-btn);background:var(--plate)}
.replace-box h2{margin-top:0;font-size:1.05rem}
.table-wrap{overflow-x:auto}
table.list{border-collapse:collapse;width:100%;font-size:.92rem}
table.list th,table.list td{border-bottom:1px solid var(--rule);padding:6px 8px;text-align:left;vertical-align:top}
table.list th{background:var(--plate);white-space:nowrap}
.recall-box{margin:14px 0;padding:12px 14px;border:2px solid var(--caution,#b45309);border-radius:var(--radius-btn);background:color-mix(in srgb,var(--caution,#b45309) 8%,transparent)}
.recall-box h2{margin:0 0 6px;font-size:1rem}
.recall-box ul{margin:0;padding-left:1.2em}

.pr-note{margin:0;padding:4px 16px;font-size:12px;text-align:center;background:var(--paper);color:var(--muted,#666);border-bottom:1px solid var(--rule)}
.pr-note a{color:inherit;text-decoration:none}
.faq details{border-top:1px solid var(--rule);padding:8px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{margin:6px 0 0}
.tw{position:relative;flex:none}.tw .kicon{position:absolute;inset:0;border-radius:8px}.tw>a,.tw>img{position:absolute;inset:0;display:block}.tw img.thumb{width:100%;height:100%;object-fit:contain;background:#fff;border-radius:8px}
.kind-desc{margin:4px 0 6px;font-size:14px;line-height:1.6}.kind-desc .meta{font-size:12.5px}
.facts dt{white-space:nowrap}
.cal-btns{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.cal-btns .btn{font-size:13px;padding:6px 10px}
.feedback{margin:28px 0 8px;padding:14px 16px;border:1px solid var(--rule);border-radius:10px;background:#fff}.feedback h2{margin-top:0;font-size:17px}
.fb-tabs{display:flex;flex-wrap:wrap;gap:8px}.fb-open.on{border-color:var(--accent,#1f6f54);color:var(--accent,#1f6f54);font-weight:700}
.fb-form{margin-top:12px}.fb-choices{display:flex;flex-direction:column;gap:6px;margin:6px 0 10px}.fb-label{display:block;margin:8px 0}.fb-label textarea{display:block;width:100%;margin-top:4px;font:inherit;padding:8px;border:1px solid var(--rule);border-radius:8px;box-sizing:border-box}
.fb-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.fb-q{margin:6px 0;font-weight:700}
