/*
파일 : /css/theme.css
설명 : 수학배움터 테마 스타일
Version : 1.0
*/

/* ========================= */
/* Header                    */
/* ========================= */

#header{
    background:#ffffff;
}
#header-left{
    font-size:15px;
    color:#444444;
}
.user-title{
    font-size:22px;
    font-weight:bold;
    color:#2e7d32;
}
.user-level{
    font-size:17px;
    font-weight:bold;
    color:#1976d2;
}
.user-exp{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:14px;
}
.user-exp span{
    font-size:13px;
    color:#666666;
}
#header-center h1{
    color:#1565c0;
    margin-bottom:6px;
}
.sub-title{
    font-size:18px;
    color:#555555;
    margin-bottom:6px;
}
.service-title{
    font-size:14px;
    color:#888888;
}
#topMenu{
    width:190px;
    padding:8px;
    border:1px solid #cccccc;
    border-radius:6px;
    background:#ffffff;
}

/* ========================= */
/* Sidebar                   */
/* ========================= */
.menu-group{
    margin-bottom:20px;
}
.menu-title{
    font-size:18px;
    font-weight:bold;
    color:#1565c0;
    padding:10px;
    border-radius:6px;
    background:#e8f2ff;
    cursor:pointer;
}
.menu-title:hover{
    background:#d5e8ff;
}
.menu-item{
    padding:8px 15px;
    cursor:pointer;
    border-radius:5px;
    margin-top:3px;
}
.menu-item:hover{
    background:#eef5ff;
}
.menu-selected{
    background:#1976d2;
    color:#ffffff;
    font-weight:bold;
}

.menu-subtitle{
    margin-top:2px;
    margin-left:20px;
    font-size:12px;
    font-weight:normal;
    color:#777777;
    line-height:1.2;
}
.menu-selected .menu-subtitle{
    color:#eaf4ff;
}

/* ========================= */
/* Content                   */
/* ========================= */
.story-card{
    max-width:900px;
    margin:auto;
    background:#ffffff;
    border-radius:12px;
    padding:30px;
    box-shadow:0 2px 10px rgba(0,0,0,.08);
}
.story-title{
    font-size:28px;
    font-weight:bold;
    color:#1565c0;
    margin-bottom:25px;
}
.story-body{
    line-height:2;
    font-size:17px;
    color:#444444;
}
.story-bottom{
    margin-top:30px;
    padding-top:20px;
    border-top:1px solid #dddddd;
    text-align:center;
}

/* ========================= */
/* Buttons                   */
/* ========================= */
.btn{
    display:inline-block;
    padding:10px 18px;
    border:none;
    border-radius:6px;
    background:#1976d2;
    color:#ffffff;
    font-size:15px;
    cursor:pointer;
}
.btn:hover{
    background:#0d5db8;
}
.btn-green{
    background:#2e7d32;
}
.btn-green:hover{
    background:#236427;
}
.btn-red{
    background:#d32f2f;
}
.btn-red:hover{
    background:#b71c1c;
}

/* ========================= */
/* Footer                    */
/* ========================= */
#footer{
    font-size:13px;
    color:#666666;
}
#footer a{
    color:#444444;
}
#footer a:hover{
    color:#1976d2;
    text-decoration:underline;
}

/* ==========================================
   Header Menu Button
========================================== */
#menuButton{
    width:48px;
    height:48px;
    border:none;
    border-radius:8px;
    background:#4CAF50;
    color:#ffffff;
    font-size:28px;
    cursor:pointer;
    transition:.2s;
}
#menuButton:hover{
    background:#43a047;
}