/* ===== AURISE: Gold Calc (article-only) ===== */
.gold-calc-block{
  max-width:560px; margin:1.6em auto 2.2em; padding:1.2em 1em 1.1em;
  border-radius:14px; background:#fcf8e8; box-shadow:0 2px 12px rgba(191,161,68,.10); color:#2d2a22;
}
.gold-calc-block h2{ margin:0 0 .6em; font-size:1.15rem; letter-spacing:.02em; color:#a6872f; }
.gold-calc-desc{
  font-size:.98rem; margin:.2em 0 1em; color:#5a4e32; background:#f7ecd7; padding:.65em .75em; border-radius:8px;
}
.gold-calc-row{
  display:flex; flex-wrap:wrap; align-items:center; gap:.8em .9em;
  background:#f6eeda; padding:.9em .9em .8em; border-radius:10px; font-size:1rem;
}
.gold-calc-row label{ display:flex; align-items:center; gap:.45em; min-width:220px; font-weight:600; }
.gold-calc-row input[type="text"], .gold-calc-row input[type="number"]{
  width:7.5em; min-width:5.5em; padding:.35em .5em; border:1px solid #dbc776; border-radius:6px; background:#fffde9;
  font-size:16px; line-height:1.2; box-sizing:border-box;
}
.gold-calc-row .w-4em{ width:4.5em; } /* 旧 inline-style の置き換え */

button.main-btn{
  background:#1a73e8; color:#fff; border:0; padding:.55em 1.1em; font-size:14px; border-radius:8px; font-weight:700;
  cursor:pointer; box-shadow:0 2px 0 rgba(0,0,0,.06); transition:background .2s, transform .06s;
}
button.main-btn:hover{ background:#1669c1; }
button.main-btn:active{ transform:translateY(1px); }

button.sub-btn{
  background:#e6d6ad; color:#6f5a24; border:0; padding:.55em 1.1em; font-size:14px; border-radius:8px; font-weight:700;
  cursor:pointer; transition:filter .15s, transform .06s;
}
button.sub-btn:hover{ filter:brightness(0.98); }
button.sub-btn:active{ transform:translateY(1px); }

.gold-calc-note{ font-size:.95rem; margin:.6em 0 1em .1em; color:#7b6938; line-height:1.6; }

.result-block{
  background:#fff9ec; padding:1.05em .95em; border-radius:10px; font-size:1.02rem; color:#634e1e;
  box-shadow:0 0 .5em rgba(200,174,110,.06); margin-top:1.2em; /* 旧 inline-style をCSS化 */
}
.result-block b, .result-block strong{ color:#bfa144; }
.result-block .explain{ font-size:.93rem; color:#8a783e; margin-left:.4em; }
.result-block .note{ font-size:.9rem; color:#86734a; margin-top:.7em; }
.result-block .err{ color:#a00; font-weight:700; }

/* 値の更新ハイライト */
.result-block .highlight{ background:#ffeb3b; color:#111; box-shadow:0 2px 0 rgba(0,0,0,.06); padding:0 .15em; border-radius:4px; }
@keyframes aurise-redflash{ 0%{background:#ffe2e2;} 100%{background:#ffeb3b;} }
.result-block .redflash{ animation:aurise-redflash .6s ease-out 1; }

/* モバイル */
@media (max-width:600px){
  .gold-calc-block{ max-width:98%; padding:1em .6em .9em; }
  .gold-calc-row{ flex-direction:column; align-items:stretch; gap:.65em; font-size:.98rem; }
  .gold-calc-row label{ min-width:0; justify-content:space-between; }
  .gold-calc-row input[type="text"], .gold-calc-row input[type="number"]{ width:8.5em; }
}

/* === AURISE Gold Calc: Polishing =============================== */

/* フォーカス見える化（キーボード操作対応） */
.gold-calc-block button:focus-visible,
.gold-calc-block input:focus-visible {
  outline: 2px solid #1a73e8;
  outline-offset: 2px;
  border-radius: 6px;
}

/* iOSでフォント拡大されないよう最低フォントサイズを確保 */
.gold-calc-block input,
.gold-calc-block button { font-size: 16px; }

/* WebKitの数値入力スピンボタンを非表示（見た目をすっきり） */
.gold-calc-block input[type=number]::-webkit-outer-spin-button,
.gold-calc-block input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none; margin: 0;
}
.gold-calc-block input[type=number] { -moz-appearance: textfield; }

/* 低モーション設定の人向けにアニメーション抑制 */
@media (prefers-reduced-motion: reduce) {
  .result-block .redflash { animation: none !important; }
  .gold-calc-block button { transition: none !important; }
}

/* テーマの .button と衝突しないよう保険（Blocksy/Wooの横取り対策） */
.gold-calc-block .main-btn.button,
.gold-calc-block .sub-btn.button {
  all: unset;
  display: inline-block;
  cursor: pointer;
  padding: .55em 1.1em;
  border-radius: 8px;
  font-weight: 700;
  line-height: 1;
}
.gold-calc-block .main-btn.button { background:#1a73e8; color:#fff; }
.gold-calc-block .sub-btn.button  { background:#e6d6ad; color:#6f5a24; }

/* 狭幅でのはみ出し防止（親テーマ余白が強いケース） */
.gold-calc-block { box-sizing: border-box; width: min(100%, 560px); }