@import url('https://cdn.jsdelivr.net/npm/pretendard@1.3.9/dist/web/static/pretendard.css');

body, html {
  font-family: 'Pretendard', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  background-color: #fafbfc;
  color: #1e293b;
}

/* 기존 스타일 계속 유지 */
.sidebar-link {
    position: relative;
    color: #64748b;
    border-radius: 10px;
    transition: all 0.15s;
}
.sidebar-link:hover {
    color: #0f172a;
    background-color: #f1f5f9;
}
.sidebar-link.active {
    color: #1d4ed8;              /* blue-700 */
    background-color: #eff6ff;   /* blue-50 */
    font-weight: 700;
    box-shadow: inset 0 0 0 1px #bfdbfe; /* blue-200 테두리 */
}
.sidebar-link.active .material-icons-outlined {
    color: #2563eb;             /* blue-600 아이콘 강조 */
}
.sidebar-link.active::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 60%;
    width: 4px;
    background-color: #2563eb;
    border-radius: 0 4px 4px 0;
}
.card-panel {
    background-color: #ffffff;
    border-radius: 24px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.02);
    border: 1px solid #f1f5f9;
}
.btn-rounded-soft {
    border-radius: 9999px;
    padding: 8px 16px;
    font-weight: 600;
}
.profile-card {
    background-color: #f8fafc;
    border-radius: 24px;
}
.chart-container {
    height: 280px;
    width: 100%;
}

/* 제품 목록 테이블: 상품명 줄바꿈, 컬럼 너비 고정 */
.product-list-table {
    table-layout: fixed;
}
.product-list-table th.product-name-col {
    width: 50%;
}
.product-list-table td:nth-child(3) {
    word-break: break-word;
    overflow-wrap: break-word;
}

/* 모바일 사이드바 드로어: 열림 상태에서 화면 안으로 슬라이드 인 (lg 미만에서만 적용)
   Tailwind v4의 -translate-x-full 은 CSS `translate` 속성을 쓰므로 translate 로 덮어쓴다. */
@media (max-width: 1023px) {
  body.sidebar-open #app-sidebar {
    translate: 0 0 !important;
    transform: none !important;
  }
}

/* 사이드바: sticky 상태에서 스크롤바 숨김 (호버 시에만 살짝 노출) */
.sidebar-scroll {
    scrollbar-width: none;          /* Firefox */
    -ms-overflow-style: none;       /* IE/Edge */
}
.sidebar-scroll::-webkit-scrollbar {
    width: 0px;
    background: transparent;        /* Chrome/Safari */
}
.sidebar-scroll:hover {
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}
.sidebar-scroll:hover::-webkit-scrollbar {
    width: 6px;
}
.sidebar-scroll:hover::-webkit-scrollbar-thumb {
    background-color: #cbd5e1;
    border-radius: 3px;
}
