/* Apple90 V13 — Premium Minimal design system
   Shared visual language for storefront, customer area and administration. */
:root{
 --a90-bg:#f3f6fb;--a90-surface:#fff;--a90-surface-2:#f8faff;
 --a90-text:#172338;--a90-muted:#64748b;--a90-border:#e3e9f2;
 --a90-brand:#079b78;--a90-brand-strong:#047857;--a90-brand-soft:rgba(5,150,105,.09);
 --a90-link:#315bd6;--a90-danger:#dc4b58;--a90-warning:#b7791f;
 --a90-radius:18px;--a90-shadow:0 12px 32px rgba(22,39,68,.07);
 --a90-shadow-hover:0 18px 38px rgba(22,39,68,.11);
 --a90-motion:180ms cubic-bezier(.2,.75,.25,1);
}
html[data-theme="light"]{
 color-scheme:light;
 --a90-bg:#f3f6fb;--a90-surface:#fff;--a90-surface-2:#f8faff;
 --a90-text:#172338;--a90-muted:#64748b;--a90-border:#e3e9f2;
 --a90-brand:#079b78;--a90-brand-strong:#047857;--a90-brand-soft:rgba(5,150,105,.09);
 --a90-link:#315bd6;--a90-shadow:0 12px 32px rgba(22,39,68,.07);
 --ui-bg:var(--a90-bg);--ui-panel:var(--a90-surface);--ui-panel-2:var(--a90-surface-2);
 --ui-text:var(--a90-text);--ui-muted:var(--a90-muted);--ui-border:var(--a90-border);
 --ui-accent:var(--a90-brand);--ui-primary:var(--a90-link);
}
html[data-theme="dark"]{
 color-scheme:dark;
 --a90-bg:#0c1421;--a90-surface:#141f30;--a90-surface-2:#1a293d;
 --a90-text:#edf3fc;--a90-muted:#a0aec0;--a90-border:#2a3a50;
 --a90-brand:#27c69a;--a90-brand-strong:#16a77f;--a90-brand-soft:rgba(39,198,154,.12);
 --a90-link:#9bb2ff;--a90-shadow:0 16px 40px rgba(0,0,0,.24);
 --ui-bg:var(--a90-bg);--ui-panel:var(--a90-surface);--ui-panel-2:var(--a90-surface-2);
 --ui-text:var(--a90-text);--ui-muted:var(--a90-muted);--ui-border:var(--a90-border);
 --ui-accent:var(--a90-brand);--ui-primary:var(--a90-link);
}
/* Migrate any stale legacy mint attribute to the light palette; no third theme UI. */
html[data-theme="mint"]{color-scheme:light}
html[data-theme="mint"] body{background:var(--a90-bg)!important;color:var(--a90-text)!important}
body{background:var(--a90-bg);color:var(--a90-text);font-family:Vazirmatn,Tahoma,sans-serif}
button,a,input,select,textarea{font-family:inherit}
a{transition:color var(--a90-motion),background-color var(--a90-motion),border-color var(--a90-motion)}
button,.btn{transition:background-color var(--a90-motion),border-color var(--a90-motion),box-shadow var(--a90-motion),transform var(--a90-motion)}
:focus-visible{outline:2px solid var(--a90-brand)!important;outline-offset:3px}
::selection{background:rgba(5,150,105,.2);color:inherit}

