:root {
    --sidebar-bg: #111827;
    --content-bg: #f3f4f6;
    --accent: #2563eb;
}

body {
    background: var(--content-bg);
    color: #111827;
}

.admin-login-page { align-items:center;background:radial-gradient(circle at top left,#dbeafe 0,#f8fafc 45%,#e2e8f0 100%);display:flex;justify-content:center;min-height:100vh;padding:20px; }
.admin-login-card { background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 24px 70px rgba(15,23,42,.14);max-width:430px;padding:34px;width:100%; }
.admin-login-brand { color:#2563eb;font-size:.82rem;font-weight:800;letter-spacing:.12em;margin-bottom:20px;text-transform:uppercase; }

.app-shell {
    display: flex;
    min-height: 100vh;
}

.sidebar {
    width: 260px;
    background: var(--sidebar-bg);
    color: #fff;
    padding: 24px 18px;
    position: fixed;
    inset: 0 auto 0 0;
}

.sidebar-brand {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 24px;
}

.sidebar .nav-link {
    color: #cbd5e1;
    border-radius: 10px;
    padding: 10px 12px;
    text-transform: uppercase;
    font-size: .82rem;
    letter-spacing: .04em;
}

.sidebar .nav-link:hover,
.sidebar .nav-link.active {
    background: rgba(255, 255, 255, .1);
    color: #fff;
}

.main-content {
    flex: 1;
    margin-left: 260px;
    padding: 24px;
}

.topbar {
    align-items: center;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
    display: flex;
    justify-content: space-between;
    margin-bottom: 24px;
    padding: 18px 22px;
}

.topbar-meta {
    align-items: center;
    color: #64748b;
    display: flex;
    gap: 14px;
    font-size: .92rem;
}

.content-card {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
    padding: 24px;
}

.metric-card {
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 18px;
}

.metric-value {
    font-size: 2rem;
    font-weight: 800;
}

.orders-table th {
    color: #475569;
    font-size: .78rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.order-products-cell {
    min-width: 330px;
}

.order-product + .order-product {
    border-top: 1px solid #e5e7eb;
    margin-top: 12px;
    padding-top: 12px;
}

.product-thumb {
    align-items: center;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    color: #64748b;
    display: flex;
    flex: 0 0 58px;
    font-size: .68rem;
    font-weight: 700;
    height: 58px;
    justify-content: center;
    overflow: hidden;
    width: 58px;
}

.product-thumb img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.shipments-table th { color:#475569;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase; }
.shipment-product { min-width:240px; }
.logistics-pill { background:#e2e8f0;border-radius:999px;display:inline-block;font-size:.75rem;font-weight:700;padding:5px 9px; }
.logistics-pill.is-flex { background:#dbeafe;color:#1d4ed8; }
.logistics-pill.is-full { background:#111827;color:#fff; }
.shipment-detail-grid { display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr)); }
.detail-block { border:1px solid #e2e8f0;border-radius:14px;padding:18px; }
.detail-block h2 { color:#475569;font-size:.78rem;letter-spacing:.08em;margin-bottom:14px;text-transform:uppercase; }
.detail-block dl { display:grid;grid-template-columns:minmax(100px,140px) 1fr;margin:0;row-gap:8px; }
.detail-block dt { color:#64748b;font-weight:500; }.detail-block dd { margin:0;overflow-wrap:anywhere; }
.timeline { border-left:2px solid #cbd5e1;margin-left:5px;padding-left:20px; }.timeline-event { margin-bottom:18px;position:relative; }.timeline-event:before { background:#2563eb;border:3px solid #fff;border-radius:50%;content:"";height:12px;left:-27px;position:absolute;top:4px;width:12px; }.timeline-event small { color:#64748b; }
.labels-table th { color:#475569;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase; }.labels-table td { min-width:110px; }.labels-table td:nth-child(3) { min-width:240px; }
.label-status { border-radius:999px;display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.04em;padding:5px 9px;text-transform:uppercase;white-space:nowrap; }
.label-status-available { background:#dcfce7;color:#166534; }.label-status-printed { background:#dbeafe;color:#1d4ed8; }.label-status-waiting { background:#fef3c7;color:#92400e; }.label-status-not_applicable { background:#e5e7eb;color:#374151; }.label-status-error { background:#fee2e2;color:#991b1b; }
.label-batch-panel { background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;padding:20px; }

@media (max-width: 900px) {
    .app-shell {
        display: block;
    }

    .sidebar {
        position: static;
        width: 100%;
    }

    .main-content {
        margin-left: 0;
        padding: 16px;
    }

    .topbar {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .topbar-meta {
        align-items: flex-start;
        flex-direction: column;
    }
    .shipment-detail-grid { grid-template-columns:1fr; }
}
