/* Aden Asset Management professional design system
   Shared visual refinements only. No database or business-logic changes. */
:root {
    --pro-navy: #283948;
    --pro-navy-strong: #172533;
    --pro-orange: #ED4F18;
    --pro-orange-soft: #fff1eb;
    --pro-canvas: #f4f6f8;
    --pro-surface: #ffffff;
    --pro-line: #e3e8ed;
    --pro-muted: #6f7b87;
    --pro-success: #157a52;
    --pro-warning: #a95b12;
    --pro-danger: #b42318;
    --pro-radius-lg: 20px;
    --pro-radius-md: 14px;
    --pro-shadow: 0 12px 34px rgba(28, 45, 60, .07);
    --pro-shadow-hover: 0 18px 42px rgba(28, 45, 60, .11);
}

.system-content {
    background:
        radial-gradient(circle at 100% 0, rgba(237, 79, 24, .045), transparent 28rem),
        var(--pro-canvas);
}

.enterprise-page,
.admin-page,
.asset-edit-page,
.asset-data-system {
    animation: pro-page-enter .28s ease-out both;
}

@keyframes pro-page-enter {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

.enterprise-hero,
.corp-page-header,
.admin-command-header {
    border: 1px solid rgba(227, 232, 237, .95) !important;
    box-shadow: var(--pro-shadow) !important;
}

.enterprise-panel,
.admin-card,
.asset-metric-card,
.admin-kpi-grid article,
.admin-workspace-card,
.recent-assets-admin {
    border-color: var(--pro-line) !important;
    box-shadow: 0 8px 25px rgba(28, 45, 60, .055) !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.admin-kpi-grid article:hover,
.admin-workspace-card:hover,
.asset-metric-card:hover {
    transform: translateY(-2px);
    border-color: #d7dee5 !important;
    box-shadow: var(--pro-shadow-hover) !important;
}

.panel-heading {
    min-height: 74px;
    padding: 17px 19px !important;
    border-bottom: 1px solid #edf0f3 !important;
    background: linear-gradient(180deg, #fff, #fcfdfe);
}

.panel-heading h2 {
    color: var(--pro-navy-strong);
    letter-spacing: -.015em;
}

.panel-body { padding: 20px !important; }

.form-label {
    margin-bottom: 7px;
    color: #3e4c59;
    font-size: 12px;
    font-weight: 700;
}

.form-control,
.form-select {
    min-height: 44px;
    border-color: #dce2e8;
    border-radius: 11px;
    background-color: #fff;
    color: #243442;
    font-size: 13px;
    box-shadow: none !important;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

textarea.form-control { min-height: auto; }

.form-control:hover,
.form-select:hover { border-color: #cbd4dc; }

.form-control:focus,
.form-select:focus {
    border-color: rgba(237, 79, 24, .66);
    box-shadow: 0 0 0 4px rgba(237, 79, 24, .09) !important;
}

.btn {
    border-radius: 10px;
    font-weight: 700;
    letter-spacing: -.005em;
}

.btn-primary {
    border-color: var(--pro-orange) !important;
    background: linear-gradient(180deg, #f35a22, var(--pro-orange)) !important;
    box-shadow: 0 7px 17px rgba(237, 79, 24, .18);
}

.btn-primary:hover {
    border-color: #d94311 !important;
    background: linear-gradient(180deg, #e94c17, #d94311) !important;
    transform: translateY(-1px);
}

.table > :not(caption) > * > * { border-color: #edf0f2; }
.table thead th {
    color: #667481;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .065em;
    text-transform: uppercase;
}
.table tbody tr { transition: background .14s ease; }
.table tbody tr:hover { background: #f8fafb; }

.enterprise-actionbar {
    position: sticky;
    bottom: 12px;
    z-index: 20;
    margin-top: 18px;
    border: 1px solid rgba(219, 225, 231, .96);
    border-radius: 16px;
    background: rgba(255,255,255,.93);
    box-shadow: 0 14px 40px rgba(28,45,60,.12);
    backdrop-filter: blur(14px);
}

.status-pill,
.admin-status,
.data-status,
.panel-badge {
    font-weight: 750;
    letter-spacing: .01em;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

@media (max-width: 767.98px) {
    .panel-heading { min-height: auto; padding: 15px !important; }
    .panel-body { padding: 16px !important; }
    .enterprise-actionbar { bottom: 7px; border-radius: 14px; }
}

/* Role-aware navigation */
.nav-access-tag {
    margin-left: auto;
    padding: .18rem .45rem;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 999px;
    font-size: .62rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    opacity: .72;
}

/* Read-only role presentation. Server authorization remains the primary control. */
.role-it-administrator.page-controller-admin .system-content form,
.role-it-administrator.page-controller-admin .system-content button[type="submit"] {
    display: none !important;
}
.role-it-administrator.page-controller-handover .danger-action,
.role-it-administrator.page-controller-handover form[action*="Delete"] {
    display: none !important;
}
.role-it-administrator .readonly-notice,
.role-management .readonly-notice {
    display: flex;
}
.role-it-administrator.page-controller-stockopname .system-content form,
.role-it-administrator.page-controller-stockopname .scanner-shell,
.role-it-administrator.page-controller-stockopname [data-scan-action],
.role-it-administrator.page-controller-stockopname button[type="submit"] {
    display: none !important;
}