/* Shared surfaces, forms, tables and dialogs */
.card,.glass-card,.stat-card,.stat-industrial,.content-card,.admin-card,
.notifications-panel,.notification-item,.modal-content,.modal-dialog,
.content-panel,.panel-card,.dashboard-card{
 background:var(--a90-surface);color:var(--a90-text);border-color:var(--a90-border);
 box-shadow:var(--a90-shadow);
}
input:not([type=checkbox]):not([type=radio]),select,textarea{
 color:var(--a90-text);background:var(--a90-surface);border:1px solid var(--a90-border);
 border-radius:12px;min-height:42px;transition:border-color var(--a90-motion),box-shadow var(--a90-motion);
}
input::placeholder,textarea::placeholder{color:var(--a90-muted);opacity:.8}
input:focus,select:focus,textarea:focus{border-color:var(--a90-brand)!important;box-shadow:0 0 0 3px var(--a90-brand-soft)!important;outline:0}
table{color:var(--a90-text)}
thead th{color:var(--a90-muted)}
tbody tr{border-color:var(--a90-border)}
tbody tr:hover{background:var(--a90-brand-soft)}
hr{border-color:var(--a90-border)}
.text-gray-400,.text-gray-500,.text-slate-400,.text-slate-500{color:var(--a90-muted)!important}
.text-gray-900,.text-slate-900{color:var(--a90-text)!important}
.bg-white{background-color:var(--a90-surface)!important}
.border-gray-200,.border-gray-700,.border-slate-700{border-color:var(--a90-border)!important}

/* Customer sidebar: consistent icon family, rhythm and collapsed rail. */
#userSidebar{
 background:var(--a90-surface)!important;color:var(--a90-text)!important;
 border-inline-end:1px solid var(--a90-border)!important;
 box-shadow:8px 0 28px rgba(15,23,42,.035);
}
#userSidebar .user-sidebar-top,#userSidebar .user-profile-card{border-color:var(--a90-border)!important}
#userSidebar .nav-link{
 color:var(--a90-muted)!important;border:1px solid transparent!important;
 border-radius:13px!important;min-height:48px!important;margin:4px 0!important;
 transition:background var(--a90-motion),color var(--a90-motion),border-color var(--a90-motion),transform var(--a90-motion)!important;
}
#userSidebar .nav-link>i:first-child,#userSidebar .nav-link>svg:first-child{
 width:22px;height:22px;min-width:22px;display:inline-flex;align-items:center;justify-content:center;
 font-size:20px;opacity:.92;
}
#userSidebar .nav-link:hover{background:var(--a90-brand-soft)!important;color:var(--a90-brand-strong)!important;transform:translateX(-2px)}
#userSidebar .nav-link.active,#userSidebar .nav-link[aria-current="page"]{
 background:var(--a90-brand-soft)!important;color:var(--a90-brand-strong)!important;
 border-color:rgba(5,150,105,.2)!important;font-weight:750;
 box-shadow:inset -3px 0 0 var(--a90-brand)!important;
}
html[data-theme="dark"] #userSidebar .nav-link.active,
html[data-theme="dark"] #userSidebar .nav-link[aria-current="page"]{color:#65e0bb!important}
#userSidebar .user-collapse-btn,#adminSidebar .admin-collapse-btn{
 width:38px;height:38px;border-radius:12px;border:1px solid var(--a90-border);
 background:var(--a90-surface-2);color:var(--a90-muted);
}
#userSidebar .user-collapse-btn:hover,#adminSidebar .admin-collapse-btn:hover{
 color:var(--a90-brand);border-color:var(--a90-brand);background:var(--a90-brand-soft)
}

