:root{--bg:#0c1420;--panel:#162233;--line:#273b4c;--gold:#f0c77b;--text:#eaf0f4;--muted:#97a9b9}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'Pretendard','Noto Sans KR',Arial,sans-serif}a{color:inherit;text-decoration:none}.wrap{max-width:1180px;margin:0 auto;padding-left:22px;padding-right:22px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;color:#000;z-index:999}.utility-bar{background:#080f18;border-bottom:1px solid #1c2937;color:#93a6b6;font-size:12px}.utility-content{display:flex;align-items:center;justify-content:space-between;min-height:38px;gap:12px}.utility-content nav{display:flex;gap:16px}.utility-content a:hover,.site-footer a:hover{color:var(--gold)}.masthead{background:#101b2b}.brand-row{height:103px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:16px}.brand-emblem{display:grid;place-items:center;width:57px;height:57px;border:2px solid #d5a95d;border-radius:14px;background:linear-gradient(135deg,#3b4350,#1a2e3b);font-family:Georgia,serif;font-size:26px;font-weight:bold;color:var(--gold);box-shadow:0 4px 25px #0007}.brand b{font-size:26px;letter-spacing:2px}.brand i,.site-footer span{font-style:normal;color:var(--gold)}.brand small{display:block;color:#a2b5c2;font-size:12px;letter-spacing:2px;margin-top:5px}.header-cta{border:1px solid #aa8954;color:#f6d596;border-radius:5px;padding:13px 20px;font-size:13px}.primary-nav{background:#192a3d;border-top:1px solid #29394b;border-bottom:3px solid #ba9056}.nav-items{display:flex;align-items:center;gap:0}.nav-items a{padding:20px 26px;font-size:15px;font-weight:700;transition:.2s}.nav-items a:hover{color:var(--gold);background:#253b50}.content-area{padding-top:30px;padding-bottom:60px;min-height:60vh}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:385px;padding:64px 65px;border:1px solid #44556a;background:radial-gradient(circle at 76% 43%,#315869 0%,transparent 37%),linear-gradient(115deg,#112339 15%,#20364b 55%,#16202e);border-radius:7px}.hero:after{content:"";position:absolute;z-index:-1;inset:0;background:repeating-linear-gradient(150deg,transparent 0 65px,#ffffff06 66px 67px)}.hero-content{position:relative;z-index:2}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:800;color:var(--gold)}.hero h1{font-size:43px;line-height:1.25;letter-spacing:-1px;margin:17px 0}.hero h1 em{font-style:normal;color:var(--gold)}.hero p{line-height:1.8;color:#c2d1da;font-size:14px}.hero-actions{display:flex;gap:10px;margin-top:27px}.btn{display:inline-block;padding:13px 19px;border-radius:4px;font-size:13px;font-weight:800}.btn-gold{background:linear-gradient(135deg,#f0c77b,#c99b57);color:#243140}.btn-ghost{border:1px solid #8291a3;color:#eef5f7}.hero-medallion{position:absolute;right:9%;top:19%;width:255px;height:255px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #d5b779;border-radius:50%;box-shadow:0 0 0 16px #d5b77916,0 0 0 31px #d5b77910,0 0 65px #eec87933;background:radial-gradient(circle,#49616a,#1b3144 70%);color:#f5d493;transform:rotate(-12deg)}.hero-medallion span{font:bold 100px Georgia,serif;text-shadow:0 8px 5px #0005}.hero-medallion small{font-size:12px;letter-spacing:3px}.shortcut-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0 55px}.shortcut-grid a{background:#172536;border:1px solid #2c4356;border-radius:5px;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:.2s}.shortcut-grid a:hover{border-color:var(--gold);transform:translateY(-2px)}.shortcut-icon{font-size:22px;color:var(--gold)}.shortcut-grid strong{font-size:15px}.shortcut-grid small{font-size:12px;color:var(--muted)}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}.section-heading h2{font-size:26px;margin:10px 0 0}.section-heading p{color:var(--muted);font-size:13px}.board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.board-panel{min-width:0;min-height:245px;border:1px solid #314454;border-radius:5px;background:#152234;padding:19px 23px}.panel-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #344757;padding-bottom:16px;margin-bottom:10px}.panel-heading h3{margin:0;font-size:18px}.panel-heading h3 span{font-size:10px;letter-spacing:1px;color:#bda16f;margin-left:6px}.panel-heading>a{font-size:12px;color:var(--muted)}.board-panel .lt{width:100%;background:none;border:0;padding:0;margin:0;float:none}.board-panel .lt h2,.board-panel .lt .lt_title{display:none}.board-panel .lt ul,.board-panel .lt ol{list-style:none;padding:0;margin:0}.board-panel .lt li{background:none;border-bottom:1px solid #ffffff10;color:#cedbe6;padding:9px 0;min-height:34px}.board-panel .lt a{color:#d4e0e9;font-size:13px}.board-panel .lt a:hover{color:var(--gold)}.board-panel .lt .lt_more{display:none}.bottom-banner{margin-top:44px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:31px 35px;border:1px solid #4f5050;border-radius:5px;background:linear-gradient(100deg,#25343d,#1c2b38)}.bottom-banner h2{margin:11px 0;font-size:22px}.bottom-banner p{font-size:13px;color:#a5b7c5}.site-footer{border-top:1px solid #263d4e;background:#0b131d;color:#9fb0bc}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:32px;padding-bottom:25px}.footer-inner b{font-size:19px;letter-spacing:1px;color:#e9eff3}.footer-inner p{font-size:12px}.footer-inner nav{display:flex;gap:22px;font-size:12px}.copyright{font-size:11px;border-top:1px solid #24313f;padding-top:15px;padding-bottom:25px}#bo_list,#bo_v,#bo_w,#register_form,#fregisterform,#mb_login,#faq_sch{max-width:100%}input,select,textarea{max-width:100%}@media(max-width:800px){.brand-row{height:82px}.brand b{font-size:20px}.header-cta{display:none}.nav-items{overflow:auto;white-space:nowrap}.nav-items a{padding:16px;font-size:13px}.hero{padding:43px 25px;min-height:350px}.hero h1{font-size:31px}.hero-medallion{opacity:.2;right:-60px}.shortcut-grid{grid-template-columns:repeat(2,1fr)}.board-grid{grid-template-columns:1fr}.section-heading p{display:none}.bottom-banner,.footer-inner{flex-direction:column;align-items:flex-start}}@media(max-width:480px){.brand-emblem{height:45px;width:45px}.brand b{font-size:16px}.brand small{font-size:10px}.utility-content>span{display:none}.utility-content{justify-content:flex-end}.hero h1{font-size:28px}.hero-actions{flex-wrap:wrap}.shortcut-grid a{min-height:110px}.footer-inner nav{flex-wrap:wrap}}

/* v3: navigation, board tabs, catalogue, guides */
.nav-items{flex-wrap:wrap}.nav-items a{padding:17px 20px}.hero-v3{min-height:445px;background:radial-gradient(circle at 77% 47%,#376478 0%,transparent 37%),linear-gradient(112deg,#112236 13%,#214354 67%,#192634)}.hero-v3 h1{font-size:48px}.hero-character{position:absolute;right:10%;top:12%;width:315px;height:320px;display:grid;place-items:center;z-index:1}.character-halo{position:absolute;width:286px;height:286px;border-radius:50%;border:2px solid #e7bb6b;box-shadow:0 0 0 23px #dfbf7130,0 0 0 52px #dfbf7110,0 0 70px #e0bb6950}.character-figure{position:relative;width:195px;height:230px;border-radius:45% 45% 44% 44%;background:linear-gradient(140deg,#d3a776,#95755e 60%,#6c5c52);box-shadow:inset -20px -24px 25px #0003,0 24px 35px #0005;border:6px solid #e2c49a;display:flex;flex-direction:column;justify-content:space-evenly;align-items:center;color:#fff3d2;transform:rotate(-7deg)}.character-horns{font-size:36px;color:#ffdfa7}.character-face{font-weight:900;font-size:43px;letter-spacing:6px;color:#3b3534}.character-paws{font-size:31px}.hero-character-caption{position:absolute;bottom:-6px;color:#eac988;font-size:11px;letter-spacing:4px;font-weight:800}.shortcut-six{grid-template-columns:repeat(6,minmax(0,1fr))}.shortcut-six a{min-height:124px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 50px}.feature-panel{padding:38px;border-radius:8px;border:1px solid #586c70;background:linear-gradient(115deg,#294f60,#18283d)}.feature-panel-alt{background:linear-gradient(115deg,#3b414f,#1a2837)}.feature-panel h2{font-size:28px;margin:16px 0 9px}.feature-panel p{color:#bfd0da;line-height:1.6}.feature-panel>span:last-child{color:var(--gold);display:inline-block;margin-top:18px;font-weight:800}.board-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:19px}.board-tabs a{padding:12px 21px;border-radius:6px;background:#203347;border:1px solid #405366;font-size:14px;font-weight:700}.board-tabs a:hover{border-color:var(--gold);color:var(--gold)}.sub-hero{padding:46px 42px;background:linear-gradient(110deg,#223e53,#111d2d);border:1px solid #365469;border-radius:8px;margin-bottom:22px}.sub-hero h1{font-size:40px;margin:14px 0}.sub-hero p{color:#c3d4df;line-height:1.65}.pet-toolbar{padding:19px;border:1px solid #314c5c;border-radius:8px;background:#152537;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pet-toolbar label{font-size:13px;font-weight:700}.pet-toolbar input,.pet-toolbar select{border:1px solid #486175;border-radius:5px;padding:11px 12px;background:#0c1828;color:#f5f5f5;min-width:170px}.pet-toolbar output{margin-left:auto;color:var(--gold);font-size:13px}.pet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:20px}.pet-card{font:inherit;text-align:left;color:var(--text);background:#172839;border:1px solid #385165;border-radius:8px;padding:14px;cursor:pointer;display:flex;flex-direction:column;gap:10px}.pet-card:hover{border-color:var(--gold);transform:translateY(-2px)}.pet-card strong{font-size:17px}.pet-card small{color:var(--muted)}.pet-art{height:155px;display:grid;place-items:center;font-size:72px;color:var(--gold);background:#23394a;border-radius:5px;overflow:hidden}.pet-art img{width:100%;height:100%;object-fit:contain}.pet-attr{display:inline-block;border:1px solid #6e815b;color:#f0df9c;border-radius:4px;padding:3px 8px;margin:0 5px 3px 0;font-size:12px}.empty-panel{padding:45px 18px;text-align:center;border:1px dashed #496073;border-radius:8px;color:#afc4d0;background:#152234;margin:20px 0}.pet-dialog{background:#142435;color:var(--text);border:1px solid #8a785c;border-radius:10px;padding:24px;max-width:min(580px,92vw);width:100%}.pet-dialog::backdrop{background:#000b}.pet-dialog-header{display:flex;align-items:center;justify-content:space-between}.pet-dialog-header button{background:none;color:#fff;border:0;font-size:24px;cursor:pointer}.pet-dialog dl{display:grid;grid-template-columns:110px 1fr;gap:13px}.pet-dialog dt{color:var(--gold)}.pet-dialog dd{margin:0}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.guide-card,.download-panel{border:1px solid #40576a;border-radius:8px;background:#192b3d;padding:32px}.guide-card>span{color:var(--gold);font-size:26px;font-weight:800}.guide-card h2{font-size:23px}.guide-card p,.download-panel p{color:#b2c4d0;line-height:1.7}.guide-card a{display:block;margin-top:30px;color:var(--gold);font-weight:800}.download-panel{display:flex;justify-content:space-between;align-items:center;gap:25px}
@media(max-width:980px){.shortcut-six{grid-template-columns:repeat(3,1fr)}.hero-character{opacity:.35;right:0}.pet-grid{grid-template-columns:repeat(3,1fr)}.guide-grid{grid-template-columns:1fr}}
@media(max-width:700px){.hero-v3 h1{font-size:32px}.hero-character{right:-100px;opacity:.2}.feature-grid{grid-template-columns:1fr}.shortcut-six{grid-template-columns:repeat(2,1fr)}.pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sub-hero{padding:30px 22px}.sub-hero h1{font-size:30px}.download-panel{display:block}.download-panel .btn{margin-top:15px}.pet-toolbar output{margin-left:0}}
@media(max-width:420px){.pet-grid{grid-template-columns:1fr}.pet-toolbar input,.pet-toolbar select{width:100%}}

/* v4 pet categories */
.pet-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 12px}.pet-tab{border:1px solid rgba(210,176,95,.35);border-radius:9px;padding:12px 22px;background:#172439;color:#f2e9d6;font-weight:700;cursor:pointer}.pet-tab.is-active,.pet-tab:hover{background:#c7a55b;color:#172133}.pet-note{opacity:.78;font-size:.9rem;margin-bottom:20px}.pet-dialog dl{display:grid;grid-template-columns:minmax(130px,35%) 1fr;gap:12px}.pet-dialog dt{font-weight:700}.pet-dialog dd{margin:0;overflow-wrap:anywhere}

/* StoneAge Plus pet catalogue readability v5 */
.pet-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    margin-top: 26px;
    align-items: stretch;
}
.pet-card {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
    padding: 16px;
    border: 1px solid #36546b;
    border-radius: 12px;
    background: #172b3d;
    color: #f7f9fc;
    text-align: left;
    cursor: pointer;
    transition: border-color .2s, transform .2s, background .2s;
}
.pet-card:hover, .pet-card:focus-visible {
    border-color: #ecc071;
    background: #20384d;
    transform: translateY(-3px);
}
.pet-card .pet-art {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 190px;
    padding: 12px;
    border-radius: 9px;
    background: #293e50;
    overflow: hidden;
}
.pet-card .pet-art img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    image-rendering: pixelated;
}
.pet-card strong {
    display: block;
    color: #ffffff;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.pet-card .pet-attr {
    display: inline-block;
    padding: 5px 9px;
    font-size: 12px;
    font-weight: 700;
    color: #f6cb79;
    border: 1px solid #8d7248;
    border-radius: 5px;
}
.pet-card small {
    display: block;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid #344d60;
    color: #f1c778;
    font-size: 14px;
    font-weight: 700;
}
.pet-card small::after {
    content: ' →';
}
@media(max-width:1100px) {
    .pet-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media(max-width:750px) {
    .pet-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap:12px; }
    .pet-card { padding:11px; }
    .pet-card .pet-art { height:145px; }
    .pet-card strong { font-size:16px; }
}
@media(max-width:380px) {
    .pet-grid { grid-template-columns:1fr; }
}

/* ===== StoneAge Plus | Tribal Retro Theme ===== */

:root {
  --tribal-bg: #30271f;
  --tribal-wood: #6e4c32;
  --tribal-wood-dark: #493321;
  --tribal-parchment: #f0dfba;
  --tribal-parchment-deep: #dfc797;
  --tribal-gold: #e6a33d;
  --tribal-green: #59744a;
  --tribal-text: #fff0cf;
}

/* 전체 배경 */
html {
  background: #30271f;
}
body {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(121, 82, 43, .28), transparent 65%),
    linear-gradient(180deg, #493629 0%, #30271f 45%, #261f19 100%);
  color: var(--tribal-text);
}

/* 제목 */
h1, h2, h3, h4 {
  letter-spacing: -.025em;
}
h1, h2 {
  color: #f7dda6;
  text-shadow: 0 2px 2px rgba(31, 19, 9, .25);
}

/* 메뉴 링크 */
nav a,
header nav a {
  color: #f6e4c2;
  font-weight: 700;
  transition: color .2s, background .2s;
}
nav a:hover,
header nav a:hover {
  color: #ffca6a;
}

/* 일반 버튼 */
button,
input[type="submit"],
input[type="button"],
.btn {
  transition: background .2s, border-color .2s, transform .2s;
}
button:hover,
input[type="submit"]:hover,
.btn:hover {
  transform: translateY(-1px);
}

/* 도감 카드 */
.pet-card {
  background: linear-gradient(180deg, #4a392b, #352a23);
  border: 2px solid #806044;
  border-radius: 9px;
  box-shadow: 0 4px 0 rgba(15, 10, 7, .2);
}
.pet-card:hover,
.pet-card:focus-visible {
  background: linear-gradient(180deg, #62452d, #403024);
  border-color: #e6a33d;
}
.pet-card .pet-art {
  background: #6b5946;
  border: 1px solid #9c7954;
}
.pet-card strong {
  color: #fff1d7;
}
.pet-card .pet-attr {
  color: #ffe1a0;
  background: #4b3925;
  border-color: #b08b51;
}
.pet-card small {
  color: #ffd182;
  border-top-color: #806044;
}

/* 기본 폼 */
input[type="text"],
input[type="search"],
select,
textarea {
  border-color: #a78a61;
}
input:focus,
select:focus,
textarea:focus {
  outline-color: #e6a33d;
}

/* 링크 */
a {
  text-underline-offset: 3px;
}
a:hover {
  text-decoration-color: #e6a33d;
}

@media (prefers-reduced-motion: reduce) {
  .pet-card,
  button,
  .btn {
    transition: none;
  }
}
/* ===== StoneAge Plus Retro Tribal v2 ===== */
:root {
  --bg: #30271f;
  --panel: #493729;
  --line: #856341;
  --gold: #efbd66;
  --text: #f7e9ce;
  --muted: #d2b891;
}

html, body { min-height: 100%; }

body {
  display: flex;
  flex-direction: column;
  margin: 0;
  background:
    radial-gradient(ellipse at top, #614630 0%, transparent 55%),
    #30271f;
  color: var(--text);
}

body > #container,
body > .site-shell { flex: 1 0 auto; }

main.content-area {
  display: block;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  min-height: 65vh;
  float: none;
  clear: both;
}

.site-footer {
  position: relative;
  width: 100%;
  clear: both;
  background: #201b17;
  border-top: 3px solid #ae8047;
  color: #d8c5a6;
}

/* Wooden header */
.utility-bar {
  background: #261d17;
  border-bottom: 1px solid #6b4d31;
  color: #dbc39c;
}
.masthead {
  background: linear-gradient(180deg, #563b27, #37291f);
}
.brand-emblem {
  background: linear-gradient(145deg, #a77a45, #57402c);
  border: 2px solid #e8be76;
  color: #fff0c6;
  border-radius: 9px;
}
.brand b { color: #f9e3b5; }
.brand small { color: #e0c69d; }
.header-cta {
  background: linear-gradient(#e6b867, #ba7b33);
  border: 1px solid #ffd997;
  color: #392415;
  font-weight: 800;
  box-shadow: 0 3px 0 #281a12;
}
.header-cta:hover {
  background: #f3ca81;
  color: #382416;
}
.primary-nav {
  background: linear-gradient(180deg, #795437, #4e3726);
  border-top: 1px solid #b08658;
  border-bottom: 3px solid #c69c5b;
}
.nav-items a {
  color: #fff0d0;
  border-right: 1px solid #ffffff12;
}
.nav-items a:hover {
  background: #96683e;
  color: #ffe29b;
}

/* Game portal */
.hero, .hero-v3 {
  border: 2px solid #ac814e;
  background:
    radial-gradient(circle at 76% 40%, #8e7149 0%, transparent 38%),
    linear-gradient(115deg, #4a3526, #795537 60%, #37291f);
}
.hero p, .sub-hero p { color: #f0d9b2; }
.hero-medallion, .character-halo {
  border-color: #eac17d;
}
.shortcut-grid a {
  background: linear-gradient(#6b4c33, #483324);
  border: 1px solid #a17a4c;
  color: #f8e9ca;
}
.shortcut-grid a:hover { background: #805b3c; }
.feature-panel, .feature-panel-alt,
.bottom-banner {
  background: linear-gradient(120deg, #715037, #3e3025);
  border-color: #a47c4b;
}
.section-heading h2,
.feature-panel h2 { color: #ffe0a1; }

/* Parchment community panels */
.board-panel {
  background: #ead6ae;
  color: #49331f;
  border: 2px solid #ad8450;
  box-shadow: 0 4px 0 #20180f33;
}
.board-panel .panel-heading {
  border-bottom: 2px solid #c5a375;
}
.board-panel h3,
.board-panel .lt li,
.board-panel .lt a {
  color: #49331f;
}
.board-panel .lt li { border-bottom-color: #ccb28a; }
.board-panel .lt a:hover { color: #9c581d; }
.board-panel .panel-heading > a { color: #765736; }

/* Pet page */
.sub-hero {
  background: linear-gradient(115deg, #765438, #403023);
  border: 2px solid #b58b55;
}
.pet-tab {
  background: #61432d;
  color: #f7e4bf;
  border: 1px solid #a77e4b;
}
.pet-tab.is-active,
.pet-tab:hover {
  background: #d6ac62;
  color: #372618;
}
.pet-toolbar {
  background: #ead6ae;
  border: 2px solid #ad8450;
  color: #4b3421;
}
.pet-toolbar label { color: #4b3421; }
.pet-toolbar input,
.pet-toolbar select {
  background: #fff3d8;
  border: 1px solid #b29268;
  color: #3b2a1e;
}
.pet-toolbar input::placeholder { color: #8e775d; }
.pet-toolbar output {
  color: #81501d;
  font-weight: 800;
}
.pet-dialog {
  background: #ead6ae;
  color: #3d291a;
  border: 3px solid #ae8148;
}
.pet-dialog h2 { color: #5b3c24; }
.pet-dialog dt { color: #83501f; }
.pet-dialog-header button { color: #4b321e; }

/* Footer */
.footer-inner b { color: #f8e3ba; }
.site-footer span { color: #e9b765; }
.site-footer a { color: #ead2ac; }
.copyright { border-top-color: #694b34; }

@media(max-width:750px) {
  .brand-row { gap: 12px; }
  .footer-inner { align-items: flex-start; }
}

/* ===== StoneAge Plus | GNUboard readability fix ===== */

/* 게시판 목록 */
#bo_list,
#bo_v,
#bo_w {
  color: #49331f;
}

#bo_list .tbl_head01,
#bo_list .tbl_head01 table {
  background: #f1dfbb;
}

#bo_list .tbl_head01 th {
  background: #d6b783;
  color: #49311c;
  border-color: #b9935c;
  font-weight: 800;
}

#bo_list .tbl_head01 td {
  background: #f5e7ca;
  color: #49331f;
  border-color: #d9bf94;
}

#bo_list .tbl_head01 tr:hover td {
  background: #ead5ae;
}

#bo_list .tbl_head01 td a {
  color: #49331f;
}

#bo_list .tbl_head01 td a:hover {
  color: #a15d20;
}

/* 목록 상단 정보 */
#bo_list_total,
#bo_list .bo_fx,
#bo_list .bo_tit {
  color: #f0d5a8;
}

/* 제목과 작성자 */
#bo_list .bo_tit a,
#bo_list .td_name a,
#bo_list .td_subject a {
  color: #49331f;
}

/* 게시판 버튼 */
#bo_list .btn,
#bo_list .btn_bo_user,
#bo_list .btn_bo_adm {
  color: #fff0d0;
}

#bo_list .btn_b01,
#bo_list .btn_b02,
#bo_list .btn_admin {
  background: #805733;
  border: 1px solid #b88b50;
  color: #fff0d0;
}

/* 설정/검색/글쓰기 아이콘 버튼 */
#bo_list .btn_bo_user li a,
#bo_list .btn_bo_user li button,
#bo_list .btn_bo_adm li a,
#bo_list .btn_bo_adm li button {
  background-color: #e0c292;
  border: 1px solid #a77b49;
  color: #49331f;
}

/* 빈 게시판 안내 */
#bo_list .empty_table,
#bo_list .empty_list {
  background: #f5e7ca;
  color: #76583a;
}

/* 글 읽기 */
#bo_v {
  background: #f5e7ca;
  border: 1px solid #b9935c;
}

#bo_v_title,
#bo_v_info,
#bo_v_atc,
#bo_v_con {
  color: #49331f;
}

/* 글쓰기 */
#bo_w {
  background: #f5e7ca;
  padding: 20px;
  border: 1px solid #b9935c;
}

#bo_w label,
#bo_w .frm_info {
  color: #49331f;
}

#bo_w input,
#bo_w textarea {
  color: #49331f;
  background: #fff9ed;
}


/* ===== StoneAge Plus Board Width Fix ===== */

/* 테마 본문 너비 */
.site-shell {
    width: 100%;
    min-width: 0;
}

.site-shell > main.content-area {
    display: block;
    width: 100%;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
    flex: 1 0 auto;
}

/* 그누보드 게시판의 인라인 너비 설정 보정 */
main.content-area #bo_list,
main.content-area #bo_v,
main.content-area #bo_w {
    width: 100% !important;
    max-width: 100% !important;
    float: none;
    clear: both;
}

/* 게시판 테이블 */
main.content-area #bo_list .tbl_head01,
main.content-area #bo_list .tbl_head01 table {
    width: 100%;
}

/* 작은 화면에서도 테이블 가로 스크롤 허용 */
main.content-area #bo_list .tbl_head01 {
    overflow-x: auto;
}


/* ===== StoneAge Plus layout repair ===== */

html, body {
    width: 100%;
    min-width: 0;
}

body {
    display: block;
}

.site-shell {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 100vh;
}

.site-shell > main#container {
    display: block;
    flex: 1 0 auto;
    width: 100%;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 22px;
    padding-right: 22px;
}

.site-shell > .site-footer {
    flex-shrink: 0;
    width: 100%;
    margin-top: auto;
}

#bo_list {
    width: 100% !important;
    max-width: none !important;
}

#bo_list .tbl_head01,
#bo_list .tbl_head01 table {
    width: 100%;
}


/* ===== StoneAge Plus Main Portal ===== */

.hero-v3 {
    min-height: 430px;
    background:
      radial-gradient(circle at 79% 45%, rgba(211,157,78,.25), transparent 35%),
      linear-gradient(110deg, #3d2b20 0%, #795333 55%, #453021 100%);
    border: 2px solid #b98a4d;
    box-shadow: inset 0 0 50px rgba(28,17,9,.2);
}

.hero-v3 .hero-content {
    max-width: 62%;
}

.hero-v3 h1 {
    color: #fff1d2;
    font-size: clamp(32px, 4vw, 48px);
    text-shadow: 0 3px 3px rgba(30,17,9,.3);
}

.sa-main-visual {
    position: absolute;
    right: 5%;
    top: 50%;
    transform: translateY(-50%);
    width: 300px;
    height: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    isolation: isolate;
    text-align: center;
}

.sa-visual-circle {
    position: absolute;
    inset: 14px;
    z-index: -1;
    border: 3px solid #c69b58;
    border-radius: 50%;
    background: radial-gradient(circle, #9d7445, #493522 70%);
    box-shadow:
       0 0 0 12px rgba(236,193,111,.13),
       0 0 0 27px rgba(236,193,111,.07),
       0 15px 40px rgba(0,0,0,.2);
}

.sa-visual-title {
    color: #ffdfa3;
    font-family: Georgia, serif;
    font-size: 34px;
    font-weight: 900;
    letter-spacing: 1px;
    text-shadow: 0 3px 2px #392517;
}

.sa-visual-subtitle {
    margin-top: 7px;
    color: #f8e8cc;
    font-size: 12px;
    letter-spacing: 3px;
    font-weight: 800;
}

.sa-visual-caption {
    margin-top: 20px;
    color: #e9be76;
    font-size: 13px;
}

/* 포털 바로가기 */
.shortcut-six a {
    border: 1px solid #aa814c;
    border-bottom: 4px solid #805a34;
    background: linear-gradient(180deg, #755137, #4b3526);
}

.shortcut-six a:hover {
    background: #896340;
    border-color: #d8aa62;
}

/* 커뮤니티 메뉴 */
.board-tabs a {
    background: #62442e;
    color: #ffe6ba;
    border: 1px solid #997047;
}

.board-tabs a:hover {
    background: #d4a561;
    color: #3a2819;
}

/* 하단 배너 */
.bottom-banner {
    background: linear-gradient(110deg, #65462f, #36281e);
    border: 2px solid #9f7546;
}

@media (max-width: 800px) {
    .hero-v3 .hero-content {
        max-width: 100%;
    }

    .sa-main-visual {
        opacity: .18;
        right: -90px;
        pointer-events: none;
    }
}

/* ===== StoneAge Plus Latest Posts ===== */

.board-panel {
    display: flex;
    flex-direction: column;
    min-height: 260px;
    background: linear-gradient(180deg, #ead6ae, #e4cda1);
    border: 2px solid #b58950;
}

.board-panel .panel-heading {
    flex-shrink: 0;
}

.board-panel .sa-latest {
    flex: 1;
    min-height: 130px;
}

.sa-latest-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sa-latest-list li {
    border-bottom: 1px dashed #c6aa7d;
}

.sa-latest-list li:last-child {
    border-bottom: 0;
}

.sa-latest-list a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 43px;
    padding: 8px 5px;
    color: #513820;
    font-size: 14px;
    text-decoration: none;
}

.sa-latest-list a:hover {
    color: #a05d1f;
    background: rgba(255,255,255,.2);
}

.sa-latest-subject {
    flex: 1;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.sa-latest-comments {
    color: #98602b;
    font-size: 12px;
    font-weight: 700;
}

.sa-latest-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 130px;
    gap: 8px;
    color: #785839;
    text-align: center;
    font-size: 14px;
}

.sa-latest-empty small {
    color: #977954;
    font-size: 12px;
}

/* ===== StoneAge Plus Natural Korean Typography ===== */

body,
button,
input,
select,
textarea {
    font-family: "Malgun Gothic", "맑은 고딕",
                 "Nanum Gothic", "Apple SD Gothic Neo",
                 sans-serif;
    letter-spacing: -0.4px;
}

/* 일반 본문은 과하게 굵지 않게 */
p, li, td, dd {
    font-weight: 400;
    line-height: 1.7;
}

/* 큰 제목 */
h1, h2, h3,
.hero h1,
.sub-hero h1 {
    font-family: "Malgun Gothic", "맑은 고딕",
                 "Nanum Gothic", sans-serif;
    letter-spacing: -1px;
    font-weight: 700;
    text-shadow: none;
}

/* 상단 로고 */
.brand b {
    letter-spacing: 0;
    font-weight: 700;
    font-size: 25px;
}

.brand small {
    letter-spacing: 0;
    font-size: 12px;
}

/* 메뉴 */
.nav-items a {
    letter-spacing: -0.5px;
    font-weight: 600;
}

/* 영어 장식 문구 */
.eyebrow,
.sa-board-eyebrow,
.sa-visual-subtitle {
    letter-spacing: 0.5px;
    font-weight: 600;
}

/* 게시판 및 페트 이름 */
.board-panel h3,
.pet-card strong,
.panel-heading h3 {
    letter-spacing: -0.5px;
    font-weight: 700;
}

/* 버튼 */
.btn,
.pet-tab,
.board-tabs a,
.shortcut-grid strong {
    letter-spacing: -0.4px;
    font-weight: 600;
}

/* 작은 설명 글 */
.hero p,
.feature-panel p,
.shortcut-grid small,
.section-heading p {
    letter-spacing: -0.3px;
    line-height: 1.7;
}


/* ===== StoneAge Plus Game Rounded Font ===== */

/* 사이트 기본 글씨 */
body,
input,
select,
textarea,
#bo_list td,
#bo_v,
#bo_w {
    font-family: "Fredoka", "Jua", sans-serif;
    font-weight: 400;
    letter-spacing: 0;
}

/* 게임 메뉴와 제목 */
h1, h2, h3,
.brand b,
.nav-items a,
.hero h1,
.sub-hero h1,
.board-panel h3,
.pet-card strong,
.sa-board-banner h1 {
    font-family: "Fredoka", "Jua", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
}

/* 버튼 */
button,
.btn,
.pet-tab,
.board-tabs a,
.shortcut-grid strong,
.header-cta,
#bo_list .btn {
    font-family: "Fredoka", "Jua", sans-serif;
    font-weight: 400;
    letter-spacing: 0;
}

/* 게시판 본문 가독성 */
#bo_list td,
#bo_list th,
.sa-latest-list,
.board-panel .lt a {
    font-size: 14px;
    line-height: 1.65;
}

