/* Enhanced frosted material: tint + diffused backdrop + edge light + static grain.
 * Load after crm-glass.css. Keep table and form surfaces opaque.
 */
:root {
  --crm-bg:#e7edf8;
  --crm-teal:#414bbc;
  --glass-surface:rgba(255,255,255,.36);
  --glass-chrome:rgba(249,251,255,.65);
  --glass-border:rgba(255,255,255,.82);
  --glass-shadow:0 16px 42px rgba(54,70,127,.13),inset 0 1px 0 rgba(255,255,255,.96),inset 0 -1px 0 rgba(101,124,174,.13);
  --glass-blue:rgba(103,137,244,.36);
  --glass-violet:rgba(168,124,232,.30);
  --glass-mint:rgba(68,201,190,.22);
  --glass-glint:rgba(255,255,255,.42);
  --glass-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.07'/%3E%3C/svg%3E");
}
.dark {
  --crm-bg:#0c1223;
  --crm-teal:#b1b9ff;
  --glass-surface:rgba(26,34,57,.44);
  --glass-chrome:rgba(20,29,49,.64);
  --glass-border:rgba(186,205,255,.29);
  --glass-shadow:0 18px 45px rgba(3,7,20,.25),inset 0 1px 0 rgba(224,234,255,.24),inset 0 -1px 0 rgba(105,138,210,.1);
  --glass-blue:rgba(88,115,238,.31);
  --glass-violet:rgba(155,90,219,.27);
  --glass-mint:rgba(57,172,180,.17);
  --glass-glint:rgba(211,225,255,.13);
}
body.fi-body,.fi-simple-layout {
  background-image:radial-gradient(ellipse at 8% 7%,var(--glass-blue),transparent 43%),
    radial-gradient(ellipse at 91% 14%,var(--glass-violet),transparent 40%),
    radial-gradient(ellipse at 64% 67%,var(--glass-mint),transparent 46%);
}
.fi-sidebar,.fi-topbar > nav {
  background:var(--glass-chrome)!important;
  backdrop-filter:blur(24px) saturate(145%);
  -webkit-backdrop-filter:blur(24px) saturate(145%);
}
.crm-workspace {position:relative;isolation:isolate;}
/* These shapes sit behind the panel, giving backdrop-filter real color detail. */
.crm-workspace::before {
  content:'';position:absolute;inset:-25px -10px auto;height:450px;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse 195px 155px at 77% 28%,var(--glass-violet) 55%,transparent 75%),
    radial-gradient(ellipse 210px 175px at 94% 53%,var(--glass-blue) 45%,transparent 75%),
    radial-gradient(ellipse 240px 90px at 50% 83%,var(--glass-mint) 35%,transparent 80%);
}
.crm-hero {
  background-color:var(--glass-surface);
  background-image:var(--glass-grain),linear-gradient(125deg,var(--glass-glint),transparent 42%,var(--glass-glint));
  background-size:128px 128px,100% 100%;
  backdrop-filter:blur(28px) saturate(150%);
  -webkit-backdrop-filter:blur(28px) saturate(150%);
}
.crm-hero::before {
  content:'';position:absolute;inset:0;width:auto;height:auto;border-radius:inherit;
  background:linear-gradient(115deg,transparent 25%,var(--glass-glint) 48%,transparent 63%);
  pointer-events:none;z-index:-1;
}
.crm-metric {
  background-color:var(--glass-surface);
  background-image:var(--glass-grain),linear-gradient(140deg,var(--glass-glint),transparent 55%);
  background-size:128px 128px,100% 100%;
  backdrop-filter:blur(22px) saturate(145%);
  -webkit-backdrop-filter:blur(22px) saturate(145%);
}
.crm-orbit {border-color:color-mix(in srgb,var(--crm-teal) 28%,transparent);}
.crm-orbit::after {
  width:20px;height:20px;
  background:radial-gradient(circle at 30% 25%,#fff9,#c8b9ff80 45%,#8a91e980);
  border:1px solid var(--glass-border);box-shadow:0 5px 18px #666db438,inset 0 1px 1px #fffc;
}
@media(prefers-reduced-motion:no-preference){
  .crm-metric:hover{box-shadow:0 20px 42px #243b8526,inset 0 1px 0 var(--glass-border);}
}
@media(max-width:640px){
  .fi-sidebar,.fi-topbar > nav,.crm-hero,.crm-metric{backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .fi-sidebar,.fi-topbar > nav,.crm-hero,.crm-metric,.fi-modal-window,.fi-dropdown-panel,.fi-simple-main{background:var(--crm-surface)!important;}
  .crm-workspace::before{display:none;}
}
@media(prefers-reduced-transparency:reduce){
  .fi-sidebar,.fi-topbar > nav,.crm-hero,.crm-metric,.fi-modal-window,.fi-dropdown-panel,.fi-simple-main{background:var(--crm-surface)!important;backdrop-filter:none;-webkit-backdrop-filter:none;}
  .crm-workspace::before{display:none;}
}
@media(forced-colors:active){
  body.fi-body{background:Canvas;color:CanvasText;}
  .crm-hero,.crm-metric,.fi-sidebar,.fi-topbar > nav,.crm-card{background:Canvas!important;color:CanvasText;border:1px solid CanvasText;box-shadow:none;backdrop-filter:none;}
  .crm-workspace::before,.crm-hero-art{display:none;}
}
.crm-brand{max-width:100%;justify-content:center;overflow:hidden;}
.crm-brand-logo{display:block;width:auto;max-width:100%;max-height:40px;height:auto;border-radius:4px;background:#13356d;object-fit:contain;}
.fi-simple-main .fi-logo{height:auto!important;}
.fi-simple-main .crm-brand-logo{width:220px;max-height:none;}
.fi-sidebar-item-btn{border-radius:11px;border:1px solid transparent;}
.fi-sidebar-item-btn:hover{background:var(--glass-hover);}
.fi-sidebar-item.fi-active > .fi-sidebar-item-btn{background:linear-gradient(115deg,var(--crm-soft),var(--glass-hover));border-color:color-mix(in srgb,var(--crm-teal) 15%,transparent);}
@media(prefers-reduced-motion:no-preference){
  .fi-sidebar,.fi-sidebar-header,.fi-main-ctn{transition:width 240ms cubic-bezier(.2,.7,.2,1),margin 240ms cubic-bezier(.2,.7,.2,1),transform 240ms cubic-bezier(.2,.7,.2,1);}
}
