/*
   Photography Studio System - Minia-inspired 2026 UI layer
   Built specifically for the project.  No template assets/code are copied.
*/
:root {
    --studio-primary: #6C151E;
    --studio-primary-rgb: 108, 21, 30;
    --studio-primary-600: #551018;
    --studio-primary-soft: #F8ECE9;
    --studio-bg: #FBF7F2;
    --studio-surface: #FFFEFC;
    --studio-surface-2: #FFF7EE;
    --studio-border: #EADBCD;
    --studio-border-strong: #DFC8B6;
    --studio-text: #34413F;
    --studio-heading: #0F3D3A;
    --studio-muted: #756A62;
    --studio-success: #2F6A57;
    --studio-warning: #C28A47;
    --studio-danger: #A93B46;
    --studio-info: #497C77;
    --studio-radius: 10px;
    --studio-radius-sm: 7px;
    --studio-shadow: 0 2px 8px rgba(18, 38, 63, .045);
    --studio-shadow-lg: 0 16px 38px rgba(18, 38, 63, .10);
    --studio-sidebar: 260px;
    --studio-sidebar-mini: 80px;
    --studio-topbar: 72px;
    --studio-ease: .24s cubic-bezier(.2,.75,.25,1);
}

html[data-theme="dark"] {
    --studio-bg: #1f232d;
    --studio-surface: #252a36;
    --studio-surface-2: #2a303d;
    --studio-border: #343b4a;
    --studio-border-strong: #3d4557;
    --studio-text: #c6cee1;
    --studio-heading: #f2f4f8;
    --studio-muted: #9da7ba;
    --studio-primary-soft: rgba(108,21,30,.16);
    --studio-shadow: 0 2px 10px rgba(0,0,0,.14);
    --studio-shadow-lg: 0 18px 42px rgba(0,0,0,.25);
}

html { scroll-behavior: smooth; }
body {
    background:
        radial-gradient(circle at 15% -8%, rgba(var(--studio-primary-rgb), .055), transparent 27rem),
        var(--studio-bg);
    color: var(--studio-text);
    font-family: "Tajawal", "Segoe UI", Tahoma, Arial, sans-serif !important;
    letter-spacing: 0;
}

body, button, input, textarea, select, table, .btn, .form-control, .form-select, .dropdown-menu {
    font-family: "Tajawal", "Segoe UI", Tahoma, Arial, sans-serif !important;
}

