/* Modulyra Theme Coverage Layer — V3.9.31.1
   Final authority for module surfaces in Stellar and Neo Najd. */

html[data-identity-engine="stellar"]{
    --tc-bg:var(--mi-void,#080a09);
    --tc-canvas:var(--mi-base,#0e1110);
    --tc-surface:var(--mi-layer,#151918);
    --tc-elevated:var(--mi-layer-2,#1b211f);
    --tc-text:var(--mi-paper,#f2f0e8);
    --tc-muted:var(--mi-dim,#98a29e);
    --tc-line:var(--mi-stroke,#303936);
    --tc-line-strong:var(--mi-stroke-strong,#46534e);
    --tc-accent:var(--mi-accent,#7cffb2);
    --tc-secondary:var(--mi-secondary,#ffb45e);
    --tc-danger:#ff786f;
    --tc-success:#7cffb2;
    --tc-warning:#ffbd62;
    --tc-radius:0;
    --tc-radius-small:0;
    --tc-shadow:none;
    --tc-card-bg:var(--tc-surface);
    --tc-panel-bg:var(--tc-surface);
    --tc-hero-bg:linear-gradient(115deg,var(--tc-elevated),var(--tc-canvas));
    --tc-control-bg:var(--tc-canvas);
    --tc-accent-ink:#07100b;
}

html[data-identity-engine="neo_najd"]{
    --tc-bg:var(--najd-ink,#100f0c);
    --tc-canvas:var(--najd-ink-2,#17150f);
    --tc-surface:var(--najd-panel,#242116);
    --tc-elevated:var(--najd-panel-2,#2c281b);
    --tc-text:#fffaf0;
    --tc-muted:var(--najd-sand-soft,#cdbb91);
    --tc-line:var(--najd-line,rgba(234,216,173,.2));
    --tc-line-strong:var(--najd-line-strong,rgba(199,124,69,.48));
    --tc-accent:var(--najd-emerald-light,#2cc18d);
    --tc-secondary:var(--najd-copper-light,#efa66c);
    --tc-danger:#ee7d6b;
    --tc-success:#55d6a3;
    --tc-warning:#dfad59;
    --tc-radius:3px 3px 18px 3px;
    --tc-radius-small:2px 2px 10px 2px;
    --tc-shadow:0 18px 48px rgba(0,0,0,.25);
    --tc-card-bg:linear-gradient(145deg,rgba(38,34,23,.97),rgba(22,20,14,.98));
    --tc-panel-bg:linear-gradient(145deg,rgba(41,37,24,.97),rgba(20,18,13,.98));
    --tc-hero-bg:linear-gradient(112deg,rgba(48,42,27,.98),rgba(20,18,13,.98));
    --tc-control-bg:#15130e;
    --tc-accent-ink:#11110b;
    --ui-bg:var(--tc-bg);
    --ui-bg-elevated:var(--tc-canvas);
    --ui-surface:var(--tc-surface);
    --ui-surface-2:var(--tc-elevated);
    --ui-surface-3:#342f20;
    --ui-text:var(--tc-text);
    --ui-text-soft:#eee2c5;
    --ui-muted:var(--tc-muted);
    --ui-primary:var(--tc-accent);
    --ui-primary-soft:rgba(44,193,141,.12);
    --ui-gold:var(--tc-warning);
    --ui-orange:var(--tc-secondary);
    --ui-purple:#a56f49;
    --ui-success:var(--tc-success);
    --ui-warning:var(--tc-warning);
    --ui-danger:var(--tc-danger);
    --ui-border:var(--tc-line);
    --ui-border-soft:rgba(234,216,173,.11);
    --ui-shadow:var(--tc-shadow);
    --ui-radius:3px;
}

/* Root layout invariant: the apps page must always own the full content width. */
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .command-layout.app-launcher-shell,
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .app-launcher-shell.command-layout,
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"])[data-identity-nav="compact"] .command-layout.app-launcher-shell,
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"])[data-identity-nav="floating"] .command-layout.app-launcher-shell{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .app-launcher-shell>.command-sidebar{display:none!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .app-launcher-shell>.command-main{
    display:block!important;
    grid-column:1/-1!important;
    grid-row:1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .subscriber-launcher{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:calc(100vh - 82px)!important;
    padding:clamp(26px,3vw,52px)!important;
    overflow:visible!important;
    box-sizing:border-box!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(.subscriber-launcher-head,.launcher-welcome-orbit,.launcher-filter-row,.odoo-app-grid){
    width:min(1540px,100%)!important;
    max-width:1540px!important;
    margin-inline:auto!important;
    min-width:0!important;
    box-sizing:border-box!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-grid{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:15px!important;
    align-items:stretch!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-card{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    min-height:188px!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-card>a{
    inset:0!important;
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-card :where(strong,small){max-width:100%;overflow-wrap:anywhere}

/* Shared semantic surfaces. Runtime classification makes this future-module safe. */
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(
    [data-theme-surface="panel"],[data-theme-surface="card"],[data-theme-surface="metric"],
    [data-theme-surface="table"],[data-theme-surface="toolbar"],[data-theme-surface="empty"],
    .ip-panel,.ip-card,.ip-toolbar,.ip-empty,.ip-record-hero
){
    color:var(--tc-text)!important;
    border:1px solid var(--tc-line)!important;
    border-radius:var(--tc-radius)!important;
    box-shadow:var(--tc-shadow)!important;
    background:var(--tc-card-bg)!important;
    background-image:var(--tc-card-bg)!important;
    backdrop-filter:none!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where([data-theme-surface="panel"],.ip-panel){background:var(--tc-panel-bg)!important;background-image:var(--tc-panel-bg)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where([data-theme-surface="hero"],.ip-hero,.ip-record-hero){
    position:relative!important;
    color:var(--tc-text)!important;
    border:1px solid var(--tc-line-strong)!important;
    border-radius:var(--tc-radius)!important;
    box-shadow:var(--tc-shadow)!important;
    background:var(--tc-hero-bg)!important;
    background-image:var(--tc-hero-bg)!important;
    backdrop-filter:none!important;
    overflow:hidden;
}

/* Theme-owned workspace transitions. Legacy keeps its original transition. */
html[data-identity-engine="stellar"] .cinematic-app-transition{
    isolation:isolate;
    overflow:hidden;
    gap:12px;
    background:
        radial-gradient(circle at 50% 50%,rgba(124,255,178,.1),transparent 19%),
        radial-gradient(circle at 50% 50%,#111714 0 30%,#070a08 62%,#020302 100%)!important;
    transition:opacity .24s ease!important;
}
html[data-identity-engine="stellar"] .cinematic-app-transition::before{
    content:"";
    position:absolute;
    inset:-45%;
    z-index:0;
    opacity:.72;
    background-image:
        radial-gradient(circle,#f2f0e8 0 1px,transparent 1.6px),
        radial-gradient(circle,#7cffb2 0 1px,transparent 1.7px),
        radial-gradient(circle,#ffb45e 0 1.2px,transparent 1.8px);
    background-size:47px 53px,83px 71px,131px 113px;
    background-position:0 0,19px 27px,51px 13px;
    transform:perspective(420px) rotateX(62deg) scale(.45);
    animation:tcStellarWarp 1.05s cubic-bezier(.16,1,.3,1) infinite;
}
html[data-identity-engine="stellar"] .cinematic-app-transition::after{
    content:"";
    position:absolute;
    z-index:1;
    width:min(74vmin,650px);
    aspect-ratio:1;
    border:1px solid rgba(124,255,178,.1);
    background:conic-gradient(from 90deg,transparent 0 18%,rgba(124,255,178,.2) 19%,transparent 20% 48%,rgba(255,180,94,.18) 49%,transparent 50% 100%);
    clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
    animation:tcStellarGate 1.65s linear infinite;
}
html[data-identity-engine="stellar"] .cinematic-app-transition>span{
    width:88px!important;
    height:88px!important;
    border:1px solid rgba(124,255,178,.72)!important;
    border-radius:0!important;
    background:#111714!important;
    color:#7cffb2!important;
    box-shadow:0 0 0 8px rgba(124,255,178,.045),0 0 54px rgba(124,255,178,.2)!important;
    clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
    animation:tcStellarIcon .72s cubic-bezier(.16,1,.3,1) both!important;
}
html[data-identity-engine="stellar"] .cinematic-app-transition>strong{color:#f2f0e8!important;letter-spacing:.01em}
html[data-identity-engine="stellar"] .cinematic-app-transition>small{color:#98a29e!important}
html[data-identity-engine="stellar"] .cinematic-transition-rings i{
    width:158px;
    height:158px;
    border:1px solid rgba(124,255,178,.34)!important;
    border-radius:50%!important;
    box-shadow:0 0 26px rgba(124,255,178,.06);
    animation:tcStellarRing 1.08s cubic-bezier(.2,.8,.2,1) infinite!important;
}

html[data-identity-engine="neo_najd"] .cinematic-app-transition{
    isolation:isolate;
    overflow:hidden;
    gap:12px;
    background:
        linear-gradient(rgba(44,193,141,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(239,166,108,.025) 1px,transparent 1px),
        radial-gradient(circle at center,rgba(199,124,69,.13),transparent 26%),
        #100f0c!important;
    background-size:48px 48px,48px 48px,auto,auto!important;
    transition:opacity .2s ease!important;
}
html[data-identity-engine="neo_najd"] .cinematic-app-transition::before{
    content:"";
    position:absolute;
    inset:-20%;
    z-index:0;
    opacity:.72;
    background:
        linear-gradient(115deg,transparent 0 44%,rgba(239,166,108,.16) 44.4% 44.8%,transparent 45.2% 100%),
        linear-gradient(65deg,transparent 0 44%,rgba(44,193,141,.12) 44.4% 44.8%,transparent 45.2% 100%);
    background-size:180px 180px;
    animation:tcNajdWeave 2.8s linear infinite;
}
html[data-identity-engine="neo_najd"] .cinematic-app-transition::after{
    content:"";
    position:absolute;
    z-index:1;
    width:min(68vmin,590px);
    aspect-ratio:1;
    border:1px solid rgba(239,166,108,.28);
    clip-path:polygon(28% 0,72% 0,100% 28%,100% 72%,72% 100%,28% 100%,0 72%,0 28%);
    box-shadow:inset 0 0 70px rgba(199,124,69,.07);
    animation:tcNajdGate 1.25s cubic-bezier(.2,.8,.2,1) infinite alternate;
}
html[data-identity-engine="neo_najd"] .cinematic-app-transition>span{
    width:92px!important;
    height:92px!important;
    border:1px solid rgba(239,166,108,.7)!important;
    border-radius:3px 3px 24px 3px!important;
    background:linear-gradient(145deg,#2b2619,#17150f)!important;
    color:#efa66c!important;
    box-shadow:9px 9px 0 rgba(44,193,141,.1),0 26px 70px rgba(0,0,0,.44)!important;
    clip-path:polygon(0 0,78% 0,100% 22%,100% 100%,22% 100%,0 78%);
    animation:tcNajdIcon .7s cubic-bezier(.16,1,.3,1) both!important;
}
html[data-identity-engine="neo_najd"] .cinematic-app-transition>strong{color:#fffaf0!important;font-size:23px!important}
html[data-identity-engine="neo_najd"] .cinematic-app-transition>small{color:#cdbb91!important}
html[data-identity-engine="neo_najd"] .cinematic-transition-rings i{
    width:156px;
    height:156px;
    border:1px solid rgba(239,166,108,.3)!important;
    border-radius:0!important;
    clip-path:polygon(28% 0,72% 0,100% 28%,100% 72%,72% 100%,28% 100%,0 72%,0 28%);
    animation:tcNajdRing 1.12s cubic-bezier(.2,.8,.2,1) infinite!important;
}
html[data-identity-engine="stellar"] .cinematic-transition-rings i:nth-child(2),
html[data-identity-engine="neo_najd"] .cinematic-transition-rings i:nth-child(2){animation-delay:.16s!important}
html[data-identity-engine="stellar"] .cinematic-transition-rings i:nth-child(3),
html[data-identity-engine="neo_najd"] .cinematic-transition-rings i:nth-child(3){animation-delay:.32s!important}

@keyframes tcStellarWarp{0%{transform:perspective(420px) rotateX(62deg) scale(.34);opacity:.15}65%{opacity:.78}100%{transform:perspective(420px) rotateX(62deg) scale(1.2);opacity:0}}
@keyframes tcStellarGate{to{transform:rotate(360deg)}}
@keyframes tcStellarIcon{from{opacity:0;transform:scale(.42) rotate(18deg)}to{opacity:1;transform:none}}
@keyframes tcStellarRing{0%{opacity:.7;transform:scale(.48)}100%{opacity:0;transform:scale(2.9)}}
@keyframes tcNajdWeave{to{background-position:180px 0,-180px 0}}
@keyframes tcNajdGate{from{opacity:.2;transform:rotate(0) scale(.78)}to{opacity:.74;transform:rotate(45deg) scale(1)}}
@keyframes tcNajdIcon{from{opacity:0;transform:translateY(22px) scale(.72)}to{opacity:1;transform:none}}
@keyframes tcNajdRing{0%{opacity:.72;transform:scale(.5) rotate(0)}100%{opacity:0;transform:scale(2.7) rotate(45deg)}}

html[data-reduce-motion="1"] .cinematic-app-transition::before,
html[data-reduce-motion="1"] .cinematic-app-transition::after,
html[data-reduce-motion="1"] .cinematic-transition-rings i,
html[data-reduce-motion="1"] .cinematic-app-transition>span{
    animation:none!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface="hero"]::after,
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-hero::after{
    content:"";
    position:absolute;
    inset-inline-end:-45px;
    top:-55px;
    width:180px;
    height:180px;
    border:1px solid color-mix(in srgb,var(--tc-secondary) 30%,transparent);
    transform:rotate(45deg);
    pointer-events:none;
    opacity:.45;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface="metric"]{
    border-inline-start:4px solid var(--tc-accent)!important;
    background:var(--tc-card-bg)!important;
    background-image:var(--tc-card-bg)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface="metric"]:nth-child(2n){border-inline-start-color:var(--tc-secondary)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface="toolbar"]{background:var(--tc-canvas)!important;background-image:none!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface="empty"]{background:color-mix(in srgb,var(--tc-surface) 72%,transparent)!important;background-image:none!important;border-style:dashed!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface="nav"]{
    background:var(--tc-canvas)!important;
    background-image:none!important;
    border:1px solid var(--tc-line)!important;
    border-radius:var(--tc-radius-small)!important;
    box-shadow:none!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface="icon"]:not(img):not(svg){
    background:color-mix(in srgb,var(--tc-accent) 15%,var(--tc-canvas))!important;
    background-image:none!important;
    border:1px solid color-mix(in srgb,var(--tc-accent) 30%,var(--tc-line))!important;
    border-radius:var(--tc-radius-small)!important;
    color:var(--tc-accent)!important;
    box-shadow:none!important;
}

/* Industry Pack token bridge. Inline module colors can no longer force legacy blue. */
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-shell{
    --ip-accent:var(--tc-accent)!important;
    --ip-accent-2:var(--tc-secondary)!important;
    --ip-panel:var(--tc-panel-bg)!important;
    --ip-border:var(--tc-line)!important;
    --ip-muted:var(--tc-muted)!important;
    width:100%;
    min-width:0;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(.ip-hero h1,.ip-record-hero h1,.ip-panel h2,.ip-panel h3,.ip-card b,.ip-quick strong){color:var(--tc-text)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(.ip-hero p,.ip-record-hero p,.ip-card small,.ip-quick small,.ip-help){color:var(--tc-muted)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-eyebrow{color:var(--tc-secondary)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-btn{
    background:var(--tc-elevated)!important;
    background-image:none!important;
    border:1px solid var(--tc-line)!important;
    border-radius:var(--tc-radius-small)!important;
    color:var(--tc-text)!important;
    box-shadow:none!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-btn.primary{
    background:var(--tc-accent)!important;
    color:var(--tc-accent-ink)!important;
    border-color:var(--tc-accent)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(.ip-quick,.ip-stat,.ip-form-section){
    background:var(--tc-control-bg)!important;
    background-image:none!important;
    border:1px solid var(--tc-line)!important;
    border-radius:var(--tc-radius-small)!important;
    color:var(--tc-text)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-quick:hover{border-color:var(--tc-accent)!important;box-shadow:5px 5px 0 color-mix(in srgb,var(--tc-accent) 18%,transparent)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-badge{
    background:color-mix(in srgb,var(--tc-accent) 12%,var(--tc-canvas))!important;
    color:var(--tc-accent)!important;
    border:1px solid color-mix(in srgb,var(--tc-accent) 30%,var(--tc-line))!important;
    border-radius:var(--tc-radius-small)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(.ip-toolbar input,.ip-toolbar select,.ip-form input,.ip-form select,.ip-form textarea){
    background:var(--tc-control-bg)!important;
    border-color:var(--tc-line)!important;
    color:var(--tc-text)!important;
    border-radius:var(--tc-radius-small)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-table th{background:var(--tc-canvas)!important;color:var(--tc-accent)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .ip-table :where(th,td){border-color:var(--tc-line)!important}

/* Normalize legacy module systems that use independent hard-coded palettes. */
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(
    .acc-r2-shell,.acc22,.ahr-shell,.crm2-shell,.ent-shell,.r2-shell,.ctr2-shell,.ctr-shell,
    .uw26-shell,.mbx-shell,.htl-shell,.rst-shell,.sal-r2-shell,.gym-shell,.pth-shell,
    .community-shell,.profile360-shell,.project360-shell,.bc-shell,.ops-shell,.fso-shell,
    .hr-r2-shell,.htl-r2-shell,.rst-r2-shell,.dv-shell,.projects-suite-shell,.catalog-shell,
    .project-r2-shell,.ops22-shell,.clinic-r2-shell,.quote-shell,.owner-shell,
    .developer-admin-shell,.inventory-register-shell,.inventory-form-shell,
    .inventory-settings-shell,.portal-shell,.pos-r2-workspace,.catalog-workspace,
    .doctor-workspace,.contract360-shell,.claim360-shell,.dental-shell
){
    --border:var(--tc-line)!important;
    --muted:var(--tc-muted)!important;
    --cyan:var(--tc-accent)!important;
    --cyan2:var(--tc-accent)!important;
    --gold:var(--tc-secondary)!important;
    --surface:var(--tc-surface)!important;
    --surface2:var(--tc-elevated)!important;
    --bg:var(--tc-bg)!important;
    --bg2:var(--tc-canvas)!important;
    color:var(--tc-text)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(
    .acc-r2-hero,.acc22-hero,.ahr-hero,.crm2-hero,.ent-hero,.r2-hero,.ctr2-hero,
    .uw26-hero,.hr-r2-hero,.pth-hero,.bc-page-head,.bc-profile-hero,.mbx-page-head,
    .center-page-head,.command-page-head
){
    background:var(--tc-hero-bg)!important;
    background-image:var(--tc-hero-bg)!important;
    border-color:var(--tc-line-strong)!important;
    border-radius:var(--tc-radius)!important;
    box-shadow:var(--tc-shadow)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(
    .acc-r2-card,.acc22-card,.acc22-section,.acc22-form,.acc22-table,.acc22-report-sheet,
    .ahr-plan,.crm2-card,.ent-card,.r2-card,.ctr2-card,.ctr-card,.uw26-card,.uw26-panel,
    .mbx-panel,.ops-panel,.hr-r2-card,.profile360-panel,.profile360-pane,.project360-panel,
    .pth-panel,.pth-stat,.pth-link,.bc-card,.bc-form-card,.gym-list-row,.community-section,
    .center-form-card,.center-launch-card,.owner-form-card,.owner-table-panel,.owner-hub-card
){
    background:var(--tc-card-bg)!important;
    background-image:var(--tc-card-bg)!important;
    border-color:var(--tc-line)!important;
    border-radius:var(--tc-radius)!important;
    box-shadow:var(--tc-shadow)!important;
    color:var(--tc-text)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(
    .acc-r2-kpis article,.acc22-kpis article,.crm2-kpi,.crm2-stat,.r2-kpi,.ctr2-kpi,
    .hr-r2-stat,.owner-kpi,.pos-kpi,.portal-kpi
){
    background:var(--tc-card-bg)!important;
    background-image:var(--tc-card-bg)!important;
    border-color:var(--tc-line)!important;
    border-inline-start:4px solid var(--tc-accent)!important;
    border-radius:var(--tc-radius)!important;
    box-shadow:var(--tc-shadow)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(
    .acc22-link-card,.acc22-setting-card,.acc22-report-card,.ahr-launch-grid>a,
    .center-launch-card,.catalog-card,.portal-card,.community-card
):hover{border-color:var(--tc-accent)!important;box-shadow:6px 6px 0 color-mix(in srgb,var(--tc-accent) 18%,transparent)!important}

/* App launcher receives a complete engine-specific treatment, never the legacy blue skin. */
html[data-identity-engine="stellar"] .subscriber-launcher{background:var(--tc-bg)!important;background-image:none!important}
html[data-identity-engine="stellar"] .launcher-welcome-orbit,
html[data-identity-engine="stellar"] .odoo-app-card{
    background:var(--tc-card-bg)!important;
    background-image:none!important;
    border:1px solid var(--tc-line)!important;
    border-radius:0!important;
    box-shadow:none!important;
}
html[data-identity-engine="stellar"] .odoo-app-card.featured{border-color:var(--tc-secondary)!important}
html[data-identity-engine="stellar"] .odoo-app-icon{
    background:var(--tc-accent)!important;
    color:var(--tc-accent-ink)!important;
    border-radius:0!important;
    box-shadow:7px 7px 0 color-mix(in srgb,var(--tc-secondary) 24%,transparent)!important;
}
html[data-identity-engine="stellar"] .odoo-app-card:nth-child(3n) .odoo-app-icon{background:var(--tc-secondary)!important}

html[data-identity-engine="neo_najd"] .subscriber-launcher{
    background:linear-gradient(145deg,rgba(16,15,12,.78),rgba(24,21,14,.88))!important;
    background-image:linear-gradient(145deg,rgba(16,15,12,.78),rgba(24,21,14,.88))!important;
}
html[data-identity-engine="neo_najd"] .subscriber-launcher::before{
    background-image:linear-gradient(30deg,rgba(234,216,173,.035) 12%,transparent 12.5%,transparent 87%,rgba(234,216,173,.035) 87.5%)!important;
    background-size:82px 48px!important;
}
html[data-identity-engine="neo_najd"] .launcher-welcome-orbit{
    background:linear-gradient(112deg,rgba(47,41,26,.98),rgba(20,18,13,.98))!important;
    border:1px solid var(--tc-line-strong)!important;
    border-radius:var(--tc-radius)!important;
    box-shadow:10px 10px 0 rgba(15,118,90,.17)!important;
}
html[data-identity-engine="neo_najd"] .launcher-brand-orb{
    background:#17150f!important;
    border-color:var(--tc-line-strong)!important;
    border-radius:3px 3px 16px 3px!important;
}
html[data-identity-engine="neo_najd"] .odoo-app-card{
    background:var(--tc-card-bg)!important;
    background-image:var(--tc-card-bg)!important;
    border:1px solid var(--tc-line)!important;
    border-radius:var(--tc-radius)!important;
    box-shadow:var(--tc-shadow)!important;
}
html[data-identity-engine="neo_najd"] .odoo-app-card::before{background:linear-gradient(160deg,transparent 55%,rgba(15,118,90,.15))!important}
html[data-identity-engine="neo_najd"] .odoo-app-card:hover{border-color:var(--tc-secondary)!important;box-shadow:9px 9px 0 rgba(15,118,90,.19)!important}
html[data-identity-engine="neo_najd"] .odoo-app-icon,
html[data-identity-engine="neo_najd"] .odoo-app-card:nth-child(n) .odoo-app-icon{
    background:linear-gradient(145deg,#e0b76d,#bd6e43)!important;
    color:#171109!important;
    border:1px solid #edcf91!important;
    border-radius:3px 3px 17px 3px!important;
    box-shadow:7px 7px 0 rgba(15,118,90,.2)!important;
}
html[data-identity-engine="neo_najd"] .odoo-app-card:nth-child(3n+2) .odoo-app-icon{background:linear-gradient(145deg,#55d5a4,#168064)!important}
html[data-identity-engine="neo_najd"] .odoo-app-card:nth-child(3n+3) .odoo-app-icon{background:linear-gradient(145deg,#ead8ad,#a9784c)!important}

/* Ensure copy and controls inherit the active engine instead of module-local colors. */
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface] :where(h1,h2,h3,h4,strong,b){color:var(--tc-text)}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface] :where(p,small,label){color:var(--tc-muted)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(input,select,textarea){background:var(--tc-control-bg)!important;border-color:var(--tc-line)!important;color:var(--tc-text)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(.button,.mini-action,[class$="-btn"],[class$="-button"]):not(.danger):not(.delete){
    background:var(--tc-elevated)!important;
    background-image:none!important;
    border-color:var(--tc-line)!important;
    border-radius:var(--tc-radius-small)!important;
    color:var(--tc-text)!important;
    box-shadow:none!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(.button.primary,.mini-action.primary,.primary-action,[class$="-btn"].primary,[class$="-button"].primary){
    background:var(--tc-accent)!important;
    border-color:var(--tc-accent)!important;
    color:var(--tc-accent-ink)!important;
}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(table,thead,tbody,tr,td){background-color:transparent}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) th{background:var(--tc-canvas)!important;color:var(--tc-accent)!important}
:is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) :where(th,td){border-color:var(--tc-line)!important}

@media(max-width:1450px){
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:1180px){
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:900px){
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:650px){
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .subscriber-launcher{padding:20px 13px!important}
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-card{min-height:164px!important}
}
@media(max-width:390px){
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) .odoo-app-grid{grid-template-columns:1fr!important}
}
@media print{
    :is(html[data-identity-engine="stellar"],html[data-identity-engine="neo_najd"]) [data-theme-surface]{background:#fff!important;color:#000!important;box-shadow:none!important;border-color:#bbb!important}
}
