/* Ariya 1.0 — shared product identity and responsive foundations.
   Loaded after industry styles; data hooks and page URLs stay compatible. */
:root {
  --ariya-bg:#f6f7fb;
  --ariya-surface:#ffffff;
  --ariya-surface-2:#eef1f6;
  --ariya-surface-3:#e5eaf2;
  --ariya-text:#182230;
  --ariya-text-muted:#526175;
  --ariya-text-faint:#66758a;
  --ariya-border:#dde3ec;
  --ariya-border-strong:#b5c1d1;
  --ariya-sidebar-bg:#173e38;
  --ariya-sidebar-text:#e0ece7;
  --ariya-sidebar-text-muted:#b3c9c0;
  --ariya-sidebar-hover-bg:#ffffff0e;
  --ariya-sidebar-active-bg:#d9edcf;
  --ariya-sidebar-active-text:#173e38;
  --ariya-radius:14px;
  --ariya-radius-lg:20px;
  --ariya-sidebar-w:264px;
  --ariya-shadow-sm:0 3px 12px -8px #173e3826;
  --ariya-success:#08734e;--ariya-warning:#955600;--ariya-info:#087386;--ariya-danger:#c62e4e;
}
html[data-theme="dark"] {
  --ariya-bg:#0f1520;--ariya-surface:#172030;--ariya-surface-2:#202b3c;
  --ariya-surface-3:#28354a;--ariya-text:#eef3fc;--ariya-text-muted:#b6c6dd;
  --ariya-text-faint:#a4b4cc;--ariya-border:#34445d;--ariya-border-strong:#526782;
  --ariya-sidebar-bg:#102622;--ariya-sidebar-text:#deebe5;
  --ariya-sidebar-text-muted:#adc5b9;
  --ariya-success:#76dab0;--ariya-warning:#f4c678;--ariya-info:#85d3df;--ariya-danger:#ff9ab0;
}
body { overflow-x:visible; }
.ariya-app { width:100%; }
.ariya-btn.primary,.ariya-btn-primary { background:var(--ariya-primary-fill,var(--ariya-primary));color:var(--ariya-on-primary,#fff);border-color:var(--ariya-primary-fill,var(--ariya-primary)); }
.ariya-btn.primary:hover,.ariya-btn-primary:hover { background:var(--ariya-primary-fill-hover,var(--ariya-primary-600));color:var(--ariya-on-primary,#fff);border-color:var(--ariya-primary-fill-hover,var(--ariya-primary-600)); }
.ariya-page-link.active,.ariya-page-link:hover { background:var(--ariya-primary-fill);border-color:var(--ariya-primary-fill); }
.ariya-welcome,.ariya-auth-side { background:linear-gradient(135deg,var(--ariya-secondary),var(--ariya-primary-fill)); }
html:not([data-theme="dark"]) .appointment-time { color:#086570; }
.ariya-main { max-width:100%; }
.ariya-content { padding:28px clamp(16px,2.5vw,40px) 40px; }
.ariya-content > * + * { margin-block-start:18px; }
.ariya-sidebar { border-inline-end:1px solid #ffffff14; }
html[data-theme] body[data-layout] .ariya-sidebar { background:var(--ariya-sidebar-bg); }
.ariya-sidebar .menu-search::placeholder { color:var(--ariya-sidebar-text-muted); }
.ariya-sidebar-brand { min-height:80px; padding-inline:22px; }
.ariya-sidebar .brand-mark { background:var(--ariya-sidebar-active-bg);color:var(--ariya-sidebar-active-text);box-shadow:none;border-radius:12px; }
.brand-mark.brand-logo,
.ariya-sidebar .brand-mark.brand-logo,
.auth-home-link .brand-mark.brand-logo { background:#fff;box-shadow:none; }
.brand-mark.brand-logo img { display:block;width:100%;height:100%;object-fit:contain; }
.ariya-header .header-brand-logo { display:none; }
@media (min-width:992px) {
  body[data-layout^="horizontal"] .ariya-header .header-brand-logo { display:grid; }
}
.ariya-sidebar .industry-brand-sub { color:var(--ariya-sidebar-text-muted); }
.ariya-sidebar-nav { padding-inline:14px; }
.ariya-nav-section { font-size:11px;letter-spacing:0; }
.ariya-nav-item { min-height:44px;border-radius:10px; }
.ariya-nav-item.active { background:var(--ariya-sidebar-active-bg);color:var(--ariya-sidebar-active-text);font-weight:800; }
.ariya-nav-group > .ariya-nav-item.active { background:var(--ariya-sidebar-active-bg); }
.ariya-nav-item.active::before { display:none; }
.ariya-nav-submenu { border-color:#ffffff26;margin-inline-start:10px; }
.ariya-nav-submenu .ariya-nav-item { color:var(--ariya-sidebar-text-muted); }
.ariya-nav-submenu .ariya-nav-item.active { color:var(--ariya-sidebar-active-text); }
.menu-search-wrap { padding:12px 16px; }
.menu-search { background:#ffffff0a;border-color:#ffffff28;color:#fff;min-height:40px; }
.menu-search::placeholder { color:#b3c9c0; }
.ariya-header { min-height:76px;height:auto;padding-block:12px;gap:10px;backdrop-filter:none; }
.ariya-header .ariya-search { display:flex;align-items:center;gap:10px;flex:0 1 280px;min-width:44px;min-height:42px;padding:8px 12px;border:1px solid var(--ariya-border);background:var(--ariya-surface-2);border-radius:12px;color:var(--ariya-text-muted);text-align:start; }
.ariya-header .ariya-search span:not(.kbd) { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px; }
.ariya-header .ariya-search .kbd { position:static;transform:none;margin-inline-start:auto;flex-shrink:0; }
.ariya-header .header-demo-select { min-width:0;width:180px;flex:0 1 180px; }
.ariya-header .header-direction-select { flex:0 0 82px;min-width:0; }
.ariya-header .icon-btn { flex-shrink:0;width:40px;height:40px;border:1px solid var(--ariya-border);background:var(--ariya-surface); }
.ariya-avatar-btn { border-radius:12px; }
.ariya-page-header { align-items:center;padding-block-end:20px;border-block-end:1px solid var(--ariya-border);margin-block-end:24px; }
.ariya-page-header > div { min-width:0; }
.ariya-page-title { font-size:clamp(22px,2.4vw,30px);letter-spacing:-.6px;line-height:1.6; }
.ariya-breadcrumb { flex-wrap:wrap;color:var(--ariya-text-muted); }
.ariya-page-subtitle { font-size:13px;line-height:1.9; }
.ariya-card { border-radius:18px;box-shadow:var(--ariya-shadow-sm); }
.ariya-card-header { gap:12px;flex-wrap:wrap;padding:20px 22px; }
.ariya-card-title { font-size:15px; }
.ariya-card-body { padding:22px; }
.summary-card,.jewel-kpi,.restaurant-kpi,.clinic-kpi,.estate-kpi,.accounting-kpi,.education-kpi,.beauty-kpi,.logistics-kpi,.saas-kpi {
  border-radius:16px;box-shadow:none;background:var(--ariya-surface);border:1px solid var(--ariya-border);padding:22px;
}
.summary-card::before,.summary-card::after { display:none; }
.summary-card:first-child { background:var(--ariya-sidebar-bg);color:#fff;border-color:transparent; }
.summary-card:first-child small { color:var(--ariya-sidebar-text-muted); }
.summary-card:first-child .delta { color:var(--ariya-sidebar-active-bg); }
.summary-card strong { font-size:clamp(20px,2.2vw,27px);font-variant-numeric:tabular-nums;letter-spacing:-.6px;line-height:1.7;overflow-wrap:anywhere; }
.summary-card small { font-size:12px; }
.ariya-content [class$="-kpi"] small { font-size:12px; }
.ariya-content [class$="-kpi"] strong { font-size:23px;overflow-wrap:anywhere; }
.ariya-content [class$="-kpi"] .trend { font-size:11px; }
.ariya-table td,.ariya-table th { font-size:12px; }
.delta,.trend { line-height:1.8; }
.quick-link { min-height:76px;border-radius:14px;background:var(--ariya-surface-2);border-color:transparent; }
.quick-link i { flex-shrink:0;border-radius:10px; }
.quick-link span { font-size:12px; }
.ariya-btn { min-height:40px;line-height:1.6;white-space:normal; }
.ariya-btn.sm { min-height:34px; }
.ariya-input, .ariya-select { max-width:100%; }
.ariya-grid > *, .form-grid > *, .summary-grid > *, .quick-grid > *, .ariya-card-body > *,
.ariya-content [class$="-grid"] > *, .ariya-content [class$="-kpis"] > * { min-width:0; }
.ariya-card p,.ariya-card h2,.ariya-card h3,.ariya-page-subtitle { overflow-wrap:anywhere; }
.table-responsive,.table-scroll,.phase7-table-shell,.release-table-scroll { max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain; }
.release-table-scroll:focus-visible { outline-offset:-3px!important; }
.release-table-scroll > table { min-width:580px; }
.ariya-table th { font-size:11px;letter-spacing:0;background:var(--ariya-surface-2); }
.ariya-table td { padding-block:15px; }
.ariya-footer { gap:12px;flex-wrap:wrap;padding-inline:clamp(16px,2.5vw,40px); }
.demo-mode-note { display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ariya-text-muted); }
.demo-mode-note::before { content:"";width:6px;height:6px;border-radius:50%;background:var(--ariya-primary);flex-shrink:0; }
.workspace-brief { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:28px;padding:24px 28px;border:1px solid var(--ariya-border);border-radius:18px;background:var(--ariya-surface-2); }
.workspace-eyebrow { color:var(--ariya-text-muted);font-size:10px; }
.workspace-brief h2 { font-size:19px;line-height:1.8;margin:6px 0;letter-spacing:-.4px; }
.workspace-brief p { font-size:12px;line-height:1.9;color:var(--ariya-text-muted);margin:0; }
.workspace-paths { display:flex;flex-direction:column;gap:8px;min-width:0; }
.workspace-paths a { display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:9px;background:var(--ariya-surface);color:var(--ariya-text);font-size:12px;min-height:40px; }
.workspace-paths a:hover { box-shadow:inset 0 0 0 1px var(--ariya-primary); }
.workspace-paths a > span:last-child { margin-inline-start:auto; }
.workspace-step { font-size:10px;color:var(--ariya-text-muted);font-variant-numeric:tabular-nums; }
.ariya-sidebar:focus { outline-offset:-4px; }
.sidebar-overlay { cursor:pointer; }
body.mobile-nav-open { overflow:hidden; }
body.customizer-open { overflow:hidden; }
.customizer-backdrop { position:fixed;inset:0;z-index:1084;border:0;background:#10262266; }
.customizer-backdrop[hidden] { display:none; }
.ariya-runtime-modal { max-width:100%; }
.ariya-runtime-modal-foot { flex-wrap:wrap;gap:12px; }
.ariya-runtime-modal-actions { flex-wrap:wrap; }
@media(min-width:1200px) {
  .ariya-content > .summary-grid { gap:16px; }
  body[data-page="dashboard-manager"] .ariya-content > .ariya-grid.cols-2 { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); }
  body[data-page="clinic-dashboard"] .ariya-content > .ariya-grid:first-of-type { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); }
}
@media(max-width:1199px) {
  .ariya-header .header-demo-select { width:140px;flex-basis:140px; }
  .ariya-header .ariya-search .kbd { display:none; }
}
@media(max-width:991.98px) {
  .ariya-header { padding:10px 16px;min-height:66px; }
  .ariya-main,body.sidebar-compact .ariya-main { margin-inline-start:0; }
  .ariya-sidebar.compact { width:min(var(--ariya-sidebar-w),88vw); }
  .ariya-sidebar.compact .brand-name,.ariya-sidebar.compact .ariya-nav-section,.ariya-sidebar.compact .ariya-nav-item span:not(.nav-badge),.ariya-sidebar.compact .ariya-nav-item .caret,.ariya-sidebar.compact .ariya-user-card .user-name,.ariya-sidebar.compact .ariya-user-card .user-role { display:revert; }
  .ariya-sidebar.compact .ariya-nav-item,.ariya-sidebar.compact .ariya-user-card { justify-content:flex-start; }
  .ariya-sidebar.compact .ariya-nav-group.open > .ariya-nav-submenu { display:block; }
  .ariya-content { padding-inline:18px; }
  .ariya-page-header { align-items:flex-start; }
}
@media(max-width:767.98px) {
  .workspace-brief { grid-template-columns:minmax(0,1fr);gap:16px;padding:20px; }
  .ariya-content { padding:20px 14px 32px; }
  .ariya-grid.cols-2,.ariya-grid.cols-3,.ariya-grid.cols-4 { grid-template-columns:minmax(0,1fr); }
  .ariya-grid > [style*="grid-column"] { grid-column:1 / -1!important; }
  .ariya-card-header,.ariya-card-body { padding:16px; }
  .ariya-page-header { flex-direction:column;gap:14px; }
  .ariya-card-header > *,.page-actions,.page-toolbar { max-width:100%; }
  .page-actions,.page-toolbar,.form-actions { flex-wrap:wrap; }
  .ariya-page-title { font-size:24px; }
  .ariya-header .ariya-search { flex:0 0 40px;justify-content:center;padding:0;border:0; }
  .ariya-header .ariya-search span { display:none; }
  .ariya-header .header-spacer { min-width:0; }
  .ariya-header .header-demo-select { display:none; }
  .ariya-header .header-direction-select { flex-basis:76px; }
  .ariya-header .pwa-install { display:none; }
  .ariya-breadcrumb { font-size:11px; }
  .summary-card { padding:18px; }
  .chart-box { height:260px; }
  .form-grid { grid-template-columns:minmax(0,1fr); }
  .form-grid .span-2 { grid-column:1 / -1; }
  .ariya-runtime-modal-head,.ariya-runtime-modal-foot { padding:14px; }
  .ariya-runtime-modal-body { padding:16px; }
  .dropdown-menu-custom { max-width:calc(100vw - 28px); }
}
@media(max-width:420px) {
  .ariya-header { gap:5px;padding-inline:10px; }
  .ariya-header .icon-btn { width:36px;height:40px; }
  .summary-grid { grid-template-columns:minmax(0,1fr); }
  .quick-grid { grid-template-columns:minmax(0,1fr); }
  .ariya-header .header-direction-select { flex-basis:70px; }
  .ariya-content .ariya-otp { gap:4px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  *,*::before,*::after { animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important; }
}
@media print {
  body { background:white; }
  .demo-mode-note { display:none; }
  .ariya-main { margin:0!important; }
  .release-table-scroll { overflow:visible; }
}

/* Named palettes and custom brand color remain usable at mobile widths. */
.palette-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px; }
.palette-choice { display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;padding:8px;border:1px solid var(--ariya-border);border-radius:10px;background:var(--ariya-surface);color:var(--ariya-text);font-size:12px;text-align:start; }
.palette-choice.active { border-color:var(--ariya-primary);box-shadow:inset 0 0 0 1px var(--ariya-primary);background:rgba(var(--ariya-primary-rgb),.06); }
.palette-swatch { width:20px;height:20px;flex:0 0 20px;border-radius:6px;background:var(--palette-swatch);border:1px solid #0002; }
.palette-check { margin-inline-start:auto;visibility:hidden;color:var(--ariya-primary);font-weight:900; }
.palette-choice.active .palette-check { visibility:visible; }
.palette-current,.custom-color-label { display:block;font-size:12px;line-height:1.9;margin:14px 0 8px;color:var(--ariya-text-muted); }
.custom-color-row { display:flex;gap:8px;align-items:center; }
.custom-color-row input[type="color"] { flex:0 0 44px;width:44px;height:42px;padding:3px;border:1px solid var(--ariya-border);border-radius:8px;background:var(--ariya-surface);cursor:pointer; }
.custom-color-row .ariya-input { width:0;min-width:0;flex:1;font-family:monospace;font-size:13px; }
.custom-color-row .ariya-btn { flex-shrink:0; }
.custom-color-row [aria-invalid="true"] { border-color:var(--ariya-danger); }
#customColorError { display:block;font-size:11px;line-height:1.8;margin-top:8px; }
#customColorError[hidden] { display:none; }
.palette-choice:focus-visible,.custom-color-row :focus-visible { outline:2px solid var(--ariya-primary);outline-offset:3px; }

.ariya-avatar-btn,.ariya-avatar,.avatar-stack span { background:linear-gradient(135deg,var(--ariya-primary-fill),var(--ariya-accent-fill));color:var(--ariya-on-primary); }
/* Time labels sit on tinted surfaces, so use the readable foreground token. */
html[data-theme="dark"] .appointment-time,
html[data-theme="dark"] .visit-card time{color:var(--ariya-text)}

/* Local demo photography: preserve each component's existing dimensions. */
[data-demo-photo]{overflow:hidden;position:relative;flex-shrink:0}
[data-demo-photo]>.demo-photo{display:block;width:100%;height:100%;min-width:0;object-fit:cover;border-radius:inherit}
.property-cover[data-demo-photo]>.demo-photo{position:absolute;inset:0;border-radius:0}
.property-cover[data-demo-photo]::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.5));pointer-events:none}
.property-cover[data-demo-photo] .property-status{position:relative;z-index:1;background:#fff;color:#262238;box-shadow:0 2px 10px #0002}
.course-cover[data-demo-photo]>.demo-photo,.media-cover[data-demo-photo]>.demo-photo{position:absolute;inset:0}
.media-preview[data-demo-photo]>.demo-photo,.image-tile[data-demo-photo]>.demo-photo,.lightbox-thumb[data-demo-photo]>.demo-photo{position:absolute;inset:0}
.product-thumb[data-demo-photo]>.demo-photo,.gold-thumb[data-demo-photo]>.demo-photo{object-fit:contain;background:#f5f5f5}
.lightbox-content>.demo-photo{display:block;max-width:85vw;max-height:80vh;object-fit:contain;border-radius:12px}