/* Administration sidebar and content shell. */
#adminSidebar,.admin-sidebar{
 background:var(--a90-surface)!important;color:var(--a90-text)!important;
 border-inline-end:1px solid var(--a90-border)!important;
 box-shadow:8px 0 28px rgba(15,23,42,.035);
}
#adminSidebar .admin-sidebar-brand,.admin-sidebar .admin-sidebar-brand{border-color:var(--a90-border)!important}
#adminSidebar .sidebar-menu-item,.admin-sidebar .sidebar-menu-item{
 min-height:46px;margin:4px 10px;padding:10px 13px;border-radius:12px;
 color:var(--a90-muted)!important;border:1px solid transparent;
 transition:background var(--a90-motion),color var(--a90-motion),border-color var(--a90-motion),transform var(--a90-motion);
}
#adminSidebar .sidebar-menu-item>i,.admin-sidebar .sidebar-menu-item>i{
 width:22px;min-width:22px;text-align:center;font-size:19px;color:currentColor;
}
#adminSidebar .sidebar-menu-item:hover,.admin-sidebar .sidebar-menu-item:hover{
 background:var(--a90-brand-soft)!important;color:var(--a90-brand-strong)!important;transform:translateX(-2px)
}
#adminSidebar .sidebar-menu-item.active,#adminSidebar .sidebar-menu-item[aria-current="page"],
.admin-sidebar .sidebar-menu-item.active{
 background:var(--a90-brand-soft)!important;color:var(--a90-brand-strong)!important;
 border-color:rgba(5,150,105,.2)!important;font-weight:750;
 box-shadow:inset -3px 0 0 var(--a90-brand);
}
html[data-theme="dark"] #adminSidebar .sidebar-menu-item.active,
html[data-theme="dark"] .admin-sidebar .sidebar-menu-item.active{color:#65e0bb!important}
#adminSidebar .text-gray-500,#adminSidebar .text-gray-400{color:var(--a90-muted)!important}
body.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item,
body.user-sidebar-collapsed #userSidebar .nav-link{transition:width var(--a90-motion),background var(--a90-motion),color var(--a90-motion),transform var(--a90-motion)}

/* Storefront — keep its compact header-free layout, now with both neutral themes. */
.store-page-shell{
 background:var(--a90-bg)!important;color:var(--a90-text)!important;
}
.store-page-shell #userSidebar{display:none!important}
.store-page-shell>main{background:transparent!important}
.store-modern{
 --store-bg:var(--a90-bg);--store-panel:var(--a90-surface);--store-panel-2:var(--a90-surface-2);
 --store-line:var(--a90-border);--store-line-strong:rgba(5,150,105,.35);
 --store-green:var(--a90-brand);--store-green-2:var(--a90-brand-strong);
 --store-green-soft:var(--a90-brand-soft);--store-text:var(--a90-text);
 --store-muted:var(--a90-muted);--store-dim:var(--a90-muted);
 --store-shadow:var(--a90-shadow);
 max-width:1500px;margin:0 auto;padding:24px clamp(14px,2.2vw,32px) 42px!important;
 color:var(--a90-text)!important;background:transparent!important;
}
.store-modern .store-header,.store-modern .store-topbar{display:none!important}
.store-modern .store-empty-simple{
 width:min(100%,600px);min-height:230px;margin:clamp(36px,9vh,104px) auto 0;
 padding:38px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:13px;text-align:center;border:1px solid var(--a90-border);border-radius:22px;
 background:var(--a90-surface);box-shadow:var(--a90-shadow);
}
.store-modern .store-empty-simple-icon{
 width:62px;height:62px;display:grid;place-items:center;border-radius:18px;
 color:var(--a90-brand);background:var(--a90-brand-soft);font-size:27px;
}
.store-modern .store-empty-simple h2{margin:4px 0 0;color:var(--a90-text)!important;font-size:19px;font-weight:800}
.store-modern .store-empty-simple p{margin:0;color:var(--a90-muted)!important;font-size:13px;line-height:1.9}
.store-modern .stepper-modern{margin:10px auto 28px;max-width:520px}
.store-modern .stepper-modern .step-label{color:var(--a90-muted)!important}
.store-modern .stepper-modern .step.active .step-label{color:var(--a90-brand)!important}
.store-modern .stepper-modern .step-circle{background:var(--a90-surface)!important;border-color:var(--a90-border)!important;color:var(--a90-muted)!important}
.store-modern .stepper-modern .step.active .step-circle{background:var(--a90-brand)!important;border-color:var(--a90-brand)!important;color:#fff!important}
.store-modern .step-connector{background:var(--a90-border)!important}
.store-modern .store-selected-panel,.store-modern .store-category-panel,.store-modern .store-catalog-main{
 background:var(--a90-surface)!important;border:1px solid var(--a90-border)!important;
 box-shadow:var(--a90-shadow)!important;border-radius:20px!important;color:var(--a90-text)!important;
}
.store-modern .store-catalog-heading h2,.store-modern .store-selected-panel h2,
.store-modern .store-category-heading,.store-modern .store-selected-panel strong{color:var(--a90-text)!important}
.store-modern .store-catalog-heading small,.store-modern .store-selected-kicker{color:var(--a90-muted)!important}
.store-modern .product-card{
 background:var(--a90-surface-2)!important;border:1px solid var(--a90-border)!important;
 color:var(--a90-text)!important;border-radius:16px!important;box-shadow:none!important;
 transition:transform var(--a90-motion),border-color var(--a90-motion),box-shadow var(--a90-motion)!important;
}
.store-modern .product-card:hover{transform:translateY(-3px);border-color:var(--a90-brand)!important;box-shadow:var(--a90-shadow-hover)!important}
.store-modern .product-card.selected{background:var(--a90-brand-soft)!important;border-color:var(--a90-brand)!important;box-shadow:0 0 0 2px var(--a90-brand-soft)!important}
.store-modern .product-card :is(h3,h4,p,span,small,strong){color:inherit}
.store-modern .store-search{background:var(--a90-surface-2)!important;border-color:var(--a90-border)!important;color:var(--a90-muted)!important}
.store-modern .store-search input{background:transparent!important;color:var(--a90-text)!important}
.store-modern .store-selected-cta,.store-modern .action-btn.primary{
 background:var(--a90-brand)!important;color:#fff!important;border:1px solid var(--a90-brand)!important;
 border-radius:12px!important;box-shadow:0 7px 18px var(--a90-brand-soft)!important;
}
.store-modern .store-selected-cta:hover,.store-modern .action-btn.primary:hover{background:var(--a90-brand-strong)!important;transform:translateY(-1px)}
html[data-theme="dark"] .store-modern .store-selected-panel,
html[data-theme="dark"] .store-modern .store-category-panel,
html[data-theme="dark"] .store-modern .store-catalog-main{background:var(--a90-surface)!important}
html[data-theme="dark"] .store-modern .product-card{background:var(--a90-surface-2)!important}

/* Consistent icons: Remix line icons, balanced size and optical alignment. */
#userSidebar i[class^="ri-"],#userSidebar i[class*=" ri-"],
#adminSidebar i[class^="ri-"],#adminSidebar i[class*=" ri-"],
.store-modern i[class^="ri-"],.store-modern i[class*=" ri-"]{
 line-height:1;vertical-align:middle;font-style:normal;
}
.icon-box,.stat-icon,.store-brand-icon{border-radius:14px}

/* Page transitions stay subtle; avoid large transforms and expensive blur filters. */
.content-container{animation:a90PageIn 150ms ease-out both}
@keyframes a90PageIn{from{opacity:.72}to{opacity:1}}
.skeleton-card,.skeleton-stat-card,.skeleton-line,.skeleton-title,.skeleton-icon,.skeleton-button{
 background:linear-gradient(90deg,var(--a90-surface-2) 25%,var(--a90-border) 50%,var(--a90-surface-2) 75%)!important;
 background-size:220% 100%!important;animation:a90Skeleton 1.35s ease-in-out infinite!important;
 border-radius:10px;
}
@keyframes a90Skeleton{0%{background-position:100% 0}100%{background-position:-120% 0}}
.loading-card,.loading-overlay .loading-card{
 background:var(--a90-surface)!important;color:var(--a90-text)!important;
 border:1px solid var(--a90-border);border-radius:20px;box-shadow:var(--a90-shadow)
}
@media(max-width:900px){
 .store-modern .store-catalog-layout{gap:12px}
 #userSidebar,#adminSidebar,.admin-sidebar{box-shadow:0 12px 36px rgba(0,0,0,.12)}
}
@media(max-width:640px){
 .store-modern{padding:14px 12px 28px!important}
 .store-modern .store-empty-simple{min-height:190px;margin-top:28px;padding:26px 18px;border-radius:18px}
 .store-modern .store-empty-simple h2{font-size:17px}
 .store-modern .store-catalog-layout{display:flex;flex-direction:column}
 .store-modern .store-selected-panel{order:0}
 .store-modern .store-catalog-main{order:1}
 .store-modern .store-category-panel{order:2}
 .store-modern .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
 .store-modern .product-card{min-height:130px;padding:11px 8px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 .content-container{animation:none!important}
}