/* ===== Application shell ===== */
.minia-sidebar {
    width: var(--studio-sidebar);
    background: var(--studio-surface);
    border-left: 1px solid var(--studio-border);
    box-shadow: -5px 0 24px rgba(18,38,63,.025);
}
.minia-main { margin-right: var(--studio-sidebar); }
.minia-brand-row { height: var(--studio-topbar); border-bottom-color: var(--studio-border); padding-inline: 15px 11px; }
.minia-brand-mark {
    width: 38px; height: 38px; flex-basis: 38px;
    border-radius: 10px;
    background: linear-gradient(145deg, #7F202B, #5B1119);
    box-shadow: 0 8px 18px rgba(var(--studio-primary-rgb), .25);
}
.minia-brand-copy strong { font-size: .97rem; color: var(--studio-heading); font-weight: 800; }
.minia-brand-copy small { font-size: .59rem; color: var(--studio-muted); letter-spacing: .15px; }
.minia-sidebar-scroll { padding: 14px 11px 20px; }
.minia-menu-title {
    padding: 14px 11px 8px;
    color: #9aa0ad;
    font-size: .64rem;
    letter-spacing: .25px;
    text-transform: uppercase;
}
.minia-nav-link,.minia-nav-toggle {
    min-height: 44px;
    padding: 10px 11px;
    border-radius: 8px;
    color: #5c6274;
    font-size: .80rem;
    font-weight: 500;
    transition: background var(--studio-ease), color var(--studio-ease), transform var(--studio-ease), box-shadow var(--studio-ease);
}
html[data-theme="dark"] .minia-nav-link,
html[data-theme="dark"] .minia-nav-toggle { color: #aab4c8; }
.minia-nav-link:hover,.minia-nav-toggle:hover {
    background: rgba(var(--studio-primary-rgb), .065);
    color: var(--studio-primary);
    transform: translateX(-2px);
}
.minia-nav-link.active {
    background: linear-gradient(90deg, rgba(var(--studio-primary-rgb), .12), rgba(var(--studio-primary-rgb), .065));
    color: var(--studio-primary);
    box-shadow: inset 0 0 0 1px rgba(var(--studio-primary-rgb), .045);
}
.minia-nav-link.active::before {
    right: -11px;
    width: 4px;
    top: 9px;
    bottom: 9px;
    border-radius: 4px 0 0 4px;
}
.minia-nav-icon { color: #7c8292; }
.minia-nav-icon svg { width: 18px; height: 18px; stroke-width: 1.75; }
.minia-submenu { padding-right: 33px; }
.minia-submenu a {
    padding: 8px 11px;
    border-radius: 7px;
    font-size: .76rem;
    color: #747a89;
}
.minia-submenu a:hover,.minia-submenu a.active { background: rgba(var(--studio-primary-rgb), .045); }
.minia-sidebar-footer { padding: 10px 13px 15px; }
.minia-plan-card {
    border: 1px solid rgba(var(--studio-primary-rgb), .08);
    border-radius: 10px;
    background: linear-gradient(145deg, #f2f4ff, #F8ECE9);
}
html[data-theme="dark"] .minia-plan-card { background: rgba(var(--studio-primary-rgb), .1); border-color: rgba(var(--studio-primary-rgb), .16); }

.minia-topbar {
    height: var(--studio-topbar);
    background: rgba(255,255,255,.92);
    border-bottom: 1px solid var(--studio-border);
    box-shadow: 0 1px 0 rgba(18,38,63,.02);
    backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
    transition: box-shadow .2s ease, background .2s ease;
}
html[data-theme="dark"] .minia-topbar { background: rgba(37,42,54,.90); }
body.is-scrolled .minia-topbar { box-shadow: 0 8px 28px rgba(18,38,63,.065); }
.minia-topbar-inner { padding-inline: 22px; gap: 14px; }
.minia-menu-btn,.minia-icon-btn { border-radius: 8px; }
.minia-search {
    width: 260px;
    height: 40px;
    padding-inline: 13px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: #f4f5f9;
}
html[data-theme="dark"] .minia-search { background: #202530; }
.minia-search:focus-within {
    width: 315px;
    border-color: rgba(var(--studio-primary-rgb), .16);
    background: var(--studio-surface);
    box-shadow: 0 0 0 4px rgba(var(--studio-primary-rgb), .075);
}
.minia-topbar-action {
    min-height: 38px;
    padding: 7px 12px;
    border: 1px solid rgba(var(--studio-primary-rgb), .14);
    border-radius: 8px;
    background: var(--studio-primary-soft);
    color: var(--studio-primary);
    font-size: .72rem;
    font-weight: 600;
}
.minia-topbar-action:hover { background: var(--studio-primary); color: #fff; transform: translateY(-1px); }
.minia-icon-btn { width: 39px; height: 39px; }
.minia-notification-dot { box-shadow: 0 0 0 3px var(--studio-surface); }

.minia-content { flex: 1; }
.minia-content-inner {
    max-width: 1760px;
    margin-inline: auto;
    padding: 24px 24px 34px;
}
.minia-footer {
    border-top: 1px solid var(--studio-border);
    color: var(--studio-muted);
    background: transparent;
    font-size: .66rem;
}

/* ===== Global page heading / toolbar ===== */
.minia-content-inner > .mb-3:first-child,
.minia-content-inner > .mb-4:first-child,
.minia-content-inner > .d-flex:first-child,
.minia-content-inner > .page-header:first-child,
.minia-content-inner > .page-heading:first-child {
    position: relative;
}

.page-heading,.minia-page-heading,.page-header,
.minia-content-inner > .d-flex.justify-content-between.align-items-center.mb-3,
.minia-content-inner > .d-flex.flex-wrap.justify-content-between.align-items-center.mb-4,
.minia-content-inner > .d-flex.flex-wrap.justify-content-between.gap-3.mb-4,
.minia-content-inner > .d-flex.flex-wrap.justify-content-between.gap-2.mb-4 {
    margin-bottom: 19px !important;
}

.minia-content-inner h1,
.minia-content-inner h2,
.minia-content-inner h3,
.minia-content-inner h4,
.minia-content-inner h5,
.minia-content-inner h6 { color: var(--studio-heading); }
.minia-content-inner > div:first-child h2,
.minia-content-inner > div:first-child h1,
.page-header h2,
.page-heading h1,
.minia-page-heading h1 {
    font-weight: 700;
    letter-spacing: -.15px;
}
.minia-content-inner > div:first-child h2 { font-size: 1.08rem; }
.minia-content-inner > div:first-child .text-muted,
.page-header .text-muted { font-size: .72rem; }
.page-breadcrumb { color: #9aa0ad; }

/* ===== Cards / panels ===== */
.card {
    border: 1px solid var(--studio-border) !important;
    border-radius: var(--studio-radius) !important;
    background: var(--studio-surface);
    box-shadow: var(--studio-shadow) !important;
    overflow: hidden;
}
.card.ui-rise,.card.minia-surface {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.card.ui-rise:hover,.card.minia-surface:hover {
    transform: translateY(-2px);
    border-color: rgba(var(--studio-primary-rgb), .14) !important;
    box-shadow: var(--studio-shadow-lg) !important;
}
.card-header {
    min-height: 54px;
    display: flex;
    align-items: center;
    background: var(--studio-surface) !important;
    border-bottom: 1px solid var(--studio-border) !important;
    padding: 13px 16px;
}
.card-footer { background: var(--studio-surface) !important; border-top-color: var(--studio-border) !important; }
.card-body { padding: 1.08rem 1.1rem; }
.form-card { width: min(100%, 980px); }
.form-card > .card-body { padding: 1.55rem !important; }
.form-card h3 { font-size: 1rem; font-weight: 700; }

/* ===== Dashboard ===== */
.dashboard-page .row.g-3 { --bs-gutter-x: 1rem; --bs-gutter-y: 1rem; }
.dashboard-stat-card { min-height: 124px; }
.dashboard-stat-card .card-body { padding: 17px 18px; }
.dashboard-stat-number { font-size: 1.35rem; color: var(--studio-heading); }
.dashboard-stat-number em { font-size: .63rem; font-style: normal; color: var(--studio-muted); font-weight: 500; }
.dashboard-stat-label { color: var(--studio-muted); font-size: .69rem; font-weight: 500; }
.dashboard-stat-meta { gap: 6px; }
.dashboard-sparkline { opacity: .95; }
.dashboard-card-title { padding: 15px 17px; border-bottom: 1px solid var(--studio-border); }
.dashboard-card-title h3 { font-size: .84rem; font-weight: 700; }
.dashboard-feature-card {
    border: 0 !important;
    color: #fff;
    background:
      radial-gradient(circle at 25% 0%, rgba(255,255,255,.22), transparent 11rem),
      linear-gradient(145deg, #0F3D3A, #6C151E) !important;
    box-shadow: 0 18px 38px rgba(var(--studio-primary-rgb), .22) !important;
}
.dashboard-feature-card h3,.dashboard-feature-card p { color: #fff; }
.dashboard-feature-card p { opacity: .82; }
.dashboard-feature-card .btn { background: rgba(255,255,255,.14); color:#fff; border-color: rgba(255,255,255,.18); }
.dashboard-feature-card .btn:hover { background:#fff; color:var(--studio-primary); }

/* ===== Buttons ===== */
.btn {
    position: relative;
    overflow: hidden;
    min-height: 38px;
    padding: .48rem .82rem;
    border-radius: 8px;
    font-size: .73rem;
    font-weight: 600;
    letter-spacing: 0;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease, color .16s ease;
}
.btn-sm { min-height: 31px; padding: .32rem .62rem; border-radius: 7px; font-size: .69rem; }
.btn-lg { min-height: 44px; }
.btn:hover { transform: translateY(-1px); }
.btn:active { transform: translateY(0) scale(.985); }
.btn-primary,.btn-dark {
    background: linear-gradient(145deg, #7B202A, #5B1119) !important;
    border-color: #6C151E !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(var(--studio-primary-rgb), .16) !important;
}
.btn-primary:hover,.btn-dark:hover { background: linear-gradient(145deg,#7A202A,#4F0F16) !important; box-shadow: 0 9px 20px rgba(var(--studio-primary-rgb), .22) !important; }
.btn-outline-dark { color: var(--studio-heading); border-color: var(--studio-border-strong); background: var(--studio-surface); }
.btn-outline-dark:hover { color:#fff; background:var(--studio-primary); border-color:var(--studio-primary); }
.btn-outline-secondary { color: var(--studio-muted); border-color: var(--studio-border-strong); }
.btn-outline-secondary:hover { background:#666d7e; border-color:#666d7e; color:#fff; }
.btn-outline-primary { border-color: rgba(var(--studio-primary-rgb), .28); }
.btn-outline-success { border-color: rgba(52,195,143,.32); }
.btn .studio-ripple {
    position:absolute; border-radius:50%; pointer-events:none;
    transform:scale(0); opacity:.28; background:#fff;
    animation: studioRipple .52s ease-out;
}
@keyframes studioRipple { to { transform:scale(3.4); opacity:0; } }

/* ===== Inputs ===== */
.form-label { margin-bottom: .40rem; color: var(--studio-heading); font-size: .70rem; font-weight: 600; }
.form-control,.form-select {
    min-height: 41px;
    border: 1px solid var(--studio-border-strong);
    border-radius: 8px;
    background-color: var(--studio-surface);
    color: var(--studio-text);
    padding: .50rem .72rem;
    font-size: .74rem;
    box-shadow: none;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
textarea.form-control { min-height: 100px; line-height: 1.7; }
.form-control::placeholder { color: #a3a9b5; }
.form-control:hover,.form-select:hover { border-color: #cfd5df; }
.form-control:focus,.form-select:focus {
    border-color: rgba(var(--studio-primary-rgb), .50);
    background-color: var(--studio-surface);
    box-shadow: 0 0 0 4px rgba(var(--studio-primary-rgb), .085);
}
.form-check-input { border-color: #cfd4df; box-shadow:none !important; }
.form-check-input:checked { background-color: var(--studio-primary); border-color: var(--studio-primary); }
.input-group-text { border-color:var(--studio-border-strong); border-radius:8px; }
.validation-summary-errors,.field-validation-error { font-size: .70rem; }

/* ===== Tables ===== */
.table-responsive { scrollbar-width: thin; scrollbar-color: #cfd4df transparent; }
.table { color: var(--studio-text); border-collapse: separate; border-spacing: 0; }
.table > :not(caption) > * > * {
    padding: .83rem .84rem;
    border-bottom: 1px solid var(--studio-border);
    background: transparent;
}
.table thead th {
    position: relative;
    color: #777f90;
    background: var(--studio-surface-2) !important;
    font-size: .66rem;
    font-weight: 700;
    white-space: nowrap;
    border-bottom: 1px solid var(--studio-border-strong);
}
.table tbody td { font-size: .72rem; vertical-align: middle; }
.table tbody tr { transition: background .15s ease, transform .15s ease; }
.table-hover > tbody > tr:hover > *,.table tbody tr:hover > * { background: rgba(var(--studio-primary-rgb), .025); }
.table tbody tr:last-child td { border-bottom: 0; }
.table .btn + .btn { margin-inline-start: .25rem; }
.studio-table-row-enter { animation: studioRowEnter .34s ease both; }
@keyframes studioRowEnter { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }

/* ===== Badges / status ===== */
.badge {
    padding: .43em .64em;
    border-radius: 999px;
    font-size: .63rem;
    font-weight: 600;
}
.text-bg-light,.badge.text-bg-light { background: #f4f5f8 !important; color: #667085 !important; border-color: var(--studio-border) !important; }
html[data-theme="dark"] .text-bg-light,html[data-theme="dark"] .badge.text-bg-light { background: var(--studio-surface-2) !important; color: var(--studio-text) !important; }

/* ===== Filter cards and toolbars ===== */
.minia-content-inner > form.card,
.minia-content-inner .card.card-body {
    border: 1px solid var(--studio-border) !important;
}
.minia-content-inner > form.card .card-body { padding: 1rem 1.05rem; }
.minia-content-inner form.card .row.align-items-end .btn { min-height:41px; }

/* ===== Dropdowns ===== */
.dropdown-menu {
    padding: .45rem;
    border: 1px solid var(--studio-border);
    border-radius: 10px;
    background: var(--studio-surface);
    box-shadow: 0 14px 36px rgba(18,38,63,.12);
    animation: studioDropdown .16s ease both;
}
@keyframes studioDropdown { from { opacity:0; transform:translateY(-4px) scale(.985); } to { opacity:1; transform:none; } }
.dropdown-item { border-radius: 7px; padding: .52rem .65rem; font-size: .72rem; }
.dropdown-item:hover,.dropdown-item:focus { color:var(--studio-primary); background:var(--studio-primary-soft); }

/* ===== Modals / alerts / list groups ===== */
.modal-content { border:1px solid var(--studio-border); border-radius:14px; background:var(--studio-surface); box-shadow:0 24px 70px rgba(18,38,63,.18); }
.modal-header,.modal-footer { border-color:var(--studio-border); }
.modal.fade .modal-dialog { transform: translateY(10px) scale(.985); transition: transform .22s ease; }
.modal.show .modal-dialog { transform:none; }
.alert { border-radius:9px; font-size:.72rem; border-width:1px; }
.minia-alert { box-shadow:var(--studio-shadow); }
.list-group-item { color:var(--studio-text); background:var(--studio-surface); border-color:var(--studio-border); }
.list-group-item.bg-light { background:rgba(var(--studio-primary-rgb),.035) !important; }

/* ===== Pagination / tabs / accordion ===== */
.pagination { gap: 4px; }
.pagination .page-link {
    min-width: 34px; min-height:34px; display:grid; place-items:center;
    padding:.25rem .45rem; border:1px solid var(--studio-border); border-radius:7px !important;
    background:var(--studio-surface); color:var(--studio-muted); font-size:.69rem;
}
.pagination .page-item.active .page-link { background:var(--studio-primary); border-color:var(--studio-primary); box-shadow:0 5px 12px rgba(var(--studio-primary-rgb),.18); }
.nav-tabs { gap:4px; border-bottom-color:var(--studio-border); }
.nav-tabs .nav-link { border-radius:8px 8px 0 0; font-size:.72rem; font-weight:600; }
.accordion-item { overflow:hidden; border-radius:9px !important; }
.accordion-button { font-size:.74rem; font-weight:600; }

/* ===== Calendar ===== */
.calendar-grid { gap:1px; border-radius:11px; background:var(--studio-border); box-shadow:var(--studio-shadow); }
.calendar-cell { min-height:125px; padding:10px; transition:background .16s ease, transform .16s ease; }
.calendar-cell:hover { background:rgba(var(--studio-primary-rgb),.02); }
.calendar-today { box-shadow:inset 0 0 0 2px var(--studio-primary); }

/* ===== Details / content blocks ===== */
.detail-label { color: var(--studio-muted); font-size:.65rem; font-weight:700; }
.white-space-preline { color:var(--studio-text); }
hr { border-color:var(--studio-border); opacity:1; }
code { color:#c05a8e; background:rgba(192,90,142,.07); padding:.15rem .32rem; border-radius:4px; }

/* ===== User menu ===== */
.studio-user-trigger { border-radius: 9px; padding: 5px 7px; }
.studio-user-trigger:hover { background:var(--studio-surface-2); }
.user-avatar { background:linear-gradient(145deg,#0F3D3A,#6C151E); box-shadow:0 5px 13px rgba(var(--studio-primary-rgb),.18); }
.studio-user-dropdown { min-width:245px; }

/* ===== Login ===== */
.minia-auth-shell { background:var(--studio-surface); }
.minia-auth-brand-panel {
    background:
      radial-gradient(circle at 18% 10%, rgba(255,255,255,.14), transparent 14rem),
      radial-gradient(circle at 90% 95%, rgba(255,255,255,.10), transparent 18rem),
      linear-gradient(145deg,#0F3D3A,#6C151E 52%,#7A202A);
}
.minia-auth-copy h1 { letter-spacing:-.4px; }
.minia-auth-content { background:var(--studio-bg); }
.login-card { border:1px solid var(--studio-border) !important; box-shadow:0 20px 55px rgba(18,38,63,.10) !important; }
.login-card .card-body { padding:2rem !important; }
.login-brand-icon {
    width:52px;height:52px;margin:0 auto 14px;display:grid;place-items:center;border-radius:15px;
    color:#fff;background:linear-gradient(145deg,#7F202B,#551018);box-shadow:0 12px 24px rgba(var(--studio-primary-rgb),.22);
}
.login-brand-icon svg { width:24px;height:24px; }
.login-card h1 { color:var(--studio-heading); font-weight:800; }

/* ===== Motion ===== */
.minia-page-animate { animation: studioPageIn .38s cubic-bezier(.2,.75,.25,1) both; }
@keyframes studioPageIn { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:none; } }
.studio-observe { opacity:0; transform:translateY(8px); }
.studio-observe.studio-in { opacity:1; transform:none; transition:opacity .42s ease, transform .42s ease; }

/* Loading accent used briefly on route load */
.studio-route-line {
    position:fixed;top:0;right:0;z-index:2000;height:2px;width:0;
    background:linear-gradient(90deg,#6C151E,#0F3D3A);box-shadow:0 0 12px rgba(var(--studio-primary-rgb),.45);
    pointer-events:none;
}
body.app-ready .studio-route-line { animation:studioRouteLine .48s ease forwards; }
@keyframes studioRouteLine { 0%{width:0;opacity:1}70%{width:82%;opacity:1}100%{width:100%;opacity:0} }

/* ===== Collapsed sidebar ===== */
body.sidebar-collapsed .minia-sidebar { width:var(--studio-sidebar-mini); }
body.sidebar-collapsed .minia-main { margin-right:var(--studio-sidebar-mini); }
body.sidebar-collapsed .minia-brand-row { padding-inline:12px; }
body.sidebar-collapsed .minia-sidebar-collapse { border-radius:9px; }
body.sidebar-collapsed .minia-nav-link,
body.sidebar-collapsed .minia-nav-toggle { border-radius:9px; }

/* ===== Scrollbar ===== */
* { scrollbar-width:thin; scrollbar-color:#cfd4df transparent; }
::-webkit-scrollbar { width:8px; height:8px; }
::-webkit-scrollbar-track { background:transparent; }
::-webkit-scrollbar-thumb { background:#cfd4df; border:2px solid transparent; background-clip:padding-box; border-radius:999px; }
::-webkit-scrollbar-thumb:hover { background:#bfc5d0; border:2px solid transparent; background-clip:padding-box; }
html[data-theme="dark"] * { scrollbar-color:#465064 transparent; }

/* ===== Responsive ===== */
@media (max-width: 1199.98px) {
    .minia-content-inner { padding-inline:20px; }
}
@media (max-width: 991.98px) {
    .minia-main { margin-right:0; }
    .minia-content-inner { padding:18px 15px 28px; }
    .minia-sidebar { width:min(86vw,290px); }
    .minia-topbar-inner { padding-inline:14px; }
}
@media (max-width: 767.98px) {
    :root { --studio-topbar:64px; }
    .minia-topbar { height:var(--studio-topbar); }
    .minia-topbar-inner { height:var(--studio-topbar); }
    .card-body { padding:.95rem; }
    .form-card > .card-body { padding:1.15rem !important; }
    .btn { min-height:37px; }
    .dashboard-stat-card { min-height:110px; }
    .minia-content-inner > .d-flex.justify-content-between,
    .minia-content-inner > .d-flex.flex-wrap.justify-content-between { gap:10px; }
}
@media (max-width: 575.98px) {
    .minia-content-inner { padding-inline:11px; }
    .card { border-radius:9px !important; }
    .card-header { padding-inline:12px; }
    .table > :not(caption) > * > * { padding:.72rem .65rem; }
}

@media (prefers-reduced-motion: reduce) {
    .minia-page-animate,.studio-observe,.studio-observe.studio-in,.studio-table-row-enter,.dropdown-menu,.studio-route-line {
        animation:none !important; transition:none !important; transform:none !important; opacity:1 !important;
    }
}


/* ===== Al Ruya Media Brand Palette ===== */
:root {
    --ruya-bordo: #6C151E;
    --ruya-bordo-dark: #551018;
    --ruya-green: #0F3D3A;
    --ruya-green-dark: #0A2C2A;
    --ruya-cream: #F5DABF;
    --ruya-cream-soft: #FFF4E7;
    --ruya-paper: #FFFEFC;

    --studio-primary: var(--ruya-bordo);
    --studio-primary-rgb: 108, 21, 30;
    --studio-primary-600: var(--ruya-bordo-dark);
    --studio-primary-soft: #F8ECE9;
    --studio-bg: #FBF7F2;
    --studio-surface: var(--ruya-paper);
    --studio-surface-2: #FFF7EE;
    --studio-border: #EADBCD;
    --studio-border-strong: #DFC8B6;
    --studio-text: #34413F;
    --studio-heading: var(--ruya-green);
    --studio-muted: #756A62;
    --studio-success: #2F6A57;
    --studio-warning: #C28A47;
    --studio-danger: #A93B46;
    --studio-info: #497C77;
}

html[data-theme="dark"] {
    --studio-bg: #0C2422;
    --studio-surface: #12312F;
    --studio-surface-2: #183A37;
    --studio-border: #28504C;
    --studio-border-strong: #35615C;
    --studio-text: #F3E7DB;
    --studio-heading: #FFF3E6;
    --studio-muted: #C9B7A7;
    --studio-primary-soft: rgba(245, 218, 191, .10);
}

body {
    background:
      radial-gradient(circle at 12% -6%, rgba(245,218,191,.32), transparent 25rem),
      radial-gradient(circle at 96% 3%, rgba(15,61,58,.08), transparent 30rem),
      var(--studio-bg);
}

/* Premium green sidebar + cream active states */
.minia-sidebar {
    background: linear-gradient(180deg, #0F3D3A 0%, #0C3431 100%);
    border-left-color: rgba(245,218,191,.14);
    box-shadow: -10px 0 32px rgba(15,61,58,.12);
}
.minia-brand-row { border-bottom-color: rgba(245,218,191,.12); }
.minia-brand-copy strong { color: #FFF7EE; }
.minia-brand-copy small { color: rgba(245,218,191,.76); }
.minia-brand-mark {
    color: var(--ruya-green);
    background: linear-gradient(145deg, #F9E7D4, #F5DABF);
    box-shadow: 0 9px 24px rgba(0,0,0,.16);
}
.minia-sidebar-collapse,
.minia-sidebar .minia-menu-btn { color: rgba(245,218,191,.82); }
.minia-sidebar-collapse:hover {
    color: #fff;
    background: rgba(245,218,191,.12);
}
.minia-menu-title { color: rgba(245,218,191,.54); }
.minia-nav-link,.minia-nav-toggle { color: rgba(255,247,238,.76); }
html[data-theme="dark"] .minia-nav-link,
html[data-theme="dark"] .minia-nav-toggle { color: rgba(255,247,238,.76); }
.minia-nav-icon { color: rgba(245,218,191,.58); }
.minia-nav-link:hover,.minia-nav-toggle:hover {
    color: #FFF4E7;
    background: rgba(245,218,191,.09);
}
.minia-nav-link.active {
    color: #FFF4E7;
    background: linear-gradient(90deg, rgba(245,218,191,.18), rgba(245,218,191,.08));
    box-shadow: inset 0 0 0 1px rgba(245,218,191,.08);
}
.minia-nav-link.active::before { background: var(--ruya-cream); }
.minia-nav-link.active .minia-nav-icon,
.minia-nav-link:hover .minia-nav-icon,
.minia-nav-toggle:hover .minia-nav-icon { color: var(--ruya-cream); }
.minia-nav-arrow { color: rgba(245,218,191,.50); }
.minia-submenu a { color: rgba(255,247,238,.60); }
html[data-theme="dark"] .minia-submenu a { color: rgba(255,247,238,.60); }
.minia-submenu a::before { background: rgba(245,218,191,.32); }
.minia-submenu a:hover,.minia-submenu a.active { color: var(--ruya-cream); }
.minia-submenu a.active::before { background: var(--ruya-cream); box-shadow: 0 0 0 4px rgba(245,218,191,.10); }
.minia-plan-card {
    color: #FFF4E7;
    background: linear-gradient(145deg, rgba(108,21,30,.94), rgba(86,16,24,.94));
    border-color: rgba(245,218,191,.12);
}
.minia-plan-card small { color: rgba(255,244,231,.72); }
.minia-plan-visual span { background: linear-gradient(var(--ruya-cream), #DDBA99); }

/* Topbar / surfaces */
.minia-topbar {
    background: rgba(255,254,252,.94);
    border-bottom-color: #EADBCD;
}
html[data-theme="dark"] .minia-topbar { background: rgba(18,49,47,.94); }
.minia-search { background: #FFF5EA; border-color: rgba(15,61,58,.06); }
.minia-search:focus-within { border-color: rgba(108,21,30,.22); box-shadow: 0 0 0 4px rgba(108,21,30,.07); }
.minia-topbar-action {
    color: var(--ruya-bordo);
    background: #F9E7D4;
    border-color: rgba(108,21,30,.10);
}
.minia-topbar-action:hover { background: var(--ruya-bordo); color: #fff; }
.minia-icon-btn:hover,.minia-menu-btn:hover { color: var(--ruya-bordo); background: #F8ECE9; }
.minia-notification-dot { background: var(--ruya-bordo); }

/* Typography and cards */
a { color: var(--ruya-bordo); }
a:hover { color: var(--ruya-green); }
.page-heading h1,.page-header h1,.minia-page-heading h1,
.card-title,h1,h2,h3,h4,h5,h6 { color: var(--ruya-green); }
.card {
    border-color: #EADBCD !important;
    background: rgba(255,254,252,.98);
    box-shadow: 0 4px 16px rgba(15,61,58,.045);
}
.card:hover { box-shadow: 0 12px 30px rgba(15,61,58,.075); }

/* Buttons */
.btn-primary,.btn-dark {
    background: linear-gradient(145deg, #7A202A, #6C151E) !important;
    border-color: #6C151E !important;
    color: #fff !important;
    box-shadow: 0 7px 18px rgba(108,21,30,.16) !important;
}
.btn-primary:hover,.btn-dark:hover {
    background: linear-gradient(145deg,#6C151E,#551018) !important;
    box-shadow: 0 10px 24px rgba(108,21,30,.22) !important;
}
.btn-secondary {
    background: var(--ruya-green) !important;
    border-color: var(--ruya-green) !important;
    color:#fff !important;
}
.btn-secondary:hover { background: var(--ruya-green-dark) !important; border-color: var(--ruya-green-dark) !important; }
.btn-outline-primary { color: var(--ruya-bordo); border-color: rgba(108,21,30,.32); }
.btn-outline-primary:hover { background: var(--ruya-bordo); border-color: var(--ruya-bordo); color:#fff; }
.btn-outline-secondary { color: var(--ruya-green); border-color: rgba(15,61,58,.30); }
.btn-outline-secondary:hover { background: var(--ruya-green); border-color: var(--ruya-green); color:#fff; }

/* Inputs / tables / pagination */
.form-control,.form-select {
    background-color: #FFFEFC;
    border-color: #EADBCD;
}
.form-control:hover,.form-select:hover { border-color: #D8C0AD; }
.form-control:focus,.form-select:focus {
    border-color: rgba(108,21,30,.52);
    box-shadow: 0 0 0 4px rgba(108,21,30,.07);
}
.form-check-input:checked { background-color: var(--ruya-bordo); border-color: var(--ruya-bordo); }
.table thead th {
    color: var(--ruya-green);
    background: #FFF4E7;
    border-bottom-color: #E5CFBC;
}
.table-hover > tbody > tr:hover > *,.table tbody tr:hover > * { background: rgba(245,218,191,.15); }
.pagination .page-item.active .page-link { background:var(--ruya-bordo); border-color:var(--ruya-bordo); box-shadow:0 5px 12px rgba(108,21,30,.18); }

/* Dashboard and branded hero blocks */
.dashboard-feature-card {
    background:
      radial-gradient(circle at 22% 0%, rgba(245,218,191,.18), transparent 12rem),
      linear-gradient(135deg, #0F3D3A 0%, #164D49 46%, #6C151E 100%) !important;
    box-shadow: 0 18px 40px rgba(15,61,58,.18) !important;
}
.dashboard-feature-card h1,.dashboard-feature-card h2,.dashboard-feature-card h3,
.dashboard-feature-card p,.dashboard-feature-card .text-muted { color: #FFF7EE !important; }
.dashboard-feature-card .btn { background: rgba(245,218,191,.14); color:#FFF7EE; border-color: rgba(245,218,191,.20); }
.dashboard-feature-card .btn:hover { background: var(--ruya-cream); color: var(--ruya-green); }

/* Auth / login branding */
.minia-auth-brand-panel {
    background:
      radial-gradient(circle at 18% 10%, rgba(245,218,191,.18), transparent 14rem),
      radial-gradient(circle at 90% 95%, rgba(245,218,191,.10), transparent 18rem),
      linear-gradient(145deg,#0F3D3A 0%,#154B47 54%,#6C151E 100%);
}
.minia-auth-brand-panel .minia-brand-mark {
    background: linear-gradient(145deg,#F9E7D4,#F5DABF);
    color: var(--ruya-green);
}
.minia-auth-copy span { color: var(--ruya-cream); }
.login-card { border-color:#EADBCD !important; box-shadow:0 22px 60px rgba(15,61,58,.10) !important; }
.user-avatar { background:linear-gradient(145deg,#0F3D3A,#6C151E); box-shadow:0 6px 16px rgba(15,61,58,.16); }

/* Badges and soft utility surfaces */
.bg-primary,.text-bg-primary { background-color: var(--ruya-bordo) !important; }
.text-primary { color: var(--ruya-bordo) !important; }
.border-primary { border-color: var(--ruya-bordo) !important; }
.bg-secondary,.text-bg-secondary { background-color: var(--ruya-green) !important; }
.text-secondary { color: var(--ruya-green) !important; }
.bg-light,.text-bg-light { background-color: #FFF4E7 !important; }

::selection { background: rgba(245,218,191,.65); color: var(--ruya-green); }


/* ===== Al Ruya official white logo ===== */
.alruya-brand-logo {
    width: 72%;
    height: 72%;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 2px 7px rgba(0,0,0,.16));
}
.minia-brand-mark,
.minia-auth-brand-panel .minia-brand-mark,
.login-brand-icon {
    color: #fff;
    background: linear-gradient(145deg, #0F3D3A 0%, #153F3C 48%, #6C151E 100%);
}
.minia-brand-mark .alruya-brand-logo { width: 78%; height: 78%; }
.login-brand-icon .alruya-brand-logo { width: 74%; height: 74%; }
