/* =============================================/* =================================変数定義 (Root Settings)
   ============================================= */
:root {
    --parchment-base: #fdf8e6;
    --parchment-light: #fffcf2;
    --ink-color: #4e342e;
    --accent-gold: #b8860b;
    --accent-royal: #c19a6b;
    --border-light: #f3e5ab;
}

/* =============================================
   2. 全体背景 (Body & Base Typography)
   ============================================= */
body {
    background-color: #f7f3ed !important;
    background-image: url('https://www.transparenttextures.com');
    color: var(--ink-color);
    font-family: "Sawarabi Mincho", serif;
    margin: 0;
}

/* リンク */
a, a:link, a:visited, a:hover, a:active {
    color: #2e7d32;
    font-weight: bold;
    text-decoration: none !important;  /* ←ここが最重要 */
}

a:hover {
    color: #f57c00;
    text-decoration: underline !important;
}

/* =============================================
   3. メインコンテンツ (Parchment Container)
   ============================================= */
#container {
    position: relative;
    max-width: 900px;
    margin: 40px auto;
    padding: 50px !important;
    background-color: var(--parchment-base) !important;
    background-image: url('https://www.transparenttextures.com');
    border: 1px solid #d2b48c;
    border-radius: 5px;
    box-shadow: 0 0 50px rgba(0,0,0,0.2), inset 0 0 100px rgba(139, 69, 19, 0.1);
}

#container::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    pointer-events: none;
    border: 20px solid transparent;
    border-image: radial-gradient(#d2b48c 10%, transparent 70%) 20;
}

h1, h2, h3 {
    color: #5d4037;
    border-bottom: 1px solid rgba(139, 69, 19, 0.3);
    text-shadow: 1px 1px 1px rgba(255,255,255,0.5);
    font-weight: bold;
    letter-spacing: 0.1em;
}

h2 {
    border-left: 5px solid var(--accent-gold);
    padding-left: 15px;
}

h2::before {
    content: '📜';
    margin-right: 10px;
}

/* =============================================
   メニューバー & 情報ボックス
   ============================================= */
#menubar, .infobox {
    background: rgba(255, 255, 255, 0.5);
    border: 1px dashed rgba(139, 69, 19, 0.4);
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 20px;
}

/* 既存リセット維持 */
.infobox, .infobox table, .infobox th, .infobox td {
    border: none !important;
}

.infobox {
    border: 1px dashed rgba(139, 69, 19, 0.4) !important;
}

/* 統一テーブル（軽い線のみ追加） */
.infobox table {
    width: 100%;
    border-collapse: collapse;
}

.infobox th,
.infobox td {
    padding: 6px 8px;
    border-bottom: 1px solid rgba(139, 69, 19, 0.2);
    font-size: 14px;
    text-align: left;
}

/* =============================================
   4. 実績パネル (Side Slide Menu)
   ============================================= */
.nav-unshown {
    display: none;
}

#nav-wrapper {
    position: fixed;
    top: 0;
    right: -420px;
    width: 420px;
    height: 100vh;
    z-index: 10000;
    display: flex;
    align-items: flex-start;
    transition: transform 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
}

#nav-open {
    position: absolute;
    left: -45px;
    top: 150px;
    width: 45px;
    padding: 20px 8px;
    background: #5d4037;
    color: #f2e3c9;
    font-family: 'Sawarabi Mincho', serif;
    font-size: 16px;
    font-weight: bold;
    writing-mode: vertical-rl;
    border: 1px solid #3e2723;
    border-radius: 10px 0 0 10px;
    box-shadow: -2px 2px 8px rgba(0,0,0,0.3);
    cursor: pointer;
}

#nav-content {
    width: 100%;
    height: 100%;
    padding: 60px 15px 40px;
    overflow-y: auto;
    background: #fdf8e6;
    background-image: url('https://www.transparenttextures.com');
    border-left: 5px double #d2b48c;
    box-shadow: -5px 0 20px rgba(0,0,0,0.2);
}

#nav-input:checked ~ #nav-wrapper {
    transform: translateX(-420px);
}

#nav-input:checked ~ #nav-wrapper #nav-open {
    background: var(--accent-gold);
    color: #fff;
}
