/* ============================================================
   FSDMenu Classic — Classic structure (Style 0) in new fsd-* system
   Same visual concept as original: Logo left, Menu center, Icons right
   Standard dropdown (position: relative on li)
   ============================================================ */

/* --- Nav Wrapper: Flex row --- */
.fsd-nav-wrapper--classic {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    position: relative;
}
.fsd-nav-wrapper--classic .fsd-nav-logo img { max-height: 56px; }
.fsd-nav-wrapper--classic .fsd-nav-logo { align-self: center; }
.fsd-nav-wrapper--classic .fsd-nav-icons { align-self: center; display: flex; align-items: center; gap: 4px; }
.fsd-nav-wrapper--classic .fsd-icons__item { display: flex; align-items: center; }
.fsd-nav-wrapper--classic .fsd-icon-dropdown { top: calc(100% + 8px); }
.fsd-nav-wrapper--classic .fsd-nav-menu { flex: 1; min-width: 0; align-self: stretch; display: flex; }
.fsd-nav-wrapper--classic .fsd-nav-menu__list { justify-content: flex-start; height: 100%; align-items: stretch; }

/* --- Standard Dropdown (position relative to each li, li fills full height) --- */
.fsd-nav-wrapper--classic .fsd-nav-menu__item { position: relative; display: flex; align-items: center; }

.fsd-classic-dropdown {
    display: none;
    position: absolute; left: 0; top: calc(100% + 8px);
    min-width: 200px;
    background: var(--fsd-dropdown-bg);
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    padding: 8px 0; border-radius: 0 0 4px 4px; z-index: 1000;
}
.fsd-classic-dropdown--visible { display: block; }

/* Align last menu item's dropdown to right edge */
.fsd-nav-wrapper--classic .fsd-nav-menu__item:last-child > .fsd-classic-dropdown { left: auto; right: 0; }

.fsd-classic-dropdown__item { position: relative; }
.fsd-classic-dropdown__link {
    display: block; padding: 8px 20px; font-size: 0.88rem;
    color: var(--fsd-font-color); white-space: nowrap;
}
.fsd-classic-dropdown__link:hover { color: var(--fsd-hover-color); background: rgba(0,0,0,0.03); }
.fsd-classic-dropdown__arrow { float: right; margin-left: 8px; font-size: 0.7rem; }

/* Sub-dropdown (3rd level) — CSS hover OK, no gap */
.fsd-classic-sub-dropdown {
    display: none;
    position: absolute; left: 100%; top: 0;
    min-width: 180px;
    background: var(--fsd-dropdown-bg);
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    padding: 8px 0; border-radius: 0 4px 4px 0; z-index: 1001;
}
.fsd-classic-dropdown__item:hover > .fsd-classic-sub-dropdown { display: block; }
.fsd-nav-wrapper--classic .fsd-nav-menu__item:last-child .fsd-classic-sub-dropdown { left: auto; right: 100%; border-radius: 4px 0 0 4px; }
.fsd-classic-sub-dropdown a {
    display: block; padding: 6px 16px; font-size: 0.85rem; color: var(--fsd-font-color);
}
.fsd-classic-sub-dropdown a:hover { color: var(--fsd-hover-color); background: rgba(0,0,0,0.03); }

/* --- Row Mode: wrap (雙行/更多 共用) --- */
.fsd-nav-wrapper--classic.fsd-nav-wrapper--rowwrap .fsd-nav-menu__list {
    flex-wrap: wrap;
}
.fsd-nav-wrapper--classic.fsd-nav-wrapper--rowwrap .fsd-nav-logo {
    align-self: flex-start;
    min-height: var(--fsd-menu-one-row-height, auto);
    display: flex; align-items: center;
}
.fsd-nav-wrapper--classic.fsd-nav-wrapper--rowwrap .fsd-nav-icons {
    align-self: flex-start;
    min-height: var(--fsd-menu-one-row-height, auto);
    display: flex; align-items: center;
}
.fsd-nav-wrapper--classic.fsd-nav-wrapper--rowwrap .fsd-nav-menu { align-self: flex-start; }

/* --- Row Mode: tworow (雙行限制, JS 隱藏第3行+, 不用 overflow:hidden 避免裁切 dropdown) --- */

/* --- Row Mode: more (更多，預設收合) --- */
@media (min-width: 992px) {
    .fsd-nav-wrapper--classic.fsd-nav-wrapper--rowmore .fsd-nav-menu {
        display: flex;
        align-items: flex-start;
    }
}
.fsd-nav-wrapper--classic.fsd-nav-wrapper--rowmore .fsd-nav-menu__list {
    flex: 1;
    min-width: 0;
}
.fsd-nav-wrapper--classic.fsd-nav-wrapper--rowmore .fsd-nav-menu__more {
    flex-shrink: 0;
    align-self: flex-start;
    min-height: var(--fsd-menu-one-row-height, auto);
    display: flex; align-items: center;
}

/* --- Overflow: menu too wide, fallback to hamburger (even on desktop) --- */
.fsd-nav-wrapper--classic.fsd-nav-wrapper--overflow .fsd-nav-menu { display: none !important; }
.fsd-nav-wrapper--classic.fsd-nav-wrapper--overflow .fsd-nav-menu__more { display: none !important; }
.fsd-nav-wrapper--classic.fsd-nav-wrapper--overflow .fsd-nav-hamburger { display: flex !important; }
.fsd-nav-wrapper--classic.fsd-nav-wrapper--overflow .fsd-nav-logo { flex: 1; min-width: 0; }
.fsd-nav-wrapper--classic.fsd-nav-wrapper--overflow { align-items: center; }

/* --- Responsive --- */
@media (min-width: 992px) {
    .fsd-nav-wrapper--classic .fsd-nav-hamburger { display: none; }
}
@media (max-width: 991px) {
    .fsd-nav-wrapper--classic { gap: 8px; align-items: center; }
    .fsd-nav-wrapper--classic .fsd-nav-menu { display: none; }
    .fsd-nav-wrapper--classic .fsd-nav-hamburger { display: flex; }
    .fsd-nav-wrapper--classic .fsd-nav-logo { flex: 1; min-width: 0; align-self: center; }
    .fsd-nav-wrapper--classic .fsd-nav-logo img { max-height: 15vw; }
    .fsd-nav-wrapper--classic .fsd-nav-icons { align-self: center; }
    /* rowwrap 覆蓋：手機版強制置中 */
    .fsd-nav-wrapper--classic.fsd-nav-wrapper--rowwrap .fsd-nav-logo { align-self: center; }
    .fsd-nav-wrapper--classic.fsd-nav-wrapper--rowwrap .fsd-nav-icons { align-self: center; }
}
