/* === 由来: ookubo-rokusei-calc.php（六星占術）＋六星9ページ本文の重複<style>を一本化（2026-08-20 仕上げ） === */
.ookubo-rokusei-calc {
    max-width: 680px;
    margin: 24px auto;
    padding: 20px;
    border: 1px solid #d0d7de;
    border-radius: 10px;
    background: #fafbfc;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Meiryo", sans-serif;
    line-height: 1.6;
}
/* 見出しは「紺文字＋青い下線」だとハイパーリンクの視覚記号そのものになり、
   押せると誤解される（デッドクリックの原因）。本文色＋無彩色の罫線に変更。 */
.ookubo-rokusei-calc h3 {
    margin: 0 0 8px 0;
    font-size: 1.15em;
    border-bottom: 2px solid #d0d7de;
    padding-bottom: 4px;
    color: #24292f;
}
.ookubo-rokusei-calc .rkc-note {
    font-size: 0.9em;
    color: #57606a;
    margin: 0 0 16px 0;
}
.ookubo-rokusei-calc .rkc-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    margin-bottom: 14px;
    align-items: end;
}
.ookubo-rokusei-calc .rkc-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.ookubo-rokusei-calc .rkc-field label {
    font-size: 0.85em;
    font-weight: 600;
    color: #24292f;
}
.ookubo-rokusei-calc .rkc-field select,
.ookubo-rokusei-calc .rkc-field input[type="number"] {
    padding: 6px 10px;
    border: 1px solid #d0d7de;
    border-radius: 6px;
    font-size: 1em;
    min-width: 80px;
    background: #fff;
}
.ookubo-rokusei-calc .rkc-btn {
    padding: 10px 20px;
    background: #4a6fa5;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 1em;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}
.ookubo-rokusei-calc .rkc-btn:hover {
    background: #3b5a85;
}
.ookubo-rokusei-calc .rkc-boundary-wrap {
    margin: 10px 0 14px 0;
    padding: 10px 12px;
    border: 1px dashed #c4cbd3;
    border-radius: 6px;
    background: #fff;
}
.ookubo-rokusei-calc .rkc-boundary-wrap legend {
    font-size: 0.85em;
    font-weight: 600;
    color: #24292f;
    padding: 0 6px;
}
.ookubo-rokusei-calc .rkc-boundary-wrap label {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin: 4px 0;
    font-size: 0.92em;
    cursor: pointer;
}
.ookubo-rokusei-calc .rkc-boundary-wrap label small {
    color: #6e7781;
    font-size: 0.85em;
    margin-left: 4px;
}
.ookubo-rokusei-calc .rkc-result {
    margin-top: 16px;
    padding: 16px;
    background: #fff;
    border: 1px solid #d0d7de;
    border-radius: 8px;
    display: none;
}
.ookubo-rokusei-calc .rkc-result.show {
    display: block;
}
/* 結果の主役表示。紺文字だとボタン／リンクに見えるため、
   下地の琥珀色と調和する濃茶にして「マーカーで引いた強調」に見せる。 */
.ookubo-rokusei-calc .rkc-result-main {
    font-size: 1.35em;
    font-weight: 700;
    color: #5f2a04;
    margin-bottom: 12px;
    padding: 8px 14px;
    background: #fff6db;
    border-radius: 6px;
    display: inline-block;
}
.ookubo-rokusei-calc .rkc-result dl {
    margin: 0;
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 6px 14px;
    font-size: 0.95em;
}
.ookubo-rokusei-calc .rkc-result dt {
    font-weight: 600;
    color: #57606a;
}
.ookubo-rokusei-calc .rkc-result dd {
    margin: 0;
    color: #24292f;
}
.ookubo-rokusei-calc .rkc-yearly-head {
    margin-top: 18px;
    padding: 6px 10px;
    background: #2d5a8f;
    color: #fff;
    font-weight: 700;
    font-size: 1.02em;
    border-radius: 5px 5px 0 0;
}
.ookubo-rokusei-calc .rkc-yearly-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 6px;
    font-size: 0.92em;
}
.ookubo-rokusei-calc .rkc-yearly-table th,
.ookubo-rokusei-calc .rkc-yearly-table td {
    border: 1px solid #d0d7de;
    padding: 6px 8px;
    text-align: center;
}
.ookubo-rokusei-calc .rkc-yearly-table th {
    background: #eef2f6;
    font-weight: 600;
}
.ookubo-rokusei-calc .rkc-yearly-table .rkc-y-ks td {
    background: #fff7e6;
}
.ookubo-rokusei-calc .rkc-yearly-table .rkc-y-cs td {
    background: #ffe0b2;
    color: #7a4a00;
}
.ookubo-rokusei-calc .rkc-yearly-table .rkc-y-ds td {
    background: #ffd0d0;
    color: #b3261e;
    font-weight: 700;
}
.ookubo-rokusei-calc .rkc-yearly-note {
    font-size: 0.78em;
    color: #6e7781;
    margin: 0 0 10px 0;
}
.ookubo-rokusei-calc .rkc-shukumei-head {
    margin-top: 18px;
    padding: 6px 10px;
    background: #1e3a5f;
    color: #fff;
    font-weight: 700;
    font-size: 1.02em;
    border-radius: 5px 5px 0 0;
}
.ookubo-rokusei-calc .rkc-shukumei-main {
    padding: 10px 14px;
    background: #fff6db;
    font-size: 1.18em;
    font-weight: 700;
    color: #8b2c08;
    border-radius: 0 0 5px 5px;
    margin-bottom: 8px;
}
.ookubo-rokusei-calc .rkc-shukumei-main.rkc-shukumei-none {
    background: #e8f5e9;
    color: #2e7d32;
    font-size: 0.95em;
    font-weight: 600;
}
.ookubo-rokusei-calc .rkc-shukumei-main.rkc-shukumei-hint {
    background: #eef3f8;
    color: #33414f;
    font-size: 0.95em;
    font-weight: 600;
    border: 1px solid #cdd9e5;
}
.ookubo-rokusei-calc .rkc-shukumei-year {
    font-size: 0.9em;
    color: #5f2a04;
    font-weight: 600;
}
.ookubo-rokusei-calc .rkc-shukumei-detail {
    font-size: 0.88em;
    margin-bottom: 8px;
}
.ookubo-rokusei-calc .rkc-daiun-table {
    margin-top: 8px;
    font-size: 0.85em;
}
.ookubo-rokusei-calc .rkc-daiun-table summary {
    cursor: pointer;
    color: #1e3a5f;
    font-weight: 600;
    padding: 4px 0;
}
.ookubo-rokusei-calc .rkc-daiun-table table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 6px;
}
.ookubo-rokusei-calc .rkc-daiun-table th,
.ookubo-rokusei-calc .rkc-daiun-table td {
    border: 1px solid #d0d7de;
    padding: 4px 8px;
    text-align: center;
}
.ookubo-rokusei-calc .rkc-daiun-table th {
    background: #f0f2f5;
}
.ookubo-rokusei-calc .rkc-shukumei-mark {
    color: #cf222e;
    font-weight: 700;
    font-size: 0.9em;
}
.ookubo-rokusei-calc .rkc-error {
    color: #cf222e;
    background: #ffebe9;
    padding: 8px 12px;
    border-radius: 6px;
    margin-top: 10px;
    font-size: 0.9em;
}
@media (max-width: 480px) {
    .ookubo-rokusei-calc .rkc-form { gap: 8px; }
    .ookubo-rokusei-calc .rkc-field select,
    .ookubo-rokusei-calc .rkc-field input[type="number"] { min-width: 70px; }
    .ookubo-rokusei-calc .rkc-result-main { font-size: 1.15em; }
}

