/* VisionCatering Blazor App Styles — matches old MVC layout */

html, body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

/* Blazor enhanced navigation adds tabindex=-1 to the first <h1> and focuses it
   for screen-reader announcement. Suppress the visible focus outline that
   browsers then render. */
h1:focus,
h1:focus-visible,
[tabindex="-1"]:focus,
[tabindex="-1"]:focus-visible {
    outline: none;
}

/* Sidebar */
.sidebar-col {
    border-right: 1px solid #dee2e6;
    min-height: calc(100vh - 56px);
}

.sidebar-col .nav-link {
    color: #0d6efd;
    padding: 0.35rem 1rem;
}

.sidebar-col .nav-link:hover {
    color: #0a58ca;
    text-decoration: underline;
}

.sidebar-col hr {
    margin: 0.5rem 1rem;
    border-color: #dee2e6;
}

/* Main content */
main {
    padding-top: 1rem;
}

/* Input group buttons — match form control borders */
.input-group > .btn-outline-primary,
.input-group > .btn-outline-secondary {
    border-color: #dee2e6;
    color: #6c757d;
}
.input-group > .btn-outline-primary:hover,
.input-group > .btn-outline-secondary:hover {
    border-color: #86b7fe;
    background-color: #e9ecef;
    color: #495057;
}

/* Tom Select inside input-group — prevent ancestor clipping of dropdown */
.input-group {
    overflow: visible !important;
}

.input-group .ts-wrapper {
    flex: 1 1 auto;
    overflow: visible !important;
}

.ts-wrapper .ts-dropdown {
    z-index: 9999;
}

/* Make placeholder look like informational text, not a faded hint */
.ts-wrapper .ts-control > input::placeholder {
    color: #212529;
    opacity: 1;
}

/* Hide placeholder when items are selected */
.ts-wrapper.multi.has-items .ts-control > input::placeholder {
    color: transparent;
}

/* Print styles */
@media print {
    header, .sidebar-col, .top-row {
        display: none !important;
    }

    main {
        width: 100%;
    }

    .btn, button {
        display: none !important;
    }
}
