/* CEO_SHIELD_SIDEBAR_FINAL_MODULE_V3 */
/* policy.html 기준 sidebar 전용 CSS */
.sidebar {
width: 260px; background-color: var(--bg-panel); padding: 30px 20px; border-right: 1px solid rgba(255,255,255,0.05); display: flex; flex-direction: column; gap: 12px; box-sizing: border-box; transition: 0.3s;
}
.sidebar h2 {
color: var(--accent-blue); font-size: 20px; margin: 0 0 20px 0; border-bottom: 2px solid var(--accent-blue); padding-bottom: 15px; text-align: center;
}
.nav-btn {
box-sizing: border-box; background: transparent; border: none; border-left: 4px solid transparent; color: var(--text-muted); padding: 14px 16px; text-align: left; font-size: 14px; font-weight: bold; border-radius: 8px; cursor: pointer; transition: all 0.2s; display: flex; align-items: center; gap: 10px;
}
.nav-btn:hover {
background-color: rgba(255,255,255,0.05); color: var(--text-main);
}
.nav-btn.active {
background-color: rgba(96, 165, 250, 0.15); color: var(--accent-blue); border-left: 4px solid var(--accent-blue);
}
@media (max-width: 768px) {
.sidebar {
width: 100%; flex-direction: row; padding: 10px; overflow-x: auto; white-space: nowrap; border-right: none; border-bottom: 1px solid rgba(255,255,255,0.05); position: sticky; top: 0; z-index: 100; align-items: center; gap: 8px; -ms-overflow-style: none; scrollbar-width: none;
}
}
@media (max-width: 768px) {
.sidebar::-webkit-scrollbar {
display: none;
}
}
@media (max-width: 768px) {
.sidebar h2 {
display: none;
}
}
@media (max-width: 768px) {
.nav-btn {
display: flex; flex-direction: row; align-items: center; flex: 0 0 auto; justify-content: center; border-left: none; border-bottom: 3px solid transparent; padding: 12px 18px; font-size: 14px; border-radius: 8px;
}
}
@media (max-width: 768px) {
.nav-btn.active {
border-left: none; border-bottom: 3px solid var(--accent-blue); background-color: rgba(96, 165, 250, 0.15);
}
}
.nav-text-mobile {
display: none;
}
@media (max-width: 768px) {
.nav-text-pc {
display: none !important;
}
}
@media (max-width: 768px) {
.nav-text-mobile {
display: block !important;
}
}
@media (max-width: 768px) {
.sidebar {
position: sticky !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: auto !important;
        min-height: 58px;
        padding: 8px 10px !important;
        margin: 0 !important;
        box-sizing: border-box;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 6px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap;
        z-index: 99999;
        background: rgba(15,23,42,.98) !important;
        border-right: 0 !important;
        border-bottom: 1px solid rgba(148,163,184,.18) !important;
        box-shadow: 0 5px 18px rgba(0,0,0,.18);
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
}
}
@media (max-width: 768px) {
.sidebar::-webkit-scrollbar {
display: none;
}
}
@media (max-width: 768px) {
.sidebar h2,
    #nav_main_dashboard,
    #nav_admin {
display: none !important;
}
}
@media (max-width: 768px) {
.sidebar .nav-btn {
flex: 0 0 auto !important;
        width: auto !important;
        min-width: 92px !important;
        min-height: 42px !important;
        padding: 8px 12px !important;
        margin: 0 !important;
        border-radius: 10px !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        font-size: 12px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
}
}
@media (max-width: 768px) {
.sidebar .nav-btn.active {
background: rgba(96,165,250,.17) !important;
        color: #93c5fd !important;
        border-color: rgba(96,165,250,.35) !important;
}
}
@media (max-width: 768px) {
.sidebar .nav-btn[onclick*="logout"] {
margin-left: auto !important;
        min-width: 62px !important;
}
}
@media (max-width: 768px) {
.nav-text-pc {
display: none !important;
}
}
@media (max-width: 768px) {
.nav-text-mobile {
display: inline !important;
}
}
@media (max-width: 430px) {
.sidebar .nav-btn {
min-width: 82px !important;
        padding-left: 9px !important;
        padding-right: 9px !important;
        font-size: 11px !important;
}
}

aside.sidebar .nav-btn[onclick*="logout"] {
    margin-top: auto !important;
}