/* Triplem VIP feature CSS production bundle.
 * Generated from the maintained source files listed in app.feature.bundle.manifest.json.
 * Source order is identical to the former index.html stylesheet order.
 * Run: npm run build:styles
 */

/* ===== SOURCE: Assets/style/52-workspace-section-home.css ===== */
/* Triplem VIP workspace section home — 2026-09-16
   The former persistent tab band stays in the DOM as a permission/navigation
   authority for legacy code, but is no longer a visible workspace surface. */
#app > .tabs{
  display:none !important;
}

.workspace-home{
  position:relative;
  width:100%;
  min-height:calc(100dvh - 112px);
  padding:clamp(10px,1.6vw,22px) 0 clamp(22px,3vw,40px);
  display:flex;
  flex-direction:column;
  gap:clamp(14px,2vw,24px);
  overflow:hidden;
  isolation:isolate;
}
.workspace-home.hide{display:none !important}
.workspace-home::before,
.workspace-home::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:-1;
  border-radius:999px;
  opacity:.72;
}
.workspace-home::before{
  width:min(52vw,760px);
  aspect-ratio:1;
  left:-27vw;
  top:-34%;
  background:radial-gradient(circle,color-mix(in srgb,var(--primary) 10%,transparent),transparent 68%);
}
.workspace-home::after{
  width:min(40vw,580px);
  aspect-ratio:1;
  right:-20vw;
  bottom:-28%;
  background:radial-gradient(circle,color-mix(in srgb,var(--primary) 8%,transparent),transparent 70%);
}
.workspace-home-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  min-width:0;
  padding:0 2px;
}
.workspace-home-kicker{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 10px;
  border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));
  border-radius:999px;
  color:var(--primary);
  background:color-mix(in srgb,var(--primary) 7%,var(--panel));
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.workspace-home-heading h2{
  margin:10px 0 2px;
  color:var(--text);
  font-size:clamp(1.25rem,2vw,1.8rem);
  letter-spacing:-.04em;
}
.workspace-home-heading p{
  margin:0;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.5;
}
.workspace-home-grid{
  flex:1;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  grid-auto-rows:minmax(205px,1fr);
  gap:clamp(10px,1.25vw,18px);
  align-content:center;
  min-width:0;
}
.workspace-home-card{
  --workspace-card-accent:var(--primary);
  appearance:none;
  position:relative;
  min-width:0;
  min-height:205px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:space-between;
  gap:8px;
  padding:14px 15px 13px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--line) 82%,var(--primary) 18%);
  border-radius:clamp(17px,1.5vw,23px);
  background:
    radial-gradient(115% 90% at 92% -8%,color-mix(in srgb,var(--primary) 13%,transparent),transparent 57%),
    linear-gradient(145deg,color-mix(in srgb,var(--panel) 97%,var(--primary) 3%),color-mix(in srgb,var(--panel-2) 94%,transparent));
  color:var(--text);
  box-shadow:
    0 12px 28px color-mix(in srgb,var(--primary) 7%,transparent),
    inset 0 1px 0 color-mix(in srgb,#fff 44%,transparent);
  cursor:pointer;
  text-align:left;
  transform:translateZ(0);
  transition:transform .18s cubic-bezier(.22,.75,.22,1),border-color .18s ease,box-shadow .18s ease,background .18s ease;
  animation:workspaceCardEnter .34s cubic-bezier(.2,.8,.2,1) both;
  animation-delay:calc(var(--workspace-card-index,0) * 24ms);
  contain:layout paint style;
}
.workspace-home-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 20%,color-mix(in srgb,#fff 16%,transparent) 45%,transparent 68%);
  transform:translate3d(-115%,0,0);
  transition:transform .48s cubic-bezier(.2,.72,.2,1);
}
.workspace-home-card:hover,
.workspace-home-card:focus-visible{
  transform:translate3d(0,-3px,0);
  border-color:color-mix(in srgb,var(--primary) 42%,var(--line));
  box-shadow:0 17px 34px color-mix(in srgb,var(--primary) 13%,transparent),inset 0 1px 0 color-mix(in srgb,#fff 52%,transparent);
  outline:none;
}
.workspace-home-card:hover::before,
.workspace-home-card:focus-visible::before{transform:translate3d(115%,0,0)}
.workspace-card-art{
  display:grid;
  place-items:center;
  width:132px;
  height:132px;
  min-width:132px;
  min-height:132px;
  max-width:132px;
  max-height:132px;
  aspect-ratio:1 / 1;
  flex:0 0 132px;
  align-self:center;
  color:var(--workspace-card-accent);
}
.workspace-card-svg{
  width:132px;
  height:132px;
  min-width:132px;
  min-height:132px;
  max-width:132px;
  max-height:132px;
  aspect-ratio:1 / 1;
  display:block;
  overflow:visible;
  flex:none;
}
.workspace-card-svg *{
  vector-effect:non-scaling-stroke;
  transform-box:fill-box;
  transform-origin:center;
}
.workspace-card-svg .wh-frame{
  fill:color-mix(in srgb,var(--primary) 5%,transparent);
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.workspace-card-svg .wh-soft{
  fill:none;
  stroke:color-mix(in srgb,currentColor 56%,var(--muted));
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.82;
}
.workspace-card-svg circle.wh-soft,
.workspace-card-svg rect.wh-soft{
  fill:color-mix(in srgb,currentColor 7%,transparent);
}
.workspace-card-svg .wh-accent,
.workspace-card-svg .wh-line{
  fill:none;
  stroke:currentColor;
  stroke-width:2.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.workspace-card-svg .wh-pulse,
.workspace-card-svg .wh-dot{
  fill:currentColor;
  stroke:color-mix(in srgb,var(--panel) 75%,transparent);
  stroke-width:2;
}
.workspace-card-svg .wh-draw{
  stroke-dasharray:180;
  stroke-dashoffset:180;
  animation:workspaceSvgDraw 3.4s ease-in-out infinite;
}
.workspace-card-svg .wh-float{animation:workspaceSvgFloat 3.2s ease-in-out infinite}
.workspace-card-svg .wh-pulse{animation:workspaceSvgPulse 2.2s ease-in-out infinite}
.workspace-card-svg .wh-scan{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;opacity:.7;animation:workspaceSvgScan 2.8s ease-in-out infinite}
.workspace-card-svg .wh-orbit-ring{stroke-dasharray:7 8;animation:workspaceSvgSpin 8s linear infinite}
.workspace-card-svg .wh-spin{stroke-dasharray:9 7;animation:workspaceSvgSpin 7s linear infinite}
.workspace-card-svg .wh-orbit-dot{animation:workspaceSvgPulse 2.1s ease-in-out infinite}
.workspace-card-svg .wh-spark{animation:workspaceSvgSpark 2.5s ease-in-out infinite}
.workspace-card-svg .wh-node-one{animation:workspaceSvgNode 2.8s ease-in-out infinite}
.workspace-card-svg .wh-node-two{animation:workspaceSvgNode 3.1s ease-in-out infinite .2s}
.workspace-card-svg .wh-node-three{animation:workspaceSvgNode 2.9s ease-in-out infinite .4s}
.workspace-card-svg .wh-node-four{animation:workspaceSvgNode 3.2s ease-in-out infinite .1s}
.workspace-card-svg .wh-coin-one{animation:workspaceSvgFloat 2.7s ease-in-out infinite}
.workspace-card-svg .wh-coin-two{animation:workspaceSvgFloat 3.1s ease-in-out infinite .25s}
.workspace-card-copy{
  position:relative;
  z-index:2;
  width:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  text-align:center;
}
.workspace-card-copy strong{
  min-width:0;
  color:var(--text);
  font-size:.94rem;
  line-height:1.22;
  letter-spacing:-.025em;
  overflow-wrap:anywhere;
  width:100%;
  text-align:center;
}
.workspace-card-copy small{
  width:100%;
  color:var(--muted);
  font-size:.68rem;
  line-height:1.35;
  text-align:center;
}
.workspace-card-open{
  position:absolute;
  right:11px;
  top:10px;
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));
  border-radius:10px;
  background:color-mix(in srgb,var(--panel) 82%,transparent);
  color:color-mix(in srgb,var(--primary) 78%,var(--text));
  font-size:.66rem;
}

.workspace-section-nav{
  position:sticky;
  top:8px;
  z-index:34;
  width:min(100%,var(--content-max));
  min-height:44px;
  margin:0 auto 10px;
  padding:5px 6px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) minmax(150px,220px);
  gap:7px;
  align-items:center;
  border:1px solid color-mix(in srgb,var(--line) 84%,var(--primary) 16%);
  border-radius:15px;
  background:color-mix(in srgb,var(--panel) 92%,transparent);
  box-shadow:0 8px 22px color-mix(in srgb,var(--primary) 7%,transparent),inset 0 1px 0 color-mix(in srgb,#fff 40%,transparent);
  backdrop-filter:blur(14px) saturate(1.12);
  -webkit-backdrop-filter:blur(14px) saturate(1.12);
}
.workspace-section-nav.hide{display:none !important}
.workspace-home-back{
  width:auto;
  min-width:112px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 10px;
  border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));
  border-radius:10px;
  background:color-mix(in srgb,var(--primary) 7%,var(--panel));
  color:var(--primary);
  font-size:.7rem;
  font-weight:780;
  white-space:nowrap;
  cursor:pointer;
  transition:transform .15s ease,background .15s ease,border-color .15s ease;
}
.workspace-home-back i{font-size:.68rem;pointer-events:none}
.workspace-home-back span{pointer-events:none}
.workspace-home-back:hover,
.workspace-home-back:focus-visible{
  transform:translateX(-1px);
  background:color-mix(in srgb,var(--primary) 12%,var(--panel));
  border-color:color-mix(in srgb,var(--primary) 38%,var(--line));
  outline:none;
}
.workspace-section-current{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:0;
  padding-left:2px;
}
.workspace-section-current span{
  color:var(--muted);
  font-size:.56rem;
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.workspace-section-current strong{
  min-width:0;
  color:var(--text);
  font-size:.82rem;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.workspace-section-switch{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  min-width:0;
  height:34px;
  padding:0 11px;
  border:1px solid color-mix(in srgb,var(--line) 88%,var(--primary) 12%);
  border-radius:10px;
  outline:0;
  background:color-mix(in srgb,var(--panel-2) 86%,var(--panel));
  color:var(--text);
  font:inherit;
  font-size:.72rem;
  font-weight:720;
  text-align:center;
  text-align-last:center;
  cursor:pointer;
  box-shadow:none;
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.workspace-section-switch:hover,
.workspace-section-switch:focus-visible{
  border-color:color-mix(in srgb,var(--primary) 38%,var(--line));
  background:color-mix(in srgb,var(--primary) 7%,var(--panel));
  box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 8%,transparent);
}
.workspace-section-switch option{color:var(--text);background:var(--panel);text-align:left}

#app .center-wrap,
#app .panel,
#app .panel > .card,
#app .panel .section{min-width:0;max-width:100%}

@keyframes workspaceCardEnter{
  from{opacity:0;transform:translate3d(0,8px,0) scale(.985)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes workspaceSvgFloat{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(0,-4px,0)}
}
@keyframes workspaceSvgPulse{
  0%,100%{transform:scale(.92);opacity:.68}
  50%{transform:scale(1.18);opacity:1}
}
@keyframes workspaceSvgDraw{
  0%,14%{stroke-dashoffset:180;opacity:.46}
  42%,72%{stroke-dashoffset:0;opacity:1}
  88%,100%{stroke-dashoffset:-180;opacity:.42}
}
@keyframes workspaceSvgScan{
  0%,100%{transform:translate3d(0,-15px,0);opacity:.16}
  50%{transform:translate3d(0,16px,0);opacity:.9}
}
@keyframes workspaceSvgSpin{to{transform:rotate(360deg)}}
@keyframes workspaceSvgSpark{
  0%,100%{transform:scale(.84) rotate(0deg);opacity:.64}
  50%{transform:scale(1.06) rotate(10deg);opacity:1}
}
@keyframes workspaceSvgNode{
  0%,100%{transform:scale(.88);opacity:.55}
  50%{transform:scale(1.12);opacity:1}
}

@media(max-width:1180px){
  .workspace-home-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(190px,1fr)}
}
@media(max-width:820px){
  #app{overflow-x:clip}
  .workspace-home{min-height:calc(100dvh - 96px);padding-top:4px;gap:12px}
  .workspace-home-heading{padding-inline:2px}
  .workspace-home-heading h2{margin-top:7px;font-size:1.2rem}
  .workspace-home-heading p{font-size:.73rem}
  .workspace-home-kicker{min-height:22px;padding:4px 8px;font-size:.59rem}
  .workspace-home-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-auto-rows:minmax(118px,auto);
    gap:8px;
    align-content:start;
  }
  .workspace-home-card{
    min-height:118px;
    padding:7px 6px 8px;
    gap:3px;
    border-radius:14px;
    align-items:center;
    text-align:center;
    justify-content:center;
  }
  .workspace-card-art{width:66px;height:66px;min-width:66px;min-height:66px;max-width:66px;max-height:66px;flex-basis:66px}
  .workspace-card-svg{width:66px;height:66px;min-width:66px;min-height:66px;max-width:66px;max-height:66px}
  .workspace-card-copy{width:100%;align-items:center;gap:0}
  .workspace-card-copy strong{width:100%;font-size:.68rem;line-height:1.14;text-align:center;overflow-wrap:normal;word-break:normal}
  .workspace-card-copy small,.workspace-card-open{display:none}
  .workspace-section-nav{
    top:5px;
    grid-template-columns:auto minmax(0,1fr);
    min-height:40px;
    margin-bottom:8px;
    padding:4px;
    border-radius:13px;
    gap:5px;
  }
  .workspace-home-back{min-width:104px;height:32px;padding-inline:8px;border-radius:9px;font-size:.64rem;gap:5px}
  .workspace-section-current{display:none}
  .workspace-section-switch{height:32px;padding-inline:8px;border-radius:9px;font-size:.66rem}
}
@media(max-width:380px){
  .workspace-home-grid{gap:6px}
  .workspace-home-card{min-height:108px;padding:6px 4px}
  .workspace-card-art{width:60px;height:60px;min-width:60px;min-height:60px;max-width:60px;max-height:60px;flex-basis:60px}
  .workspace-card-svg{width:60px;height:60px;min-width:60px;min-height:60px;max-width:60px;max-height:60px}
  .workspace-card-copy strong{font-size:.62rem}
  .workspace-section-nav{grid-template-columns:auto minmax(0,1fr)}
  .workspace-home-back{min-width:98px;height:30px;padding-inline:7px;font-size:.6rem}
}

html.triplem-low-power .workspace-home-card{animation:none !important;transition:none !important}
html.triplem-low-power .workspace-card-svg *{animation:none !important}
html.triplem-low-power .workspace-home-card::before{display:none}
html.triplem-low-power .workspace-section-nav{backdrop-filter:none;-webkit-backdrop-filter:none}
@media(prefers-reduced-motion:reduce){
  .workspace-home-card,
  .workspace-card-svg *{animation:none !important;transition:none !important}
  .workspace-home-card::before{display:none}
}

/* Workspace visual refinement — 2026-09-16 rev 002
   Theme-aware multi-colour SVG art using the centralized chart palette. */
.workspace-home{
  margin-top:-10px;
  padding-top:0;
}
.workspace-home-heading{
  align-items:flex-start;
  padding-top:0;
}
.workspace-home-heading > div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
}
.workspace-home-kicker{
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:var(--primary);
  font-size:.7rem;
  letter-spacing:.12em;
}
.workspace-home-heading p{
  margin:0;
  font-size:.86rem;
}

.workspace-home-card{
  --wh-c1:var(--chart-series-1,var(--primary));
  --wh-c2:var(--chart-series-2,var(--success));
  --wh-c3:var(--chart-series-3,var(--warning));
  --wh-c4:var(--chart-series-4,var(--secondary));
  background:
    radial-gradient(110% 78% at 92% -5%,color-mix(in srgb,var(--wh-c1) 15%,transparent),transparent 58%),
    radial-gradient(90% 66% at -4% 104%,color-mix(in srgb,var(--wh-c2) 10%,transparent),transparent 64%),
    linear-gradient(145deg,color-mix(in srgb,var(--panel) 97%,var(--wh-c1) 3%),color-mix(in srgb,var(--panel-2) 94%,transparent));
  border-color:color-mix(in srgb,var(--line) 78%,var(--wh-c1) 22%);
  box-shadow:
    0 12px 28px color-mix(in srgb,var(--wh-c1) 8%,transparent),
    inset 0 1px 0 color-mix(in srgb,#fff 44%,transparent);
}
.workspace-home-card--dashboard{--wh-c1:var(--chart-series-1);--wh-c2:var(--chart-series-2);--wh-c3:var(--chart-series-3);--wh-c4:var(--chart-series-4)}
.workspace-home-card--expenses{--wh-c1:var(--chart-series-2);--wh-c2:var(--chart-series-1);--wh-c3:var(--chart-series-6);--wh-c4:var(--chart-series-3)}
.workspace-home-card--goods{--wh-c1:var(--chart-series-7);--wh-c2:var(--chart-series-2);--wh-c3:var(--chart-series-3);--wh-c4:var(--chart-series-5)}
.workspace-home-card--audit{--wh-c1:var(--chart-series-5);--wh-c2:var(--chart-series-1);--wh-c3:var(--chart-series-2);--wh-c4:var(--chart-series-3)}
.workspace-home-card--triplem-ai{--wh-c1:var(--chart-series-4);--wh-c2:var(--chart-series-5);--wh-c3:var(--chart-series-6);--wh-c4:var(--chart-series-2)}
.workspace-home-card--assets{--wh-c1:var(--chart-series-3);--wh-c2:var(--chart-series-1);--wh-c3:var(--chart-series-2);--wh-c4:var(--chart-series-4)}
.workspace-home-card--loans{--wh-c1:var(--chart-series-2);--wh-c2:var(--chart-series-6);--wh-c3:var(--chart-series-1);--wh-c4:var(--chart-series-3)}
.workspace-home-card--installments{--wh-c1:var(--chart-series-4);--wh-c2:var(--chart-series-3);--wh-c3:var(--chart-series-1);--wh-c4:var(--chart-series-2)}
.workspace-home-card--notes{--wh-c1:var(--chart-series-6);--wh-c2:var(--chart-series-4);--wh-c3:var(--chart-series-3);--wh-c4:var(--chart-series-5)}
.workspace-home-card--bitcoin{--wh-c1:var(--chart-series-3);--wh-c2:var(--chart-series-5);--wh-c3:var(--chart-series-1);--wh-c4:var(--chart-series-2)}
.workspace-home-card--admin{--wh-c1:var(--chart-series-1);--wh-c2:var(--chart-series-6);--wh-c3:var(--chart-series-4);--wh-c4:var(--chart-series-2)}

.workspace-home-card:hover,
.workspace-home-card:focus-visible{
  border-color:color-mix(in srgb,var(--wh-c1) 54%,var(--line));
  box-shadow:
    0 18px 38px color-mix(in srgb,var(--wh-c1) 13%,transparent),
    0 5px 18px color-mix(in srgb,var(--wh-c2) 7%,transparent),
    inset 0 1px 0 color-mix(in srgb,#fff 50%,transparent);
}
.workspace-card-art{
  position:relative;
  isolation:isolate;
  color:var(--wh-c1);
}
.workspace-card-art::before,
.workspace-card-art::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  border-radius:50%;
  transform:translate3d(0,0,0);
}
.workspace-card-art::before{
  width:116px;
  height:116px;
  left:50%;
  top:50%;
  margin-left:-58px;
  margin-top:-58px;
  background:radial-gradient(circle,color-mix(in srgb,var(--wh-c1) 18%,transparent),transparent 70%);
  animation:workspaceArtGlowA 5.6s ease-in-out infinite;
}
.workspace-card-art::after{
  width:86px;
  height:86px;
  left:50%;
  top:50%;
  margin-left:-43px;
  margin-top:-43px;
  background:radial-gradient(circle,color-mix(in srgb,var(--wh-c2) 14%,transparent),transparent 72%);
  animation:workspaceArtGlowB 6.8s ease-in-out infinite;
}
.workspace-card-svg{
  position:relative;
  z-index:1;
  transition:transform .24s cubic-bezier(.2,.75,.2,1);
}
.workspace-home-card:hover .workspace-card-svg,
.workspace-home-card:focus-visible .workspace-card-svg{transform:scale(1.035)}
.workspace-card-svg .wh-gradient-halo{opacity:.86;animation:workspaceHaloBreath 5s ease-in-out infinite}
.workspace-card-svg .wh-frame{
  fill:color-mix(in srgb,var(--wh-c1) 6%,transparent);
  stroke:var(--wh-c1);
}
.workspace-card-svg .wh-soft{
  stroke:color-mix(in srgb,var(--wh-c2) 76%,var(--muted));
  opacity:.9;
}
.workspace-card-svg circle.wh-soft,
.workspace-card-svg rect.wh-soft{fill:color-mix(in srgb,var(--wh-c2) 8%,transparent)}
.workspace-card-svg .wh-accent{stroke:var(--wh-c3)}
.workspace-card-svg .wh-line{stroke:var(--wh-c4)}
.workspace-card-svg .wh-pulse,
.workspace-card-svg .wh-dot{
  fill:var(--wh-c3);
  stroke:color-mix(in srgb,var(--panel) 80%,transparent);
}
.workspace-card-svg .wh-fill-soft{fill:color-mix(in srgb,var(--wh-c3) 11%,transparent)}
.workspace-card-svg .wh-fill-solid{fill:var(--wh-c3);stroke:color-mix(in srgb,var(--wh-c4) 62%,var(--wh-c3))}
.workspace-card-svg .wh-ai-orbit{
  fill:none;
  stroke:color-mix(in srgb,var(--wh-c2) 56%,transparent);
  stroke-width:1.1;
  stroke-dasharray:3.5 8;
  opacity:.52;
}
.workspace-card-svg .wh-particle{fill:var(--wh-c4);opacity:.7}
.workspace-card-svg .wh-particle-two{fill:var(--wh-c2)}
.workspace-card-svg .wh-particle-three{fill:var(--wh-c3)}
.workspace-card-svg .wh-main-shape{animation:workspaceMainShapeFloat 4.8s ease-in-out infinite}
.workspace-card-svg .wh-spin-slow{animation:workspaceSvgSpin 14s linear infinite}
.workspace-card-svg .wh-spin-reverse{animation:workspaceSvgSpinReverse 10s linear infinite}
.workspace-card-svg .wh-particle-one{animation:workspaceParticleOne 3.4s ease-in-out infinite}
.workspace-card-svg .wh-particle-two{animation:workspaceParticleTwo 3.9s ease-in-out infinite .4s}
.workspace-card-svg .wh-particle-three{animation:workspaceParticleThree 4.3s ease-in-out infinite .8s}
.workspace-card-svg .wh-draw-short{
  stroke-dasharray:52;
  stroke-dashoffset:52;
  animation:workspaceShortDraw 3.2s ease-in-out infinite;
}
.workspace-card-svg .wh-wave{stroke-dasharray:5 7;animation:workspaceEnergyDrift 5.4s linear infinite}
.workspace-card-svg .wh-rise{animation:workspaceRise 3s ease-in-out infinite}
.workspace-card-svg .wh-orbit-arc{stroke-dasharray:10 8;animation:workspaceEnergyDrift 5.8s linear infinite}
.workspace-card-svg .wh-calendar-glow{fill:color-mix(in srgb,var(--wh-c4) 10%,transparent);animation:workspaceCalendarGlow 2.8s ease-in-out infinite}
.workspace-card-svg .wh-ai-core{animation:workspaceAiCore 3s ease-in-out infinite}

@keyframes workspaceArtGlowA{
  0%,100%{transform:translate3d(-10px,3px,0) scale(.92);opacity:.62}
  50%{transform:translate3d(7px,-5px,0) scale(1.08);opacity:1}
}
@keyframes workspaceArtGlowB{
  0%,100%{transform:translate3d(3px,-2px,0) scale(1.04);opacity:.55}
  50%{transform:translate3d(-10px,8px,0) scale(.9);opacity:.92}
}
@keyframes workspaceHaloBreath{
  0%,100%{transform:scale(.94);opacity:.56}
  50%{transform:scale(1.06);opacity:.92}
}
@keyframes workspaceMainShapeFloat{
  0%,100%{transform:translate3d(0,1px,0)}
  50%{transform:translate3d(0,-2px,0)}
}
@keyframes workspaceSvgSpinReverse{to{transform:rotate(-360deg)}}
@keyframes workspaceEnergyDrift{
  from{stroke-dashoffset:0}
  to{stroke-dashoffset:-96}
}
@keyframes workspaceParticleOne{
  0%,100%{transform:translate3d(0,0,0) scale(.75);opacity:.35}
  50%{transform:translate3d(5px,-5px,0) scale(1.25);opacity:1}
}
@keyframes workspaceParticleTwo{
  0%,100%{transform:translate3d(0,0,0) scale(.82);opacity:.4}
  50%{transform:translate3d(-6px,4px,0) scale(1.18);opacity:.95}
}
@keyframes workspaceParticleThree{
  0%,100%{transform:translate3d(0,0,0) scale(.8);opacity:.38}
  50%{transform:translate3d(-4px,-6px,0) scale(1.2);opacity:1}
}
@keyframes workspaceShortDraw{
  0%,18%{stroke-dashoffset:52;opacity:.35}
  46%,76%{stroke-dashoffset:0;opacity:1}
  100%{stroke-dashoffset:-52;opacity:.35}
}
@keyframes workspaceRise{
  0%,100%{transform:translate3d(-2px,2px,0);opacity:.58}
  50%{transform:translate3d(2px,-2px,0);opacity:1}
}
@keyframes workspaceCalendarGlow{
  0%,100%{opacity:.35;transform:scaleX(.82)}
  50%{opacity:1;transform:scaleX(1.08)}
}
@keyframes workspaceAiCore{
  0%,100%{transform:scale(.96)}
  50%{transform:scale(1.035)}
}

html.triplem-low-power .workspace-card-art::before,
html.triplem-low-power .workspace-card-art::after{animation:none !important}

@media(max-width:820px){
  .workspace-home{margin-top:-3px;padding-top:0}
  .workspace-home-heading > div{gap:4px}
  .workspace-home-kicker{font-size:.6rem}
  .workspace-home-heading p{font-size:.72rem;line-height:1.35}
  .workspace-card-art::before{width:64px;height:64px;margin-left:-32px;margin-top:-32px}
  .workspace-card-art::after{width:48px;height:48px;margin-left:-24px;margin-top:-24px}
}
@media(prefers-reduced-motion:reduce){
  .workspace-card-art::before,
  .workspace-card-art::after{animation:none !important}
  .workspace-card-svg{transition:none !important}
}


/* Triplem VIP Home refinement — 2026-09-16 rev 005
   Clean navigation controls, no full-width shell bands, and desktop home with no ambient banner surface. */
.workspace-home{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.workspace-home::before,
.workspace-home::after{
  display:none !important;
  content:none !important;
}
.workspace-section-nav{
  position:sticky;
  top:8px;
  width:min(100%,var(--content-max));
  min-height:0;
  margin:0 auto 10px;
  padding:0 2px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.workspace-home-back{
  min-width:132px;
  flex:0 0 auto;
}
.workspace-section-switch{
  width:min(220px,38vw);
  flex:0 1 220px;
}
.workspace-section-current{display:none !important}

/* Keep the Wallet home artwork visually square rather than a flattened landscape glyph. */
.workspace-home-card--expenses .workspace-card-svg .wh-main-shape{
  transform-origin:center center;
}

@media(max-width:820px){
  .workspace-section-nav{
    padding:0;
    gap:6px;
  }
  .workspace-home-back{
    min-width:118px;
    flex:0 0 auto;
  }
  .workspace-section-switch{
    width:auto;
    min-width:0;
    flex:1 1 auto;
  }
}

/* Workspace SVG illustration refinement — 2026-09-16 rev 006
   Fuller section-specific artwork, strict animation clipping, and no Wallet top-flap animation. */
.workspace-card-art{
  overflow:hidden;
  border-radius:26px;
  contain:paint;
}
.workspace-card-svg{
  overflow:hidden !important;
  contain:paint;
}
.workspace-card-svg .wh-svg-stage{
  transform-origin:80px 80px;
}
.workspace-card-svg .wh-gradient-halo{
  opacity:.72;
  animation:workspaceHaloBreath 5.4s ease-in-out infinite;
}
.workspace-card-svg .wh-icon-base{
  stroke:color-mix(in srgb,var(--wh-c1) 68%,var(--panel));
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.94;
}
.workspace-card-svg .wh-icon-inset{
  fill:color-mix(in srgb,var(--panel) 70%,transparent);
  stroke:color-mix(in srgb,#fff 38%,var(--wh-c2));
  stroke-width:1.15;
  opacity:.72;
}
.workspace-card-svg .wh-fill-primary{fill:var(--wh-c1)}
.workspace-card-svg .wh-fill-secondary{fill:var(--wh-c2)}
.workspace-card-svg .wh-fill-accent{fill:var(--wh-c3);stroke:color-mix(in srgb,var(--wh-c4) 52%,var(--wh-c3));stroke-width:1.1}
.workspace-card-svg .wh-fill-four{fill:var(--wh-c4)}
.workspace-card-svg .wh-chip{
  fill:color-mix(in srgb,var(--panel) 66%,var(--wh-c2) 34%);
  stroke:color-mix(in srgb,var(--wh-c2) 62%,var(--panel));
  stroke-width:.8;
  opacity:.92;
}
.workspace-card-svg .wh-chip-short{opacity:.72}
.workspace-card-svg .wh-beacon{
  fill:var(--wh-c3);
  stroke:color-mix(in srgb,var(--panel) 82%,transparent);
  stroke-width:2;
  animation:workspaceSvgPulse 2.35s ease-in-out infinite;
}
.workspace-card-svg .wh-bright-line,
.workspace-card-svg .wh-bottom-line,
.workspace-card-svg .wh-node-link,
.workspace-card-svg .wh-currency-mark,
.workspace-card-svg .wh-transfer-arrow,
.workspace-card-svg .wh-check,
.workspace-card-svg .wh-fold,
.workspace-card-svg .wh-pencil-line,
.workspace-card-svg .wh-bitcoin-mark,
.workspace-card-svg .wh-gear-spokes,
.workspace-card-svg .wh-growth,
.workspace-card-svg .wh-growth-head,
.workspace-card-svg .wh-coin-mark{
  fill:none;
  stroke:color-mix(in srgb,#fff 72%,var(--wh-c4));
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.workspace-card-svg .wh-bottom-line{opacity:.52;stroke-width:1.8}
.workspace-card-svg .wh-check{stroke:var(--wh-c3);stroke-width:4}
.workspace-card-svg .wh-transfer-arrow{stroke:color-mix(in srgb,#fff 78%,var(--wh-c3));stroke-width:3}
.workspace-card-svg .wh-currency-mark{stroke:color-mix(in srgb,#fff 82%,var(--wh-c4));stroke-width:3}
.workspace-card-svg .wh-bitcoin-mark{stroke:color-mix(in srgb,#fff 88%,var(--wh-c4));stroke-width:3.3}
.workspace-card-svg .wh-pencil-line{stroke:color-mix(in srgb,#fff 80%,var(--wh-c4));stroke-width:2}
.workspace-card-svg .wh-fold{stroke:color-mix(in srgb,#fff 68%,var(--wh-c2));stroke-width:2.1}
.workspace-card-svg .wh-growth{stroke:var(--wh-c3);stroke-width:3.2}
.workspace-card-svg .wh-growth-head{stroke:var(--wh-c3);stroke-width:3.2}
.workspace-card-svg .wh-bar{
  opacity:.92;
  transform-origin:center bottom;
  animation:workspaceBarLift 3.2s ease-in-out infinite;
}
.workspace-card-svg .wh-bar-two{animation-delay:.16s}
.workspace-card-svg .wh-bar-three{animation-delay:.32s}
.workspace-card-svg .wh-bar-four{animation-delay:.48s}
.workspace-card-svg .wh-wallet-pocket{
  fill:color-mix(in srgb,var(--panel) 48%,var(--wh-c4) 52%);
  stroke:color-mix(in srgb,#fff 44%,var(--wh-c4));
  stroke-width:1.2;
}
.workspace-card-svg .wh-coin{
  fill:color-mix(in srgb,var(--wh-c3) 78%,var(--panel));
  stroke:color-mix(in srgb,#fff 42%,var(--wh-c3));
  stroke-width:1.1;
}
.workspace-card-svg .wh-wallet-shape .wh-coin-one{animation:workspaceCoinBreathe 3.4s ease-in-out infinite}
.workspace-card-svg .wh-wallet-shape .wh-coin-two{animation:workspaceCoinBreathe 3.8s ease-in-out infinite .3s}
.workspace-card-svg .wh-wallet-shape{
  animation:workspaceWalletBreathe 4.9s ease-in-out infinite;
}
.workspace-card-svg .wh-building{
  stroke:color-mix(in srgb,#fff 34%,var(--wh-c1));
  stroke-width:1.25;
}
.workspace-card-svg .wh-building-small{fill:color-mix(in srgb,var(--wh-c2) 72%,var(--panel))}
.workspace-card-svg .wh-building-tall{fill:color-mix(in srgb,var(--wh-c1) 78%,var(--panel))}
.workspace-card-svg .wh-window{
  fill:color-mix(in srgb,var(--wh-c3) 68%,#fff 32%);
  opacity:.88;
  animation:workspaceWindowGlow 3.8s ease-in-out infinite;
}
.workspace-card-svg .wh-window:nth-of-type(2n){animation-delay:.35s}
.workspace-card-svg .wh-loan-right{opacity:.9}
.workspace-card-svg .wh-calendar-head{fill:color-mix(in srgb,var(--wh-c2) 72%,var(--panel));opacity:.9}
.workspace-card-svg .wh-ring{fill:var(--wh-c4)}
.workspace-card-svg .wh-date{fill:color-mix(in srgb,var(--panel) 58%,var(--wh-c2) 42%);opacity:.82}
.workspace-card-svg .wh-date-active{fill:var(--wh-c3);animation:workspaceDatePulse 2.8s ease-in-out infinite}
.workspace-card-svg .wh-pencil{stroke:color-mix(in srgb,#fff 32%,var(--wh-c4));stroke-width:1.15;animation:workspacePencilNudge 3.7s ease-in-out infinite}
.workspace-card-svg .wh-ai-node{
  fill:color-mix(in srgb,var(--wh-c2) 72%,var(--panel));
  stroke:color-mix(in srgb,#fff 34%,var(--wh-c2));
  stroke-width:1.1;
}
.workspace-card-svg .wh-ai-spark{stroke:color-mix(in srgb,#fff 46%,var(--wh-c3));stroke-width:1.1;animation:workspaceSvgSpark 2.7s ease-in-out infinite}
.workspace-card-svg .wh-gear-ring{
  fill:color-mix(in srgb,var(--panel) 56%,var(--wh-c2) 44%);
  stroke:color-mix(in srgb,#fff 38%,var(--wh-c2));
  stroke-width:2;
  stroke-dasharray:8 5;
}
.workspace-card-svg .wh-scan{
  stroke:color-mix(in srgb,#fff 72%,var(--wh-c4));
  stroke-width:2.2;
  opacity:.72;
}

/* The Wallet must never emit or animate a separate shape above its body. */
.workspace-home-card--expenses .workspace-card-svg .wh-wallet-shape > *{
  transform-origin:center center;
}
.workspace-home-card--expenses .workspace-card-svg .wh-wallet-shape .wh-icon-base,
.workspace-home-card--expenses .workspace-card-svg .wh-wallet-shape .wh-icon-inset,
.workspace-home-card--expenses .workspace-card-svg .wh-wallet-shape .wh-wallet-pocket,
.workspace-home-card--expenses .workspace-card-svg .wh-wallet-shape .wh-chip,
.workspace-home-card--expenses .workspace-card-svg .wh-wallet-shape .wh-bottom-line{
  animation:none !important;
}

@keyframes workspaceBarLift{
  0%,100%{transform:scaleY(.9);opacity:.72}
  50%{transform:scaleY(1.03);opacity:1}
}
@keyframes workspaceCoinBreathe{
  0%,100%{transform:translate3d(0,0,0) scale(.96)}
  50%{transform:translate3d(0,-2px,0) scale(1.04)}
}
@keyframes workspaceWalletBreathe{
  0%,100%{transform:translate3d(0,1px,0)}
  50%{transform:translate3d(0,-1px,0)}
}
@keyframes workspaceWindowGlow{
  0%,100%{opacity:.5}
  50%{opacity:1}
}
@keyframes workspaceDatePulse{
  0%,100%{transform:scale(.94);opacity:.76}
  50%{transform:scale(1.05);opacity:1}
}
@keyframes workspacePencilNudge{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(2px,-2px,0)}
}

html.triplem-low-power .workspace-card-svg .wh-bar,
html.triplem-low-power .workspace-card-svg .wh-window,
html.triplem-low-power .workspace-card-svg .wh-date-active,
html.triplem-low-power .workspace-card-svg .wh-pencil,
html.triplem-low-power .workspace-card-svg .wh-wallet-shape,
html.triplem-low-power .workspace-card-svg .wh-coin{animation:none !important}

@media(max-width:820px){
  .workspace-card-art{border-radius:16px}
  .workspace-card-svg .wh-icon-base{stroke-width:1.35}
}
@media(prefers-reduced-motion:reduce){
  .workspace-card-svg .wh-bar,
  .workspace-card-svg .wh-window,
  .workspace-card-svg .wh-date-active,
  .workspace-card-svg .wh-pencil,
  .workspace-card-svg .wh-wallet-shape,
  .workspace-card-svg .wh-coin{animation:none !important}
}

/* Workspace SVG modern palette + semantic Loans/Bitcoin — 2026-09-16 rev 007
   Restrained two-tone color hierarchy, realistic finance symbols, and clipped micro-motion. */
.workspace-home-card{
  --wh-neutral:color-mix(in srgb,var(--text) 72%,var(--panel));
  --wh-metal:color-mix(in srgb,var(--muted) 42%,var(--panel));
  --wh-c3:color-mix(in srgb,var(--wh-c1) 76%,var(--text) 24%);
  --wh-c4:color-mix(in srgb,var(--wh-c2) 62%,var(--text) 38%);
  background:
    radial-gradient(84% 66% at 88% 0%,color-mix(in srgb,var(--wh-c1) 9%,transparent),transparent 64%),
    linear-gradient(150deg,color-mix(in srgb,var(--panel) 98%,var(--wh-c1) 2%),color-mix(in srgb,var(--panel-2) 97%,var(--wh-c2) 3%));
  border-color:color-mix(in srgb,var(--line) 88%,var(--wh-c1) 12%);
  box-shadow:0 10px 26px color-mix(in srgb,var(--text) 5%,transparent),inset 0 1px 0 color-mix(in srgb,#fff 36%,transparent);
}
.workspace-home-card--dashboard{--wh-c1:color-mix(in srgb,var(--chart-series-1) 62%,var(--primary) 38%);--wh-c2:color-mix(in srgb,var(--primary-2) 72%,var(--chart-series-2) 28%)}
.workspace-home-card--expenses{--wh-c1:color-mix(in srgb,var(--chart-series-2) 58%,var(--primary) 42%);--wh-c2:color-mix(in srgb,var(--primary-2) 65%,var(--chart-series-1) 35%)}
.workspace-home-card--goods{--wh-c1:color-mix(in srgb,var(--chart-series-7) 54%,var(--primary) 46%);--wh-c2:color-mix(in srgb,var(--primary-2) 72%,var(--chart-series-2) 28%)}
.workspace-home-card--audit{--wh-c1:color-mix(in srgb,var(--chart-series-5) 52%,var(--primary) 48%);--wh-c2:color-mix(in srgb,var(--primary-2) 76%,var(--chart-series-1) 24%)}
.workspace-home-card--triplem-ai{--wh-c1:color-mix(in srgb,var(--chart-series-4) 58%,var(--primary) 42%);--wh-c2:color-mix(in srgb,var(--primary-2) 68%,var(--chart-series-5) 32%)}
.workspace-home-card--assets{--wh-c1:color-mix(in srgb,var(--chart-series-3) 54%,var(--primary) 46%);--wh-c2:color-mix(in srgb,var(--primary-2) 74%,var(--chart-series-1) 26%)}
.workspace-home-card--loans{--wh-c1:color-mix(in srgb,var(--chart-series-2) 56%,var(--primary) 44%);--wh-c2:color-mix(in srgb,var(--primary-2) 72%,var(--chart-series-6) 28%)}
.workspace-home-card--installments{--wh-c1:color-mix(in srgb,var(--chart-series-4) 54%,var(--primary) 46%);--wh-c2:color-mix(in srgb,var(--primary-2) 72%,var(--chart-series-3) 28%)}
.workspace-home-card--notes{--wh-c1:color-mix(in srgb,var(--chart-series-6) 54%,var(--primary) 46%);--wh-c2:color-mix(in srgb,var(--primary-2) 74%,var(--chart-series-4) 26%)}
.workspace-home-card--admin{--wh-c1:color-mix(in srgb,var(--chart-series-1) 64%,var(--primary) 36%);--wh-c2:color-mix(in srgb,var(--primary-2) 74%,var(--chart-series-6) 26%)}
.workspace-home-card--bitcoin{
  --wh-btc-gold:color-mix(in srgb,#f5a524 86%,var(--primary) 14%);
  --wh-btc-deep:color-mix(in srgb,#b86a0b 82%,var(--primary) 18%);
  --wh-btc-light:color-mix(in srgb,#ffd978 90%,var(--primary-contrast) 10%);
  --wh-c1:var(--wh-btc-gold);
  --wh-c2:var(--wh-btc-deep);
}
.workspace-card-svg .wh-gradient-halo{opacity:.46}
.workspace-card-svg .wh-icon-base{opacity:.91;stroke:color-mix(in srgb,var(--wh-c1) 52%,var(--panel));stroke-width:1.25}
.workspace-card-svg .wh-icon-inset{fill:color-mix(in srgb,var(--panel) 82%,var(--wh-c1) 18%);stroke:color-mix(in srgb,var(--text) 18%,var(--wh-c1));opacity:.82}
.workspace-card-svg .wh-chip{fill:color-mix(in srgb,var(--panel) 78%,var(--wh-c2) 22%);stroke:color-mix(in srgb,var(--wh-c2) 42%,var(--line));opacity:.9}
.workspace-card-svg .wh-beacon{fill:var(--wh-c2);stroke:color-mix(in srgb,var(--panel) 88%,transparent)}
.workspace-card-svg .wh-fill-primary{fill:var(--wh-c1)}
.workspace-card-svg .wh-fill-secondary{fill:var(--wh-c2)}
.workspace-card-svg .wh-fill-accent{fill:color-mix(in srgb,var(--wh-c1) 74%,var(--wh-c2) 26%);stroke:color-mix(in srgb,var(--wh-c2) 52%,var(--wh-c1))}
.workspace-card-svg .wh-fill-four{fill:color-mix(in srgb,var(--wh-c2) 74%,var(--wh-neutral) 26%)}

/* Loans: agreement + money + repayment, not generic transfer. */
.workspace-card-svg .wh-loan-paper{stroke:color-mix(in srgb,var(--wh-c1) 62%,var(--panel));stroke-width:1.4}
.workspace-card-svg .wh-loan-paper-inset{fill:color-mix(in srgb,var(--panel) 84%,var(--wh-c1) 16%)}
.workspace-card-svg .wh-loan-check{fill:none;stroke:var(--wh-c2);stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:38;animation:workspaceLoanCheck 3.6s ease-in-out infinite}
.workspace-card-svg .wh-loan-coins{transform-origin:111px 88px;animation:workspaceLoanCoins 3.8s ease-in-out infinite}
.workspace-card-svg .wh-loan-coin{fill:color-mix(in srgb,var(--wh-c2) 76%,var(--panel));stroke:color-mix(in srgb,var(--wh-c2) 72%,var(--text));stroke-width:1}
.workspace-card-svg .wh-loan-coin-back{fill:color-mix(in srgb,var(--wh-c2) 46%,var(--panel))}
.workspace-card-svg .wh-loan-coin-side{fill:color-mix(in srgb,var(--wh-c2) 58%,var(--panel));stroke:color-mix(in srgb,var(--wh-c2) 48%,var(--line));stroke-width:.8}
.workspace-card-svg .wh-loan-coin-side-two{fill:color-mix(in srgb,var(--wh-c2) 64%,var(--panel))}
.workspace-card-svg .wh-loan-coin-top{fill:color-mix(in srgb,var(--wh-c2) 84%,var(--panel))}
.workspace-card-svg .wh-loan-coin-mark{fill:none;stroke:color-mix(in srgb,var(--text) 78%,var(--wh-c2));stroke-width:2.2;stroke-linecap:round}
.workspace-card-svg .wh-loan-repay-arrow{fill:none;stroke:color-mix(in srgb,var(--wh-c1) 76%,var(--text));stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:8 7;animation:workspaceLoanRepay 4.2s linear infinite}
.workspace-card-svg .wh-loan-arrow-dot{fill:var(--wh-c1);animation:workspaceSvgPulse 2.6s ease-in-out infinite}

/* Bitcoin: dimensional, tilted metallic coin with a restrained sheen. */
.workspace-card-svg .wh-bitcoin-scene{animation:none}
.workspace-card-svg .wh-bitcoin-coin{transform-origin:80px 80px;animation:workspaceBitcoinTilt 5.2s ease-in-out infinite}
.workspace-card-svg .wh-bitcoin-edge{stroke:color-mix(in srgb,var(--wh-btc-deep) 86%,#5c3608);stroke-width:1.1}
.workspace-card-svg .wh-bitcoin-edge-back{fill:color-mix(in srgb,var(--wh-btc-deep) 84%,#5d3708)}
.workspace-card-svg .wh-bitcoin-edge-mid{fill:color-mix(in srgb,var(--wh-btc-gold) 64%,var(--wh-btc-deep))}
.workspace-card-svg .wh-bitcoin-face{fill:var(--wh-btc-gold);stroke:color-mix(in srgb,var(--wh-btc-light) 68%,var(--wh-btc-deep));stroke-width:1.6}
.workspace-card-svg .wh-bitcoin-ring{fill:none;stroke:color-mix(in srgb,var(--wh-btc-light) 62%,var(--wh-btc-deep));stroke-width:2.2;opacity:.9}
.workspace-card-svg .wh-bitcoin-mark{stroke:color-mix(in srgb,#fff 78%,var(--wh-btc-light));stroke-width:3.2;filter:none}
.workspace-card-svg .wh-bitcoin-shine{fill:none;stroke:color-mix(in srgb,#fff 74%,var(--wh-btc-light));stroke-width:3;stroke-linecap:round;opacity:.55;animation:workspaceBitcoinShine 3.8s ease-in-out infinite}
.workspace-card-svg .wh-bitcoin-shadow{fill:color-mix(in srgb,var(--text) 16%,transparent);opacity:.32;transform-origin:82px 135px;animation:workspaceBitcoinShadow 5.2s ease-in-out infinite}

@keyframes workspaceLoanCheck{
  0%,18%{stroke-dashoffset:38;opacity:.42}
  42%,82%{stroke-dashoffset:0;opacity:1}
  100%{stroke-dashoffset:-38;opacity:.46}
}
@keyframes workspaceLoanCoins{
  0%,100%{transform:translate3d(0,1px,0)}
  50%{transform:translate3d(0,-2px,0)}
}
@keyframes workspaceLoanRepay{to{stroke-dashoffset:-60}}
@keyframes workspaceBitcoinTilt{
  0%,100%{transform:translate3d(-1px,1px,0) rotate(-1.2deg)}
  50%{transform:translate3d(1px,-1px,0) rotate(1.2deg)}
}
@keyframes workspaceBitcoinShine{
  0%,100%{opacity:.28;transform:translate3d(-2px,2px,0)}
  50%{opacity:.72;transform:translate3d(2px,-2px,0)}
}
@keyframes workspaceBitcoinShadow{
  0%,100%{transform:scaleX(.9);opacity:.24}
  50%{transform:scaleX(1.04);opacity:.34}
}

html.triplem-low-power .workspace-card-svg .wh-loan-check,
html.triplem-low-power .workspace-card-svg .wh-loan-coins,
html.triplem-low-power .workspace-card-svg .wh-loan-repay-arrow,
html.triplem-low-power .workspace-card-svg .wh-loan-arrow-dot,
html.triplem-low-power .workspace-card-svg .wh-bitcoin-coin,
html.triplem-low-power .workspace-card-svg .wh-bitcoin-shine,
html.triplem-low-power .workspace-card-svg .wh-bitcoin-shadow{animation:none !important}
@media(prefers-reduced-motion:reduce){
  .workspace-card-svg .wh-loan-check,
  .workspace-card-svg .wh-loan-coins,
  .workspace-card-svg .wh-loan-repay-arrow,
  .workspace-card-svg .wh-loan-arrow-dot,
  .workspace-card-svg .wh-bitcoin-coin,
  .workspace-card-svg .wh-bitcoin-shine,
  .workspace-card-svg .wh-bitcoin-shadow{animation:none !important}
}

/* Workspace icon system V2 — 2026-09-16 rev 008
   Purpose-built section symbols, restrained theme color, subtle internal motion, strict clipping. */
.workspace-card-art::before,
.workspace-card-art::after{display:none !important}
.workspace-card-art{
  overflow:hidden !important;
  contain:paint;
  border-radius:24px;
}
.workspace-card-svg-v2{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  overflow:hidden !important;
  contain:paint;
}
.workspace-card-svg-v2 .wh-v2-stage{transform-origin:80px 80px}
.workspace-card-svg-v2 .wh-v2-icon{transform-origin:80px 80px}
.workspace-card-svg-v2 .wh-v2-shell,
.workspace-card-svg-v2 .wh-v2-screen,
.workspace-card-svg-v2 .wh-v2-wallet-body,
.workspace-card-svg-v2 .wh-v2-ai-chip,
.workspace-card-svg-v2 .wh-v2-calendar,
.workspace-card-svg-v2 .wh-v2-note-paper,
.workspace-card-svg-v2 .wh-v2-loan-paper,
.workspace-card-svg-v2 .wh-v2-shield,
.workspace-card-svg-v2 .wh-v2-admin-shield{
  fill:url(#wh-v2-main-dashboard);
}
/* SVG-local gradients are keyed per section; these declarations supply modern surfaces. */
.workspace-home-card--dashboard .wh-v2-shell{fill:url(#wh-v2-main-dashboard)}
.workspace-home-card--expenses .wh-v2-wallet-body{fill:url(#wh-v2-main-expenses)}
.workspace-home-card--audit .wh-v2-shield{fill:url(#wh-v2-main-audit)}
.workspace-home-card--triplem-ai .wh-v2-ai-chip{fill:url(#wh-v2-main-triplem-ai)}
.workspace-home-card--loans .wh-v2-loan-paper{fill:url(#wh-v2-main-loans)}
.workspace-home-card--installments .wh-v2-calendar{fill:url(#wh-v2-main-installments)}
.workspace-home-card--notes .wh-v2-note-paper{fill:url(#wh-v2-main-notes)}
.workspace-home-card--admin .wh-v2-admin-shield{fill:url(#wh-v2-main-admin)}

.workspace-card-svg-v2 .wh-v2-screen,
.workspace-card-svg-v2 .wh-v2-shield-inner{
  fill:color-mix(in srgb,var(--panel) 82%,var(--wh-c1) 18%);
  stroke:color-mix(in srgb,var(--line) 70%,var(--wh-c1));
  stroke-width:1.2;
}
.workspace-card-svg-v2 .wh-v2-mini,
.workspace-card-svg-v2 .wh-v2-row,
.workspace-card-svg-v2 .wh-v2-loan-line,
.workspace-card-svg-v2 .wh-v2-note-line{
  fill:color-mix(in srgb,var(--panel) 70%,var(--wh-c2) 30%);
  opacity:.9;
}
.workspace-card-svg-v2 .wh-v2-row-short,
.workspace-card-svg-v2 .wh-v2-loan-line-short{opacity:.66}
.workspace-card-svg-v2 .wh-v2-status,
.workspace-card-svg-v2 .wh-v2-wallet-dot{
  fill:color-mix(in srgb,var(--wh-c2) 84%,#fff 16%);
  stroke:color-mix(in srgb,var(--panel) 90%,transparent);
  stroke-width:2;
}

/* Dashboard */
.workspace-card-svg-v2 .wh-v2-bars rect{
  fill:color-mix(in srgb,var(--wh-c2) 82%,var(--wh-c1));
  transform-box:fill-box;
  transform-origin:center bottom;
  animation:whV2Bar 3.8s ease-in-out infinite;
}
.workspace-card-svg-v2 .wh-v2-bars rect:nth-child(2){animation-delay:.22s;fill:var(--wh-c1)}
.workspace-card-svg-v2 .wh-v2-bars rect:nth-child(3){animation-delay:.44s;fill:color-mix(in srgb,var(--wh-c1) 72%,var(--text) 28%)}
.workspace-card-svg-v2 .wh-v2-trace{
  fill:none;
  stroke:color-mix(in srgb,#fff 82%,var(--wh-c2));
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:86;
  animation:whV2Trace 4.8s ease-in-out infinite;
}

/* Wallet */
.workspace-card-svg-v2 .wh-v2-wallet-body{
  stroke:color-mix(in srgb,var(--wh-c1) 66%,var(--panel));
  stroke-width:1.4;
}
.workspace-card-svg-v2 .wh-v2-wallet-seam{
  fill:none;stroke:color-mix(in srgb,#fff 52%,var(--wh-c2));stroke-width:2;stroke-linecap:round;opacity:.65
}
.workspace-card-svg-v2 .wh-v2-wallet-pocket{
  fill:color-mix(in srgb,var(--panel) 58%,var(--wh-c2) 42%);
  stroke:color-mix(in srgb,#fff 32%,var(--wh-c2));stroke-width:1.2
}
.workspace-card-svg-v2 .wh-v2-wallet-coin{
  fill:color-mix(in srgb,var(--wh-c2) 78%,var(--panel));
  stroke:color-mix(in srgb,#fff 34%,var(--wh-c2));stroke-width:1.1
}
.workspace-card-svg-v2 .wh-v2-wallet-coin-mark{
  fill:none;stroke:color-mix(in srgb,var(--text) 74%,var(--wh-c2));stroke-width:2.1;stroke-linecap:round
}
.workspace-card-svg-v2 .wh-v2-wallet-card{
  fill:color-mix(in srgb,var(--panel) 78%,var(--wh-c1) 22%);
  stroke:color-mix(in srgb,var(--wh-c1) 42%,var(--line));stroke-width:1;
  transform-box:fill-box;transform-origin:center;animation:whV2WalletCard 4.6s ease-in-out infinite
}

/* Inventory */
.workspace-card-svg-v2 .wh-v2-box-top{fill:color-mix(in srgb,var(--wh-c1) 86%,var(--panel));stroke:color-mix(in srgb,var(--wh-c1) 58%,var(--line));stroke-width:1.1}
.workspace-card-svg-v2 .wh-v2-box-left{fill:color-mix(in srgb,var(--wh-c1) 62%,var(--panel));stroke:color-mix(in srgb,var(--wh-c1) 48%,var(--line));stroke-width:1.1}
.workspace-card-svg-v2 .wh-v2-box-right{fill:color-mix(in srgb,var(--wh-c2) 68%,var(--panel));stroke:color-mix(in srgb,var(--wh-c2) 48%,var(--line));stroke-width:1.1}
.workspace-card-svg-v2 .wh-v2-box-line{fill:none;stroke:color-mix(in srgb,#fff 42%,var(--wh-c2));stroke-width:1.8;stroke-linecap:round}
.workspace-card-svg-v2 .wh-v2-label{fill:color-mix(in srgb,var(--panel) 82%,var(--wh-c2) 18%);stroke:color-mix(in srgb,var(--wh-c2) 54%,var(--line));stroke-width:1}
.workspace-card-svg-v2 .wh-v2-scanline{fill:none;stroke:color-mix(in srgb,#fff 78%,var(--wh-c2));stroke-width:2.3;stroke-linecap:round;animation:whV2Scan 3.4s ease-in-out infinite}

/* Audit */
.workspace-card-svg-v2 .wh-v2-shield{stroke:color-mix(in srgb,var(--wh-c1) 60%,var(--line));stroke-width:1.3}
.workspace-card-svg-v2 .wh-v2-check{fill:none;stroke:color-mix(in srgb,#fff 86%,var(--wh-c2));stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:62;animation:whV2Check 4.2s ease-in-out infinite}

/* AI */
.workspace-card-svg-v2 .wh-v2-ai-chip{stroke:color-mix(in srgb,var(--wh-c1) 58%,var(--line));stroke-width:1.3}
.workspace-card-svg-v2 .wh-v2-ai-core{fill:color-mix(in srgb,var(--panel) 76%,var(--wh-c2) 24%);stroke:color-mix(in srgb,var(--wh-c2) 56%,var(--line));stroke-width:1.2;transform-box:fill-box;transform-origin:center;animation:whV2AiCore 3.6s ease-in-out infinite}
.workspace-card-svg-v2 .wh-v2-ai-spark{fill:color-mix(in srgb,var(--wh-c2) 76%,#fff 24%);stroke:color-mix(in srgb,#fff 46%,var(--wh-c2));stroke-width:1}
.workspace-card-svg-v2 .wh-v2-ai-pin{fill:none;stroke:color-mix(in srgb,var(--wh-c1) 58%,var(--muted));stroke-width:2;stroke-linecap:round}
.workspace-card-svg-v2 .wh-v2-ai-node{fill:color-mix(in srgb,var(--wh-c2) 68%,var(--panel));stroke:color-mix(in srgb,var(--wh-c2) 55%,var(--line));stroke-width:1}
.workspace-card-svg-v2 .wh-v2-ai-node-b,.workspace-card-svg-v2 .wh-v2-ai-node-c{animation:whV2Node 3.8s ease-in-out infinite}

/* Assets */
.workspace-card-svg-v2 .wh-v2-building{stroke:color-mix(in srgb,var(--line) 62%,var(--wh-c1));stroke-width:1.1}
.workspace-card-svg-v2 .wh-v2-building-a{fill:color-mix(in srgb,var(--wh-c2) 64%,var(--panel))}
.workspace-card-svg-v2 .wh-v2-building-b{fill:color-mix(in srgb,var(--wh-c1) 76%,var(--panel))}
.workspace-card-svg-v2 .wh-v2-windows rect{fill:color-mix(in srgb,#fff 56%,var(--wh-c2));opacity:.78}
.workspace-card-svg-v2 .wh-v2-window-hot{animation:whV2Window 3.2s ease-in-out infinite}
.workspace-card-svg-v2 .wh-v2-asset-trend,.workspace-card-svg-v2 .wh-v2-asset-head{fill:none;stroke:color-mix(in srgb,#fff 72%,var(--wh-c2));stroke-width:3;stroke-linecap:round;stroke-linejoin:round}

/* Loans */
.workspace-card-svg-v2 .wh-v2-loan-paper{stroke:color-mix(in srgb,var(--wh-c1) 58%,var(--line));stroke-width:1.2}
.workspace-card-svg-v2 .wh-v2-loan-coin{fill:color-mix(in srgb,var(--wh-c2) 76%,var(--panel));stroke:color-mix(in srgb,var(--wh-c2) 56%,var(--line));stroke-width:1.1}
.workspace-card-svg-v2 .wh-v2-loan-coin-b{fill:color-mix(in srgb,var(--wh-c1) 68%,var(--panel));animation:whV2LoanCoin 4.1s ease-in-out infinite}
.workspace-card-svg-v2 .wh-v2-loan-money{fill:none;stroke:color-mix(in srgb,#fff 78%,var(--wh-c2));stroke-width:2;stroke-linecap:round}
.workspace-card-svg-v2 .wh-v2-loan-arrow{fill:none;stroke:color-mix(in srgb,var(--wh-c1) 76%,var(--text));stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:7 7;animation:whV2LoanArrow 4.5s linear infinite}

/* Installments */
.workspace-card-svg-v2 .wh-v2-calendar{stroke:color-mix(in srgb,var(--wh-c1) 58%,var(--line));stroke-width:1.2}
.workspace-card-svg-v2 .wh-v2-calendar-head{fill:color-mix(in srgb,var(--panel) 64%,var(--wh-c2) 36%)}
.workspace-card-svg-v2 .wh-v2-calendar-ring{fill:color-mix(in srgb,var(--wh-c2) 78%,var(--text) 22%)}
.workspace-card-svg-v2 .wh-v2-install-grid rect{fill:color-mix(in srgb,var(--panel) 76%,var(--wh-c1) 24%);stroke:color-mix(in srgb,var(--line) 72%,var(--wh-c1));stroke-width:.8}
.workspace-card-svg-v2 .wh-v2-install-grid .wh-v2-install-dot{fill:color-mix(in srgb,var(--wh-c2) 74%,var(--panel));animation:whV2Install 3.1s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.workspace-card-svg-v2 .wh-v2-install-check{fill:none;stroke:color-mix(in srgb,#fff 82%,var(--wh-c2));stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}

/* Notes */
.workspace-card-svg-v2 .wh-v2-note-paper{stroke:color-mix(in srgb,var(--wh-c1) 58%,var(--line));stroke-width:1.2}
.workspace-card-svg-v2 .wh-v2-note-fold{fill:none;stroke:color-mix(in srgb,#fff 42%,var(--wh-c2));stroke-width:2}
.workspace-card-svg-v2 .wh-v2-pencil-body{fill:color-mix(in srgb,var(--wh-c2) 76%,var(--panel));stroke:color-mix(in srgb,var(--wh-c2) 58%,var(--line));stroke-width:1}
.workspace-card-svg-v2 .wh-v2-pencil-seam{fill:none;stroke:color-mix(in srgb,#fff 72%,var(--wh-c2));stroke-width:2}
.workspace-card-svg-v2 .wh-v2-pencil{transform-origin:105px 107px;animation:whV2Pencil 4.2s ease-in-out infinite}

/* Bitcoin: exact supplied geometry, theme-adaptive fill, subtle contained motion. */
.workspace-home-card--bitcoin{
  --wh-c1:color-mix(in srgb,var(--primary) 72%,var(--chart-series-3) 28%);
  --wh-c2:color-mix(in srgb,var(--primary-2) 68%,var(--chart-series-5) 32%);
}
.workspace-card-svg-v2 .wh-v2-btc-glow{fill:color-mix(in srgb,var(--wh-c1) 11%,transparent);stroke:color-mix(in srgb,var(--wh-c1) 18%,transparent);stroke-width:1}
.workspace-card-svg-v2 .wh-v2-btc-motion{transform-origin:80px 80px;animation:whV2Bitcoin 5.4s ease-in-out infinite}
.workspace-card-svg-v2 .wh-v2-btc-outer{fill:var(--wh-c1);stroke:color-mix(in srgb,var(--wh-c1) 62%,var(--text));stroke-width:.55}
.workspace-card-svg-v2 .wh-v2-btc-mark{fill:color-mix(in srgb,#fff 94%,var(--wh-c2) 6%)}

/* Admin */
.workspace-card-svg-v2 .wh-v2-admin-shield{stroke:color-mix(in srgb,var(--wh-c1) 58%,var(--line));stroke-width:1.2}
.workspace-card-svg-v2 .wh-v2-admin-user{fill:color-mix(in srgb,var(--panel) 78%,var(--wh-c2) 22%);stroke:color-mix(in srgb,var(--wh-c2) 52%,var(--line));stroke-width:1}
.workspace-card-svg-v2 .wh-v2-admin-user-body{fill:color-mix(in srgb,var(--panel) 72%,var(--wh-c2) 28%);stroke:color-mix(in srgb,var(--wh-c2) 52%,var(--line));stroke-width:1}
.workspace-card-svg-v2 .wh-v2-admin-gear{transform-origin:104px 94px}
.workspace-card-svg-v2 .wh-v2-admin-gear-core{animation:whV2AdminCore 3.6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.workspace-card-svg-v2 .wh-v2-admin-gear-ring{fill:color-mix(in srgb,var(--wh-c2) 68%,var(--panel));stroke:color-mix(in srgb,var(--wh-c2) 58%,var(--line));stroke-width:1.2}
.workspace-card-svg-v2 .wh-v2-admin-gear-core{fill:color-mix(in srgb,#fff 62%,var(--wh-c1))}
.workspace-card-svg-v2 .wh-v2-admin-gear-spokes{fill:none;stroke:color-mix(in srgb,var(--wh-c2) 72%,var(--text));stroke-width:2.2;stroke-linecap:round}
.workspace-card-svg-v2 .wh-v2-fallback{fill:none;stroke:color-mix(in srgb,#fff 70%,var(--wh-c2));stroke-width:3;stroke-linecap:round}

@keyframes whV2Bar{0%,100%{transform:scaleY(.92);opacity:.75}50%{transform:scaleY(1.02);opacity:1}}
@keyframes whV2Trace{0%,15%{stroke-dashoffset:86;opacity:.4}48%,82%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-86;opacity:.4}}
@keyframes whV2WalletCard{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(1px,0,0)}}
@keyframes whV2Scan{0%,100%{transform:translate3d(0,-8px,0);opacity:.35}50%{transform:translate3d(0,10px,0);opacity:.9}}
@keyframes whV2Check{0%,18%{stroke-dashoffset:62;opacity:.4}48%,84%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-62;opacity:.45}}
@keyframes whV2AiCore{0%,100%{transform:scale(.96)}50%{transform:scale(1.025)}}
@keyframes whV2Node{0%,100%{opacity:.5}50%{opacity:1}}
@keyframes whV2Window{0%,100%{opacity:.5}50%{opacity:1}}
@keyframes whV2LoanCoin{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-2px,0)}}
@keyframes whV2LoanArrow{to{stroke-dashoffset:-56}}
@keyframes whV2Install{0%,100%{opacity:.66;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}
@keyframes whV2Pencil{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(1.5px,-1.5px,0)}}
@keyframes whV2Bitcoin{0%,100%{transform:translate3d(0,1px,0) rotate(-1deg)}50%{transform:translate3d(0,-2px,0) rotate(1deg)}}
@keyframes whV2AdminCore{0%,100%{transform:scale(.92);opacity:.72}50%{transform:scale(1.08);opacity:1}}

html.triplem-low-power .workspace-card-svg-v2 *,
html.triplem-low-power .workspace-card-svg-v2 .wh-v2-icon{animation:none !important}
@media(prefers-reduced-motion:reduce){
  .workspace-card-svg-v2 *,
  .workspace-card-svg-v2 .wh-v2-icon{animation:none !important;transition:none !important}
}
@media(max-width:820px){
  .workspace-card-art{border-radius:15px}
  .workspace-card-svg-v2 .wh-v2-btc-outer{stroke-width:.45}
}


/* Workspace icon precision pass — 2026-09-16 rev 009 */
.workspace-card-svg-v2 .wh-v2-wallet{transform-origin:80px 80px}
.workspace-card-svg-v2 .wh-v2-wallet-body{fill:url(#wh-v2-main-expenses);stroke:color-mix(in srgb,var(--wh-c1) 66%,var(--panel));stroke-width:1.4}
.workspace-card-svg-v2 .wh-v2-wallet-inner{fill:color-mix(in srgb,var(--panel) 82%,var(--wh-c1) 18%);stroke:color-mix(in srgb,var(--line) 72%,var(--wh-c1));stroke-width:1.05}
.workspace-card-svg-v2 .wh-v2-wallet-pocket{fill:color-mix(in srgb,var(--panel) 58%,var(--wh-c2) 42%);stroke:color-mix(in srgb,#fff 30%,var(--wh-c2));stroke-width:1.1}
.workspace-card-svg-v2 .wh-v2-wallet-bottom{fill:none;stroke:color-mix(in srgb,#fff 34%,var(--wh-c2));stroke-width:1.6;stroke-linecap:round;opacity:.6}
.workspace-card-svg-v2 .wh-v2-wallet-card{display:none!important}

.workspace-card-svg-v2 .wh-v2-inventory{transform-origin:80px 80px}
.workspace-card-svg-v2 .wh-v2-inventory-slot{fill:none;stroke:color-mix(in srgb,#fff 72%,var(--wh-c2));stroke-width:2.1;stroke-linecap:round;opacity:.82}
.workspace-card-svg-v2 .wh-v2-inventory-dot{fill:color-mix(in srgb,var(--wh-c2) 82%,#fff 18%);animation:whV2InventoryDot 3.2s ease-in-out infinite}
.workspace-card-svg-v2 .wh-v2-label,.workspace-card-svg-v2 .wh-v2-scanline{display:none!important}

.workspace-card-svg-v2 .wh-v2-loans{transform-origin:80px 80px}
.workspace-card-svg-v2 .wh-v2-loan-coin-main{fill:url(#wh-v2-main-loans);stroke:color-mix(in srgb,var(--wh-c1) 62%,var(--line));stroke-width:1.25;transform-box:fill-box;transform-origin:center;animation:whV2LoanCoinPulse 3.8s ease-in-out infinite}
.workspace-card-svg-v2 .wh-v2-loan-currency{fill:none;stroke:color-mix(in srgb,#fff 88%,var(--wh-c2));stroke-width:2.7;stroke-linecap:round}
.workspace-card-svg-v2 .wh-v2-loan-hand{fill:none;stroke:color-mix(in srgb,var(--text) 54%,var(--wh-c1));stroke-width:6.5;stroke-linecap:round;stroke-linejoin:round}
.workspace-card-svg-v2 .wh-v2-loan-sleeve{fill:color-mix(in srgb,var(--panel) 70%,var(--wh-c2) 30%);stroke:color-mix(in srgb,var(--wh-c2) 46%,var(--line));stroke-width:1}
.workspace-card-svg-v2 .wh-v2-loan-link{fill:none;stroke:color-mix(in srgb,var(--wh-c2) 72%,var(--text));stroke-width:2.6;stroke-linecap:round;opacity:.8}
.workspace-card-svg-v2 .wh-v2-loan-paper,.workspace-card-svg-v2 .wh-v2-loan-line,.workspace-card-svg-v2 .wh-v2-loan-coin,.workspace-card-svg-v2 .wh-v2-loan-money,.workspace-card-svg-v2 .wh-v2-loan-arrow{display:none!important}

.workspace-card-svg-v2 .wh-v2-bitcoin{transform-origin:80px 80px}
.workspace-card-svg-v2 .wh-v2-btc-motion{transform-box:view-box;transform-origin:80px 80px;animation:whV2BitcoinCentered 5.2s ease-in-out infinite}
.workspace-card-svg-v2 .wh-v2-btc-glow{display:none!important}

@keyframes whV2InventoryDot{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes whV2LoanCoinPulse{0%,100%{transform:scale(.985)}50%{transform:scale(1.025)}}
@keyframes whV2BitcoinCentered{0%,100%{transform:rotate(-.8deg) scale(.992)}50%{transform:rotate(.8deg) scale(1.008)}}

html.triplem-low-power .workspace-card-svg-v2 .wh-v2-inventory-dot,
html.triplem-low-power .workspace-card-svg-v2 .wh-v2-loan-coin-main,
html.triplem-low-power .workspace-card-svg-v2 .wh-v2-btc-motion{animation:none!important}
@media(prefers-reduced-motion:reduce){
 .workspace-card-svg-v2 .wh-v2-inventory-dot,
 .workspace-card-svg-v2 .wh-v2-loan-coin-main,
 .workspace-card-svg-v2 .wh-v2-btc-motion{animation:none!important}
}

/* Workspace icon system V3 — finance-reference redesign — 2026-09-16 rev 010
   Filled finance symbols, restrained theme-adaptive palette, contained micro-motion. */
.workspace-home-card{
  --wh-icon-deep:color-mix(in srgb,var(--primary) 78%,var(--text) 22%);
  --wh-icon-deep-2:color-mix(in srgb,var(--primary) 62%,var(--text) 38%);
  --wh-icon-deep-light:color-mix(in srgb,var(--primary) 48%,var(--panel) 52%);
  --wh-icon-accent:color-mix(in srgb,var(--primary-2) 76%,var(--wh-c2) 24%);
  --wh-icon-accent-2:color-mix(in srgb,var(--primary-2) 54%,var(--wh-c1) 46%);
}
.workspace-card-art{
  overflow:hidden!important;
  contain:paint;
}
.workspace-card-svg-v3{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  overflow:hidden!important;
  contain:paint;
}
.workspace-card-svg-v3 .wh-v3-stage,
.workspace-card-svg-v3 .wh-v3-icon{transform-origin:80px 80px}
.workspace-card-svg-v3 .wh-v3-deep{fill:url(#wh-v3-primary-dashboard)}
.workspace-home-card--dashboard .wh-v3-deep{fill:url(#wh-v3-primary-dashboard)}
.workspace-home-card--expenses .wh-v3-deep{fill:url(#wh-v3-primary-expenses)}
.workspace-home-card--goods .wh-v3-deep{fill:url(#wh-v3-primary-goods)}
.workspace-home-card--audit .wh-v3-deep{fill:url(#wh-v3-primary-audit)}
.workspace-home-card--triplem-ai .wh-v3-deep{fill:url(#wh-v3-primary-triplem-ai)}
.workspace-home-card--assets .wh-v3-deep{fill:url(#wh-v3-primary-assets)}
.workspace-home-card--loans .wh-v3-deep{fill:url(#wh-v3-primary-loans)}
.workspace-home-card--installments .wh-v3-deep{fill:url(#wh-v3-primary-installments)}
.workspace-home-card--notes .wh-v3-deep{fill:url(#wh-v3-primary-notes)}
.workspace-home-card--messages .wh-v3-deep{fill:url(#wh-v3-primary-messages)}
.workspace-home-card--admin .wh-v3-deep{fill:url(#wh-v3-primary-admin)}
.workspace-card-svg-v3 .wh-v3-deep-2{fill:var(--wh-icon-deep-2)}
.workspace-card-svg-v3 .wh-v3-deep-light{fill:var(--wh-icon-deep-light)}
.workspace-card-svg-v3 .wh-v3-accent{fill:var(--wh-icon-accent)}
.workspace-card-svg-v3 .wh-v3-panel{fill:color-mix(in srgb,var(--panel) 90%,#fff 10%)}
.workspace-card-svg-v3 .wh-v3-soft-dot{fill:color-mix(in srgb,var(--wh-icon-accent) 62%,var(--panel));opacity:.72}
.workspace-card-svg-v3 .wh-v3-accent-stroke{
  fill:none;
  stroke:var(--wh-icon-accent);
  stroke-width:4.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.workspace-card-svg-v3 .wh-v3-money-mark,
.workspace-card-svg-v3 .wh-v3-small-money-mark{
  fill:none;
  stroke:color-mix(in srgb,#fff 94%,var(--panel));
  stroke-width:2.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.workspace-card-svg-v3 .wh-v3-small-money-mark{stroke-width:2.2}

/* Dashboard */
.workspace-card-svg-v3 .wh-v3-dashboard-bars rect{
  transform-box:fill-box;
  transform-origin:center bottom;
  animation:whV3Bar 4.2s ease-in-out infinite;
}
.workspace-card-svg-v3 .wh-v3-dashboard-bars rect:nth-child(2){animation-delay:.18s}
.workspace-card-svg-v3 .wh-v3-dashboard-bars rect:nth-child(3){animation-delay:.36s}
.workspace-card-svg-v3 .wh-v3-dashboard-arrow{
  stroke-dasharray:120;
  animation:whV3ArrowDraw 5.2s ease-in-out infinite;
}
.workspace-card-svg-v3 .wh-v3-dashboard-arrowhead{animation:whV3ArrowHead 5.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}

/* Wallet / Expenses */
.workspace-card-svg-v3 .wh-v3-wallet-top{fill:color-mix(in srgb,var(--wh-icon-deep) 88%,var(--panel))}
.workspace-card-svg-v3 .wh-v3-wallet .wh-v3-panel{fill:color-mix(in srgb,var(--panel) 76%,var(--wh-icon-accent) 24%)}
.workspace-card-svg-v3 .wh-v3-money-coin{transform-box:fill-box;transform-origin:center;animation:whV3CoinPulse 3.8s ease-in-out infinite}

/* Inventory */
.workspace-card-svg-v3 .wh-v3-package-seam,
.workspace-card-svg-v3 .wh-v3-package-up{
  fill:none;
  stroke:color-mix(in srgb,#fff 88%,var(--panel));
  stroke-width:2.15;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.workspace-card-svg-v3 .wh-v3-package-tape{animation:whV3InventoryTape 4.6s ease-in-out infinite}

/* Audit */
.workspace-card-svg-v3 .wh-v3-paper-fold{fill:color-mix(in srgb,var(--panel) 76%,var(--wh-icon-accent) 24%)}
.workspace-card-svg-v3 .wh-v3-paper-line{fill:color-mix(in srgb,var(--panel) 72%,var(--wh-icon-accent) 28%)}
.workspace-card-svg-v3 .wh-v3-audit-lens{transform-box:fill-box;transform-origin:center;animation:whV3Lens 4.4s ease-in-out infinite}
.workspace-card-svg-v3 .wh-v3-lens-inner{fill:color-mix(in srgb,var(--panel) 86%,transparent)}
.workspace-card-svg-v3 .wh-v3-lens-bar{fill:var(--wh-icon-deep)}
.workspace-card-svg-v3 .wh-v3-audit-handle{stroke-width:6}

/* AI */
.workspace-card-svg-v3 .wh-v3-ai-network circle{transform-box:fill-box;transform-origin:center;animation:whV3Node 3.6s ease-in-out infinite}
.workspace-card-svg-v3 .wh-v3-ai-network circle:nth-child(2){animation-delay:.25s}
.workspace-card-svg-v3 .wh-v3-ai-network circle:nth-child(3){animation-delay:.5s}
.workspace-card-svg-v3 .wh-v3-ai-network circle:nth-child(4){animation-delay:.75s}
.workspace-card-svg-v3 .wh-v3-ai-network circle:nth-child(5){animation-delay:1s}
.workspace-card-svg-v3 .wh-v3-ai-link{fill:none;stroke:color-mix(in srgb,#fff 76%,var(--wh-icon-accent));stroke-width:2;stroke-linecap:round}
.workspace-card-svg-v3 .wh-v3-ai-label{fill:var(--wh-icon-accent);font:800 27px/1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-1px}

/* Assets */
.workspace-card-svg-v3 .wh-v3-house-roof{animation:whV3AccentBreath 4.2s ease-in-out infinite}
.workspace-card-svg-v3 .wh-v3-assets-coin{transform-box:fill-box;transform-origin:center;animation:whV3CoinFloat 4s ease-in-out infinite}

/* Loans */
.workspace-card-svg-v3 .wh-v3-loan-coin{transform-box:fill-box;transform-origin:center;animation:whV3CoinPulse 4s ease-in-out infinite}
.workspace-card-svg-v3 .wh-v3-handshake-line{fill:none;stroke:color-mix(in srgb,#fff 78%,var(--wh-icon-accent));stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

/* Installments */
.workspace-card-svg-v3 .wh-v3-calendar-grid rect{fill:color-mix(in srgb,var(--panel) 82%,var(--wh-icon-accent) 18%)}
.workspace-card-svg-v3 .wh-v3-install-coin{transform-box:fill-box;transform-origin:center;animation:whV3CoinPulse 4.2s ease-in-out infinite}

/* Notes */
.workspace-card-svg-v3 .wh-v3-note-line{fill:color-mix(in srgb,var(--panel) 72%,var(--wh-icon-accent) 28%)}
.workspace-card-svg-v3 .wh-v3-pencil{transform-origin:104px 107px;animation:whV3Pencil 4.4s ease-in-out infinite}
.workspace-card-svg-v3 .wh-v3-pencil-tip{fill:color-mix(in srgb,var(--text) 52%,var(--panel))}

/* Bitcoin: exact supplied reference geometry; only color and centered micro-motion change. */
.workspace-home-card--bitcoin{
  --wh-icon-accent:color-mix(in srgb,var(--primary) 70%,var(--chart-series-3) 30%);
  --wh-icon-accent-2:color-mix(in srgb,var(--primary-2) 66%,var(--chart-series-5) 34%);
}
.workspace-card-svg-v3 .wh-v3-btc-motion{transform-origin:80px 80px;animation:whV3Bitcoin 5.2s ease-in-out infinite}
.workspace-card-svg-v3 .wh-v3-btc-outer{fill:var(--wh-icon-accent)}
.workspace-card-svg-v3 .wh-v3-btc-mark{fill:color-mix(in srgb,#fff 95%,var(--panel) 5%)}

/* Messages */
.workspace-card-svg-v3 .wh-v3-message-back{transform-box:fill-box;transform-origin:center;animation:whV3Message 4.4s ease-in-out infinite}

/* Admin */
.workspace-card-svg-v3 .wh-v3-admin-gear{transform-origin:112px 102px;animation:whV3Gear 7s ease-in-out infinite}
.workspace-card-svg-v3 .wh-v3-gear-teeth{fill:none;stroke:var(--wh-icon-accent);stroke-width:4.8;stroke-linecap:round}
.workspace-card-svg-v3 .wh-v3-fallback{fill:none;stroke:color-mix(in srgb,#fff 80%,var(--wh-icon-accent));stroke-width:3;stroke-linecap:round}

@keyframes whV3Bar{0%,100%{transform:scaleY(.96)}50%{transform:scaleY(1.025)}}
@keyframes whV3ArrowDraw{0%,14%{stroke-dashoffset:120;opacity:.45}46%,84%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-120;opacity:.5}}
@keyframes whV3ArrowHead{0%,14%{opacity:.45;transform:scale(.94)}46%,84%{opacity:1;transform:scale(1)}100%{opacity:.5;transform:scale(.94)}}
@keyframes whV3CoinPulse{0%,100%{transform:scale(.985)}50%{transform:scale(1.025)}}
@keyframes whV3CoinFloat{0%,100%{transform:translate3d(0,1px,0)}50%{transform:translate3d(0,-1.5px,0)}}
@keyframes whV3InventoryTape{0%,100%{opacity:.78}50%{opacity:1}}
@keyframes whV3Lens{0%,100%{transform:scale(.985)}50%{transform:scale(1.018)}}
@keyframes whV3Node{0%,100%{opacity:.58;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
@keyframes whV3AccentBreath{0%,100%{opacity:.82}50%{opacity:1}}
@keyframes whV3Pencil{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(1px,-1px,0)}}
@keyframes whV3Bitcoin{0%,100%{transform:rotate(-.65deg) scale(.995)}50%{transform:rotate(.65deg) scale(1.005)}}
@keyframes whV3Message{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(1px,1px,0)}}
@keyframes whV3Gear{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}

html.triplem-low-power .workspace-card-svg-v3 *,
html.triplem-low-power .workspace-card-svg-v3 .wh-v3-icon{animation:none!important}
@media(prefers-reduced-motion:reduce){
  .workspace-card-svg-v3 *,
  .workspace-card-svg-v3 .wh-v3-icon{animation:none!important;transition:none!important}
}
@media(max-width:820px){
  .workspace-card-svg-v3 .wh-v3-accent-stroke{stroke-width:4}
  .workspace-card-svg-v3 .wh-v3-money-mark{stroke-width:2.3}
}


/* Triplem VIP Home PNG icon system — 2026-09-16 rev 010
   Static PNG artwork from Assets/logo/icons/. No SVG rendering or icon animation. */
.workspace-card-art{
  position:relative;
  display:grid;
  place-items:center;
  box-sizing:border-box;
  overflow:hidden;
  isolation:isolate;
  border-radius:24px;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(255,255,255,.50);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.52),
    0 7px 20px color-mix(in srgb,var(--text) 6%,transparent);
  -webkit-backdrop-filter:blur(8px) saturate(108%);
  backdrop-filter:blur(8px) saturate(108%);
}
.workspace-card-art::before,
.workspace-card-art::after{content:none!important;display:none!important}
.workspace-card-icon{
  display:block;
  width:78%;
  height:78%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  margin:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  transform:none!important;
  animation:none!important;
  transition:none!important;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
.workspace-card-svg,
.workspace-card-svg-v3{display:none!important}

/* Keep the white glass tile subtle enough to blend with every registered theme. */
html[data-theme="dark"] .workspace-card-art,
body[data-theme="dark"] .workspace-card-art,
.theme-dark .workspace-card-art{
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.17);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 7px 20px rgba(0,0,0,.12);
}
@media(max-width:820px){
  .workspace-card-art{border-radius:15px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
  .workspace-card-icon{width:76%;height:76%}
}
@media(max-width:380px){
  .workspace-card-art{border-radius:13px}
  .workspace-card-icon{width:74%;height:74%}
}
html.triplem-low-power .workspace-card-icon{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){
  .workspace-card-icon{animation:none!important;transition:none!important}
}

/* Triplem VIP Home PNG glass-lens refinement — 2026-09-16 rev 011
   Theme-derived lens tint and exact geometric icon centering. */
.workspace-home-card .workspace-card-art{
  --wh-glass-white:rgba(255,255,255,.34);
  --wh-glass-panel:color-mix(in srgb,var(--panel) 74%,var(--wh-glass-white));
  --wh-glass-tint:color-mix(in srgb,var(--wh-glass-panel) 86%,var(--wh-c1,var(--primary)) 14%);
  --wh-glass-tint-2:color-mix(in srgb,var(--panel-2,var(--panel)) 88%,var(--wh-c2,var(--primary-2,var(--primary))) 12%);
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
  justify-self:center!important;
  margin-inline:auto!important;
  overflow:hidden!important;
  isolation:isolate;
  background:
    linear-gradient(145deg,
      color-mix(in srgb,var(--wh-glass-tint) 90%,rgba(255,255,255,.18)),
      color-mix(in srgb,var(--wh-glass-tint-2) 92%,transparent))!important;
  border:1px solid color-mix(in srgb,var(--wh-c1,var(--primary)) 18%,rgba(255,255,255,.52))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -1px 0 color-mix(in srgb,var(--wh-c1,var(--primary)) 7%,transparent),
    0 8px 24px color-mix(in srgb,var(--wh-c1,var(--primary)) 8%,transparent)!important;
  -webkit-backdrop-filter:blur(12px) saturate(128%)!important;
  backdrop-filter:blur(12px) saturate(128%)!important;
}
.workspace-home-card .workspace-card-art::before{
  content:""!important;
  display:block!important;
  position:absolute;
  z-index:0;
  inset:1px;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.12) 26%,transparent 52%),
    radial-gradient(80% 66% at 82% 88%,color-mix(in srgb,var(--wh-c2,var(--primary)) 10%,transparent),transparent 72%);
  opacity:.78;
  transform:none!important;
  animation:none!important;
}
.workspace-home-card .workspace-card-art::after{
  content:""!important;
  display:block!important;
  position:absolute;
  z-index:0;
  left:12%;
  right:12%;
  top:8%;
  height:1px;
  border-radius:999px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.68),transparent);
  opacity:.62;
  transform:none!important;
  animation:none!important;
}
.workspace-home-card .workspace-card-icon{
  position:absolute!important;
  z-index:2;
  left:50%!important;
  top:50%!important;
  width:76%!important;
  height:76%!important;
  max-width:76%!important;
  max-height:76%!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  transform:translate(-50%,-50%)!important;
  transform-origin:50% 50%!important;
}

/* The same lens recipe follows all themes through their central panel/accent tokens. */
html[data-theme="dark"] .workspace-home-card .workspace-card-art,
body[data-theme="dark"] .workspace-home-card .workspace-card-art,
.theme-dark .workspace-home-card .workspace-card-art{
  --wh-glass-white:rgba(255,255,255,.12);
  border-color:color-mix(in srgb,var(--wh-c1,var(--primary)) 22%,rgba(255,255,255,.20))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    inset 0 -1px 0 color-mix(in srgb,var(--wh-c1,var(--primary)) 10%,transparent),
    0 8px 24px rgba(0,0,0,.11)!important;
}
@media(max-width:820px){
  .workspace-home-card .workspace-card-art{
    -webkit-backdrop-filter:blur(8px) saturate(120%)!important;
    backdrop-filter:blur(8px) saturate(120%)!important;
  }
  .workspace-home-card .workspace-card-icon{
    width:74%!important;
    height:74%!important;
    max-width:74%!important;
    max-height:74%!important;
  }
}
@media(max-width:380px){
  .workspace-home-card .workspace-card-icon{
    width:72%!important;
    height:72%!important;
    max-width:72%!important;
    max-height:72%!important;
  }
}

/* Triplem VIP Home mobile PNG centering fix — 2026-09-16 rev 012
   Low-power/reduced-motion modes must not remove the translate used for geometric centering. */
@media(max-width:820px){
  .workspace-home-card .workspace-card-icon,
  html.triplem-low-power .workspace-home-card .workspace-card-icon{
    left:50%!important;
    top:50%!important;
    margin:0!important;
    transform:translate3d(-50%,-50%,0)!important;
    transform-origin:50% 50%!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .workspace-home-card .workspace-card-icon{
    transform:translate3d(-50%,-50%,0)!important;
  }
}

/* ===== SOURCE: Assets/style/35-build011-refinements.css ===== */
/* Triplem VIP Build 011 refinements — menus, filters, notes, admin photos, loan transactions, PDF affordances. */

/* Elevated action menus must never be clipped by tables/details/cards. */
.expense-tx-menu.is-portal,
.loan-tx-menu.is-portal{
  display:grid!important;
  position:fixed!important;
  min-width:182px;
  padding:7px;
  border:1px solid var(--line-strong)!important;
  border-radius:14px!important;
  background:var(--surface-elevated)!important;
  box-shadow:var(--shadow-strong)!important;
  backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));
  overflow:hidden!important;
  isolation:isolate;
}
.expense-tx-menu.is-portal button,
.loan-tx-menu.is-portal button{
  display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;border-radius:10px;
  background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit;
}
.expense-tx-menu.is-portal button:hover,
.loan-tx-menu.is-portal button:hover{background:var(--surface-hover)}
.expense-tx-menu.is-portal button.is-danger,
.loan-tx-menu.is-portal button.is-danger{color:var(--danger)}

/* Cleaner shared filter surfaces outside Expenses. */
#app .panel:not(#expensesPanel) .compact-filter-row,
#app #goodsPanel .inventory-filter-row{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:8px 0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
#app .panel:not(#expensesPanel) .compact-filter-row .filter-inline-section,
#app #goodsPanel .inventory-filter-row .filter-inline-section{
  background:color-mix(in srgb,var(--surface-soft) 78%,transparent)!important;
  border:1px solid color-mix(in srgb,var(--line) 86%,transparent)!important;
  box-shadow:none!important;
  border-radius:13px!important;
}
#app .panel:not(#expensesPanel) .compact-filter-row .filter-inline-section:is(:hover,:focus-within),
#app #goodsPanel .inventory-filter-row .filter-inline-section:is(:hover,:focus-within){
  background:color-mix(in srgb,var(--surface-hover) 88%,transparent)!important;
  border-color:var(--line-strong)!important;
}
#app .panel:not(#expensesPanel) .filter-chip{
  background:transparent!important;
  box-shadow:none!important;
}
#app .panel:not(#expensesPanel) .filter-chip:has(input:checked){
  background:var(--primary-soft)!important;
  border-color:color-mix(in srgb,var(--primary) 42%,var(--line))!important;
}

/* Notes — refined paper/sticky-note language without cartoonish handwriting. */
#notesList.notes-grid{gap:16px!important;align-items:stretch}
#notesList > .note-grid-card{
  position:relative!important;
  min-height:205px!important;
  padding:22px 20px 24px!important;
  overflow:visible!important;
  border:1px solid color-mix(in srgb,var(--warning) 20%,var(--line-strong))!important;
  border-radius:8px 8px 14px 10px!important;
  background:
    linear-gradient(110deg,color-mix(in srgb,var(--surface-elevated) 92%,var(--warning-soft) 8%),color-mix(in srgb,var(--surface-elevated) 86%,var(--primary-soft) 14%))!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--shadow-color, #0f172a) 12%,transparent),inset 0 1px 0 var(--glass-highlight)!important;
  transform:none!important;
  isolation:isolate;
}
#notesList > .note-grid-card::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;
  background:repeating-linear-gradient(to bottom,transparent 0 31px,color-mix(in srgb,var(--primary) 8%,transparent) 31px 32px);
  opacity:.72;
}
#notesList > .note-grid-card::after{
  content:"";position:absolute;left:8px;right:8px;bottom:-7px;height:12px;pointer-events:none;
  background:linear-gradient(135deg,transparent 6px,color-mix(in srgb,var(--surface-elevated) 92%,var(--warning-soft) 8%) 0) 0 0/14px 12px repeat-x;
  filter:drop-shadow(0 3px 2px color-mix(in srgb,var(--shadow-color, #0f172a) 12%,transparent));
}
#notesList > .note-grid-card:hover,
#notesList > .note-grid-card:focus-visible{
  transform:translateY(-3px)!important;
  border-color:color-mix(in srgb,var(--primary) 45%,var(--line-strong))!important;
  box-shadow:var(--shadow-strong)!important;
  outline:none!important;
}
.note-paper-pencil{
  top:-10px!important;right:15px!important;width:30px!important;height:30px!important;border-radius:9px!important;
  transform:rotate(8deg)!important;font-size:.78rem!important;
  background:var(--primary-gradient)!important;color:var(--on-primary)!important;box-shadow:var(--shadow-soft)!important;
}
.note-paper-head{padding-right:34px!important;gap:8px!important}
.note-grid-title{
  font-family:var(--font,system-ui)!important;font-size:1.02rem!important;font-weight:820!important;line-height:1.32!important;
  color:var(--text-strong)!important;-webkit-line-clamp:2!important;line-clamp:2!important;
}
.note-paper-preview{
  margin:18px 0 16px!important;min-height:82px!important;line-height:26px!important;
  font-family:var(--font,system-ui)!important;font-size:.84rem!important;font-weight:500!important;color:var(--text)!important;
  -webkit-line-clamp:3!important;line-clamp:3!important;
}
.note-paper-foot{padding-top:7px!important;border-top:1px dashed color-mix(in srgb,var(--line-strong) 68%,transparent)!important}
.note-paper-corner{
  width:18px;height:18px;border-radius:2px 2px 6px 2px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface-elevated) 50%,transparent) 48%,color-mix(in srgb,var(--primary-soft) 75%,var(--surface-elevated)) 50%);
  box-shadow:-1px -1px 0 color-mix(in srgb,var(--line) 72%,transparent);
}
.note-workspace-modal .modal-dialog{border-radius:22px!important;overflow:hidden!important}
.note-workspace-modal .modal-head{
  background:linear-gradient(110deg,color-mix(in srgb,var(--surface-elevated) 92%,var(--warning-soft) 8%),color-mix(in srgb,var(--surface-elevated) 90%,var(--primary-soft) 10%))!important;
  border-bottom:1px dashed var(--line-strong)!important;
}
.note-workspace-modal .modal-body{background:var(--modal-bg)!important}
.note-detail-content,
.note-create-dialog .note-textarea,
#noteEditContent{
  min-height:180px!important;
  padding:19px 21px!important;
  border:1px solid color-mix(in srgb,var(--warning) 18%,var(--line-strong))!important;
  border-radius:10px!important;
  background:
    repeating-linear-gradient(to bottom,transparent 0 30px,color-mix(in srgb,var(--primary) 8%,transparent) 30px 31px),
    color-mix(in srgb,var(--surface-elevated) 93%,var(--warning-soft) 7%)!important;
  box-shadow:0 9px 20px color-mix(in srgb,var(--shadow-color, #0f172a) 8%,transparent)!important;
  font-family:var(--font,system-ui)!important;
  font-size:.9rem!important;line-height:31px!important;color:var(--text)!important;
}
.note-create-reminder-card{background:var(--surface-soft)!important;border-color:var(--line)!important}
.note-create-reminder-fields{background:color-mix(in srgb,var(--surface-soft) 85%,transparent)!important}
.note-reminder-toggle-icon,.notes-empty-icon{background:var(--primary-soft)!important;color:var(--primary)!important}
.note-detail-reminder-status{background:var(--warning-soft)!important;border-color:color-mix(in srgb,var(--warning) 32%,var(--line))!important;color:var(--text-strong)!important}
.note-delete-confirm{background:var(--danger-soft)!important;border-color:color-mix(in srgb,var(--danger) 30%,var(--line))!important}

/* Admin photo maintenance — denser presentation + explicit selected deletion. */
.admin-photo-compress-dialog{width:min(940px,calc(100vw - 24px))!important}
.admin-photo-compress-list{gap:9px!important}
.admin-photo-item{padding:10px 11px!important;border-radius:14px!important}
.admin-photo-item-meta{min-width:0!important}
.admin-photo-item-meta strong{display:block;max-width:min(420px,48vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem!important;font-weight:700!important;color:var(--text-strong)!important}
.admin-photo-item-meta span{font-size:.69rem!important;color:var(--muted)!important}
.admin-photo-pane img{max-height:150px!important;object-fit:contain!important}
.admin-unused-photo-panel{padding:11px!important}
.admin-unused-photo-head{align-items:center!important;margin-bottom:9px!important}
.admin-unused-photo-head>div{display:grid;gap:2px;min-width:0}
.admin-unused-photo-head>div>span{max-width:none!important;text-align:left!important;font-size:.7rem!important}
.admin-unused-select-all{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:.73rem;font-weight:750;color:var(--text);cursor:pointer}
.admin-unused-photo-list{display:grid;gap:5px}
.admin-unused-photo-row{
  display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center!important;gap:9px!important;
  padding:8px 9px!important;border:1px solid transparent!important;border-radius:11px;background:transparent!important;cursor:pointer;
}
.admin-unused-photo-row:hover{background:var(--surface-hover)!important}
.admin-unused-photo-row.is-selected{background:var(--primary-soft)!important;border-color:color-mix(in srgb,var(--primary) 30%,var(--line))!important}
.admin-unused-photo-copy{display:grid;gap:1px;min-width:0}
.admin-unused-photo-copy strong{font-size:.76rem!important;font-weight:720!important;color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-unused-photo-copy small{font-size:.66rem!important;color:var(--muted)!important;text-align:left!important}
.admin-unused-photo-copy em{font-style:normal;font-size:.61rem;color:var(--muted);opacity:.72;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Loans — foreground selection modal, clickable rows, elevated row menu, detailed transaction receipt. */
#loanPdfSelectionModal.modal,#loanTransactionDetailModal.modal{z-index:2147482400!important;isolation:isolate!important}
#loanPdfSelectionModal .modal-backdrop,#loanTransactionDetailModal .modal-backdrop{background:var(--overlay-backdrop)!important;backdrop-filter:blur(12px) saturate(1.05)!important;-webkit-backdrop-filter:blur(12px) saturate(1.05)!important}
.loan-transaction-row{cursor:pointer;transition:background .15s ease,box-shadow .15s ease}
.loan-transaction-row:hover,.loan-transaction-row:focus-visible{background:var(--surface-hover)!important;outline:none;box-shadow:inset 3px 0 0 var(--primary)}
.loan-tx-action-wrap{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:5px}
.loan-tx-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:260;min-width:182px;padding:7px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface-elevated);box-shadow:var(--shadow-strong)}
.loan-tx-menu.is-open{display:grid}
.loan-tx-detail-dialog{width:min(720px,calc(100vw - 24px))!important}
.loan-tx-hero{display:flex;align-items:center;gap:15px;padding:17px;border:1px solid var(--line-strong);border-radius:19px;background:var(--banner-bg);box-shadow:var(--shadow-soft)}
.loan-tx-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:var(--primary-gradient);color:var(--on-primary);font-size:1.15rem;box-shadow:var(--theme-glow-shadow)}
.loan-tx-hero small,.loan-tx-hero span{display:block;color:var(--muted)}.loan-tx-hero strong{display:block;color:var(--text-strong);font-size:1.4rem}
.loan-tx-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.loan-tx-detail-grid>div,.loan-tx-note{padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}
.loan-tx-detail-grid small,.loan-tx-note small{display:block;color:var(--muted);font-size:.71rem;margin-bottom:5px}.loan-tx-detail-grid strong{color:var(--text-strong);font-size:.86rem}
.loan-tx-note{margin-top:10px}.loan-tx-note p{margin:0;color:var(--text);white-space:pre-wrap}.loan-tx-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px}

/* PDF affordance — consistent compact document icon, never generic download arrow. */
.fa-file-pdf{font-size:.88em;line-height:1;vertical-align:-.02em}
.icon-btn .fa-file-pdf,.tiny .fa-file-pdf{font-size:.82em}
.pdf-icon-btn{display:inline-flex!important;align-items:center;gap:6px}

@media(max-width:720px){
  #notesList.notes-grid{grid-template-columns:1fr!important;gap:14px!important}
  #notesList > .note-grid-card{min-height:178px!important;padding:19px 17px 22px!important}
  .note-paper-preview{min-height:65px!important;margin:14px 0!important}
  .admin-photo-item-meta strong{max-width:66vw}
  .admin-photo-compress-toolbar{align-items:stretch!important}
  .loan-tx-detail-grid{grid-template-columns:1fr}.loan-tx-actions{justify-content:stretch}.loan-tx-actions .btn{flex:1}
}

/* ===== SOURCE: Assets/style/31-aziz-live-support.css ===== */
/* Build 143 · Optional Aziz visitor AI support. Additive only. */

/* Always-visible compact launcher mode label. */
.landing-live-chat-launcher .landing-live-chat-launcher-label{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  right:-2px!important;
  bottom:calc(100% + 7px)!important;
  top:auto!important;
  opacity:1!important;
  transform:none!important;
  pointer-events:none!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--surface-elevated,#fff) 96%,transparent)!important;
  color:var(--text,#17212b)!important;
  border:1px solid var(--line,rgba(15,23,42,.12))!important;
  box-shadow:0 8px 20px rgba(8,18,36,.14)!important;
  font-size:.57rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
}
.landing-live-chat-launcher.is-aziz-mode .landing-live-chat-launcher-label{
  background:#ffd84a!important;
  color:#121212!important;
  -webkit-text-fill-color:#121212!important;
  border-color:#e6b900!important;
  box-shadow:0 8px 22px rgba(194,151,0,.24)!important;
}
.landing-live-chat-identity.is-aziz .landing-live-chat-identity-icon{
  color:#9a7300!important;
  background:color-mix(in srgb,#ffd84a 22%,var(--surface-elevated))!important;
  border-color:color-mix(in srgb,#d3a900 34%,var(--line))!important;
}

/* Admin > Live Chat Support > Aziz mode. */
.admin-aziz-mode{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px 11px;
  border:1px solid var(--line);
  border-radius:13px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 5%,var(--surface-elevated)),var(--surface-elevated));
  color:var(--text);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.admin-aziz-mode.is-enabled{
  border-color:color-mix(in srgb,#d7aa00 48%,var(--line));
  background:linear-gradient(135deg,color-mix(in srgb,#ffd84a 12%,var(--surface-elevated)),color-mix(in srgb,var(--primary) 4%,var(--surface-elevated)));
  box-shadow:0 10px 28px color-mix(in srgb,#c79b00 10%,transparent);
}
.admin-aziz-mode-icon{
  width:36px;height:36px;border-radius:11px;display:grid;place-items:center;
  background:color-mix(in srgb,var(--primary) 9%,var(--surface-elevated));
  border:1px solid color-mix(in srgb,var(--primary) 16%,var(--line));
  color:var(--primary);
}
.admin-aziz-mode.is-enabled .admin-aziz-mode-icon{
  background:#ffd84a;color:#151515;border-color:#e5b900;
}
.admin-aziz-mode-copy{display:grid;gap:1px;min-width:0}
.admin-aziz-mode-copy>span{font-size:.49rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.admin-aziz-mode-copy>strong{font-size:.72rem;line-height:1.2;color:var(--text)}
.admin-aziz-mode-copy>small{font-size:.53rem;line-height:1.35;color:var(--muted)}
.admin-aziz-switch{position:relative;width:39px;height:22px;display:inline-flex;flex:0 0 auto;cursor:pointer}
.admin-aziz-switch input{position:absolute;opacity:0;pointer-events:none}
.admin-aziz-switch>span{position:absolute;inset:0;border-radius:999px;background:color-mix(in srgb,var(--muted) 24%,var(--surface-soft));border:1px solid var(--line);transition:.18s ease}
.admin-aziz-switch>span::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:var(--surface-elevated);box-shadow:0 2px 7px rgba(0,0,0,.18);transition:.18s ease}
.admin-aziz-switch input:checked+span{background:#ffd84a;border-color:#d8ad00}
.admin-aziz-switch input:checked+span::after{transform:translateX(17px);background:#151515}
.admin-aziz-switch input:focus-visible+span{outline:2px solid color-mix(in srgb,var(--primary) 42%,transparent);outline-offset:2px}
.admin-aziz-switch input:disabled+span{opacity:.58;cursor:wait}
.admin-aziz-mode-note{display:flex;align-items:flex-start;gap:7px;padding:7px 9px;border-radius:10px;background:var(--surface-soft);border:1px solid var(--line);color:var(--muted);font-size:.52rem;line-height:1.42}
.admin-aziz-mode-note i{color:var(--primary);margin-top:1px}

@media(max-width:900px){
  .landing-live-chat-launcher .landing-live-chat-launcher-label{display:inline-flex!important;font-size:.54rem!important;padding:5px 7px!important;bottom:calc(100% + 6px)!important}
}
@media(max-width:520px){
  .admin-aziz-mode{grid-template-columns:34px minmax(0,1fr) auto;padding:9px;gap:8px}
  .admin-aziz-mode-icon{width:32px;height:32px;border-radius:10px}
  .admin-aziz-mode-copy>small{font-size:.5rem}
}

/* ===== SOURCE: Assets/style/32-aziz-chat-agent-polish.css ===== */
/* Build 146 · Aziz concise chat, launcher refinement and compact Live Agent controls. */

/* Keep visitor-chat typography independent from currency-symbol fonts. */
#landingLiveChatPanel .landing-live-chat-message p,
#landingLiveChatPanel .landing-live-chat-message-body,
#landingLiveChatPanel .landing-live-chat-message.is-ai p{
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-variant-numeric:tabular-nums;
}

/* Move the launcher slightly inward and give it a modest size lift. */
.landing-live-chat-launcher{
  right:34px!important;
  width:64px!important;
  height:64px!important;
}
.landing-live-chat-launcher .live-chat-icon-svg{width:29px!important;height:29px!important}
.landing-live-chat-panel{right:34px!important;bottom:101px!important}

/* Aziz uses only the persistent identity strip; remove the redundant status strip. */
#landingLiveChatStatus.hide{display:none!important}

/* Compact top-right Live Agent action inside the Aziz conversation header. */
.landing-live-chat-head-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.landing-live-chat-agent-top{
  min-width:0;
  height:30px;
  padding:0 8px;
  border:1px solid color-mix(in srgb,var(--primary,#2457d6) 22%,var(--line,rgba(15,23,42,.12)));
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  background:color-mix(in srgb,var(--primary,#2457d6) 7%,var(--surface-soft,rgba(148,163,184,.1)));
  color:var(--text,#17212b);
  cursor:pointer;
  font:inherit;
  font-size:.52rem;
  font-weight:850;
  line-height:1;
  white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.landing-live-chat-agent-top i{font-size:.64rem;color:var(--primary,#2457d6)}
.landing-live-chat-agent-top:hover{background:color-mix(in srgb,var(--primary,#2457d6) 12%,var(--surface-soft));border-color:color-mix(in srgb,var(--primary,#2457d6) 34%,var(--line));transform:translateY(-1px)}
.landing-live-chat-agent-top:disabled{opacity:.48;cursor:wait;transform:none}

/* Agent-side end control stays deliberately small and unmistakable. */
.live-support-end-chat-btn{
  min-height:26px!important;
  padding:4px 7px!important;
  gap:4px!important;
  border-color:color-mix(in srgb,var(--danger,#dc2626) 28%,var(--line))!important;
  color:var(--danger,#dc2626)!important;
  background:color-mix(in srgb,var(--danger,#dc2626) 4%,transparent)!important;
}
.live-support-end-chat-btn:hover{background:color-mix(in srgb,var(--danger,#dc2626) 9%,var(--surface-elevated))!important}
.live-support-end-chat-btn i{font-size:.55rem}
.live-support-end-chat-btn span{font-size:.5rem;font-weight:850}

@media(max-width:900px){
  .landing-live-chat-launcher{
    right:16px!important;
    bottom:14px!important;
    width:54px!important;
    height:54px!important;
  }
  .landing-live-chat-launcher .live-chat-icon-svg{width:25px!important;height:25px!important}
  .landing-live-chat-panel{right:6px!important;bottom:74px!important}
  .landing-live-chat-agent-top{height:28px;padding:0 7px;font-size:.49rem}
}

@media(max-width:420px){
  .landing-live-chat-agent-top span{font-size:.47rem}
  .landing-live-chat-agent-top{gap:4px;padding:0 6px}
}

/* Build 153 · authoritative Agent End Chat + visitor presence. */
.live-support-end-chat-btn{
  min-height:32px!important;
  padding:6px 10px!important;
  gap:6px!important;
  border-radius:9px!important;
  border-color:color-mix(in srgb,var(--danger,#dc2626) 38%,var(--line))!important;
  background:color-mix(in srgb,var(--danger,#dc2626) 7%,var(--surface-elevated,transparent))!important;
  color:var(--danger,#dc2626)!important;
  font-weight:850!important;
}
.live-support-end-chat-btn i{font-size:.72rem!important}
.live-support-end-chat-btn span{font-size:.68rem!important;font-weight:850!important;letter-spacing:.01em}
.live-support-end-chat-btn:hover{background:color-mix(in srgb,var(--danger,#dc2626) 13%,var(--surface-elevated))!important}
.live-support-visitor-presence{
  width:max-content;
  max-width:100%;
  margin:7px 0 0!important;
  padding:5px 8px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid color-mix(in srgb,var(--line,#cbd5e1) 72%,transparent);
  background:color-mix(in srgb,var(--surface-soft,rgba(148,163,184,.1)) 78%,transparent);
  font-size:.65rem!important;
  font-weight:750;
  line-height:1.15;
}
.live-support-visitor-presence i{font-size:.52rem}
.live-support-visitor-presence.is-online{color:var(--success,#16803a);border-color:color-mix(in srgb,var(--success,#16803a) 28%,var(--line))}
.live-support-visitor-presence.is-online i{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--success,#16803a) 48%,transparent))}
.live-support-visitor-presence.is-leaving{color:var(--warning,#a16207);border-color:color-mix(in srgb,var(--warning,#a16207) 28%,var(--line))}
.live-support-visitor-presence.is-ended{color:var(--muted,#64748b);border-color:color-mix(in srgb,var(--muted,#64748b) 24%,var(--line))}
.live-support-visitor-presence.is-unknown{color:var(--muted,#64748b)}
.live-support-ended-state{
  min-height:31px;
  padding:6px 10px;
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid color-mix(in srgb,var(--line,#cbd5e1) 76%,transparent);
  background:color-mix(in srgb,var(--surface-soft,rgba(148,163,184,.1)) 75%,transparent);
  color:var(--muted,#64748b);
  font-size:.68rem;
  font-weight:800;
}
.message-float-end-chat{white-space:nowrap}

@media(max-width:900px){
  .live-support-end-chat-btn{min-height:30px!important;padding:5px 8px!important}
  .live-support-end-chat-btn span{font-size:.64rem!important}
  .live-support-visitor-presence{font-size:.61rem!important}
}

/* Build 153 · multilingual message direction and shaping. */
.landing-live-chat-message p[dir="auto"],
.chat-bubble-body[dir="auto"],
.message-float-chat-body[dir="auto"]{
  unicode-bidi:plaintext;
  text-align:start;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:break-word;
}


/* Build 157 · Visitor Chat readability and desktop workspace enlargement.
   These are presentation-only overrides; Aziz routing, regional pricing and
   Agent handoff logic remain unchanged. */
@media(min-width:901px){
  #landingLiveChatPanel.landing-live-chat-panel{
    width:min(470px,calc(100vw - 76px))!important;
    max-height:min(770px,calc(100dvh - 124px))!important;
    border-radius:22px!important;
  }
  #landingLiveChatPanel .landing-live-chat-head{padding:14px 15px 12px!important}
  #landingLiveChatPanel .landing-live-chat-brand strong{font-size:.86rem!important}
  #landingLiveChatPanel .landing-live-chat-brand small{font-size:.62rem!important}
  #landingLiveChatPanel .landing-live-chat-start{padding:15px!important}
  #landingLiveChatPanel .landing-live-chat-intro{font-size:.74rem!important;line-height:1.55!important;margin-bottom:13px!important}
  #landingLiveChatPanel .landing-live-chat-fields label>span{font-size:.62rem!important}
  #landingLiveChatPanel .landing-live-chat-fields .input{font-size:.74rem!important;min-height:41px!important}
  #landingLiveChatPanel .landing-live-chat-start-btn{font-size:.74rem!important;min-height:42px!important}
  #landingLiveChatPanel .landing-live-chat-privacy{font-size:.58rem!important}
  #landingLiveChatPanel .landing-live-chat-messages{
    min-height:290px!important;
    max-height:min(500px,calc(100dvh - 300px))!important;
    padding:12px 12px 6px!important;
    gap:9px!important;
  }
  #landingLiveChatPanel .landing-live-chat-message-row{gap:8px!important;max-width:98%!important}
  #landingLiveChatPanel .landing-live-chat-message{max-width:88%!important;padding:10px 11px!important;border-radius:14px!important}
  #landingLiveChatPanel .landing-live-chat-message p{font-size:.79rem!important;line-height:1.52!important}
  #landingLiveChatPanel .landing-live-chat-thinking p{font-size:.75rem!important}
  #landingLiveChatPanel .landing-live-chat-message-meta{margin-bottom:4px!important}
  #landingLiveChatPanel .landing-live-chat-message-meta strong{font-size:.60rem!important}
  #landingLiveChatPanel .landing-live-chat-message-meta>span{font-size:.54rem!important}
  #landingLiveChatPanel .landing-live-chat-actor-badge{font-size:.47rem!important;padding:2px 6px!important}
  #landingLiveChatPanel .landing-live-chat-avatar{width:29px!important;height:29px!important;flex-basis:29px!important}
  #landingLiveChatPanel .landing-live-chat-reply{grid-template-columns:minmax(0,1fr) 42px!important;gap:8px!important;padding:9px 11px!important}
  #landingLiveChatPanel .landing-live-chat-reply textarea{min-height:42px!important;max-height:112px!important;padding:10px 11px!important;font-size:.77rem!important;line-height:1.42!important}
  #landingLiveChatPanel .landing-live-chat-reply button{width:42px!important;height:42px!important}
  #landingLiveChatPanel .landing-live-chat-expiry{font-size:.55rem!important;padding:6px 10px!important}
}

@media(max-width:900px){
  #landingLiveChatPanel .landing-live-chat-brand strong{font-size:.82rem!important}
  #landingLiveChatPanel .landing-live-chat-brand small{font-size:.60rem!important}
  #landingLiveChatPanel .landing-live-chat-intro{font-size:.70rem!important;line-height:1.52!important}
  #landingLiveChatPanel .landing-live-chat-fields label>span{font-size:.60rem!important}
  #landingLiveChatPanel .landing-live-chat-fields .input{font-size:.72rem!important}
  #landingLiveChatPanel .landing-live-chat-message p{font-size:.86rem!important;line-height:1.52!important}
  #landingLiveChatPanel .landing-live-chat-thinking p{font-size:.80rem!important}
  #landingLiveChatPanel .landing-live-chat-message-meta strong{font-size:.61rem!important}
  #landingLiveChatPanel .landing-live-chat-message-meta>span{font-size:.56rem!important}
  #landingLiveChatPanel .landing-live-chat-reply textarea{font-size:.82rem!important;line-height:1.42!important}
}

/* ===== SOURCE: Assets/style/33-live-chat-records-polish.css ===== */
/* Triplem VIP Build 151 · Admin Live Chat Records final layout polish */
#adminLiveChatRecordsModal.modal,
#adminLiveChatTranscriptModal.modal{
  z-index:21000!important;
  padding:clamp(12px,2vw,26px)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
#adminLiveChatRecordsModal .admin-live-records-sheet{
  width:min(980px,calc(100vw - 32px))!important;
  height:min(86dvh,780px)!important;
  max-height:calc(100dvh - 32px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  overflow:hidden!important;
  border-radius:18px!important;
}
#adminLiveChatRecordsModal .admin-live-records-body{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  gap:10px!important;
  overflow:hidden!important;
  padding:12px!important;
}
#adminLiveChatRecordsModal .admin-live-records-toolbar,
#adminLiveChatRecordsModal .admin-live-record-bulkbar,
#adminLiveChatRecordsModal .admin-live-records-meta{
  flex:0 0 auto!important;
  min-width:0!important;
}
#adminLiveChatRecordsModal .admin-live-records-toolbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:9px!important;
  align-items:center!important;
}
#adminLiveChatRecordsModal .admin-live-record-search{
  min-width:0!important;
  width:100%!important;
}
#adminLiveChatRecordsModal .admin-live-record-bulkbar{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  align-items:center!important;
}
#adminLiveChatRecordsModal .admin-live-record-selected{margin-left:auto!important;white-space:nowrap!important}
#adminLiveChatRecordsModal .admin-live-records-list{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-content:unset!important;
  gap:8px!important;
  padding:2px!important;
  overscroll-behavior:contain!important;
}
#adminLiveChatRecordsModal .admin-live-record-card{
  flex:0 0 auto!important;
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) 70px!important;
  align-items:stretch!important;
  gap:0!important;
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  background:var(--surface-elevated,var(--panel,#fff))!important;
  box-sizing:border-box!important;
}
#adminLiveChatRecordsModal .admin-live-record-check{
  min-width:0!important;
  display:grid!important;
  place-items:center!important;
  border-right:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;
}
#adminLiveChatRecordsModal .admin-live-record-main{
  min-width:0!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:start!important;
  padding:10px 11px!important;
  text-align:left!important;
  overflow:hidden!important;
}
#adminLiveChatRecordsModal .admin-live-record-avatar{width:36px!important;height:36px!important;flex:0 0 36px!important}
#adminLiveChatRecordsModal .admin-live-record-copy,
#adminLiveChatRecordsModal .admin-live-record-top,
#adminLiveChatRecordsModal .admin-live-record-contact,
#adminLiveChatRecordsModal .admin-live-record-preview,
#adminLiveChatRecordsModal .admin-live-record-foot{min-width:0!important;max-width:100%!important}
#adminLiveChatRecordsModal .admin-live-record-top{display:flex!important;justify-content:space-between!important;gap:10px!important;align-items:baseline!important}
#adminLiveChatRecordsModal .admin-live-record-top strong{font-size:.78rem!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#adminLiveChatRecordsModal .admin-live-record-top time{font-size:.62rem!important;white-space:nowrap!important;color:var(--muted)!important}
#adminLiveChatRecordsModal .admin-live-record-contact{font-size:.65rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--muted)!important}
#adminLiveChatRecordsModal .admin-live-record-preview{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.35!important;
  font-size:.69rem!important;
}
#adminLiveChatRecordsModal .admin-live-record-foot{display:flex!important;flex-wrap:wrap!important;gap:5px 9px!important;align-items:center!important;margin-top:3px!important}
#adminLiveChatRecordsModal .admin-live-record-foot em{font-size:.6rem!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#adminLiveChatRecordsModal .admin-live-record-card-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:stretch!important;
  border-left:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;
}
#adminLiveChatRecordsModal .admin-live-record-pdf,
#adminLiveChatRecordsModal .admin-live-record-trash{
  position:static!important;
  inset:auto!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  min-height:100%!important;
  border:0!important;
  border-radius:0!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  color:var(--muted)!important;
  cursor:pointer!important;
}
#adminLiveChatRecordsModal .admin-live-record-pdf{color:var(--primary)!important;border-right:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important}
#adminLiveChatRecordsModal .admin-live-record-pdf:hover{background:color-mix(in srgb,var(--primary) 9%,transparent)!important}
#adminLiveChatRecordsModal .admin-live-record-trash:hover{background:color-mix(in srgb,#dc2626 9%,transparent)!important;color:#dc2626!important}

#adminLiveChatTranscriptModal .admin-live-record-thread-sheet{
  width:min(820px,calc(100vw - 32px))!important;
  height:min(88dvh,790px)!important;
  max-height:calc(100dvh - 32px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  overflow:hidden!important;
  border-radius:18px!important;
}
#adminLiveChatTranscriptModal .admin-live-record-thread-body{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  max-height:none!important;
  gap:10px!important;
  padding:12px!important;
  overflow:hidden!important;
}
#adminLiveChatTranscriptModal .admin-live-record-summary{
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  border-radius:12px!important;
  background:var(--surface-elevated,var(--panel,#fff))!important;
}
#adminLiveChatTranscriptModal .admin-live-record-summary>div{min-width:0!important;padding:9px 10px!important;border:0!important;border-right:1px solid var(--line)!important}
#adminLiveChatTranscriptModal .admin-live-record-summary>div:last-child{border-right:0!important}
#adminLiveChatTranscriptModal .admin-live-record-summary span{font-size:.57rem!important;letter-spacing:.04em!important;color:var(--muted)!important}
#adminLiveChatTranscriptModal .admin-live-record-summary strong{font-size:.7rem!important;line-height:1.25!important;overflow-wrap:anywhere!important}
#adminLiveChatTranscriptModal .admin-live-record-summary small{font-size:.56rem!important;line-height:1.3!important;overflow-wrap:anywhere!important;color:var(--muted)!important}
#adminLiveChatTranscriptModal .admin-live-record-handoffs{flex:0 0 auto!important;max-height:128px!important;overflow:auto!important;border:1px solid var(--line)!important;border-radius:11px!important;padding:8px!important}
#adminLiveChatTranscriptModal .admin-live-record-transcript{
  flex:1 1 auto!important;
  min-height:150px!important;
  max-height:none!important;
  overflow:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-content:unset!important;
  gap:8px!important;
  padding:10px!important;
  border:1px solid var(--line)!important;
  border-radius:13px!important;
  background:color-mix(in srgb,var(--surface-elevated,var(--panel,#fff)) 84%,transparent)!important;
  overscroll-behavior:contain!important;
}
#adminLiveChatTranscriptModal .admin-live-record-msg{
  flex:0 0 auto!important;
  width:auto!important;
  max-width:82%!important;
  min-width:0!important;
  padding:8px 10px!important;
  border:1px solid var(--line)!important;
  border-radius:13px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
#adminLiveChatTranscriptModal .admin-live-record-msg.guest{align-self:flex-start!important;background:color-mix(in srgb,var(--primary) 8%,var(--surface-elevated,var(--panel,#fff)))!important;border-color:color-mix(in srgb,var(--primary) 22%,var(--line))!important}
#adminLiveChatTranscriptModal .admin-live-record-msg.aziz{align-self:flex-end!important;background:color-mix(in srgb,#7c3aed 8%,var(--surface-elevated,var(--panel,#fff)))!important;border-color:color-mix(in srgb,#7c3aed 22%,var(--line))!important}
#adminLiveChatTranscriptModal .admin-live-record-msg.agent{align-self:flex-end!important;background:color-mix(in srgb,#159467 8%,var(--surface-elevated,var(--panel,#fff)))!important;border-color:color-mix(in srgb,#159467 22%,var(--line))!important}
#adminLiveChatTranscriptModal .admin-live-record-msg.support{align-self:center!important;max-width:90%!important;background:color-mix(in srgb,var(--muted) 6%,var(--surface-elevated,var(--panel,#fff)))!important}
#adminLiveChatTranscriptModal .admin-live-record-msg-meta{display:flex!important;justify-content:space-between!important;gap:12px!important;align-items:baseline!important;margin-bottom:4px!important}
#adminLiveChatTranscriptModal .admin-live-record-msg-meta strong{font-size:.65rem!important;overflow-wrap:anywhere!important}
#adminLiveChatTranscriptModal .admin-live-record-msg-meta span{font-size:.53rem!important;white-space:nowrap!important;color:var(--muted)!important}
#adminLiveChatTranscriptModal .admin-live-record-msg p{margin:0!important;font-size:.68rem!important;line-height:1.5!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important}
#adminLiveChatTranscriptModal .admin-live-record-event{flex:0 0 auto!important;max-width:94%!important;overflow:hidden!important}
#adminLiveChatTranscriptModal .admin-live-record-event span{white-space:normal!important;overflow-wrap:anywhere!important}
#adminLiveChatTranscriptModal .admin-live-record-thread-actions{
  flex:0 0 auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:7px!important;
  padding-top:8px!important;
  border-top:1px solid var(--line)!important;
}
#adminLiveChatTranscriptModal .admin-live-record-thread-actions>.btn{height:auto!important;min-height:30px!important;max-height:none!important;padding:6px 10px!important;font-size:.58rem!important}
#adminLiveChatTranscriptModal .admin-live-record-pdf-action{color:var(--primary)!important}

@media(max-width:760px){
  #adminLiveChatRecordsModal.modal,#adminLiveChatTranscriptModal.modal{padding:10px!important}
  #adminLiveChatRecordsModal .admin-live-records-sheet,#adminLiveChatTranscriptModal .admin-live-record-thread-sheet{width:100%!important;height:calc(100dvh - 20px)!important;max-height:calc(100dvh - 20px)!important;border-radius:15px!important}
  #adminLiveChatTranscriptModal .admin-live-record-summary{grid-template-columns:1fr 1fr!important}
  #adminLiveChatTranscriptModal .admin-live-record-summary>div{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
  #adminLiveChatTranscriptModal .admin-live-record-summary>div:nth-child(2n){border-right:0!important}
  #adminLiveChatTranscriptModal .admin-live-record-summary>div:nth-last-child(-n+2){border-bottom:0!important}
  #adminLiveChatTranscriptModal .admin-live-record-msg{max-width:90%!important}
}
@media(max-width:520px){
  #adminLiveChatRecordsModal .admin-live-records-body,#adminLiveChatTranscriptModal .admin-live-record-thread-body{padding:8px!important;gap:8px!important}
  #adminLiveChatRecordsModal .admin-live-records-toolbar{grid-template-columns:minmax(0,1fr)!important}
  #adminLiveChatRecordsModal .admin-live-records-toolbar>.btn{width:100%!important}
  #adminLiveChatRecordsModal .admin-live-record-selected{width:100%!important;margin-left:0!important}
  #adminLiveChatRecordsModal .admin-live-record-card{grid-template-columns:30px minmax(0,1fr) 58px!important}
  #adminLiveChatRecordsModal .admin-live-record-main{grid-template-columns:30px minmax(0,1fr)!important;padding:8px!important;gap:7px!important}
  #adminLiveChatRecordsModal .admin-live-record-avatar{width:29px!important;height:29px!important;flex-basis:29px!important}
  #adminLiveChatRecordsModal .admin-live-record-top{display:grid!important;gap:2px!important}
  #adminLiveChatRecordsModal .admin-live-record-top time{white-space:normal!important}
  #adminLiveChatRecordsModal .admin-live-record-foot em{white-space:normal!important}
  #adminLiveChatTranscriptModal .admin-live-record-summary{grid-template-columns:1fr!important}
  #adminLiveChatTranscriptModal .admin-live-record-summary>div{border-right:0!important;border-bottom:1px solid var(--line)!important}
  #adminLiveChatTranscriptModal .admin-live-record-summary>div:last-child{border-bottom:0!important}
  #adminLiveChatTranscriptModal .admin-live-record-msg{max-width:94%!important}
  #adminLiveChatTranscriptModal .admin-live-record-thread-actions{justify-content:stretch!important}
  #adminLiveChatTranscriptModal .admin-live-record-thread-actions>.btn{flex:1 1 auto!important}
}

/* Build 152: explicit actor titles keep transcript identity unambiguous. */
#adminLiveChatTranscriptModal .admin-live-record-msg-meta strong{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
}
#adminLiveChatTranscriptModal .admin-live-record-msg-meta strong>span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:inherit!important;
  font-size:inherit!important;
}
#adminLiveChatTranscriptModal .admin-live-record-role-badge{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:18px!important;
  padding:2px 6px!important;
  border-radius:999px!important;
  font-style:normal!important;
  font-size:.47rem!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  border:1px solid currentColor!important;
  background:color-mix(in srgb,currentColor 9%,transparent)!important;
}
#adminLiveChatTranscriptModal .admin-live-record-role-badge.guest{color:var(--primary)!important}
#adminLiveChatTranscriptModal .admin-live-record-role-badge.aziz{color:#7c3aed!important}
#adminLiveChatTranscriptModal .admin-live-record-role-badge.agent{color:#159467!important}
#adminLiveChatTranscriptModal .admin-live-record-role-badge.support{color:var(--muted)!important}

/* ===== SOURCE: Assets/style/34-build010-upgrades.css ===== */
/* Triplem VIP Build 010 — focused UX upgrades. All visual values resolve through centralized theme tokens. */

/* Notes — tactile paper language without escaping active theme */
.note-grid-card{
  position:relative;overflow:visible;min-height:190px;padding:22px 20px 18px 30px!important;
  background:
    linear-gradient(90deg,transparent 0 20px,color-mix(in srgb,var(--danger) 26%,transparent) 20px 21px,transparent 21px),
    repeating-linear-gradient(0deg,transparent 0 27px,color-mix(in srgb,var(--line) 68%,transparent) 27px 28px),
    color-mix(in srgb,var(--surface-elevated) 91%,var(--warning-soft) 9%)!important;
  border:1px solid var(--line-strong)!important;box-shadow:var(--shadow)!important;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),97% 100%,93% calc(100% - 5px),89% 100%,84% calc(100% - 6px),79% 100%,74% calc(100% - 5px),69% 100%,64% calc(100% - 7px),59% 100%,53% calc(100% - 5px),48% 100%,42% calc(100% - 6px),36% 100%,30% calc(100% - 5px),24% 100%,18% calc(100% - 6px),12% 100%,6% calc(100% - 5px),0 100%);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.note-grid-card:hover,.note-grid-card:focus-visible{transform:translateY(-4px) rotate(-.25deg);box-shadow:var(--shadow-strong)!important;border-color:var(--primary)!important;outline:none}
.note-grid-card:nth-child(3n+2){transform:rotate(.28deg)}.note-grid-card:nth-child(3n+2):hover{transform:translateY(-4px) rotate(.05deg)}
.note-paper-pencil{position:absolute;right:13px;top:-11px;width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--primary-gradient);color:var(--on-primary);box-shadow:var(--shadow-soft);transform:rotate(11deg)}
.note-paper-head{display:flex;align-items:flex-start;gap:10px;padding-right:30px}.note-grid-title{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;font-weight:800;color:var(--text-strong);line-height:1.35}.note-paper-reminder{margin-left:auto;color:var(--warning);filter:drop-shadow(0 2px 8px var(--warning-soft))}
.note-paper-preview{margin:16px 0 18px;min-height:72px;line-height:28px;color:var(--text);font-family:"Segoe Print","Bradley Hand",cursive;font-size:.88rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.note-paper-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;color:var(--muted);font-size:.72rem}.note-paper-foot i{color:var(--primary)}
.note-detail-dialog .modal-body,.note-create-dialog .modal-body{background:transparent!important}.note-detail-content,.note-create-dialog .note-textarea,#noteEditContent{position:relative;background:repeating-linear-gradient(0deg,transparent 0 30px,color-mix(in srgb,var(--line) 70%,transparent) 30px 31px),color-mix(in srgb,var(--surface-elevated) 92%,var(--warning-soft) 8%)!important;border:1px solid var(--line-strong)!important;border-radius:18px!important;box-shadow:inset 24px 0 0 color-mix(in srgb,var(--danger-soft) 34%,transparent),var(--shadow-soft)!important;padding:22px 24px 22px 38px!important;line-height:31px!important;font-family:"Segoe Print","Bradley Hand",var(--font,system-ui),cursive!important;color:var(--text)!important}
.note-detail-dialog .modal-head,.note-create-dialog .modal-head{border-bottom:1px dashed var(--line-strong)!important}.note-detail-kicker{color:var(--primary)!important}.note-workspace-modal .modal-dialog{box-shadow:var(--shadow-strong)!important}

/* Account logo maintenance + Admin unused photo cleanup */
.account-logo-maintenance-row{display:flex!important;align-items:center;gap:10px;flex-wrap:wrap}.account-logo-maintenance-row .settings-input{flex:1 1 260px}.admin-unused-photo-panel{margin-top:14px;padding:12px;border:1px solid var(--line-strong);border-radius:16px;background:var(--surface-soft);box-shadow:var(--shadow-soft)}
.admin-unused-photo-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.admin-unused-photo-head strong{color:var(--text-strong)}.admin-unused-photo-head span{color:var(--muted);font-size:.76rem;max-width:420px;text-align:right}.admin-unused-photo-row{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border-top:1px dashed var(--line);color:var(--text)}.admin-unused-photo-row small{color:var(--muted);overflow-wrap:anywhere;text-align:right}

/* Expenses — clickable transactions, compact action menu, premium detail receipt */
.expense-tx-row{cursor:pointer;transition:background .16s ease,transform .16s ease}.expense-tx-row:hover,.expense-tx-row:focus-visible{background:var(--surface-hover)!important;outline:none}.expense-tx-row:focus-visible{box-shadow:inset 3px 0 0 var(--primary)}
.expense-tx-action-wrap{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:5px}.expense-tx-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:250;min-width:175px;padding:7px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface-elevated);box-shadow:var(--shadow-strong);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.expense-tx-menu.is-open{display:grid}.expense-tx-menu button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.expense-tx-menu button:hover{background:var(--surface-hover)}.expense-tx-menu button.is-danger{color:var(--danger)}
.expense-tx-detail-dialog{width:min(720px,calc(100vw - 24px))!important}.expense-tx-kicker,.loan-detail-kicker,.dep-method-kicker{margin:0 0 4px;color:var(--primary);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.expense-tx-hero{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--line-strong);border-radius:20px;background:var(--banner-bg);box-shadow:var(--shadow-soft)}.expense-tx-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;background:var(--primary-gradient);color:var(--on-primary);font-size:1.25rem;box-shadow:var(--theme-glow-shadow)}.expense-tx-hero small,.expense-tx-hero span{display:block;color:var(--muted)}.expense-tx-hero strong{display:block;color:var(--text-strong);font-size:1.45rem}.expense-tx-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.expense-tx-detail-grid>div,.expense-tx-note{padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--surface-soft)}.expense-tx-detail-grid small,.expense-tx-note small{display:block;color:var(--muted);font-size:.72rem;margin-bottom:5px}.expense-tx-detail-grid strong{color:var(--text-strong);font-size:.88rem}.expense-tx-note{margin-top:10px}.expense-tx-note p{margin:0;color:var(--text);white-space:pre-wrap}.expense-tx-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px}

/* Loan details + PDF selection */
.loan-detail-pdf-menu-wrap{position:relative}.loan-detail-pdf-menu{display:none;position:absolute;right:0;top:calc(100% + 7px);min-width:205px;padding:7px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface-elevated);box-shadow:var(--shadow-strong);z-index:260}.loan-detail-pdf-menu.is-open{display:grid}.loan-detail-pdf-menu button{display:flex;align-items:center;gap:10px;padding:10px;border:0;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;text-align:left}.loan-detail-pdf-menu button:hover{background:var(--surface-hover)}
.loan-pdf-selection-dialog{width:min(760px,calc(100vw - 24px))!important}.loan-pdf-select-all{display:flex;align-items:center;gap:9px;padding:12px 14px;border-radius:14px;background:var(--primary-soft);color:var(--text-strong);font-weight:750}.loan-pdf-selection-list{display:grid;gap:7px;margin-top:10px;max-height:min(52vh,500px);overflow:auto}.loan-pdf-selection-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);cursor:pointer}.loan-pdf-selection-row:hover{border-color:var(--line-strong);background:var(--surface-hover)}.loan-pdf-selection-row span{display:grid}.loan-pdf-selection-row small{color:var(--muted)}.loan-pdf-selection-row b{color:var(--text-strong)}
#sectionDetailsModal[data-details-kind="loan"] .section-details-note{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--primary-soft);color:var(--text)}

/* Bitcoin — compact command surface and clearer security/send/receive dialogs */
.btc-security-notice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;margin-bottom:12px;border:1px solid var(--warning);border-radius:14px;background:var(--warning-soft);color:var(--text);box-shadow:var(--shadow-soft)}.btc-security-notice>i{color:var(--warning);margin-top:2px}.btc-security-notice p{margin:0;font-size:.75rem;line-height:1.45}
.btc-wallet-access-wrap{width:min(100%,520px)}.btc-wallet-access-trigger{width:100%;display:flex!important;justify-content:space-between;align-items:center;padding:11px 14px!important}.btc-wallet-access-menu{width:min(430px,calc(100vw - 42px));padding:8px!important}.btc-wallet-access-option{display:grid!important;grid-template-columns:34px 1fr;gap:10px;align-items:center;width:100%;padding:9px 10px!important;border:0!important;border-radius:12px!important;background:transparent!important;color:var(--text)!important;text-align:left!important}.btc-wallet-access-option:hover,.btc-wallet-access-option.is-active{background:var(--surface-hover)!important}.btc-wallet-access-option>i{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--primary-soft);color:var(--primary)}.btc-wallet-access-option span{display:grid;gap:2px}.btc-wallet-access-option small{color:var(--muted);font-size:.69rem}
#bitcoinView .card{border-radius:18px!important}#btcLoginSection{background:var(--surface-glass)!important;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--line)!important}
#btcSendModal .modal-dialog,#btcReceiveModal .modal-dialog{border:1px solid var(--line-strong)!important;background:var(--modal-bg)!important;box-shadow:var(--shadow-strong)!important}#btcSendModal .modal-head,#btcReceiveModal .modal-head{background:var(--banner-bg)!important;border-bottom:1px solid var(--line)!important}.btc-send-from-box,.btc-send-preview,.btc-receive-address-chip,.btc-guest-fee-box{border-radius:14px!important;background:var(--surface-soft)!important;border-color:var(--line)!important;box-shadow:none!important}.btc-receive-address-chip.is-selected{border-color:var(--primary)!important;background:var(--primary-soft)!important}

/* Asset + depreciation visual hierarchy */
.asset-card,.dep-asset-card{overflow:visible;border-radius:20px!important;box-shadow:var(--shadow)!important}.asset-card:hover,.dep-asset-card:hover{box-shadow:var(--shadow-strong)!important}.dep-accounting-basis{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 12px;padding:11px 13px;border:1px solid var(--line);border-radius:15px;background:var(--surface-soft);color:var(--muted);font-size:.76rem}.dep-accounting-basis strong{color:var(--text-strong)}.dep-accounting-basis>span{display:inline-flex;align-items:center;gap:5px}.dep-review-due{color:var(--warning)!important;background:var(--warning-soft);padding:5px 8px;border-radius:999px}.dep-usage-summary{display:flex;justify-content:space-between;align-items:center;margin:12px 0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.dep-usage-summary span{color:var(--muted)}.dep-usage-summary strong{color:var(--text-strong)}
.dep-asset-card .asset-card-meta span:first-child{background:var(--primary-soft);color:var(--text);border-color:var(--line-strong)}.dep-summary-card{position:relative;overflow:hidden}.dep-summary-card:after{content:"";position:absolute;width:80px;height:80px;right:-28px;bottom:-34px;border-radius:50%;background:var(--theme-glow-1);filter:blur(2px);pointer-events:none}

@media(max-width:720px){.expense-tx-detail-grid{grid-template-columns:1fr}.expense-tx-actions{justify-content:stretch}.expense-tx-actions .btn{flex:1}.admin-unused-photo-head,.admin-unused-photo-row{display:grid}.admin-unused-photo-head span,.admin-unused-photo-row small{text-align:left}.note-grid-card{min-height:170px}.loan-pdf-selection-row{grid-template-columns:auto 1fr}.loan-pdf-selection-row b{grid-column:2}.btc-wallet-access-wrap{width:100%}}

/* ===== SOURCE: Assets/style/22-landing-hero-polish.css ===== */
/* Triplem VIP landing-page polish — 2026-09-04 build 132
   Visitor-facing only. Intentionally scoped to #lockScreen so authenticated UI is untouched. */

#lockScreen{
  --landing-public-ink:#101828;
  --landing-public-muted:#5f6b7a;
  --landing-public-blue:#2457d6;
  --landing-public-blue-2:#4f7df3;
  --landing-public-navy:#071326;
  --landing-public-navy-2:#0d213d;
  --landing-public-line:rgba(36,87,214,.13);
  color-scheme:light;
  color:var(--landing-public-ink);
  background:
    radial-gradient(780px 520px at 96% 0%,rgba(75,122,244,.16),transparent 72%),
    radial-gradient(620px 480px at 0% 94%,rgba(87,205,225,.10),transparent 72%),
    linear-gradient(155deg,#f5f8ff 0%,#edf3ff 48%,#f8fbff 100%)!important;
}

/* Public header is deliberately independent from any previously saved dashboard theme. */
#lockScreen .landing-nav{
  border:1px solid rgba(255,255,255,.86)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(243,248,255,.82))!important;
  box-shadow:0 18px 48px rgba(18,48,105,.12),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
#lockScreen .landing-brand-mark,
#lockScreen .landing-nav-btn,
#lockScreen .landing-menu-toggle{color:#26364d!important}
#lockScreen .landing-brand-mark .brand-m-triple{color:var(--landing-public-blue)!important}

#lockScreen .landing-nav-cta--signup{
  min-height:40px;
  padding:9px 14px!important;
  border:1px solid rgba(36,87,214,.30)!important;
  background:linear-gradient(135deg,#2457d6,#4f7df3)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(36,87,214,.25),inset 0 1px 0 rgba(255,255,255,.26)!important;
  font-weight:900;
}
#lockScreen .landing-nav-cta--signup:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(36,87,214,.31)!important}
#lockScreen .landing-nav-cta--signup :is(i,span){color:#fff!important}
#lockScreen .landing-nav-login-compact{
  appearance:none;
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:34px;
  padding:6px 9px;
  border:1px solid rgba(36,87,214,.12);
  border-radius:999px;
  background:rgba(255,255,255,.62);
  color:#516079;
  font:inherit;
  font-size:.70rem;
  font-weight:800;
  cursor:pointer;
  transition:.18s ease;
}
#lockScreen .landing-nav-login-compact:hover{color:var(--landing-public-blue);border-color:rgba(36,87,214,.25);background:#fff}
#lockScreen .landing-nav-login-compact:focus-visible{outline:2px solid rgba(36,87,214,.38);outline-offset:2px}

/* Hero: one controlled dark system, with explicit contrast for every child. */
#lockScreen .landing-hero-marketing{
  border-color:rgba(255,255,255,.15)!important;
  background:
    radial-gradient(680px 420px at 96% 2%,rgba(77,124,244,.31),transparent 67%),
    radial-gradient(420px 300px at 3% 100%,rgba(87,205,225,.11),transparent 72%),
    linear-gradient(145deg,#061122 0%,#0b1f3a 56%,#11315a 100%)!important;
  box-shadow:0 34px 88px rgba(3,12,28,.30),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
#lockScreen .landing-hero-marketing .landing-hero-title{overflow:visible!important}
#lockScreen .landing-hero-marketing .landing-brand-name{
  display:block;
  max-width:100%;
  white-space:nowrap;
  overflow:visible;
  color:#f8fbff!important;
  -webkit-text-fill-color:#f8fbff!important;
  text-shadow:0 8px 34px rgba(48,105,232,.18);
  font-size:clamp(2.45rem,5.2vw,4.85rem)!important;
  line-height:.95!important;
  letter-spacing:.035em!important;
}
#lockScreen .landing-hero-marketing .landing-brand-name .brand-m-triple{
  color:#9fc1ff!important;
  -webkit-text-fill-color:#9fc1ff!important;
  text-shadow:0 0 24px rgba(91,140,255,.42);
}
#lockScreen .landing-hero-marketing .landing-tagline{color:#f2f6ff!important;-webkit-text-fill-color:#f2f6ff!important}
#lockScreen .landing-hero-marketing .landing-lead{color:#c4d1e4!important;-webkit-text-fill-color:#c4d1e4!important}
#lockScreen .landing-hero-marketing .landing-eyebrow{
  color:#c9dbff!important;
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(159,193,255,.18)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
#lockScreen .landing-hero-marketing .landing-hero-trust,
#lockScreen .landing-hero-marketing .landing-hero-trust span{color:#c3cfe0!important}
#lockScreen .landing-hero-marketing .landing-hero-trust i{color:#9fc1ff!important}

/* Free sign-up owns the first visual priority. */
#lockScreen #landingHeroTrialBtn.landing-cta--hero-signup{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  min-height:62px!important;
  padding:12px 22px!important;
  border-radius:17px!important;
  background:linear-gradient(135deg,#ffffff 0%,#e9f1ff 48%,#bfd3ff 100%)!important;
  color:#143777!important;
  border:1px solid rgba(255,255,255,.52)!important;
  box-shadow:0 20px 46px rgba(68,119,239,.35),0 0 0 5px rgba(255,255,255,.07),inset 0 1px 0 #fff!important;
}
#lockScreen #landingHeroTrialBtn.landing-cta--hero-signup > span{display:grid;text-align:left;gap:1px}
#lockScreen #landingHeroTrialBtn.landing-cta--hero-signup strong{font-size:1.02rem;line-height:1.05;color:#143777!important}
#lockScreen #landingHeroTrialBtn.landing-cta--hero-signup small{font-size:.66rem;font-weight:800;color:#58709d!important;white-space:nowrap}
#lockScreen #landingHeroTrialBtn.landing-cta--hero-signup i{font-size:1.1rem;color:#2457d6!important}
#lockScreen .landing-hero-marketing .landing-cta--public{
  color:#e7efff!important;
  background:rgba(255,255,255,.065)!important;
  border-color:rgba(255,255,255,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
#lockScreen .landing-hero-marketing .landing-cta--public:hover{color:#fff!important;background:rgba(255,255,255,.11)!important;border-color:rgba(159,193,255,.26)!important}
#lockScreen .landing-member-login{
  appearance:none;
  margin-top:10px;
  padding:5px 2px;
  border:0;
  background:transparent;
  color:#9eacc0;
  font:inherit;
  font-size:.69rem;
  cursor:pointer;
}
#lockScreen .landing-member-login i{margin-right:5px;color:#8096b8}
#lockScreen .landing-member-login strong{color:#dbe7fb!important}
#lockScreen .landing-member-login:hover strong{text-decoration:underline;color:#fff!important}

/* Trial details and fraud alert stay dark-glass inside the dark hero. */
#lockScreen .landing-hero-marketing .landing-info-action{
  color:#e9f1ff!important;
  border-color:rgba(255,255,255,.12)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.045))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 10px 28px rgba(0,0,0,.09)!important;
}
#lockScreen .landing-hero-marketing .landing-info-action:hover,
#lockScreen .landing-hero-marketing .landing-info-action:focus-visible{
  border-color:rgba(159,193,255,.28)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.065))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 14px 30px rgba(0,0,0,.14)!important;
}
#lockScreen .landing-hero-marketing .landing-info-action strong{color:#f5f8ff!important}
#lockScreen .landing-hero-marketing .landing-info-action small{color:#aebed3!important}
#lockScreen .landing-hero-marketing .landing-info-action-arrow{color:#8298b7!important}
#lockScreen .landing-hero-marketing .landing-info-action-icon{color:#a9c7ff!important;background:rgba(63,112,225,.18)!important}
#lockScreen .landing-hero-marketing .landing-info-action--fraud .landing-info-action-icon{color:#ffd18b!important;background:rgba(240,165,0,.14)!important}

/* Offer card replacing fictional wallet data. */
#lockScreen .landing-plan-showcase{
  overflow:hidden;
  padding:16px!important;
  border:1px solid rgba(255,255,255,.70)!important;
  background:
    radial-gradient(360px 220px at 100% 0%,rgba(79,125,243,.13),transparent 70%),
    linear-gradient(155deg,rgba(255,255,255,.97),rgba(232,240,255,.93))!important;
  color:#152238!important;
  box-shadow:0 30px 72px rgba(0,0,0,.27),inset 0 1px 0 #fff!important;
}
#lockScreen .landing-plan-showcase::after{opacity:.48}
#lockScreen .landing-plan-showcase .landing-showcase-brand{color:#1c2b43!important}
#lockScreen .landing-plan-showcase .landing-showcase-live{background:rgba(36,87,214,.08)!important;color:#2457d6!important}
#lockScreen .landing-plan-showcase .landing-showcase-live i{background:#3f70e1!important;box-shadow:0 0 0 3px rgba(63,112,225,.12)!important}
#lockScreen .landing-plan-list{position:relative;z-index:1;display:grid;gap:9px;margin-top:4px}
#lockScreen .landing-plan-option{
  min-width:0;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  padding:12px 13px;
  border:1px solid rgba(36,87,214,.10);
  border-radius:16px;
  background:rgba(255,255,255,.75);
  box-shadow:0 8px 22px rgba(36,87,214,.055),inset 0 1px 0 rgba(255,255,255,.90);
}
#lockScreen .landing-plan-option.is-monthly{background:linear-gradient(145deg,rgba(242,247,255,.96),rgba(255,255,255,.80));border-color:rgba(36,87,214,.15)}
#lockScreen .landing-plan-option.is-yearly{background:linear-gradient(145deg,#fff9e9,#fffef9);border-color:rgba(214,145,0,.24);box-shadow:0 10px 24px rgba(174,116,0,.08),inset 0 1px 0 #fff}
#lockScreen .landing-plan-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#e9f0ff;color:#2457d6;font-size:.92rem}
#lockScreen .landing-plan-option.is-free .landing-plan-icon{background:#e8f8f1;color:#067647}
#lockScreen .landing-plan-option.is-yearly .landing-plan-icon{background:#fff0c6;color:#a76500}
#lockScreen .landing-plan-copy{min-width:0;display:block}
#lockScreen .landing-plan-copy small,
#lockScreen .landing-plan-copy strong,
#lockScreen .landing-plan-copy em{display:block;color:inherit!important}
#lockScreen .landing-plan-copy small{
  width:max-content;
  max-width:100%;
  min-height:24px;
  display:inline-flex!important;
  align-items:center;
  padding:4px 9px;
  border:1px solid rgba(36,87,214,.12);
  border-radius:999px;
  background:#edf3ff!important;
  color:#173f9f!important;
  font-size:.72rem;
  line-height:1.05;
  font-weight:900;
  text-transform:none;
  letter-spacing:.015em;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
}
#lockScreen .landing-plan-option.is-free .landing-plan-copy small{background:#e7f8ef!important;border-color:rgba(6,118,71,.14);color:#05603a!important}
#lockScreen .landing-plan-option.is-monthly .landing-plan-copy small{background:#eaf1ff!important;border-color:rgba(36,87,214,.16);color:#184aa8!important}
#lockScreen .landing-plan-option.is-yearly .landing-plan-copy small{background:#fff0c6!important;border-color:rgba(167,101,0,.18);color:#7b4d00!important}
#lockScreen .landing-plan-copy strong{margin-top:5px;font-size:.94rem;line-height:1.22;color:#17233a!important}
#lockScreen .landing-plan-copy strong b{font-weight:900;color:#2457d6!important}
#lockScreen .landing-plan-option.is-yearly .landing-plan-copy strong b{color:#9a6200!important}
#lockScreen .landing-plan-copy em{margin-top:3px;font-style:normal;font-size:.62rem;font-weight:700;color:#77849a!important}
#lockScreen .landing-plan-badge{padding:5px 8px;border-radius:999px;background:#edf2ff;color:#2457d6!important;font-size:.58rem;font-weight:900;white-space:nowrap}
#lockScreen .landing-plan-option.is-free .landing-plan-badge{background:#e8f8f1;color:#067647!important}
#lockScreen .landing-plan-option.is-yearly .landing-plan-badge{background:#fff0c6;color:#8a5900!important}
#lockScreen .landing-plan-signup{
  position:relative;
  z-index:1;
  width:100%;
  min-height:56px;
  margin-top:11px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border:1px solid rgba(36,87,214,.28);
  border-radius:15px;
  background:linear-gradient(135deg,#2457d6,#4f7df3);
  color:#fff;
  box-shadow:0 16px 32px rgba(36,87,214,.23),inset 0 1px 0 rgba(255,255,255,.22);
  cursor:pointer;
  text-align:left;
  transition:transform .18s ease,box-shadow .18s ease;
}
#lockScreen .landing-plan-signup:hover{transform:translateY(-1px);box-shadow:0 20px 38px rgba(36,87,214,.29),inset 0 1px 0 rgba(255,255,255,.24)}
#lockScreen .landing-plan-signup > span{display:grid;gap:1px}
#lockScreen .landing-plan-signup strong{font-size:.88rem;color:#fff!important}
#lockScreen .landing-plan-signup small{font-size:.62rem;font-weight:700;color:#dce8ff!important}
#lockScreen .landing-plan-signup i{color:#fff!important}
#lockScreen .landing-plan-trust{position:relative;z-index:1;grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-top:9px!important}
#lockScreen .landing-plan-trust span{background:rgba(36,87,214,.055)!important;color:#52627a!important;border:1px solid rgba(36,87,214,.07)}
#lockScreen .landing-plan-trust i{color:#2457d6!important}
#lockScreen .landing-hero-showcase .landing-showcase-note{color:#9eb0c8!important}

/* Light sections keep a stable visitor palette even if a signed-out browser retained a dashboard theme. */
#lockScreen :is(.landing-trial-banner,.landing-seo-pillar,.landing-owner-questions,.landing-surface-card){color:#17233a}
#lockScreen :is(.landing-trial-banner,.landing-seo-pillar,.landing-owner-questions,.landing-surface-card) :is(h1,h2,h3,h4,strong){color:#17233a}
#lockScreen :is(.landing-trial-banner,.landing-seo-pillar,.landing-owner-questions,.landing-surface-card) :is(p,small,li){color:#607087}

/* Mobile and tablet geometry. Keep sign-up visible in the header at every width. */
@media(max-width:1180px){
  #lockScreen .landing-nav-actions{gap:5px}
  #lockScreen .landing-nav-cta--signup{padding:8px 10px!important;font-size:.72rem}
  #lockScreen .landing-nav-login-compact{padding:6px 8px}
}
@media(max-width:960px){
  #lockScreen .landing-nav-cta--signup span{display:inline!important}
  #lockScreen #sendInquiryBtn{display:none!important}
  #lockScreen .landing-nav-login-compact{display:inline-flex}
  #lockScreen .landing-hero-marketing .landing-brand-name{font-size:clamp(2.35rem,8.4vw,4rem)!important}
}
@media(max-width:820px){
  #lockScreen .landing-visitor-alert-control,
  #lockScreen .landing-nav-login-compact{display:none!important}
  #lockScreen .landing-nav{padding:8px!important;gap:7px}
  #lockScreen .landing-brand{min-width:0!important;flex:1 1 auto!important}
  #lockScreen .landing-brand img{width:min(116px,31vw)!important}
  #lockScreen .landing-nav-actions{flex:0 0 auto!important}
  #lockScreen .landing-nav-cta--signup{min-height:36px!important;padding:7px 9px!important;font-size:.68rem!important;gap:5px!important}
  #lockScreen .landing-menu-toggle{min-width:36px!important;padding:8px!important}
  #lockScreen .landing-menu-toggle span{display:none}
  #lockScreen .landing-mobile-signup{background:linear-gradient(135deg,#2457d6,#4f7df3)!important;color:#fff!important;border-color:transparent!important;font-weight:900}
  #lockScreen .landing-mobile-signup i{color:#fff!important}
  #lockScreen .landing-mobile-login{color:#42526a!important;background:rgba(36,87,214,.045)!important}
  #lockScreen .landing-hero-marketing{padding:28px 20px!important}
  #lockScreen .landing-hero-marketing .landing-brand-name{font-size:clamp(2.25rem,10.5vw,3.55rem)!important}
  #lockScreen .landing-hero-marketing .landing-tagline{font-size:1.02rem!important}
  #lockScreen .landing-plan-showcase{max-width:620px;margin-inline:auto}
}
@media(max-width:620px){
  #lockScreen .landing-hero-marketing{padding:23px 15px!important}
  #lockScreen .landing-hero-marketing .landing-brand-name{font-size:clamp(2.05rem,11vw,3.15rem)!important;letter-spacing:.025em!important}
  #lockScreen .landing-hero-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  #lockScreen #landingHeroTrialBtn.landing-cta--hero-signup{grid-column:1/-1;width:100%!important;min-height:60px!important}
  #lockScreen .landing-hero-actions .landing-cta--public{width:100%!important;min-height:42px!important}
  #lockScreen .landing-hero-actions .landing-cta--founder{grid-column:1/-1}
  #lockScreen .landing-member-login{width:100%;text-align:center}
  #lockScreen .landing-hero-info-actions{grid-template-columns:1fr!important;max-width:100%!important}
  #lockScreen .landing-plan-option{grid-template-columns:38px minmax(0,1fr);gap:9px;padding:11px}
  #lockScreen .landing-plan-icon{width:38px;height:38px;border-radius:11px}
  #lockScreen .landing-plan-badge{grid-column:2;justify-self:start;margin-top:-3px}
  #lockScreen .landing-plan-copy small{min-height:22px;padding:4px 8px;font-size:.68rem}
  #lockScreen .landing-plan-copy strong{margin-top:4px;font-size:.88rem}
  #lockScreen .landing-plan-trust{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #lockScreen .landing-plan-trust span{padding:7px 3px!important;font-size:.54rem!important}
}
@media(max-width:460px){
  #lockScreen .landing-brand img{width:min(102px,29vw)!important}
  #lockScreen .landing-nav-cta--signup{font-size:.63rem!important;padding:7px 8px!important}
  #lockScreen .landing-nav-cta--signup span{max-width:78px;line-height:1.08;text-align:center;white-space:normal}
  #lockScreen .landing-hero-marketing .landing-brand-name{font-size:clamp(1.92rem,10.7vw,2.65rem)!important;letter-spacing:.018em!important}
  #lockScreen #landingHeroTrialBtn.landing-cta--hero-signup strong{font-size:.94rem}
  #lockScreen #landingHeroTrialBtn.landing-cta--hero-signup small{font-size:.61rem}
}
@media(max-width:350px){
  #lockScreen .landing-brand img{width:86px!important}
  #lockScreen .landing-nav-cta--signup span{max-width:64px;font-size:.58rem}
  #lockScreen .landing-hero-marketing .landing-brand-name{font-size:1.82rem!important}
  #lockScreen .landing-plan-trust{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){
  #lockScreen .landing-nav-cta--signup,
  #lockScreen .landing-plan-signup{transition:none!important}
}


/* Build 134 — compact public mobile menu. Visitor-only; authenticated navigation is untouched. */
@media(max-width:820px){
  #lockScreen .landing-mobile-menu{
    top:calc(100% + 6px)!important;
    right:0!important;
    left:auto!important;
    width:min(248px,calc(100vw - 16px))!important;
    max-width:calc(100vw - 16px)!important;
    max-height:min(68dvh,450px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    gap:2px!important;
    padding:7px!important;
    border-radius:14px!important;
    border:1px solid rgba(36,87,214,.14)!important;
    background:linear-gradient(155deg,rgba(255,255,255,.985),rgba(241,246,255,.965))!important;
    box-shadow:0 18px 42px rgba(15,34,68,.18),inset 0 1px 0 rgba(255,255,255,.96)!important;
    backdrop-filter:blur(20px) saturate(1.12)!important;
    -webkit-backdrop-filter:blur(20px) saturate(1.12)!important;
    scrollbar-width:thin;
  }
  #lockScreen .landing-mobile-item{
    min-height:33px!important;
    padding:7px 9px!important;
    border-radius:8px!important;
    font-size:.74rem!important;
    font-weight:780!important;
    line-height:1.16!important;
  }
  #lockScreen .landing-mobile-item-cta{margin-top:2px!important}
  #lockScreen .landing-mobile-signup{
    min-height:37px!important;
    padding:8px 9px!important;
    box-shadow:0 8px 18px rgba(36,87,214,.16)!important;
  }
  #lockScreen .landing-mobile-notification-row{
    min-height:35px!important;
    gap:8px!important;
    margin:2px 0 3px!important;
    padding:7px 9px!important;
    border-radius:9px!important;
    font-size:.70rem!important;
  }
  #lockScreen .landing-mobile-divider{margin:3px 5px 2px!important}
  #lockScreen .landing-mobile-projects-summary{min-height:32px!important}
  #lockScreen .landing-mobile-projects-list{gap:1px!important;padding:1px 0 0 5px!important}
  #lockScreen .landing-mobile-projects-list .landing-mobile-item{font-size:.69rem!important;padding:7px 8px!important}
}
@media(max-width:460px){
  #lockScreen .landing-mobile-menu{width:min(232px,calc(100vw - 14px))!important;max-width:calc(100vw - 14px)!important;padding:6px!important}
  #lockScreen .landing-mobile-item{min-height:31px!important;padding:6px 8px!important;font-size:.71rem!important}
  #lockScreen .landing-mobile-notification-row{padding:6px 8px!important;font-size:.67rem!important}
}


/* Build 157 — compact landing region selector beside the privacy badge. */
#lockScreen .landing-eyebrow-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-bottom:8px;
  flex-wrap:wrap;
}
#lockScreen .landing-eyebrow-row .landing-eyebrow{margin-bottom:0!important;}
#lockScreen .landing-region-picker{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border:1px solid rgba(159,193,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
  color:#c9dbff;
  overflow:hidden;
}
#lockScreen .landing-region-picker select{
  appearance:none;
  -webkit-appearance:none;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:inherit!important;
  font:800 .68rem/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em;
  min-height:28px;
  padding:0 27px 0 11px!important;
  cursor:pointer;
}
#lockScreen .landing-region-picker select option{color:#111827;background:#fff;font:600 .78rem/1.2 Inter,system-ui,sans-serif;}
#lockScreen .landing-region-picker > i{
  position:absolute;
  right:9px;
  pointer-events:none;
  font-size:.56rem;
  color:#9fc1ff;
}
@media (max-width:560px){
  #lockScreen .landing-eyebrow-row{gap:6px;}
  #lockScreen .landing-region-picker{min-height:27px;}
  #lockScreen .landing-region-picker select{min-height:27px;font-size:.65rem!important;padding-left:10px!important;}
}

/* ===== SOURCE: Assets/style/36-build012-notes-redesign.css ===== */
/* Triplem VIP Notes refinement — sticky-note cards + compact thermal-receipt typography.
   Cards show the title and a short note preview without decorative duplicate note icons. */

#notesList.notes-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(168px,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}

#notesList > .note-grid-card{
  --note-receipt-font:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  position:relative!important;
  min-width:0!important;
  width:100%!important;
  height:162px!important;
  min-height:162px!important;
  padding:18px 18px 17px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:9px!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,#d7b53f 28%,var(--line-strong))!important;
  border-radius:8px 8px 16px 8px!important;
  clip-path:none!important;
  text-align:left!important;
  color:var(--text-strong)!important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--surface-elevated) 64%,#fff3a8 36%),color-mix(in srgb,var(--surface-elevated) 73%,#f4df7d 27%))!important;
  box-shadow:0 9px 20px rgba(15,23,42,.08),inset 0 1px 0 color-mix(in srgb,#fff 58%,transparent)!important;
  isolation:isolate!important;
  transform:none!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}

/* One restrained folded-paper corner, rather than competing note glyphs. */
#notesList > .note-grid-card::before{content:none!important}
#notesList > .note-grid-card::after{
  content:""!important;
  position:absolute!important;
  right:0!important;
  bottom:0!important;
  left:auto!important;
  top:auto!important;
  width:20px!important;
  height:20px!important;
  opacity:.76!important;
  background:linear-gradient(135deg,transparent 0 49%,color-mix(in srgb,#c9a72f 34%,var(--surface-elevated)) 50% 100%)!important;
  border:0!important;
  filter:drop-shadow(-2px -2px 2px rgba(15,23,42,.05))!important;
  pointer-events:none!important;
}

#notesList > .note-grid-card:hover,
#notesList > .note-grid-card:focus-visible{
  transform:translateY(-2px) rotate(-.2deg)!important;
  border-color:color-mix(in srgb,#c9a72f 58%,var(--primary))!important;
  box-shadow:0 14px 26px rgba(15,23,42,.11),inset 0 1px 0 color-mix(in srgb,#fff 62%,transparent)!important;
  outline:none!important;
}
#notesList > .note-grid-card:active{transform:translateY(0) scale(.987)!important}

#notesList .note-grid-title{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  line-clamp:3!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:anywhere!important;
  color:var(--text-strong)!important;
  font-family:var(--note-receipt-font)!important;
  font-size:.82rem!important;
  font-weight:800!important;
  line-height:1.28!important;
  letter-spacing:.012em!important;
}

#notesList .note-grid-preview{
  width:100%;
  min-width:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  line-clamp:4;
  overflow:hidden;
  text-overflow:ellipsis;
  overflow-wrap:anywhere;
  color:color-mix(in srgb,var(--text) 74%,var(--muted));
  font-family:var(--note-receipt-font)!important;
  font-size:.66rem;
  font-weight:540;
  line-height:1.38;
  letter-spacing:.01em;
  white-space:normal;
}

#notesList .note-grid-reminder{
  position:absolute;
  top:8px;
  right:8px;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));
  background:color-mix(in srgb,var(--surface-elevated) 74%,var(--primary-soft) 26%);
  color:var(--primary);
  font-size:.55rem;
  box-shadow:0 2px 6px rgba(15,23,42,.07);
}
#notesList > .note-grid-card.has-reminder .note-grid-title{padding-right:20px}

/* Retire legacy paper/icon decorations completely. */
#notesList .note-card-mark,
#notesList .note-paper-pencil,
#notesList .note-paper-head,
#notesList .note-paper-preview,
#notesList .note-paper-foot,
#notesList .note-paper-corner,
#notesList .note-paper-reminder{display:none!important}

/* Notes overlays: smaller, calmer typography on desktop and mobile. */
.note-workspace-modal .modal-dialog{
  --note-receipt-font:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  border-radius:18px!important;
  overflow:hidden!important;
  background:var(--modal-bg)!important;
  border:1px solid var(--line-strong)!important;
  box-shadow:var(--shadow-strong)!important;
}
.note-create-dialog{width:min(610px,calc(100vw - 32px))!important}
.note-detail-dialog{width:min(630px,calc(100vw - 32px))!important}
.note-workspace-modal .modal-head{
  position:relative!important;
  padding-top:12px!important;
  padding-bottom:10px!important;
  background:linear-gradient(135deg,var(--surface-elevated),color-mix(in srgb,var(--surface-elevated) 90%,#fff0a3 10%))!important;
  border-bottom:1px solid var(--line)!important;
}
.note-workspace-modal .modal-head::after{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,color-mix(in srgb,#c8a52d 60%,var(--primary)),transparent 76%);
  opacity:.34;
  pointer-events:none;
}
.note-workspace-modal .modal-head h3,
.note-detail-heading h3{
  font-family:var(--note-receipt-font)!important;
  font-size:.94rem!important;
  font-weight:800!important;
  line-height:1.24!important;
  letter-spacing:.006em!important;
}
.note-workspace-modal .modal-head .help,
#noteDetailMeta{font-size:.64rem!important;line-height:1.35!important}
.note-detail-kicker{font-size:.58rem!important;letter-spacing:.07em!important;margin-bottom:2px!important}
.note-workspace-modal .modal-body{font-size:.75rem!important}
.note-workspace-modal .field>label{font-size:.66rem!important}
.note-workspace-modal :is(.input,textarea,input){font-size:.75rem}
#noteCreateTitleInput,
#noteEditTitleInput,
.note-create-dialog .note-textarea,
#noteEditContent,
.note-detail-content{
  font-family:var(--note-receipt-font)!important;
}
#noteCreateTitleInput,
#noteEditTitleInput{font-weight:760!important;letter-spacing:.006em!important}
.note-create-dialog .note-textarea,
#noteEditContent{
  min-height:145px!important;
  font-size:.75rem!important;
  line-height:1.55!important;
  resize:vertical;
  background:
    repeating-linear-gradient(to bottom,transparent 0 21px,color-mix(in srgb,#c8a52d 7%,transparent) 21px 22px),
    color-mix(in srgb,var(--surface-soft) 93%,#fff0a3 7%)!important;
  border:1px solid var(--line)!important;
  border-radius:11px!important;
  color:var(--text)!important;
}
.note-detail-content{
  min-height:155px!important;
  max-height:min(48vh,400px)!important;
  padding:13px 14px!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  border:1px solid var(--line)!important;
  border-radius:11px!important;
  background:
    repeating-linear-gradient(to bottom,transparent 0 20px,color-mix(in srgb,#c8a52d 8%,transparent) 20px 21px),
    color-mix(in srgb,var(--surface-soft) 91%,#fff0a3 9%)!important;
  color:var(--text)!important;
  font-size:.74rem!important;
  font-weight:520!important;
  line-height:1.55!important;
  letter-spacing:.005em!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
}
.note-field-hint{font-size:.62rem!important}
.note-reminder-toggle-copy strong{font-size:.75rem!important}
.note-reminder-toggle-copy small{font-size:.63rem!important}
.note-detail-reminder-status{font-size:.67rem!important;padding:8px 10px!important}
.note-detail-actions{gap:6px!important;margin-top:10px!important;padding-top:10px!important}
.note-detail-actions .btn,
.note-create-footer .btn,
.note-edit-footer .btn{min-height:32px!important;padding:6px 10px!important;font-size:.68rem!important;border-radius:9px!important}

@media(max-width:720px){
  #notesList.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  #notesList > .note-grid-card{
    height:138px!important;
    min-height:138px!important;
    padding:14px 12px 13px!important;
    gap:7px!important;
    border-radius:7px 7px 14px 7px!important;
  }
  #notesList .note-grid-title{font-size:.72rem!important;line-height:1.25!important;-webkit-line-clamp:3!important;line-clamp:3!important}
  #notesList .note-grid-preview{font-size:.58rem!important;line-height:1.34!important;-webkit-line-clamp:4;line-clamp:4}
  #notesList .note-grid-reminder{top:6px;right:6px;width:18px;height:18px;font-size:.5rem}

  .note-workspace-modal.modal{padding:14px!important}
  .note-create-dialog,
  .note-detail-dialog{width:calc(100vw - 28px)!important;max-height:calc(100dvh - 28px)!important;border-radius:16px!important}
  .note-workspace-modal .modal-head{padding:10px 11px 8px!important}
  .note-workspace-modal .modal-head h3,
  .note-detail-heading h3{font-size:.84rem!important}
  .note-workspace-modal .modal-head .help,
  #noteDetailMeta{font-size:.58rem!important}
  .note-workspace-modal .modal-body{padding:10px!important;font-size:.7rem!important}
  .note-workspace-modal .field>label{font-size:.61rem!important}
  #noteCreateTitleInput,#noteEditTitleInput{font-size:.69rem!important;min-height:34px!important}
  .note-create-dialog .note-textarea,#noteEditContent{min-height:128px!important;font-size:.68rem!important;line-height:1.5!important}
  .note-detail-content{min-height:135px!important;max-height:43vh!important;padding:11px 12px!important;font-size:.67rem!important;line-height:1.52!important}
  .note-create-reminder-fields{grid-template-columns:1fr!important}
  .note-detail-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
  .note-detail-actions .btn{width:100%!important;margin:0!important;min-height:30px!important;padding:5px 7px!important;font-size:.62rem!important}
  .note-create-footer .btn,.note-edit-footer .btn{flex:1 1 0;min-height:30px!important;font-size:.62rem!important}
}

@media(max-width:360px){
  #notesList.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  #notesList > .note-grid-card{height:130px!important;min-height:130px!important;padding:12px 10px 11px!important}
  #notesList .note-grid-title{font-size:.66rem!important}
  #notesList .note-grid-preview{font-size:.54rem!important;-webkit-line-clamp:4;line-clamp:4}
  .note-workspace-modal.modal{padding:12px!important}
  .note-create-dialog,.note-detail-dialog{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important}
}

@media(prefers-reduced-motion:reduce){#notesList > .note-grid-card{transition:none!important}}


/* Build 001 Notes search cleanup: the shared filter container is useful in
   filter-heavy sections, but Notes only has Search and should not render a
   full-width background band. */
#notesPanel .filter-inline-row.compact-filter-row,
#notesPanel .filter-inline-row.compact-filter-row .compact-filter-main{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
#notesPanel .filter-inline-row.compact-filter-row{
  padding-left:0 !important;
  padding-right:0 !important;
}

/* 2026-09-15 Notes controls refinement: Notes uses a single search control and
   compact note actions, so shared filter/footer chrome must not create bands. */
#notesPanel .filter-inline-row.compact-filter-row,
#notesPanel .filter-inline-row.compact-filter-row .compact-filter-main,
#notesPanel .filter-inline-row.compact-filter-row .filter-inline-section,
#notesPanel .filter-inline-row.compact-filter-row .compact-filter-search{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
#notesPanel .filter-inline-row.compact-filter-row{
  padding:2px 0 0!important;
}
#notesPanel .filter-inline-row.compact-filter-row .compact-filter-main,
#notesPanel .filter-inline-row.compact-filter-row .filter-inline-section{
  padding:0!important;
}
#notesPanel .filter-inline-row.compact-filter-row .filter-inline-section::before,
#notesPanel .filter-inline-row.compact-filter-row .filter-inline-section::after{
  display:none!important;
  content:none!important;
}

/* Keep New Note, Shortcuts and Actions visually equal and precisely aligned. */
#notesPanel .notes-section-head .title-row{
  align-items:center!important;
  gap:6px!important;
}
#notesPanel .notes-head-actions{
  align-self:flex-start!important;
  align-items:center!important;
  gap:6px!important;
  margin-left:auto!important;
}
#notesPanel :is(
  #newNoteBtn,
  #notesShortcutsBtn,
  .title-row .menu-trigger[data-entry-menu="notes"]
){
  min-height:29px!important;
  height:29px!important;
  width:auto!important;
  padding:0 9px!important;
  margin:0!important;
  border-radius:8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  font-size:.66rem!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#notesPanel :is(#newNoteBtn,#notesShortcutsBtn,.title-row .menu-trigger[data-entry-menu="notes"]) i{
  font-size:.66rem!important;
}

/* Create/Edit action row: no sticky gradient band, just two small centered controls. */
.note-workspace-modal :is(.note-create-footer,.note-edit-footer){
  position:static!important;
  inset:auto!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  margin:7px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  z-index:auto!important;
}
.note-workspace-modal :is(.note-create-footer,.note-edit-footer) .btn{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:88px!important;
  max-width:124px!important;
  min-height:29px!important;
  height:29px!important;
  margin:0!important;
  padding:0 11px!important;
  border-radius:8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  font-size:.64rem!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.note-workspace-modal :is(.note-create-footer,.note-edit-footer) .btn i{
  font-size:.62rem!important;
}

@media(max-width:720px){
  #notesPanel .notes-section-head .section-head-top{gap:8px!important}
  #notesPanel :is(#newNoteBtn,#notesShortcutsBtn,.title-row .menu-trigger[data-entry-menu="notes"]){
    min-height:28px!important;
    height:28px!important;
    padding-inline:8px!important;
    font-size:.63rem!important;
  }
  .note-workspace-modal :is(.note-create-footer,.note-edit-footer) .btn{
    flex:0 0 auto!important;
    min-width:84px!important;
    height:28px!important;
    min-height:28px!important;
    padding-inline:9px!important;
    font-size:.61rem!important;
  }
}

/* 2026-09-15 Notes band removal v2: Notes no longer reuses shared filter/footer
   surface classes. These dedicated rows are layout-only by construction. */
#notesPanel .notes-search-row,
#notesPanel .notes-search-control{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
#notesPanel .notes-search-row{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  margin:0!important;
  padding:2px 0 0!important;
}
#notesPanel .notes-search-control{
  display:flex!important;
  flex:1 1 auto!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  padding:0!important;
}
#notesPanel .notes-search-label{
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  color:var(--muted)!important;
  font-size:.62rem!important;
  font-weight:700!important;
  letter-spacing:.03em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
#notesPanel .notes-search-input{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:28px!important;
  height:28px!important;
  margin:0!important;
  padding:2px 8px!important;
  border-radius:7px!important;
  font-size:.74rem!important;
}

.note-workspace-modal .note-action-row{
  grid-column:1 / -1!important;
  position:static!important;
  inset:auto!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  width:100%!important;
  margin:7px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  z-index:auto!important;
}
.note-workspace-modal .note-action-row::before,
.note-workspace-modal .note-action-row::after{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
}
.note-workspace-modal .note-action-row .btn{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:88px!important;
  max-width:124px!important;
  min-height:29px!important;
  height:29px!important;
  margin:0!important;
  padding:0 11px!important;
  border-radius:8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  font-size:.64rem!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:720px){
  #notesPanel .notes-search-row{padding-top:1px!important}
  #notesPanel .notes-search-label{font-size:.6rem!important}
  #notesPanel .notes-search-input{height:28px!important;min-height:28px!important;font-size:.7rem!important}
  .note-workspace-modal .note-action-row .btn{
    min-width:84px!important;
    height:28px!important;
    min-height:28px!important;
    padding-inline:9px!important;
    font-size:.61rem!important;
  }
}

/* ===== SOURCE: Assets/style/37-build013-filter-cleanup.css ===== */
/* Triplem VIP Build 013 — clean finance filters.
   Filter wrappers are layout-only. The actual form controls remain themed surfaces. */

html.triplem-workspace-themed #app :is(
  #expensesPanel,
  #givenPanel,
  #receivedPanel,
  #takenPanel,
  #returnedPanel,
  #installmentsPanel,
  #assetsPanel
) :is(.compact-filter-row,.compact-filter-main){
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

html.triplem-workspace-themed #app :is(
  #expensesPanel,
  #givenPanel,
  #receivedPanel,
  #takenPanel,
  #returnedPanel,
  #installmentsPanel,
  #assetsPanel
) .compact-filter-row .filter-inline-section{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

html.triplem-workspace-themed #app :is(
  #expensesPanel,
  #givenPanel,
  #receivedPanel,
  #takenPanel,
  #returnedPanel,
  #installmentsPanel,
  #assetsPanel
) .compact-filter-row .filter-inline-section:is(:hover,:focus-within,:active){
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}

/* Keep only the real controls as visible filter surfaces. */
html.triplem-workspace-themed #app :is(
  #expensesPanel,
  #givenPanel,
  #receivedPanel,
  #takenPanel,
  #returnedPanel,
  #installmentsPanel,
  #assetsPanel
) .compact-filter-row :is(.filter-inline-input,.filter-inline-select,.filter-inline-date){
  background:var(--control-bg)!important;
  color:var(--text)!important;
  border:1px solid var(--line)!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--glass-highlight) 32%,transparent)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

html.triplem-workspace-themed #app :is(
  #expensesPanel,
  #givenPanel,
  #receivedPanel,
  #takenPanel,
  #returnedPanel,
  #installmentsPanel,
  #assetsPanel
) .compact-filter-row :is(.filter-inline-input,.filter-inline-select,.filter-inline-date):is(:hover,:focus,:focus-visible){
  background:var(--control-hover)!important;
  border-color:var(--line-strong)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 11%,transparent)!important;
}

/* Assets status is one compact dropdown instead of a row of chips. */
#assetsPanel :is(.asset-status-filter-select,.dep-asset-status-filter-select){
  min-width:106px!important;
  max-width:124px!important;
}

/* No rounded filter band at section boundaries. */
#expensesPanel .section-head,
#givenPanel .section-head,
#receivedPanel .section-head,
#takenPanel .section-head,
#returnedPanel .section-head,
#installmentsPanel .section-head,
#assetsPanel .section-head{
  overflow:visible;
}

/* ===== SOURCE: Assets/style/38-build014-inventory-overview-polish.css ===== */
/* Triplem VIP Build 014 — inventory filter cleanup + deterministic overview chevrons. */

/* Inventory filters are layout-only. Remove the card-like band and section bubbles. */
html.triplem-workspace-themed #app #goodsPanel .inventory-filter-row,
html.triplem-workspace-themed #app #goodsPanel .inventory-filter-row .filter-inline-section {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html.triplem-workspace-themed #app #goodsPanel .inventory-filter-row .filter-inline-section:is(:hover,:focus-within,:active) {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
html.triplem-workspace-themed #app #goodsPanel .inventory-filter-row :is(.filter-inline-input,.filter-inline-select) {
  background: var(--control-bg) !important;
  color: var(--text) !important;
  border: 1px solid var(--line) !important;
  box-shadow: inset 0 1px 0 color-mix(in srgb,var(--glass-highlight) 32%,transparent) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html.triplem-workspace-themed #app #goodsPanel .inventory-filter-row :is(.filter-inline-input,.filter-inline-select):is(:hover,:focus,:focus-visible) {
  background: var(--control-hover) !important;
  border-color: var(--line-strong) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb,var(--primary) 11%,transparent) !important;
}
#goodsPanel .inventory-filter-layout {
  flex: 0 0 auto !important;
}
#goodsPanel .inventory-layout-select {
  min-width: 104px !important;
  max-width: 128px !important;
}
@media (max-width:560px) {
  #goodsPanel .inventory-filter-layout { flex: 0 0 auto !important; }
  #goodsPanel .inventory-layout-select { width:auto !important; min-width:100px !important; }
}

/* Overview chevrons: no hover spin. A right chevron turns down exactly 90° only when open. */
#toggleWalletsBtn.overview-expand-btn,
#toggleMainOverviewBtn.overview-expand-btn,
#toggleWalletsBtn.overview-expand-btn:hover,
#toggleMainOverviewBtn.overview-expand-btn:hover,
.wallets-overview-section.expanded #toggleWalletsBtn.overview-expand-btn,
.main-overview-section.expanded #toggleMainOverviewBtn.overview-expand-btn {
  transform: none !important;
}
.overview-expand-btn {
  transition: background-color .18s ease, color .18s ease, border-color .18s ease !important;
}
.overview-expand-chevron {
  display:inline-block;
  transform:rotate(0deg);
  transform-origin:50% 50%;
  transition:transform .18s ease;
  will-change:transform;
}
.overview-expand-btn:hover .overview-expand-chevron {
  transform:rotate(0deg);
}
.overview-expand-btn[aria-expanded="true"] .overview-expand-chevron,
.overview-expand-btn[aria-expanded="true"]:hover .overview-expand-chevron {
  transform:rotate(90deg);
}
@media (prefers-reduced-motion: reduce) {
  .overview-expand-chevron { transition:none !important; }
}

/* ===== SOURCE: Assets/style/39-assets-depreciation-fixes.css ===== */
/* Build 015 — Assets purchase-wallet + depreciation preview/report polish.
   Uses only centralized semantic theme tokens. */

html.triplem-workspace-themed :is(#assetFormModal,#depAssetFormModal) .asset-wallet-help{
  color:var(--muted) !important;
}

html.triplem-workspace-themed #depAssetFormModal .dep-form-preview{
  background:var(--surface-soft) !important;
  border-color:var(--glass-border) !important;
  color:var(--text) !important;
  box-shadow:inset 0 1px 0 var(--glass-highlight) !important;
}

html.triplem-workspace-themed #depAssetFormModal .dep-preview-grid > div{
  min-width:0;
  padding:10px 11px;
  border:1px solid var(--glass-border) !important;
  border-radius:12px;
  background:var(--card-bg) !important;
  background-image:none !important;
  color:var(--text) !important;
  box-shadow:var(--shadow),inset 0 1px 0 var(--glass-highlight) !important;
  backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));
}

html.triplem-workspace-themed #depAssetFormModal .dep-preview-grid small{
  color:var(--muted) !important;
}

html.triplem-workspace-themed #depAssetFormModal .dep-preview-grid strong{
  color:var(--text-strong,var(--text)) !important;
}

.dep-asset-card .asset-card-dropdown .dep-pdf-menu-item i{
  width:1.05em;
  text-align:center;
}

/* Build 016 — keep the desktop ambient motion on phones that were classified
   low-power only because of memory/CPU heuristics. Explicit reduced-motion
   preferences remain respected. */
@media (prefers-reduced-motion: no-preference){
  html.triplem-low-power .floating-circles .circle{
    animation-name:floatMove !important;
    animation-duration:18s !important;
    animation-timing-function:ease-in-out !important;
    animation-iteration-count:infinite !important;
    animation-direction:alternate !important;
    will-change:transform,opacity !important;
  }
  html.triplem-low-power .floating-circles .circle:nth-child(1){animation-duration:20s !important;animation-delay:0s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(2){animation-duration:17s !important;animation-delay:-2s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(3){animation-duration:22s !important;animation-delay:-5s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(4){animation-duration:19s !important;animation-delay:-1s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(5){animation-duration:16s !important;animation-delay:-4s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(6){animation-duration:21s !important;animation-delay:-3s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(7){animation-duration:15s !important;animation-delay:-6s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(8){animation-duration:23s !important;animation-delay:-2.5s !important}
  html.triplem-low-power .floating-circles .circle:nth-child(9){animation-duration:18s !important;animation-delay:-7s !important}

  html.triplem-low-power .summary-watermark-wallet-logo{
    animation:wallet-card-watermark-pulse 4.6s ease-in-out infinite !important;
    will-change:transform,opacity !important;
  }
  html.triplem-low-power .wallet-float-watermark .wallet-float-logo{
    animation-name:var(--wallet-drift,wallet-drift-0) !important;
    animation-duration:var(--d,22s) !important;
    animation-timing-function:ease-in-out !important;
    animation-delay:var(--delay,0s) !important;
    animation-iteration-count:infinite !important;
    animation-direction:alternate !important;
    will-change:transform,opacity !important;
    opacity:.055 !important;
  }
}

/* Native wallet selectors carry the currency code on every wallet option so
   AED.ttf and SAR.otf are used only for their own explicit currency. USD stays
   on the normal UI font even though its glyph is also $. */
#assetFormWallet option[data-currency="AED"],
#depAssetFormWallet option[data-currency="AED"]{font-family:"TriplemCurrencyAED",Inter,system-ui,sans-serif !important}
#assetFormWallet option[data-currency="SAR"],
#depAssetFormWallet option[data-currency="SAR"]{font-family:"TriplemCurrencySAR",Inter,system-ui,sans-serif !important}
#assetFormWallet option[data-currency="USD"],
#depAssetFormWallet option[data-currency="USD"],
#assetFormWallet option[data-currency="PKR"],
#depAssetFormWallet option[data-currency="PKR"],
#assetFormWallet option[data-currency="BTC"],
#depAssetFormWallet option[data-currency="BTC"]{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important}


/* Build 001 requested motion repair: keep Expenses ambient motion composited on
   phones while preserving explicit reduced-motion accessibility preferences. */
@media (prefers-reduced-motion: no-preference){
  #expensesPanel .summary-watermark-wallet-logo{
    transform-origin:50% 50% !important;
    animation:expense-wallet-logo-breathe 4.2s ease-in-out infinite !important;
    animation-play-state:running !important;
    will-change:transform,opacity !important;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
  #expensesPanel .wallet-float-watermark .wallet-float-logo{
    animation-name:var(--wallet-drift,wallet-drift-0) !important;
    animation-duration:var(--d,22s) !important;
    animation-delay:var(--delay,0s) !important;
    animation-timing-function:ease-in-out !important;
    animation-iteration-count:infinite !important;
    animation-direction:alternate !important;
    animation-play-state:running !important;
    will-change:transform,opacity !important;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
  html.triplem-low-power #expensesPanel .wallet-float-watermark .wallet-float-logo{
    opacity:.055 !important;
  }
  html.triplem-low-power .floating-circles .circle{
    animation-play-state:running !important;
    transform:translate3d(0,0,0);
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
}

@keyframes expense-wallet-logo-breathe{
  0%,100%{transform:translate3d(0,0,0) scale(.93);opacity:.075}
  50%{transform:translate3d(0,0,0) scale(1.075);opacity:.12}
}

/* ===== SOURCE: Assets/style/40-account-security-session-refinement.css ===== */
/* Triplem VIP Account Security session/history refinement v146. */
.account-security-session-actions{margin:2px 0 4px}.account-security-danger-action{color:var(--danger,#b42318)!important;border-color:color-mix(in srgb,var(--danger,#b42318) 22%,var(--line,rgba(15,23,42,.12)))!important;background:color-mix(in srgb,var(--danger,#b42318) 4%,var(--surface,#fff))!important}.account-security-danger-action i{color:inherit!important}.account-security-history summary>span:last-child{min-width:24px;height:22px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary,#2457d6) 9%,var(--surface,#fff));color:var(--primary,#2457d6);font-size:10px}.account-security-history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:9px 10px;border:1px solid var(--line,rgba(15,23,42,.09));border-radius:12px;background:color-mix(in srgb,var(--surface-soft,rgba(248,250,252,.88)) 88%,transparent)}.account-security-history-toolbar>small{min-width:0;color:var(--muted,#64748b);font-size:10px;line-height:1.4}.account-security-history-toolbar .btn{flex:0 0 auto}.account-security-history-empty{display:flex!important;align-items:center;justify-content:center;gap:7px;padding:14px 8px!important;color:var(--muted,#64748b);font-size:11px;border-bottom:0!important}.account-security-history-empty i{color:var(--primary,#2457d6)}.history-dot.ended,.history-dot.expired{background:#94a3b8}

@media(max-width:620px){
  .account-security-center-modal .account-security-dialog{width:calc(100vw - 30px);max-width:470px;max-height:calc(100dvh - 30px);margin:auto;border-radius:18px;overflow:hidden}
  .account-security-center-modal .account-security-head{padding:12px 13px 10px;gap:9px;min-height:0}
  .account-security-center-modal .account-security-head h3{font-size:18px;line-height:1.15;margin:1px 0 3px}
  .account-security-center-modal .account-security-head>div>p:not(.account-security-kicker){font-size:10.5px;line-height:1.35;margin:0;max-width:34ch}
  .account-security-center-modal .account-security-kicker{font-size:9px;letter-spacing:.08em;margin-bottom:2px}
  .account-security-center-modal .account-security-head>.btn{width:30px;min-width:30px;height:30px;padding:0;border-radius:9px}
  .account-security-center-modal .account-security-body{padding:9px;gap:8px;overflow-x:hidden}
  .account-security-center-modal .account-security-overview{padding:10px 11px;gap:8px;border-radius:14px}
  .account-security-center-modal .account-security-overview small{font-size:9px}
  .account-security-center-modal .account-security-overview strong{font-size:14px;line-height:1.25}
  .account-security-center-modal .account-security-overview-pills{gap:5px}
  .account-security-center-modal .account-security-state{font-size:9.5px;padding:4px 7px}
  .account-security-center-modal .account-security-card{padding:10px;border-radius:14px}
  .account-security-center-modal .account-security-section-title{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;margin-bottom:7px;align-items:center}
  .account-security-center-modal .account-security-section-title>span:first-child{width:32px;height:32px;border-radius:10px}
  .account-security-center-modal .account-security-section-title strong{font-size:12.5px;line-height:1.2}
  .account-security-center-modal .account-security-section-title small{font-size:10px;line-height:1.3;margin-top:1px}
  .account-security-center-modal .account-security-section-title>.account-security-state,.account-security-center-modal .account-security-section-title>.account-security-count{grid-column:auto;justify-self:end}
  .account-security-center-modal .account-security-count{min-width:24px;height:24px;padding:0 6px;font-size:10px}
  .account-security-center-modal .account-security-row{min-height:34px;padding:8px 10px;border-radius:10px;font-size:11.5px}
  .account-security-center-modal .account-security-toggle-row{padding:9px 2px;gap:9px}
  .account-security-center-modal .account-security-toggle-row>span strong{font-size:11.5px}
  .account-security-center-modal .account-security-toggle-row>span small{font-size:9.5px;line-height:1.3}
  .account-security-center-modal .account-security-toggle-row>i{width:38px;height:22px}
  .account-security-center-modal .account-security-toggle-row>i:after{width:16px;height:16px}
  .account-security-center-modal .account-security-toggle-row input:checked+i:after{transform:translateX(16px)}
  .account-security-center-modal .account-security-inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
  .account-security-center-modal .account-security-inline-actions .btn{width:auto;min-height:31px;padding:6px 9px;font-size:10.5px;border-radius:9px}
  .account-security-center-modal .account-security-trusted-current{font-size:10px;line-height:1.3}
  .account-security-center-modal .account-security-device-list{gap:6px;margin-top:8px}
  .account-security-center-modal .account-security-device{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px;border-radius:11px}
  .account-security-center-modal .account-security-device .device-icon{width:29px;height:29px;border-radius:9px;font-size:11px}
  .account-security-center-modal .account-security-device strong{font-size:10.8px;line-height:1.25}
  .account-security-center-modal .account-security-device strong em{font-size:7.5px;padding:2px 4px;margin-left:2px}
  .account-security-center-modal .account-security-device small{font-size:8.8px;line-height:1.3}
  .account-security-center-modal .account-security-device>button,.account-security-center-modal .account-security-device>.account-security-state{grid-column:auto;justify-self:end;margin:0;min-height:29px;padding:5px 7px;font-size:9.5px;white-space:nowrap}
  .account-security-center-modal .account-security-history{margin-top:9px;padding-top:8px}
  .account-security-center-modal .account-security-history summary{font-size:10.8px;align-items:center}
  .account-security-center-modal .account-security-history-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:7px 8px;border-radius:10px}
  .account-security-center-modal .account-security-history-toolbar>small{font-size:8.8px;line-height:1.3}
  .account-security-center-modal .account-security-history-toolbar .btn{min-height:29px;padding:5px 7px;font-size:9.5px;border-radius:8px}
  .account-security-center-modal .account-security-history-list{max-height:190px;margin-top:6px;gap:2px;overflow-x:hidden}
  .account-security-center-modal .account-security-history-list>div{grid-template-columns:auto minmax(0,1fr);gap:7px;padding:7px 2px}
  .account-security-center-modal .account-security-history-list strong{font-size:10px}
  .account-security-center-modal .account-security-history-list small{font-size:8.5px;line-height:1.25}
  .account-security-center-modal .account-security-history-list em{display:none}
  .account-security-center-modal .account-security-fineprint{font-size:9.5px;line-height:1.35;margin:7px 0}
}

@media(max-width:360px){
  .account-security-center-modal .account-security-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
  .account-security-center-modal .account-security-head{padding:10px 11px 9px}
  .account-security-center-modal .account-security-body{padding:8px}
  .account-security-center-modal .account-security-section-title{grid-template-columns:auto minmax(0,1fr)}
  .account-security-center-modal .account-security-section-title>.account-security-state,.account-security-center-modal .account-security-section-title>.account-security-count{grid-column:2;justify-self:start;margin-top:2px}
  .account-security-center-modal .account-security-device{grid-template-columns:auto minmax(0,1fr)}
  .account-security-center-modal .account-security-device>button,.account-security-center-modal .account-security-device>.account-security-state{grid-column:2;justify-self:start}
  .account-security-center-modal .account-security-history-toolbar{grid-template-columns:1fr}
  .account-security-center-modal .account-security-history-toolbar .btn{justify-self:start}
}

/* v147 — bulk trusted-browser control and stronger mobile safe margins. */
.account-security-trusted-actions{align-items:center}
.account-security-trusted-actions .account-security-danger-action{max-width:100%;white-space:normal;text-align:center}

@media(max-width:620px){
  .account-security-center-modal.modal{
    padding:24px 20px!important;
    place-items:center!important;
    overflow:hidden!important;
  }
  .account-security-center-modal .account-security-dialog{
    width:100%!important;
    max-width:440px!important;
    max-height:calc(100dvh - 48px)!important;
    margin:0!important;
    border-radius:17px!important;
    overflow:hidden!important;
  }
  .account-security-center-modal .account-security-body{
    min-width:0!important;
    padding:8px!important;
    gap:7px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
  }
  .account-security-center-modal .account-security-body::-webkit-scrollbar{width:0!important;height:0!important}
  .account-security-center-modal .account-security-card{min-width:0!important;padding:9px!important;border-radius:13px!important;overflow:hidden!important}
  .account-security-center-modal .account-security-section-title{gap:7px!important;margin-bottom:6px!important}
  .account-security-center-modal .account-security-section-title>span:first-child{width:29px!important;height:29px!important;border-radius:9px!important;font-size:11px!important}
  .account-security-center-modal .account-security-section-title strong{font-size:11.7px!important}
  .account-security-center-modal .account-security-section-title small{font-size:9.2px!important;line-height:1.25!important}
  .account-security-center-modal .account-security-row{min-height:31px!important;padding:6px 8px!important;font-size:10.5px!important;border-radius:9px!important}
  .account-security-center-modal .account-security-inline-actions{gap:5px!important}
  .account-security-center-modal .account-security-inline-actions .btn{
    width:auto!important;
    max-width:100%!important;
    min-height:28px!important;
    padding:5px 7px!important;
    font-size:9.5px!important;
    line-height:1.2!important;
    border-radius:8px!important;
    white-space:normal!important;
  }
  .account-security-center-modal .account-security-trusted-current{font-size:9.2px!important}
  .account-security-center-modal .account-security-device{
    min-width:0!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:start!important;
    gap:6px!important;
    padding:7px!important;
    border-radius:10px!important;
  }
  .account-security-center-modal .account-security-device .device-icon{width:27px!important;height:27px!important;border-radius:8px!important;font-size:10px!important}
  .account-security-center-modal .account-security-device strong{font-size:10.1px!important;line-height:1.2!important}
  .account-security-center-modal .account-security-device small{font-size:8.3px!important;line-height:1.25!important}
  .account-security-center-modal .account-security-device>button,
  .account-security-center-modal .account-security-device>.account-security-state{
    grid-column:2!important;
    justify-self:start!important;
    min-height:26px!important;
    padding:4px 6px!important;
    font-size:8.8px!important;
    margin-top:2px!important;
  }
  .account-security-center-modal .account-security-history-toolbar{grid-template-columns:1fr!important;gap:5px!important;padding:7px!important}
  .account-security-center-modal .account-security-history-toolbar .btn{justify-self:start!important;min-height:26px!important;font-size:8.8px!important}
}

@media(max-width:420px){
  .account-security-center-modal.modal{padding:22px 18px!important}
  .account-security-center-modal .account-security-dialog{max-height:calc(100dvh - 44px)!important}
  .account-security-center-modal .account-security-head{padding:10px 11px 8px!important}
  .account-security-center-modal .account-security-head h3{font-size:16px!important}
  .account-security-center-modal .account-security-head>div>p:not(.account-security-kicker){font-size:9.5px!important;max-width:30ch!important}
  .account-security-center-modal .account-security-overview{padding:9px!important;gap:6px!important}
  .account-security-center-modal .account-security-overview strong{font-size:12.5px!important}
  .account-security-center-modal .account-security-state{font-size:8.5px!important;padding:3px 6px!important}
  .account-security-center-modal .account-security-count{min-width:22px!important;height:22px!important;font-size:9px!important}
  .account-security-center-modal .account-security-toggle-row{padding:7px 1px!important}
  .account-security-center-modal .account-security-toggle-row>span strong{font-size:10.5px!important}
  .account-security-center-modal .account-security-toggle-row>span small{font-size:8.8px!important}
  .account-security-center-modal .account-security-toggle-row>i{width:34px!important;height:20px!important}
  .account-security-center-modal .account-security-toggle-row>i:after{width:14px!important;height:14px!important}
  .account-security-center-modal .account-security-toggle-row input:checked+i:after{transform:translateX(14px)!important}
}

@media(max-width:340px){
  .account-security-center-modal.modal{padding:18px 14px!important}
  .account-security-center-modal .account-security-dialog{max-height:calc(100dvh - 36px)!important}
}

/* v149 — definitive mobile Account Security viewport and touch-scroll fix.
   The backdrop remains full viewport, while the visible Security card stays
   centered with deliberate safe margins. Only the card body scrolls. */
@media (max-width:620px){
  #accountSecurityCenterModal.account-security-center-modal.modal{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100svh!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    place-items:center!important;
    align-items:center!important;
    justify-items:center!important;
    padding:max(24px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom))!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    touch-action:none!important;
  }

  #accountSecurityCenterModal.account-security-center-modal>.modal-backdrop{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }

  #accountSecurityCenterModal.account-security-center-modal>.account-security-dialog{
    position:relative!important;
    place-self:center!important;
    width:min(430px,100%)!important;
    max-width:430px!important;
    height:min(84dvh,700px)!important;
    max-height:calc(100dvh - 48px)!important;
    min-height:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:16px!important;
    transform:none!important;
    touch-action:auto!important;
  }

  #accountSecurityCenterModal .account-security-head{
    flex:0 0 auto!important;
    min-width:0!important;
    padding:10px 11px 8px!important;
  }
  #accountSecurityCenterModal .account-security-head h3{font-size:15.5px!important;line-height:1.15!important}
  #accountSecurityCenterModal .account-security-head>div>p:not(.account-security-kicker){font-size:9.2px!important;line-height:1.28!important;max-width:29ch!important}
  #accountSecurityCenterModal .account-security-head>.btn{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;border-radius:8px!important}

  #accountSecurityCenterModal .account-security-body{
    position:relative!important;
    flex:1 1 0!important;
    min-width:0!important;
    min-height:0!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:start!important;
    gap:6px!important;
    padding:7px 8px 10px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    scroll-behavior:auto!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    pointer-events:auto!important;
    contain:none!important;
  }
  #accountSecurityCenterModal .account-security-body::-webkit-scrollbar,
  #accountSecurityCenterModal .account-security-history-list::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
  }

  #accountSecurityCenterModal .account-security-overview,
  #accountSecurityCenterModal .account-security-onboarding,
  #accountSecurityCenterModal .account-security-card,
  #accountSecurityCenterModal .account-security-card-wide,
  #accountSecurityCenterModal #accountSecurityCenterError{
    grid-column:1!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  #accountSecurityCenterModal .account-security-overview{padding:8px 9px!important;gap:5px!important;border-radius:12px!important}
  #accountSecurityCenterModal .account-security-overview strong{font-size:12px!important;line-height:1.2!important}
  #accountSecurityCenterModal .account-security-overview small{font-size:8.5px!important}
  #accountSecurityCenterModal .account-security-card{padding:8px!important;border-radius:12px!important;overflow:visible!important}
  #accountSecurityCenterModal .account-security-section-title{grid-template-columns:27px minmax(0,1fr) auto!important;gap:6px!important;margin-bottom:5px!important;align-items:center!important}
  #accountSecurityCenterModal .account-security-section-title>span:first-child{width:27px!important;height:27px!important;border-radius:8px!important;font-size:10px!important}
  #accountSecurityCenterModal .account-security-section-title strong{font-size:10.8px!important;line-height:1.18!important}
  #accountSecurityCenterModal .account-security-section-title small{font-size:8.4px!important;line-height:1.22!important;margin-top:1px!important}
  #accountSecurityCenterModal .account-security-state{font-size:8px!important;padding:3px 5px!important}
  #accountSecurityCenterModal .account-security-count{min-width:20px!important;height:20px!important;padding:0 5px!important;font-size:8.5px!important}
  #accountSecurityCenterModal .account-security-row{min-height:29px!important;padding:5px 7px!important;border-radius:8px!important;font-size:9.8px!important;touch-action:manipulation!important}
  #accountSecurityCenterModal .account-security-toggle-row{padding:6px 1px!important;gap:7px!important}
  #accountSecurityCenterModal .account-security-toggle-row>span strong{font-size:9.9px!important}
  #accountSecurityCenterModal .account-security-toggle-row>span small{font-size:8.2px!important;line-height:1.22!important}
  #accountSecurityCenterModal .account-security-toggle-row>i{width:32px!important;height:19px!important;flex:0 0 32px!important}
  #accountSecurityCenterModal .account-security-toggle-row>i:after{width:13px!important;height:13px!important}
  #accountSecurityCenterModal .account-security-toggle-row input:checked+i:after{transform:translateX(13px)!important}
  #accountSecurityCenterModal .account-security-inline-actions{gap:4px!important;align-items:center!important}
  #accountSecurityCenterModal .account-security-inline-actions .btn,
  #accountSecurityCenterModal .account-security-device>button,
  #accountSecurityCenterModal .account-security-history-toolbar .btn{
    width:auto!important;
    min-width:0!important;
    min-height:25px!important;
    max-width:100%!important;
    padding:4px 6px!important;
    border-radius:7px!important;
    font-size:8.6px!important;
    line-height:1.18!important;
    white-space:normal!important;
    touch-action:manipulation!important;
    pointer-events:auto!important;
  }
  #accountSecurityCenterModal .account-security-trusted-current{min-height:25px!important;padding:4px 6px!important;font-size:8.6px!important;border-radius:7px!important}
  #accountSecurityCenterModal .account-security-device-list{gap:5px!important;margin-top:6px!important}
  #accountSecurityCenterModal .account-security-device{grid-template-columns:25px minmax(0,1fr)!important;gap:5px!important;padding:6px!important;border-radius:9px!important;align-items:start!important;overflow:visible!important}
  #accountSecurityCenterModal .account-security-device .device-icon{width:25px!important;height:25px!important;border-radius:7px!important;font-size:9px!important}
  #accountSecurityCenterModal .account-security-device strong{font-size:9.5px!important;line-height:1.18!important;overflow-wrap:anywhere!important}
  #accountSecurityCenterModal .account-security-device small{font-size:7.8px!important;line-height:1.22!important;overflow-wrap:anywhere!important}
  #accountSecurityCenterModal .account-security-device>button,
  #accountSecurityCenterModal .account-security-device>.account-security-state{grid-column:2!important;justify-self:start!important;margin-top:1px!important}
  #accountSecurityCenterModal .account-security-history{margin-top:6px!important;padding-top:6px!important}
  #accountSecurityCenterModal .account-security-history summary{font-size:9.6px!important;min-height:25px!important;touch-action:manipulation!important}
  #accountSecurityCenterModal .account-security-history-toolbar{grid-template-columns:1fr!important;gap:4px!important;padding:6px!important;border-radius:8px!important}
  #accountSecurityCenterModal .account-security-history-toolbar>small{font-size:7.8px!important;line-height:1.22!important}
  #accountSecurityCenterModal .account-security-history-list{max-height:none!important;overflow:visible!important;margin-top:5px!important}
  #accountSecurityCenterModal .account-security-fineprint{font-size:8.2px!important;line-height:1.28!important;margin:5px 0!important}
}

@media (max-width:380px){
  #accountSecurityCenterModal.account-security-center-modal.modal{
    padding:max(22px,env(safe-area-inset-top)) 16px max(22px,env(safe-area-inset-bottom))!important;
  }
  #accountSecurityCenterModal.account-security-center-modal>.account-security-dialog{
    width:100%!important;
    height:min(83dvh,650px)!important;
    max-height:calc(100dvh - 44px)!important;
  }
  #accountSecurityCenterModal .account-security-section-title{grid-template-columns:25px minmax(0,1fr)!important}
  #accountSecurityCenterModal .account-security-section-title>.account-security-state,
  #accountSecurityCenterModal .account-security-section-title>.account-security-count{grid-column:2!important;justify-self:start!important;margin-top:1px!important}
}

/* v151 — mobile Security Center close-state reliability.
   The mobile viewport rule uses an ID-level display:grid!important declaration,
   so the hidden state must intentionally win at the same specificity. */
#accountSecurityCenterModal.account-security-center-modal.modal.hide,
#accountSecurityCenterModal.account-security-center-modal.modal[aria-hidden="true"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* ===== SOURCE: Assets/style/41-accounting-suite.css ===== */
/* Triplem VIP Accounting Suite
   Additive accounting workspace. Theme-native, responsive and isolated from
   existing operational modules. */

#accountingPanel{position:relative;min-width:0}
.accounting-panel .accounting-section-head{align-items:flex-start;gap:14px}
.accounting-panel .accounting-section-head h3{margin:0 0 5px}
.accounting-panel .accounting-section-head p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45;max-width:720px}
.accounting-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.accounting-shell{min-width:0;display:grid;gap:12px}
.accounting-subnav{display:flex;align-items:center;gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:6px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 86%,transparent);box-shadow:0 12px 34px color-mix(in srgb,var(--text) 5%,transparent);scrollbar-width:none;-webkit-overflow-scrolling:touch}
.accounting-subnav::-webkit-scrollbar,.accounting-table-wrap::-webkit-scrollbar,.accounting-modal-dialog .modal-body::-webkit-scrollbar,.accounting-workspace-body::-webkit-scrollbar{display:none;width:0;height:0}
.accounting-nav-btn{appearance:none;border:1px solid transparent;background:transparent;color:var(--muted);border-radius:12px;padding:9px 11px;min-height:38px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font:inherit;font-size:.78rem;font-weight:760;cursor:pointer;scroll-snap-align:start;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}
.accounting-nav-btn i{font-size:.82rem;opacity:.9}
.accounting-nav-btn:hover{color:var(--text);background:color-mix(in srgb,var(--primary) 7%,var(--panel));border-color:color-mix(in srgb,var(--primary) 16%,var(--line))}
.accounting-nav-btn:active{transform:translateY(1px)}
.accounting-nav-btn.active{color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,var(--panel));border-color:color-mix(in srgb,var(--primary) 28%,var(--line));box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 24%,transparent)}
.accounting-tools-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.accounting-search{position:relative;display:block;min-width:220px;max-width:430px;flex:1}
.accounting-search>i{position:absolute;left:12px;top:50%;transform:translateY(-50%);z-index:1;color:var(--muted);font-size:.78rem;pointer-events:none}
.accounting-search .input{width:100%;padding-left:34px;min-height:38px;font-size:.8rem}
.accounting-context-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.accounting-context-actions:empty{display:none}
.accounting-workspace-body{min-width:0;overflow:visible;display:grid;gap:12px}
.accounting-loading,.accounting-empty,.accounting-schema-notice{border:1px dashed color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:16px;padding:28px 18px;background:color-mix(in srgb,var(--primary) 4%,var(--panel));color:var(--muted);text-align:center}
.accounting-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:150px}
.accounting-schema-notice strong{display:block;color:var(--text);font-size:.98rem;margin-bottom:6px}
.accounting-schema-notice p{margin:0 auto 12px;max-width:660px;line-height:1.5;font-size:.84rem}

.accounting-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.accounting-kpi-grid--mini{grid-template-columns:repeat(3,minmax(0,1fr))}
.accounting-kpi{position:relative;min-width:0;border:1px solid var(--line);border-radius:16px;padding:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 94%,transparent),color-mix(in srgb,var(--primary) 4%,var(--panel-2)));box-shadow:0 12px 28px color-mix(in srgb,var(--text) 4%,transparent);overflow:hidden}
.accounting-kpi:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:-26px;top:-28px;background:color-mix(in srgb,var(--primary) 10%,transparent);filter:blur(.3px);pointer-events:none}
.accounting-kpi-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 11%,var(--panel));color:var(--primary);font-size:.78rem;margin-bottom:10px}
.accounting-kpi small{display:block;color:var(--muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.055em;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-kpi strong{display:block;color:var(--text);font-size:1.06rem;line-height:1.25;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-kpi span{display:block;color:var(--muted);font-size:.69rem;margin-top:3px;line-height:1.35}
.accounting-overview-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:10px}
.accounting-card,.accounting-health-card,.accounting-contact-card,.accounting-dimension-card{border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 4%,transparent);min-width:0}
.accounting-card{padding:14px}
.accounting-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:11px}
.accounting-card-head h4{margin:0;color:var(--text);font-size:.9rem}
.accounting-card-head p{margin:3px 0 0;color:var(--muted);font-size:.7rem;line-height:1.4}
.accounting-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.accounting-quick-btn{appearance:none;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel-2) 82%,var(--panel));color:var(--text);min-height:68px;padding:10px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;font:inherit;text-align:left;cursor:pointer;transition:.18s ease}
.accounting-quick-btn i{color:var(--primary)}
.accounting-quick-btn span{font-size:.74rem;font-weight:800}
.accounting-quick-btn:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--line));background:color-mix(in srgb,var(--primary) 8%,var(--panel));transform:translateY(-1px)}
.accounting-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.accounting-health-card{padding:12px}
.accounting-health-card small{display:block;color:var(--muted);font-size:.66rem;font-weight:750}
.accounting-health-card strong{display:block;color:var(--text);font-size:.88rem;margin-top:4px}
.accounting-performance{display:grid;gap:11px}
.accounting-performance>div{display:grid;grid-template-columns:minmax(95px,.7fr) minmax(120px,1.4fr) auto;align-items:center;gap:9px;font-size:.72rem;color:var(--muted)}
.accounting-performance strong{color:var(--text);font-size:.72rem}
.accounting-meter{height:7px;border-radius:999px;background:color-mix(in srgb,var(--muted) 14%,transparent);overflow:hidden}
.accounting-meter span{display:block;height:100%;border-radius:inherit;background:var(--primary);max-width:100%}

.accounting-list,.accounting-doc-list,.accounting-reconcile-list,.accounting-audit-list{display:grid;gap:7px}
.accounting-list-row,.accounting-journal-row,.accounting-doc-row,.accounting-reconcile-row,.accounting-audit-row{border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 96%,transparent);min-width:0}
.accounting-list-row,.accounting-journal-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 12px}
.accounting-list-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,var(--panel-2));color:var(--primary);font-size:.76rem}
.accounting-list-main{min-width:0}
.accounting-list-main strong{display:block;color:var(--text);font-size:.79rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-list-main small{display:block;color:var(--muted);font-size:.66rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-list-value{text-align:right;min-width:90px}
.accounting-list-value strong{display:block;color:var(--text);font-size:.78rem}
.accounting-list-value small{display:block;color:var(--muted);font-size:.64rem;margin-top:2px}
.accounting-list-actions,.accounting-doc-actions,.accounting-contact-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.accounting-status,.accounting-type-pill,.badge.soft{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));background:color-mix(in srgb,var(--primary) 8%,var(--panel));color:var(--text);font-size:.62rem;font-weight:800;line-height:1.1;text-transform:capitalize;white-space:nowrap}
.accounting-status[data-status="posted"],.accounting-status[data-status="paid"],.accounting-status[data-status="matched"],.accounting-status.green{color:var(--success);border-color:color-mix(in srgb,var(--success) 35%,var(--line));background:color-mix(in srgb,var(--success) 10%,var(--panel))}
.accounting-status[data-status="void"],.accounting-status[data-status="overdue"]{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 32%,var(--line));background:color-mix(in srgb,var(--danger) 9%,var(--panel))}
.accounting-status[data-status="draft"],.accounting-status[data-status="partial"]{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 34%,var(--line));background:color-mix(in srgb,var(--warning) 9%,var(--panel))}

.accounting-doc-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(110px,.7fr) minmax(120px,.7fr) auto;align-items:center;gap:12px;padding:12px}
.accounting-doc-main{min-width:0;display:flex;align-items:center;gap:10px}
.accounting-doc-type{width:34px;height:34px;flex:0 0 auto;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,var(--panel-2));color:var(--primary);font-size:.78rem}
.accounting-doc-desc{min-width:0}
.accounting-doc-desc strong{display:block;color:var(--text);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-doc-desc small{display:block;color:var(--muted);font-size:.65rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-doc-money{text-align:right}
.accounting-doc-money strong{display:block;color:var(--text);font-size:.78rem}
.accounting-doc-money small{display:block;color:var(--muted);font-size:.64rem;margin-top:2px}

.accounting-contact-grid,.accounting-dimension-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.accounting-contact-card,.accounting-dimension-card{padding:12px;display:grid;gap:10px}
.accounting-contact-info{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;min-width:0}
.accounting-contact-avatar,.accounting-dimension-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 11%,var(--panel-2));color:var(--primary);font-size:.8rem;font-weight:900}
.accounting-contact-info strong,.accounting-dimension-card strong{display:block;color:var(--text);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-contact-info small,.accounting-dimension-card small{display:block;color:var(--muted);font-size:.64rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-contact-meta{display:flex;gap:6px;flex-wrap:wrap;color:var(--muted);font-size:.64rem}
.accounting-contact-meta span{border-radius:8px;background:color-mix(in srgb,var(--panel-2) 80%,transparent);padding:4px 6px}

.accounting-reconcile-row{display:grid;grid-template-columns:90px minmax(0,1fr) 120px minmax(170px,.9fr) auto;align-items:center;gap:10px;padding:11px 12px}
.accounting-reconcile-date{font-size:.68rem;color:var(--muted)}
.accounting-reconcile-main{min-width:0}
.accounting-reconcile-main strong{display:block;color:var(--text);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-reconcile-main small{display:block;color:var(--muted);font-size:.63rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-reconcile-amount{text-align:right;font-weight:800;color:var(--text);font-size:.75rem}
.accounting-suggestion{border:1px solid color-mix(in srgb,var(--primary) 20%,var(--line));background:color-mix(in srgb,var(--primary) 6%,var(--panel));border-radius:10px;padding:7px 8px;min-width:0}
.accounting-suggestion strong,.accounting-suggestion small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.accounting-suggestion strong{font-size:.65rem;color:var(--text)}
.accounting-suggestion small{font-size:.59rem;color:var(--muted);margin-top:2px}

.accounting-table-wrap{width:100%;overflow:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 97%,transparent)}
.accounting-table,.accounting-report-table{width:100%;border-collapse:separate;border-spacing:0;min-width:650px;color:var(--text);font-size:.7rem}
.accounting-table th,.accounting-table td,.accounting-report-table th,.accounting-report-table td{padding:9px 10px;border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent);text-align:left;vertical-align:middle}
.accounting-table th,.accounting-report-table th{position:sticky;top:0;z-index:1;background:color-mix(in srgb,var(--panel-2) 92%,var(--panel));color:var(--muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.035em;font-weight:850;white-space:nowrap}
.accounting-table tbody tr:hover,.accounting-report-table tbody tr:hover{background:color-mix(in srgb,var(--primary) 4%,transparent)}
.accounting-table tr:last-child td,.accounting-report-table tr:last-child td{border-bottom:0}
.accounting-table .num,.accounting-report-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.accounting-table tfoot th,.accounting-table tfoot td,.accounting-report-table tfoot th,.accounting-report-table tfoot td{font-weight:850;color:var(--text);background:color-mix(in srgb,var(--primary) 5%,var(--panel))}
.accounting-report-toolbar,.accounting-tax-filter{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}
.accounting-report-toolbar label,.accounting-tax-filter label{display:grid;gap:4px;color:var(--muted);font-size:.62rem;font-weight:760}
.accounting-report-toolbar .input,.accounting-tax-filter .input{min-height:35px;font-size:.72rem}
.accounting-tax-estimate{border:1px solid color-mix(in srgb,var(--warning) 28%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--warning) 7%,var(--panel));padding:13px}
.accounting-tax-estimate small{display:block;color:var(--muted);font-size:.65rem}
.accounting-tax-estimate strong{display:block;color:var(--text);font-size:1rem;margin-top:4px}

.accounting-audit-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 12px}
.accounting-audit-dot{width:9px;height:9px;margin-top:5px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 10%,transparent)}
.accounting-audit-row strong{display:block;color:var(--text);font-size:.72rem}
.accounting-audit-row small{display:block;color:var(--muted);font-size:.61rem;margin-top:3px;line-height:1.4}

/* Forms and purpose-built accounting overlays */
body.accounting-modal-open{overflow:hidden}
.accounting-modal{position:fixed;inset:0;z-index:10080;display:grid;place-items:center;padding:18px}
.accounting-modal>.modal-backdrop{position:absolute;inset:0;background:var(--overlay,rgba(3,8,18,.56));backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.accounting-modal-dialog{position:relative;z-index:1;width:min(650px,calc(100vw - 36px));max-height:min(760px,calc(100dvh - 36px));display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:20px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:var(--shadow-strong,0 26px 80px rgba(0,0,0,.28));color:var(--text)}
.accounting-modal-wide{width:min(1120px,calc(100vw - 36px))}
.accounting-modal-dialog .modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 6%,var(--panel)),color-mix(in srgb,var(--panel) 96%,transparent));flex:0 0 auto}
.accounting-modal-dialog .modal-head h3{margin:0;color:var(--text);font-size:.98rem}
.accounting-modal-dialog .modal-head p{margin:4px 0 0;color:var(--muted);font-size:.67rem;line-height:1.4}
.accounting-modal-dialog .modal-body{padding:15px 17px;overflow:auto;overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;min-height:0}
.accounting-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:11px 17px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel-2) 65%,var(--panel));flex:0 0 auto}
.accounting-modal-footer .btn{min-height:34px;padding:7px 12px;font-size:.7rem}
.accounting-form{display:grid;gap:13px}
.accounting-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.accounting-form-grid>label,.accounting-form>label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:.64rem;font-weight:780}
.accounting-form-grid .input,.accounting-form>.input{width:100%;min-width:0;min-height:37px;font-size:.73rem}
.accounting-form-grid textarea.input,.accounting-form>textarea.input{resize:vertical;line-height:1.45}
.accounting-form-wide{grid-column:1/-1}
.accounting-check{grid-template-columns:auto 1fr!important;align-items:center!important;gap:8px!important;border:1px solid var(--line);border-radius:12px;padding:9px 10px;background:color-mix(in srgb,var(--panel-2) 60%,transparent);color:var(--text)!important}
.accounting-check input{accent-color:var(--primary)}
.accounting-entry-lines-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:2px}
.accounting-entry-lines-head strong{font-size:.76rem;color:var(--text)}
.accounting-entry-lines,.accounting-doc-lines{display:grid;gap:7px}
.accounting-entry-line{display:grid;grid-template-columns:30px minmax(150px,1.1fr) minmax(130px,1fr) minmax(105px,.55fr) minmax(105px,.55fr) minmax(125px,.7fr) 30px;gap:6px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:7px;background:color-mix(in srgb,var(--panel-2) 53%,transparent)}
.accounting-entry-line .input{min-width:0;min-height:34px;font-size:.67rem;padding-left:8px;padding-right:8px}
.accounting-line-no{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:color-mix(in srgb,var(--primary) 9%,var(--panel));color:var(--primary);font-size:.63rem;font-weight:850}
.accounting-entry-totals,.accounting-document-totals{display:flex;justify-content:flex-end;gap:14px;flex-wrap:wrap;border-radius:12px;padding:9px 10px;background:color-mix(in srgb,var(--primary) 5%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 13%,var(--line));font-size:.68rem;color:var(--muted)}
.accounting-entry-totals strong,.accounting-document-totals strong{color:var(--text)}
.accounting-doc-lines-header{display:grid;grid-template-columns:28px 70px minmax(130px,1.3fr) 60px 85px 78px 105px 120px 115px 90px 28px;gap:5px;padding:0 6px;color:var(--muted);font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.025em}
.accounting-doc-line{display:grid;grid-template-columns:28px 70px minmax(130px,1.3fr) 60px 85px 78px 105px 120px 115px 90px 28px;gap:5px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:6px;background:color-mix(in srgb,var(--panel-2) 48%,transparent)}
.accounting-doc-line .input{min-width:0;min-height:33px;font-size:.62rem;padding:6px}
.accounting-doc-line-total{text-align:right;color:var(--text);font-size:.64rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-document-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:11px}
.accounting-document-summary>div,.accounting-detail-meta>span{border:1px solid var(--line);border-radius:11px;padding:9px;background:color-mix(in srgb,var(--panel-2) 54%,transparent);min-width:0}
.accounting-document-summary small,.accounting-detail-meta small{display:block;color:var(--muted);font-size:.58rem;text-transform:uppercase;font-weight:800;letter-spacing:.035em}
.accounting-document-summary strong,.accounting-detail-meta strong{display:block;color:var(--text);font-size:.71rem;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.accounting-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.accounting-detail-note{font-size:.7rem;color:var(--muted);line-height:1.5;margin:10px 0}
.accounting-payment-history{margin-top:12px}
.accounting-convert-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px}
.accounting-import-preview{display:grid;gap:5px;margin-top:10px;max-height:220px;overflow:auto;scrollbar-width:none}
.accounting-import-preview::-webkit-scrollbar{display:none}
.accounting-import-preview>div{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:9px;padding:7px 8px;font-size:.64rem;background:color-mix(in srgb,var(--panel-2) 55%,transparent)}
.accounting-import-preview span{color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.accounting-import-preview strong{color:var(--text);white-space:nowrap}

@media (max-width:1050px){
  .accounting-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .accounting-overview-grid{grid-template-columns:1fr}
  .accounting-contact-grid,.accounting-dimension-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .accounting-doc-row{grid-template-columns:minmax(0,1.25fr) minmax(105px,.55fr) auto}
  .accounting-doc-row>.accounting-doc-money:nth-of-type(2){display:none}
  .accounting-reconcile-row{grid-template-columns:80px minmax(0,1fr) 110px auto}
  .accounting-reconcile-row>.accounting-suggestion{grid-column:2/4}
}

@media (max-width:760px){
  .accounting-panel .accounting-section-head{gap:8px;margin-bottom:10px}
  .accounting-panel .accounting-section-head p{font-size:.7rem;line-height:1.4}
  .accounting-panel .accounting-section-head h3{font-size:.95rem}
  .accounting-head-actions{gap:5px}
  .accounting-head-actions .btn{min-height:31px;padding:6px 9px;font-size:.64rem}
  .accounting-shell{gap:9px}
  .accounting-subnav{margin-inline:-1px;padding:5px;gap:5px;border-radius:13px}
  .accounting-nav-btn{min-height:34px;padding:7px 9px;border-radius:10px;font-size:.66rem;gap:5px}
  .accounting-nav-btn i{font-size:.7rem}
  .accounting-tools-row{align-items:stretch;flex-direction:column;gap:7px}
  .accounting-search{max-width:none;min-width:0;width:100%}
  .accounting-search .input{min-height:34px;font-size:.7rem}
  .accounting-context-actions{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
  .accounting-context-actions::-webkit-scrollbar{display:none}
  .accounting-context-actions .btn{flex:0 0 auto;min-height:31px;padding:6px 9px;font-size:.63rem}
  .accounting-kpi-grid,.accounting-kpi-grid--mini{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .accounting-kpi{padding:10px;border-radius:13px}
  .accounting-kpi-icon{width:27px;height:27px;margin-bottom:7px;border-radius:9px;font-size:.68rem}
  .accounting-kpi strong{font-size:.88rem}
  .accounting-kpi small{font-size:.56rem}
  .accounting-kpi span{font-size:.58rem}
  .accounting-card{padding:10px;border-radius:13px}
  .accounting-card-head{margin-bottom:8px}
  .accounting-card-head h4{font-size:.78rem}
  .accounting-card-head p{font-size:.61rem}
  .accounting-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .accounting-quick-btn{min-height:58px;padding:8px;border-radius:11px}
  .accounting-quick-btn span{font-size:.65rem}
  .accounting-health-grid{gap:6px}
  .accounting-health-card{padding:9px;border-radius:12px}
  .accounting-health-card small{font-size:.57rem}
  .accounting-health-card strong{font-size:.74rem}
  .accounting-performance>div{grid-template-columns:88px 1fr auto;gap:6px;font-size:.61rem}
  .accounting-performance strong{font-size:.61rem}
  .accounting-list-row,.accounting-journal-row{grid-template-columns:auto minmax(0,1fr) auto;padding:9px;gap:7px;border-radius:12px}
  .accounting-list-value{grid-column:2;text-align:left;min-width:0}
  .accounting-list-actions{grid-column:3;grid-row:1/3}
  .accounting-list-main strong{font-size:.7rem}
  .accounting-list-main small,.accounting-list-value small{font-size:.58rem}
  .accounting-list-value strong{font-size:.68rem}
  .accounting-doc-row{grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px;border-radius:12px}
  .accounting-doc-main{gap:7px}
  .accounting-doc-type{width:30px;height:30px;border-radius:9px;font-size:.67rem}
  .accounting-doc-desc strong{font-size:.68rem}.accounting-doc-desc small{font-size:.57rem}
  .accounting-doc-row>.accounting-doc-money{grid-column:1;text-align:left;margin-left:37px}
  .accounting-doc-actions{grid-column:2;grid-row:1/3}
  .accounting-contact-grid,.accounting-dimension-grid{grid-template-columns:1fr;gap:7px}
  .accounting-contact-card,.accounting-dimension-card{padding:10px;border-radius:12px}
  .accounting-reconcile-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:9px;border-radius:12px}
  .accounting-reconcile-date{grid-column:1;font-size:.58rem}
  .accounting-reconcile-main{grid-column:1}.accounting-reconcile-amount{grid-column:2;grid-row:1/3;font-size:.67rem}
  .accounting-reconcile-row>.accounting-suggestion{grid-column:1/3}
  .accounting-reconcile-row>.accounting-list-actions{grid-column:1/3;grid-row:auto;justify-content:flex-start}
  .accounting-audit-row{padding:8px 9px;gap:7px}.accounting-audit-row strong{font-size:.64rem}.accounting-audit-row small{font-size:.55rem}
  .accounting-table,.accounting-report-table{font-size:.62rem;min-width:590px}.accounting-table th,.accounting-table td,.accounting-report-table th,.accounting-report-table td{padding:7px 8px}
  .accounting-report-toolbar,.accounting-tax-filter{align-items:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.accounting-report-toolbar .btn,.accounting-tax-filter .btn{align-self:end;min-height:34px}

  .accounting-modal{padding:16px 14px;align-items:center;justify-items:center}
  .accounting-modal-dialog,.accounting-modal-wide{width:min(100%,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 32px);border-radius:17px}
  .accounting-modal-dialog .modal-head{padding:11px 12px}.accounting-modal-dialog .modal-head h3{font-size:.84rem}.accounting-modal-dialog .modal-head p{font-size:.58rem;margin-top:3px}
  .accounting-modal-dialog .modal-head .icon-btn{width:29px;height:29px;min-width:29px;min-height:29px;font-size:.82rem}
  .accounting-modal-dialog .modal-body{padding:11px 12px;overscroll-behavior:contain}
  .accounting-modal-footer{padding:9px 12px;gap:6px}.accounting-modal-footer .btn{min-height:31px;padding:6px 9px;font-size:.63rem;flex:0 0 auto}
  .accounting-form{gap:10px}.accounting-form-grid{grid-template-columns:1fr;gap:7px}.accounting-form-wide{grid-column:auto}
  .accounting-form-grid>label,.accounting-form>label{font-size:.58rem;gap:4px}.accounting-form-grid .input,.accounting-form>.input{min-height:34px;font-size:.66rem}
  .accounting-journal-head{grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-journal-head .accounting-form-wide{grid-column:1/-1}
  .accounting-entry-lines-head strong{font-size:.68rem}
  .accounting-entry-line{grid-template-columns:27px minmax(0,1fr) minmax(0,1fr) 27px;gap:5px;padding:6px}
  .accounting-entry-line>*:nth-child(4),.accounting-entry-line>*:nth-child(5),.accounting-entry-line>*:nth-child(6){grid-column:span 1}
  .accounting-entry-line .input{min-height:31px;font-size:.6rem;padding:5px 6px}
  .accounting-doc-lines-header{display:none}
  .accounting-doc-line{grid-template-columns:25px repeat(2,minmax(0,1fr)) 25px;gap:5px;padding:7px}
  .accounting-doc-line>*{min-width:0}.accounting-doc-line .input{min-height:31px;font-size:.59rem;padding:5px}
  .accounting-doc-line>*:nth-child(n+5):nth-child(-n+10){grid-column:span 1}
  .accounting-doc-line-total{font-size:.6rem;text-align:left}
  .accounting-document-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.accounting-document-summary>div,.accounting-detail-meta>span{padding:7px;border-radius:9px}
  .accounting-detail-meta{grid-template-columns:1fr;gap:6px}.accounting-detail-note{font-size:.62rem}
}

@media (max-width:430px){
  .accounting-kpi-grid,.accounting-kpi-grid--mini{grid-template-columns:1fr 1fr}
  .accounting-kpi{padding:9px}
  .accounting-health-grid{grid-template-columns:1fr 1fr}
  .accounting-report-toolbar,.accounting-tax-filter{grid-template-columns:1fr}
  .accounting-modal{padding:14px 12px}
  .accounting-modal-dialog,.accounting-modal-wide{width:calc(100vw - 24px);max-height:calc(100dvh - 28px)}
  .accounting-journal-head{grid-template-columns:1fr}.accounting-journal-head .accounting-form-wide{grid-column:auto}
  .accounting-entry-line{grid-template-columns:25px minmax(0,1fr) 25px}.accounting-entry-line>*:not(.accounting-line-no):not(.icon-btn){grid-column:2}.accounting-entry-line>.icon-btn{grid-column:3;grid-row:1}
  .accounting-doc-line{grid-template-columns:24px minmax(0,1fr) 24px}.accounting-doc-line>*:not(.accounting-line-no):not(.icon-btn){grid-column:2}.accounting-doc-line>.icon-btn{grid-column:3;grid-row:1}
}

@media (prefers-reduced-motion:reduce){.accounting-nav-btn,.accounting-quick-btn{transition:none}}

.accounting-uuid{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;font-size:.72rem;overflow-wrap:anywhere;word-break:break-word}
.accounting-form label>small{display:block;margin-top:5px;font-size:.68rem;line-height:1.35;color:var(--muted)}


/* Build v8: clearer desktop Accounting workspace + explicit Admin feature gate. */
.admin-accounting-access-block{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 7%,var(--panel)),color-mix(in srgb,var(--panel-2) 78%,var(--panel)));box-shadow:0 10px 26px color-mix(in srgb,var(--text) 4%,transparent)}
.admin-accounting-access-copy{display:flex;align-items:center;gap:10px;min-width:0}.admin-accounting-access-icon{width:34px;height:34px;flex:0 0 auto;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 12%,var(--panel));color:var(--primary)}
.admin-accounting-access-copy strong{display:block;color:var(--text);font-size:.78rem}.admin-accounting-access-copy small{display:block;margin-top:3px;color:var(--muted);font-size:.64rem;line-height:1.4;max-width:620px}
.admin-accounting-switch{display:inline-flex;align-items:center;gap:7px;cursor:pointer;flex:0 0 auto;color:var(--muted);font-size:.65rem;font-weight:800}.admin-accounting-switch input{position:absolute;opacity:0;pointer-events:none}.admin-accounting-switch span{position:relative;width:38px;height:22px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--muted) 10%,var(--panel-2));transition:.18s ease}.admin-accounting-switch span:after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;border-radius:50%;background:var(--muted);transition:.18s ease}.admin-accounting-switch input:checked+span{border-color:color-mix(in srgb,var(--primary) 45%,var(--line));background:color-mix(in srgb,var(--primary) 18%,var(--panel))}.admin-accounting-switch input:checked+span:after{left:18px;background:var(--primary)}.admin-accounting-switch input:focus-visible+span{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}.admin-accounting-switch input:disabled+span{opacity:.55;cursor:not-allowed}

@media (min-width:1100px){
  .accounting-panel .accounting-section-head{padding:2px 2px 4px}.accounting-panel .accounting-section-head h3{font-size:1.08rem}.accounting-panel .accounting-section-head p{font-size:.78rem;max-width:780px}
  .accounting-shell{gap:14px}.accounting-subnav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible;padding:7px;gap:6px}.accounting-nav-btn{width:100%;justify-content:center;padding:9px 8px}.accounting-tools-row{padding:10px 11px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 94%,transparent)}
  .accounting-workspace-body{gap:14px}.accounting-card{padding:16px;border-radius:17px}.accounting-kpi-grid{gap:12px}.accounting-overview-grid{gap:12px}.accounting-report-toolbar{padding:12px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 95%,transparent)}.accounting-report-toolbar label{min-width:150px}.accounting-report-toolbar label:first-child{min-width:230px}.accounting-report-table{font-size:.72rem}.accounting-report-table th,.accounting-report-table td{padding:10px 11px}
}

@media (max-width:760px){.admin-accounting-access-block{padding:10px;gap:9px;align-items:flex-start}.admin-accounting-access-icon{width:30px;height:30px;border-radius:9px}.admin-accounting-access-copy{gap:8px}.admin-accounting-access-copy strong{font-size:.7rem}.admin-accounting-access-copy small{font-size:.58rem}.admin-accounting-switch{margin-top:3px}.admin-accounting-switch em{display:none}}

/* Build 001 Accounting refinement
   Corrects legacy selector/layout mismatches, clarifies record lifecycles and
   keeps the workspace legible on narrow screens without changing ledger rules. */
.accounting-meter i{display:block;height:100%;border-radius:inherit;background:var(--primary);max-width:100%}
.accounting-panel .accounting-section-head{padding-inline:4px}
.accounting-shell{padding:0 3px 4px}

.accounting-view-guide{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 7%,var(--panel)),color-mix(in srgb,var(--panel) 97%,transparent));box-shadow:0 9px 24px color-mix(in srgb,var(--text) 4%,transparent)}
.accounting-view-guide-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 12%,var(--panel));color:var(--primary)}
.accounting-view-guide small{display:block;color:var(--primary);font-size:.59rem;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
.accounting-view-guide strong{display:block;margin-top:2px;color:var(--text);font-size:.74rem;line-height:1.4}
.accounting-view-guide span{display:block;margin-top:3px;color:var(--muted);font-size:.65rem;line-height:1.45}

/* The original document row markup and its CSS described different structures.
   These placements make every field predictable and stop actions wrapping into
   apparently unrelated rows. */
.accounting-doc-row{grid-template-columns:auto minmax(0,1.35fr) minmax(112px,.55fr) auto auto}
.accounting-doc-type{grid-column:1}
.accounting-doc-main{grid-column:2;display:block;min-width:0}
.accounting-doc-main>strong{display:block;color:var(--text);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-doc-main>span{display:block;color:var(--muted);font-size:.66rem;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-doc-main>small{display:block;color:var(--muted);font-size:.62rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-doc-money{grid-column:3}
.accounting-doc-row>.accounting-status{grid-column:4}
.accounting-doc-row>.accounting-doc-actions{grid-column:5;flex-wrap:nowrap}

.accounting-contact-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:10px;row-gap:6px}
.accounting-contact-avatar{grid-column:1;grid-row:1/3}
.accounting-contact-info{grid-column:2;grid-row:1;display:block;min-width:0}
.accounting-contact-info>strong{display:block;color:var(--text);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-contact-info>span{display:block;margin-top:2px;color:var(--muted);font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-contact-info>small{display:block;margin-top:3px;color:var(--muted);font-size:.61rem;white-space:normal;overflow-wrap:anywhere}
.accounting-contact-meta{grid-column:2;grid-row:2;align-items:center}
.accounting-contact-meta strong{color:var(--text);font-size:.68rem}
.accounting-contact-actions{grid-column:3;grid-row:1/3;align-self:center}

.accounting-dimension-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}
.accounting-dimension-card>div:nth-child(2){min-width:0}
.accounting-dimension-card>div:nth-child(2)>span{display:block;margin-top:3px;color:var(--muted);font-size:.63rem;line-height:1.4}
.accounting-dimension-actions{display:flex;align-items:center;gap:5px}
.accounting-row-archived,.accounting-card-archived{opacity:.68}
.accounting-row-archived:hover,.accounting-card-archived:hover{opacity:.9}

.accounting-reconcile-row{grid-template-columns:90px minmax(0,1fr) 130px auto}
.accounting-reconcile-main>span{display:block;color:var(--muted);font-size:.62rem;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-reconcile-main .accounting-suggestion{display:block;margin-top:5px;white-space:normal}
.accounting-reconcile-row>.accounting-doc-actions{justify-self:end;flex-wrap:wrap;max-width:220px}
.accounting-reconcile-amount .accounting-status{margin-top:4px}

.accounting-tax-estimate{display:grid;gap:8px}
.accounting-tax-estimate>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:1px solid color-mix(in srgb,var(--warning) 18%,var(--line))}
.accounting-tax-estimate>div:last-of-type{padding-top:3px;border-bottom:0}
.accounting-tax-estimate span{color:var(--muted);font-size:.66rem}
.accounting-tax-estimate strong{margin:0;font-size:.82rem;text-align:right}
.accounting-tax-estimate .total strong{font-size:1rem;color:var(--text)}
.accounting-tax-estimate p{margin:2px 0 0;color:var(--muted);font-size:.61rem;line-height:1.45}
.accounting-tax-code-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.accounting-tax-code-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel-2) 58%,var(--panel))}
.accounting-tax-code-card small{display:block;color:var(--muted);font-size:.58rem;font-weight:760;text-transform:uppercase;letter-spacing:.04em}
.accounting-tax-code-card strong{display:block;margin-top:3px;color:var(--text);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accounting-tax-code-card span{display:block;margin-top:4px;color:var(--primary);font-size:.78rem;font-weight:850}
.accounting-tax-code-actions{display:flex;align-items:center;gap:4px}

.accounting-guide-intro{display:flex;align-items:flex-start;gap:11px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 25%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--primary) 6%,var(--panel));margin-bottom:11px}
.accounting-guide-intro>i{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--primary) 12%,var(--panel));color:var(--primary)}
.accounting-guide-intro strong{display:block;color:var(--text);font-size:.78rem}
.accounting-guide-intro span{display:block;margin-top:4px;color:var(--muted);font-size:.66rem;line-height:1.5}
.accounting-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.accounting-guide-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;padding:10px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel-2) 54%,var(--panel));min-width:0}
.accounting-guide-card.active{border-color:color-mix(in srgb,var(--primary) 38%,var(--line));background:color-mix(in srgb,var(--primary) 8%,var(--panel))}
.accounting-guide-card>i{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--primary) 10%,var(--panel));color:var(--primary);font-size:.7rem}
.accounting-guide-card small{display:block;color:var(--primary);font-size:.56rem;font-weight:850;text-transform:uppercase;letter-spacing:.045em}
.accounting-guide-card strong{display:block;margin-top:2px;color:var(--text);font-size:.68rem;line-height:1.4}
.accounting-guide-card span{display:block;margin-top:3px;color:var(--muted);font-size:.6rem;line-height:1.45}

.accounting-modal-dialog :is(input,select,textarea,button):focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}
.accounting-modal-dialog .modal-body{padding-bottom:max(15px,env(safe-area-inset-bottom))}

@media (max-width:1050px){
  .accounting-doc-row{grid-template-columns:auto minmax(0,1fr) auto auto}
  .accounting-doc-money{grid-column:3}
  .accounting-doc-row>.accounting-status{grid-column:4}
  .accounting-doc-row>.accounting-doc-actions{grid-column:2/5;justify-self:end}
  .accounting-tax-code-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .accounting-reconcile-row{grid-template-columns:80px minmax(0,1fr) 118px auto}
}

@media (max-width:760px){
  .accounting-panel .accounting-section-head{padding-inline:2px}
  .accounting-shell{padding:0}
  .accounting-tools-row{align-items:stretch;flex-direction:column;padding:8px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 95%,transparent)}
  .accounting-search{min-width:0;max-width:none;width:100%}
  .accounting-context-actions{width:100%;justify-content:flex-start}
  .accounting-context-actions .btn{min-height:36px}
  .accounting-view-guide{grid-template-columns:auto minmax(0,1fr);padding:9px;gap:8px}
  .accounting-view-guide>.btn{grid-column:2;justify-self:start;min-height:31px}
  .accounting-view-guide-icon{width:30px;height:30px;border-radius:9px}
  .accounting-view-guide strong{font-size:.66rem}.accounting-view-guide span{font-size:.59rem}

  .accounting-doc-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}
  .accounting-doc-type{grid-column:1;grid-row:1/3}
  .accounting-doc-main{grid-column:2;grid-row:1}
  .accounting-doc-row>.accounting-status{grid-column:3;grid-row:1}
  .accounting-doc-money{grid-column:2;grid-row:2;text-align:left;margin:0!important}
  .accounting-doc-row>.accounting-doc-actions{grid-column:2/4;grid-row:3;justify-self:start;justify-content:flex-start;flex-wrap:wrap}
  .accounting-doc-main>strong{font-size:.7rem}.accounting-doc-main>span{font-size:.59rem}.accounting-doc-main>small{font-size:.56rem}

  .accounting-contact-grid,.accounting-dimension-grid,.accounting-tax-code-grid{grid-template-columns:1fr}
  .accounting-contact-card,.accounting-dimension-card{padding:9px}
  .accounting-contact-actions .icon-btn,.accounting-dimension-actions .icon-btn,.accounting-tax-code-actions .icon-btn{min-width:32px;min-height:32px}

  .accounting-reconcile-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}
  .accounting-reconcile-date{grid-column:1;grid-row:1}
  .accounting-reconcile-main{grid-column:1;grid-row:2}
  .accounting-reconcile-amount{grid-column:2;grid-row:1/3}
  .accounting-reconcile-row>.accounting-doc-actions{grid-column:1/3;grid-row:3;justify-self:start;justify-content:flex-start;max-width:none}

  .accounting-guide-grid{grid-template-columns:1fr}
  .accounting-guide-intro{padding:10px}
  .accounting-modal-footer{padding-bottom:max(9px,env(safe-area-inset-bottom))}
  .accounting-modal-footer .btn{min-height:36px}
}

/* ===== SOURCE: Assets/style/42-public-accounting-seo.css ===== */
/* Triplem VIP public Accounting ERP + SEO expansion — 2026-09-07
   Public-facing only. No authenticated workspace behavior is defined here. */

/* Landing accounting spotlight */
.landing-accounting-suite,
.landing-accounting-feature-spotlight {
  position: relative;
  isolation: isolate;
}
.landing-accounting-suite {
  width: min(1180px, calc(100% - 32px));
  margin: clamp(38px, 6vw, 76px) auto;
  padding: clamp(22px, 4vw, 42px);
  border: 1px solid color-mix(in srgb, var(--line, #cbd5e1) 60%, transparent);
  border-radius: clamp(24px, 3vw, 34px);
  background:
    radial-gradient(circle at 8% 8%, color-mix(in srgb, var(--primary, #2457d6) 13%, transparent), transparent 32%),
    linear-gradient(145deg, color-mix(in srgb, var(--panel, #fff) 92%, transparent), color-mix(in srgb, var(--panel-2, #f8fafc) 82%, transparent));
  box-shadow: 0 24px 70px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.58);
  overflow: hidden;
}
.landing-accounting-suite::after {
  content: "";
  position: absolute;
  width: 280px;
  height: 280px;
  right: -130px;
  bottom: -170px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--primary, #2457d6) 12%, transparent);
  filter: blur(2px);
  z-index: -1;
}
.landing-accounting-suite-head { max-width: 850px; }
.landing-accounting-suite-head h2 { margin: 8px 0 10px; }
.landing-accounting-suite-head > p:last-child { color: var(--muted, #64748b); line-height: 1.75; }
.landing-accounting-suite-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 24px;
}
.landing-accounting-suite-card {
  min-width: 0;
  padding: 19px;
  border: 1px solid color-mix(in srgb, var(--line, #cbd5e1) 58%, transparent);
  border-radius: 20px;
  background: color-mix(in srgb, var(--panel, #fff) 78%, transparent);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.landing-accounting-suite-card i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  margin-bottom: 12px;
  color: var(--primary, #2457d6);
  background: color-mix(in srgb, var(--primary, #2457d6) 11%, transparent);
}
.landing-accounting-suite-card h3 { margin: 0 0 7px; font-size: 1rem; }
.landing-accounting-suite-card p { margin: 0; color: var(--muted, #64748b); font-size: .88rem; line-height: 1.65; }
.landing-accounting-flow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}
.landing-accounting-flow span {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 52px;
  padding: 11px 13px;
  border: 1px solid color-mix(in srgb, var(--line, #cbd5e1) 52%, transparent);
  border-radius: 15px;
  color: var(--text, #0f172a);
  background: color-mix(in srgb, var(--panel, #fff) 72%, transparent);
  font-size: .82rem;
  font-weight: 700;
}
.landing-accounting-flow span i { color: var(--primary, #2457d6); }
.landing-accounting-suite-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 20px;
}
.landing-accounting-suite-actions a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 9px 14px;
  border-radius: 12px;
  text-decoration: none;
  font-size: .85rem;
  font-weight: 750;
  color: var(--text, #0f172a);
  border: 1px solid color-mix(in srgb, var(--line, #cbd5e1) 58%, transparent);
  background: color-mix(in srgb, var(--panel, #fff) 76%, transparent);
}
.landing-accounting-suite-actions a:first-child {
  color: #fff;
  border-color: transparent;
  background: var(--primary, #2457d6);
}
.landing-accounting-suite-note {
  margin: 16px 0 0;
  padding: 11px 14px;
  border-radius: 14px;
  color: var(--muted, #64748b);
  background: color-mix(in srgb, var(--primary, #2457d6) 7%, transparent);
  font-size: .8rem;
  line-height: 1.55;
}
.landing-accounting-feature-spotlight {
  margin-top: 20px;
  padding: clamp(18px, 3vw, 26px);
  border: 1px solid color-mix(in srgb, var(--primary, #2457d6) 26%, var(--line, #cbd5e1));
  border-radius: 22px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--primary, #2457d6) 8%, var(--panel, #fff)), color-mix(in srgb, var(--panel-2, #f8fafc) 86%, transparent));
}
.landing-accounting-feature-spotlight .landing-card-grid { margin-top: 16px; }

/* Public SEO accounting pages — Security Architecture visual parity — 2026-09-10 */
.architecture-page {
  --seo-surface: linear-gradient(155deg, rgba(255,255,255,.88), rgba(248,250,252,.69));
  --seo-surface-strong: linear-gradient(155deg, rgba(255,255,255,.94), rgba(242,247,255,.76));
  --seo-border: rgba(255,255,255,.78);
  --seo-hover-border: rgba(36,87,214,.28);
  --seo-link-bg: rgba(36,87,214,.075);
  --seo-link-bg-hover: rgba(36,87,214,.12);
}

.erp-summary-grid,
.erp-feature-grid,
.erp-report-grid,
.erp-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.45rem;
}

.architecture-page .erp-feature-card,
.architecture-page .erp-report-card,
.architecture-page .erp-guide-card,
.architecture-page .erp-flow-step,
.architecture-page .erp-ledger-example,
.architecture-page .erp-callout,
.architecture-page .seo-definition {
  color: var(--text-primary);
  border: 1px solid var(--seo-border);
  background: var(--seo-surface);
  box-shadow: var(--shadow-sm), inset 0 1px 0 rgba(255,255,255,.88);
  backdrop-filter: blur(12px) saturate(1.08);
  -webkit-backdrop-filter: blur(12px) saturate(1.08);
}
.architecture-page .erp-feature-card,
.architecture-page .erp-report-card,
.architecture-page .erp-guide-card {
  padding: 1.15rem;
  border-radius: 17px;
}
.architecture-page .erp-flow-step {
  min-width: 0;
  padding: 1rem;
  border-radius: 16px;
}
.architecture-page .erp-ledger-example,
.architecture-page .erp-callout,
.architecture-page .seo-definition {
  border-radius: 17px;
}
.architecture-page .erp-feature-card,
.architecture-page .erp-report-card,
.architecture-page .erp-guide-card,
.architecture-page .erp-flow-step {
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}
.architecture-page .erp-feature-card:hover,
.architecture-page .erp-report-card:hover,
.architecture-page .erp-guide-card:hover,
.architecture-page .erp-flow-step:hover {
  transform: translateY(-2px);
  border-color: var(--seo-hover-border);
  box-shadow: var(--shadow-md), inset 0 1px 0 rgba(255,255,255,.92);
  background: var(--seo-surface-strong);
}

.architecture-page .erp-feature-card > i,
.architecture-page .erp-report-card > i,
.architecture-page .erp-guide-card > i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-bottom: 11px;
  border-radius: 12px;
  color: var(--brand-blue);
  background: var(--brand-blue-pale);
  border: 1px solid rgba(36,87,214,.11);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
}
.architecture-page .erp-feature-card h3,
.architecture-page .erp-report-card h3,
.architecture-page .erp-guide-card h3 {
  margin: 0 0 7px;
  color: var(--text-primary);
  font-size: .94rem;
}
.architecture-page .erp-feature-card p,
.architecture-page .erp-report-card p,
.architecture-page .erp-guide-card p {
  margin: 0;
  color: var(--text-muted);
  line-height: 1.65;
  font-size: .73rem;
}

.erp-flow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .7rem;
  margin-top: 1.45rem;
}
.architecture-page .erp-flow-step small {
  display: block;
  color: var(--brand-blue);
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: .60rem;
  font-weight: 850;
}
.architecture-page .erp-flow-step strong {
  display: block;
  margin: .4rem 0;
  color: var(--text-primary);
  font-size: .84rem;
}
.architecture-page .erp-flow-step span {
  color: var(--text-muted);
  font-size: .69rem;
  line-height: 1.55;
}

.architecture-page .erp-ledger-example {
  padding: 1.2rem;
  margin-top: 1.35rem;
  overflow: hidden;
}
.architecture-page .erp-ledger-example h3 {
  margin: 0 0 .8rem;
  color: var(--text-primary);
}
.erp-ledger-table {
  width: 100%;
  border-collapse: collapse;
  color: var(--text-secondary);
  font-size: .82rem;
}
.erp-ledger-table th,
.erp-ledger-table td {
  padding: .75rem .7rem;
  border-bottom: 1px solid rgba(36,87,214,.10);
  text-align: left;
  vertical-align: top;
}
.erp-ledger-table th {
  color: var(--text-muted);
  background: rgba(36,87,214,.045);
  font-size: .66rem;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.erp-ledger-table td { color: var(--text-secondary); }
.erp-ledger-table tbody tr:hover td { background: rgba(36,87,214,.035); }
.erp-ledger-table td.num,
.erp-ledger-table th.num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.architecture-page .erp-callout,
.architecture-page .seo-definition {
  margin-top: 1.35rem;
  padding: 1.05rem 1.15rem;
  border-color: rgba(255,255,255,.80);
  background:
    radial-gradient(180px 100px at 100% 0%, rgba(36,87,214,.055), transparent 72%),
    linear-gradient(155deg, rgba(255,255,255,.91), rgba(244,248,255,.72));
}
.architecture-page .erp-callout strong,
.architecture-page .seo-definition strong {
  color: var(--text-primary);
}
.architecture-page .erp-callout p,
.architecture-page .seo-definition p {
  margin: .38rem 0 0;
  color: var(--text-muted);
  font-size: .74rem;
  line-height: 1.65;
}

.erp-inline-links {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: 1.15rem;
}
.architecture-page .erp-inline-links a {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  min-height: 36px;
  padding: .52rem .72rem;
  border: 1px solid rgba(36,87,214,.14);
  border-radius: 11px;
  color: var(--brand-blue);
  background: var(--seo-link-bg);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.70);
  text-decoration: none;
  font-size: .72rem;
  font-weight: 800;
  transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}
.architecture-page .erp-inline-links a:hover,
.architecture-page .erp-inline-links a:focus-visible {
  color: var(--brand-blue-dark);
  border-color: rgba(36,87,214,.28);
  background: var(--seo-link-bg-hover);
  transform: translateY(-1px);
}

.architecture-page .erp-guide-card {
  display: block;
  color: inherit;
  text-decoration: none;
}
.architecture-page .erp-guide-card .erp-guide-route,
.architecture-page .guide-card-route {
  display: inline-flex;
  align-items: center;
  gap: .38rem;
  width: fit-content;
  margin-top: .8rem;
  padding: .34rem .52rem;
  border: 1px solid rgba(36,87,214,.12);
  border-radius: 999px;
  color: var(--brand-blue);
  background: rgba(36,87,214,.065);
  font-size: .68rem;
  font-weight: 850;
  line-height: 1.2;
}
.architecture-page .erp-guide-card:hover .erp-guide-route,
.architecture-page .guide-card-link:hover .guide-card-route {
  color: var(--brand-blue-dark);
  border-color: rgba(36,87,214,.20);
  background: rgba(36,87,214,.10);
}

.architecture-page .erp-ledger-table kbd,
.architecture-page .erp-feature-card kbd {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.8rem;
  padding: .18rem .42rem;
  margin: 0 .08rem;
  border: 1px solid rgba(36,87,214,.20);
  border-bottom-color: rgba(36,87,214,.34);
  border-radius: .42rem;
  color: var(--brand-blue-dark);
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(232,238,251,.90));
  box-shadow: inset 0 1px 0 #fff, 0 2px 0 rgba(36,87,214,.12);
  font: 700 .72rem/1.2 Inter, system-ui, sans-serif;
  white-space: nowrap;
}

.architecture-page .seo-primary-guide {
  border-color: rgba(36,87,214,.24) !important;
  background:
    radial-gradient(210px 130px at 100% 0%, rgba(97,232,247,.09), transparent 72%),
    linear-gradient(155deg, rgba(255,255,255,.94), rgba(235,243,255,.78)) !important;
  box-shadow: var(--shadow-md), inset 0 1px 0 rgba(255,255,255,.94) !important;
}
.architecture-page .seo-primary-guide > i {
  color: #fff !important;
  background: linear-gradient(145deg, var(--brand-blue), var(--brand-blue-light)) !important;
  border-color: rgba(36,87,214,.18) !important;
  box-shadow: 0 9px 20px rgba(36,87,214,.18), inset 0 1px 0 rgba(255,255,255,.26) !important;
}
.architecture-page .seo-primary-guide h3 { color: var(--text-primary); }
.architecture-page .seo-primary-guide p { color: var(--text-muted); }

.architecture-page .seo-fresh-tag {
  display: inline-flex;
  align-items: center;
  gap: .34rem;
  width: fit-content;
  margin: .12rem 0 .6rem;
  padding: .30rem .56rem;
  border: 1px solid rgba(36,87,214,.14);
  border-radius: 999px;
  color: var(--brand-blue);
  background: linear-gradient(145deg, rgba(36,87,214,.10), rgba(97,232,247,.055));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.70);
  font-size: .60rem;
  font-weight: 850;
  letter-spacing: .055em;
  line-height: 1.2;
  text-transform: uppercase;
}
.architecture-page .seo-fresh-tag i { color: currentColor; }

/* Ensure directory/footer redirect links remain legible on light surfaces. */
.architecture-page .security-source-note a {
  color: var(--brand-blue);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(36,87,214,.26);
  text-underline-offset: 2px;
}
.architecture-page .security-source-note a:hover {
  color: var(--brand-blue-dark);
  text-decoration-color: currentColor;
}

/* Dark-band prose: Security/style.css defines .security-prose for light sections.
   Override it explicitly here so SEO dark bands never inherit black/light-surface text. */
.architecture-page .security-dark-section .security-prose {
  color: rgba(245,248,255,.84);
}
.architecture-page .security-dark-section .security-prose p,
.architecture-page .security-dark-section .security-prose li,
.architecture-page .security-dark-section .security-prose span {
  color: rgba(245,248,255,.78);
}
.architecture-page .security-dark-section .security-prose p:first-child {
  color: rgba(255,255,255,.92);
}
.architecture-page .security-dark-section .security-prose strong,
.architecture-page .security-dark-section .security-prose b,
.architecture-page .security-dark-section .security-prose em {
  color: #fff;
}
.architecture-page .security-dark-section .security-prose a {
  color: #b9d2ff;
  text-decoration-color: rgba(185,210,255,.40);
}
.architecture-page .security-dark-section .security-prose a:hover {
  color: #fff;
  text-decoration-color: currentColor;
}

/* Triplem AI privacy cards: correct high-contrast treatment inside the dark security band. */
.security-dark-section .security-rail-card {
  color: #f4f7ff;
  border-color: rgba(162,190,255,.18);
  background: linear-gradient(150deg, rgba(18,37,70,.92), rgba(10,25,49,.86));
  box-shadow: 0 14px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.security-dark-section .security-rail-card > i {
  color: #dce8ff;
  background: rgba(91,137,255,.18);
  border: 1px solid rgba(143,176,255,.20);
}
.security-dark-section .security-rail-card small { color: #a9c5ff; }
.security-dark-section .security-rail-card strong { color: #fff; }
.security-dark-section .security-rail-card span { color: rgba(233,240,255,.76); }
.security-dark-section .security-rail-card:hover {
  border-color: rgba(143,176,255,.34);
  background: linear-gradient(150deg, rgba(24,47,86,.96), rgba(12,30,58,.90));
}

/* Pale text belongs only on genuinely dark sections. */
.architecture-page .security-dark-section .erp-feature-card,
.architecture-page .security-dark-section .erp-report-card,
.architecture-page .security-dark-section .erp-guide-card,
.architecture-page .security-dark-section .erp-flow-step,
.architecture-page .security-dark-section .erp-ledger-example,
.architecture-page .security-dark-section .erp-callout,
.architecture-page .security-dark-section .seo-definition {
  color: #fff;
  border-color: rgba(255,255,255,.11);
  background: linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.architecture-page .security-dark-section .erp-feature-card:hover,
.architecture-page .security-dark-section .erp-report-card:hover,
.architecture-page .security-dark-section .erp-guide-card:hover,
.architecture-page .security-dark-section .erp-flow-step:hover {
  border-color: rgba(143,176,255,.28);
  background: linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.05));
  box-shadow: 0 14px 30px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.10);
}
.architecture-page .security-dark-section .erp-feature-card h3,
.architecture-page .security-dark-section .erp-report-card h3,
.architecture-page .security-dark-section .erp-guide-card h3,
.architecture-page .security-dark-section .erp-flow-step strong,
.architecture-page .security-dark-section .erp-ledger-example h3,
.architecture-page .security-dark-section .erp-callout strong,
.architecture-page .security-dark-section .seo-definition strong {
  color: #fff;
}
.architecture-page .security-dark-section .erp-feature-card p,
.architecture-page .security-dark-section .erp-report-card p,
.architecture-page .security-dark-section .erp-guide-card p,
.architecture-page .security-dark-section .erp-flow-step span,
.architecture-page .security-dark-section .erp-callout p,
.architecture-page .security-dark-section .seo-definition p,
.architecture-page .security-dark-section .erp-ledger-table td {
  color: rgba(255,255,255,.68);
}
.architecture-page .security-dark-section .erp-flow-step small,
.architecture-page .security-dark-section .erp-ledger-table th {
  color: #a8c8ff;
}
.architecture-page .security-dark-section .erp-ledger-table th {
  background: rgba(255,255,255,.045);
}
.architecture-page .security-dark-section .erp-ledger-table th,
.architecture-page .security-dark-section .erp-ledger-table td {
  border-bottom-color: rgba(255,255,255,.09);
}
.architecture-page .security-dark-section .erp-feature-card > i,
.architecture-page .security-dark-section .erp-report-card > i,
.architecture-page .security-dark-section .erp-guide-card > i {
  color: #a8c8ff;
  background: rgba(143,176,255,.10);
  border-color: rgba(143,176,255,.16);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.architecture-page .security-dark-section .erp-inline-links a,
.architecture-page .security-dark-section .erp-guide-card .erp-guide-route,
.architecture-page .security-dark-section .guide-card-route,
.architecture-page .security-dark-section .security-source-note a {
  color: #b9d2ff;
}
.architecture-page .security-dark-section .erp-inline-links a,
.architecture-page .security-dark-section .erp-guide-card .erp-guide-route,
.architecture-page .security-dark-section .guide-card-route {
  border-color: rgba(168,200,255,.16);
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.architecture-page .security-dark-section .erp-inline-links a:hover,
.architecture-page .security-dark-section .erp-guide-card:hover .erp-guide-route,
.architecture-page .security-dark-section .guide-card-link:hover .guide-card-route {
  color: #fff;
  border-color: rgba(168,200,255,.28);
  background: rgba(143,176,255,.10);
}
.architecture-page .security-dark-section .seo-fresh-tag {
  color: #b9d2ff;
  border-color: rgba(168,200,255,.17);
  background: rgba(143,176,255,.075);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.architecture-page .security-dark-section .seo-primary-guide {
  border-color: rgba(143,176,255,.25) !important;
  background: linear-gradient(145deg, rgba(74,112,207,.16), rgba(255,255,255,.045)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.architecture-page .security-dark-section .seo-primary-guide h3 { color: #fff; }
.architecture-page .security-dark-section .seo-primary-guide p { color: rgba(255,255,255,.68); }
.architecture-page .security-dark-section .erp-ledger-table kbd,
.architecture-page .security-dark-section .erp-feature-card kbd {
  color: #e6efff;
  background: rgba(6,15,31,.62);
  border-color: rgba(143,176,255,.24);
  border-bottom-color: rgba(143,176,255,.38);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 2px 0 rgba(0,0,0,.30);
}

.architecture-page .erp-guide-card:focus-visible,
.architecture-page .erp-inline-links a:focus-visible,
.architecture-page .guide-card-link:focus-visible,
.architecture-page .guide-question-link:focus-visible {
  outline: 3px solid rgba(36,87,214,.20);
  outline-offset: 3px;
}

@media (max-width: 900px) {
  .landing-accounting-suite-grid,
  .erp-summary-grid,
  .erp-feature-grid,
  .erp-report-grid,
  .erp-guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .landing-accounting-flow,
  .erp-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .landing-accounting-suite { width: calc(100% - 24px); margin: 28px 12px; padding: 18px 14px; border-radius: 22px; }
  .landing-accounting-suite-grid,
  .landing-accounting-flow,
  .erp-summary-grid,
  .erp-feature-grid,
  .erp-report-grid,
  .erp-guide-grid,
  .erp-flow { grid-template-columns: 1fr; }
  .landing-accounting-suite-card { padding: 16px; }
  .landing-accounting-suite-actions { align-items: stretch; }
  .landing-accounting-suite-actions a { justify-content: center; width: 100%; }
  .architecture-page .erp-feature-card,
  .architecture-page .erp-report-card,
  .architecture-page .erp-guide-card,
  .architecture-page .erp-flow-step,
  .architecture-page .erp-callout,
  .architecture-page .seo-definition { border-radius: 16px; }
  .architecture-page .erp-feature-card,
  .architecture-page .erp-report-card,
  .architecture-page .erp-guide-card { padding: 1rem; }
  .architecture-page .erp-inline-links a { min-height: 38px; padding: .55rem .70rem; }
  .erp-ledger-example { padding: .85rem; overflow-x: auto; scrollbar-width: none; }
  .erp-ledger-example::-webkit-scrollbar { display: none; }
  .erp-ledger-table { min-width: 580px; }
}


/* SEO/GEO authority + internationalization additions 2026-09-11 */
.seo-provenance{position:relative;z-index:2;margin:-1.05rem auto 1rem;width:min(1180px,calc(100% - 32px));display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.55rem .9rem;padding:.72rem 1rem;border:1px solid rgba(36,87,214,.12);border-radius:16px;background:rgba(255,255,255,.78);box-shadow:0 14px 34px rgba(15,23,42,.06);backdrop-filter:blur(14px);color:var(--muted,#64748b);font-size:.76rem;line-height:1.45}
.seo-provenance strong{color:var(--text,#0f172a);font-weight:800}
.seo-provenance a{color:var(--brand-blue,#2457d6);font-weight:750;text-decoration:none}
.seo-provenance a:hover,.seo-provenance a:focus-visible{text-decoration:underline}
.seo-authority-links{display:flex;flex-wrap:wrap;gap:.6rem .75rem;margin-top:1rem}
.seo-authority-links a{display:inline-flex;align-items:center;gap:.42rem;padding:.62rem .78rem;border:1px solid rgba(36,87,214,.13);border-radius:12px;background:rgba(255,255,255,.7);color:var(--brand-blue,#2457d6);font-weight:760;text-decoration:none}
.seo-authority-links a:hover,.seo-authority-links a:focus-visible{border-color:rgba(36,87,214,.3);box-shadow:0 10px 24px rgba(15,23,42,.06)}
.region-language-switch{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.region-language-switch a{display:inline-flex;align-items:center;padding:.5rem .72rem;border-radius:999px;border:1px solid rgba(36,87,214,.16);background:rgba(255,255,255,.72);color:var(--text,#0f172a);font-size:.74rem;font-weight:800;text-decoration:none}
.region-language-switch a[aria-current="page"]{background:rgba(36,87,214,.1);border-color:rgba(36,87,214,.34);color:var(--brand-blue,#2457d6)}
.region-compliance-note{margin-top:1rem;padding:1rem 1.05rem;border-left:3px solid var(--brand-blue,#2457d6);border-radius:0 14px 14px 0;background:rgba(36,87,214,.055);color:var(--muted,#64748b);line-height:1.65}
html[dir="rtl"] body{font-family:"Segoe UI",Tahoma,Arial,sans-serif;text-align:right}
html[dir="rtl"] .hero-name,html[dir="rtl"] .section-title,html[dir="rtl"] h2,html[dir="rtl"] h3{font-family:"Segoe UI",Tahoma,Arial,sans-serif;letter-spacing:0}
html[dir="rtl"] .nav-inner,html[dir="rtl"] .hero-inner,html[dir="rtl"] .footer,html[dir="rtl"] .seo-provenance{direction:rtl}
html[dir="rtl"] .region-compliance-note{border-left:0;border-right:3px solid var(--brand-blue,#2457d6);border-radius:14px 0 0 14px}
@media(max-width:680px){.seo-provenance{width:min(100% - 20px,1180px);margin:-.55rem auto .75rem;padding:.62rem .76rem;font-size:.7rem;justify-content:flex-start}}

/* ===== SOURCE: Assets/style/43-expenses-overlay-refinement.css ===== */
/* Triplem VIP Expenses overlay refinement — compact entry actions and transaction detail presentation. */
/* Expenses overlay refinement: compact pill actions, slimmer optional banner and centered transaction details. */
#expenseTopupForm .modal-footer,
#expenseEntryForm .modal-footer{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  margin-top:4px!important;
  padding:4px 0 1px!important;
}
#expenseTopupForm .modal-footer .btn,
#expenseEntryForm .modal-footer .btn{
  flex:0 0 auto!important;
  min-width:96px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  font-size:.72rem!important;
  line-height:1!important;
}
#expenseTopupForm .expense-optional-details,
#expenseEntryForm .expense-optional-details{
  border-radius:13px!important;
}
#expenseTopupForm .expense-optional-details>summary,
#expenseEntryForm .expense-optional-details>summary{
  min-height:36px!important;
  padding:6px 10px!important;
  gap:7px!important;
  font-size:.76rem!important;
  line-height:1.15!important;
}
#expenseTopupForm .expense-optional-details>summary>small,
#expenseEntryForm .expense-optional-details>summary>small{
  font-size:.62rem!important;
  line-height:1.12!important;
}
#expenseTopupForm .expense-optional-chevron,
#expenseEntryForm .expense-optional-chevron{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  font-size:.72rem!important;
}

#expenseTransactionDetailModal.modal{
  place-items:center!important;
  padding:24px!important;
}
#expenseTransactionDetailModal .expense-tx-detail-dialog{
  width:min(620px,calc(100vw - 48px))!important;
  max-width:620px!important;
  max-height:calc(100dvh - 48px)!important;
  margin:auto!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border-radius:20px!important;
}
#expenseTransactionDetailModal .modal-head{
  flex:0 0 auto!important;
  padding:12px 14px 8px!important;
  align-items:center!important;
}
#expenseTransactionDetailModal .modal-head h3{
  font-size:.98rem!important;
}
#expenseTransactionDetailModal .modal-head p{
  margin-top:2px!important;
  font-size:.70rem!important;
  line-height:1.25!important;
}
#expenseTransactionDetailModal .expense-tx-kicker{
  margin-bottom:2px!important;
  font-size:.66rem!important;
}
#expenseTransactionDetailModal .modal-body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:8px 14px 14px!important;
  scrollbar-width:none!important;
}
#expenseTransactionDetailModal .modal-body::-webkit-scrollbar{display:none!important}
#expenseTransactionDetailModal .expense-tx-hero{
  gap:10px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
#expenseTransactionDetailModal .expense-tx-icon{
  width:42px!important;
  height:42px!important;
  border-radius:13px!important;
  font-size:1.05rem!important;
}
#expenseTransactionDetailModal .expense-tx-hero strong{
  font-size:1.15rem!important;
  line-height:1.15!important;
}
#expenseTransactionDetailModal .expense-tx-hero :is(small,span){
  font-size:.70rem!important;
  line-height:1.2!important;
}
#expenseTransactionDetailModal .expense-tx-detail-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px!important;
  margin-top:8px!important;
}
#expenseTransactionDetailModal .expense-tx-detail-grid>div,
#expenseTransactionDetailModal .expense-tx-note{
  padding:9px 10px!important;
  border-radius:11px!important;
}
#expenseTransactionDetailModal .expense-tx-detail-grid small,
#expenseTransactionDetailModal .expense-tx-note small{
  margin-bottom:3px!important;
  font-size:.66rem!important;
  line-height:1.15!important;
}
#expenseTransactionDetailModal .expense-tx-detail-grid strong{
  font-size:.81rem!important;
  line-height:1.25!important;
}
#expenseTransactionDetailModal .expense-tx-detail-empty{
  margin-top:8px!important;
  padding:9px 10px!important;
  border-radius:11px!important;
  font-size:.70rem!important;
}
#expenseTransactionDetailModal .expense-tx-note{
  margin-top:8px!important;
}
#expenseTransactionDetailModal .expense-tx-note p{
  font-size:.79rem!important;
  line-height:1.35!important;
}
#expenseTransactionDetailModal .expense-tx-actions{
  justify-content:flex-end!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  margin-top:10px!important;
}
#expenseTransactionDetailModal .expense-tx-actions .expense-tx-action-icon{
  flex:0 0 36px!important;
  width:36px!important;
  min-width:36px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  border-radius:50%!important;
  display:inline-grid!important;
  place-items:center!important;
  font-size:.82rem!important;
  line-height:1!important;
}
#expenseTransactionDetailModal .expense-tx-transfer-hero{
  gap:8px!important;
  padding:10px!important;
  border-radius:15px!important;
  box-shadow:none!important;
}
#expenseTransactionDetailModal .expense-tx-transfer-wallet{
  gap:3px!important;
  padding:9px 8px!important;
  border-radius:12px!important;
}
#expenseTransactionDetailModal .expense-tx-transfer-wallet>span{
  width:40px!important;
  height:40px!important;
  border-radius:12px!important;
}
#expenseTransactionDetailModal .expense-tx-transfer-wallet strong{font-size:.78rem!important}
#expenseTransactionDetailModal .expense-tx-transfer-wallet b{font-size:.90rem!important}
#expenseTransactionDetailModal .expense-tx-transfer-arrow i{
  width:30px!important;
  height:30px!important;
}

@media (max-width:720px){
  #expenseModal.modal{
    place-items:center!important;
    padding:
      max(18px,env(safe-area-inset-top,0px))
      max(14px,env(safe-area-inset-right,0px))
      max(18px,env(safe-area-inset-bottom,0px))
      max(14px,env(safe-area-inset-left,0px))!important;
  }
  #expenseModal .modal-dialog.compact-entry-dialog{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - 36px)!important;
    margin:auto!important;
    align-self:center!important;
    border-radius:18px!important;
  }
  #expenseTopupForm .modal-footer .btn,
  #expenseEntryForm .modal-footer .btn{
    min-width:90px!important;
    min-height:32px!important;
    height:32px!important;
    padding:0 12px!important;
    font-size:.67rem!important;
  }
  #expenseTopupForm .expense-optional-details>summary,
  #expenseEntryForm .expense-optional-details>summary{
    min-height:32px!important;
    padding:5px 8px!important;
    gap:5px!important;
    font-size:.64rem!important;
  }
  #expenseTopupForm .expense-optional-details>summary>small,
  #expenseEntryForm .expense-optional-details>summary>small{
    font-size:.51rem!important;
    max-width:44%!important;
  }
  #expenseTopupForm .expense-optional-chevron,
  #expenseEntryForm .expense-optional-chevron{
    width:16px!important;
    height:16px!important;
    flex-basis:16px!important;
    font-size:.64rem!important;
  }

  #expenseTransactionDetailModal.modal{
    place-items:center!important;
    padding:
      max(18px,env(safe-area-inset-top,0px))
      max(14px,env(safe-area-inset-right,0px))
      max(18px,env(safe-area-inset-bottom,0px))
      max(14px,env(safe-area-inset-left,0px))!important;
  }
  #expenseTransactionDetailModal .expense-tx-detail-dialog{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - 36px)!important;
    margin:auto!important;
    align-self:center!important;
    border-radius:18px!important;
  }
  #expenseTransactionDetailModal .modal-head{
    padding:9px 11px 6px!important;
  }
  #expenseTransactionDetailModal .modal-body{
    padding:7px 10px 10px!important;
  }
  #expenseTransactionDetailModal .expense-tx-hero{
    gap:8px!important;
    padding:9px 10px!important;
    border-radius:12px!important;
  }
  #expenseTransactionDetailModal .expense-tx-icon{
    width:38px!important;
    height:38px!important;
    border-radius:11px!important;
  }
  #expenseTransactionDetailModal .expense-tx-hero strong{font-size:1.02rem!important}
  #expenseTransactionDetailModal .expense-tx-detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    margin-top:6px!important;
  }
  #expenseTransactionDetailModal .expense-tx-detail-grid>div,
  #expenseTransactionDetailModal .expense-tx-note{
    padding:7px 8px!important;
    border-radius:10px!important;
  }
  #expenseTransactionDetailModal .expense-tx-detail-grid small,
  #expenseTransactionDetailModal .expense-tx-note small{
    margin-bottom:2px!important;
    font-size:.60rem!important;
  }
  #expenseTransactionDetailModal .expense-tx-detail-grid strong{
    font-size:.73rem!important;
  }
  #expenseTransactionDetailModal .expense-tx-note{
    margin-top:6px!important;
  }
  #expenseTransactionDetailModal .expense-tx-note p{
    font-size:.72rem!important;
    line-height:1.3!important;
  }
  #expenseTransactionDetailModal .expense-tx-actions{
    gap:6px!important;
    margin-top:8px!important;
  }
  #expenseTransactionDetailModal .expense-tx-actions .expense-tx-action-icon{
    flex-basis:34px!important;
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    font-size:.76rem!important;
  }
  #expenseTransactionDetailModal .expense-tx-transfer-hero{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
    gap:6px!important;
    padding:8px!important;
  }
  #expenseTransactionDetailModal .expense-tx-transfer-arrow{
    flex-direction:column!important;
  }
  #expenseTransactionDetailModal .expense-tx-transfer-arrow i{
    transform:none!important;
  }
  #expenseTransactionDetailModal .expense-tx-transfer-wallet{
    padding:7px 5px!important;
  }
}

@media (max-width:360px){
  #expenseTransactionDetailModal .expense-tx-detail-grid{
    grid-template-columns:1fr!important;
  }
  #expenseTopupForm .modal-footer,
  #expenseEntryForm .modal-footer{gap:6px!important}
  #expenseTopupForm .modal-footer .btn,
  #expenseEntryForm .modal-footer .btn{
    min-width:84px!important;
    padding-inline:10px!important;
  }
}

/* 2026-09-08 Expenses final touch polish: invisible entry scrollbars + stable wallet filter. */
#expenseModal:has(#expenseTopupForm:not(.hide)) .modal-body,
#expenseModal:has(#expenseEntryForm:not(.hide)) .modal-body{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#expenseModal:has(#expenseTopupForm:not(.hide)) .modal-body::-webkit-scrollbar,
#expenseModal:has(#expenseEntryForm:not(.hide)) .modal-body::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}

#expensesPanel .expense-wallet-select-control,
#expensesPanel .expense-wallet-select-control:is(:hover,:focus-within,:active){
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
}
#expensesPanel .expense-wallet-select-control::before,
#expensesPanel .expense-wallet-select-control::after{
  content:none!important;
  display:none!important;
}
#expensesPanel .expense-wallet-select-filter{
  transform:none!important;
  filter:none!important;
  transition:border-color .14s ease,background-color .14s ease,color .14s ease!important;
  -webkit-tap-highlight-color:transparent!important;
  touch-action:manipulation;
}
#expensesPanel .expense-wallet-select-filter:is(:hover,:focus,:focus-visible,:active){
  transform:none!important;
  filter:none!important;
  outline:none!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--glass-highlight,#fff) 38%,transparent)!important;
  border-color:color-mix(in srgb,var(--primary) 48%,var(--line))!important;
}
@media (max-width:768px){
  #expensesPanel .expense-wallet-select-filter,
  #expensesPanel .expense-wallet-select-filter:is(:hover,:focus,:focus-visible,:active){
    transform:none!important;
    filter:none!important;
    animation:none!important;
    transition:border-color .12s ease,background-color .12s ease,color .12s ease!important;
  }
}

/* 2026-09-08 Transfer entry parity with Add Money / Add Expense. */
#transferModal.modal{
  place-items:center!important;
}
#transferModal .transfer-entry-dialog{
  width:min(560px,calc(100vw - 24px))!important;
  max-width:560px!important;
  max-height:min(720px,calc(100dvh - 36px))!important;
  margin:auto!important;
  align-self:center!important;
}
#transferModal .modal-body{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#transferModal .modal-body::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
#transferForm .modal-footer{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  margin-top:4px!important;
  padding:4px 0 1px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
}
#transferForm .modal-footer .btn{
  flex:0 0 auto!important;
  min-width:96px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  font-size:.72rem!important;
  line-height:1!important;
}
#transferForm .expense-optional-details{
  border-radius:13px!important;
}
#transferForm .expense-optional-details>summary{
  min-height:36px!important;
  padding:6px 10px!important;
  gap:7px!important;
  font-size:.76rem!important;
  line-height:1.15!important;
}
#transferForm .expense-optional-details>summary::after{
  display:none!important;
  content:none!important;
}
#transferForm .expense-optional-details>summary>small{
  font-size:.62rem!important;
  line-height:1.12!important;
}
#transferForm .expense-optional-chevron{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  display:inline-grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:var(--primary)!important;
  font-size:.72rem!important;
}
#transferForm .expense-chevron-down{display:none}
#transferForm .expense-optional-details[open] .expense-chevron-right{display:none}
#transferForm .expense-optional-details[open] .expense-chevron-down{display:inline-block}
#transferForm .expense-optional-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px 10px!important;
  align-items:stretch!important;
}
#transferForm .expense-optional-grid>.field,
#transferForm .expense-optional-grid>.field.w12,
#transferForm .expense-optional-grid>.expense-optional-wide{
  grid-column:span 1!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
#transferForm .expense-optional-grid>.field>label{
  min-height:1.45em!important;
  display:flex!important;
  align-items:flex-end!important;
  column-gap:3px!important;
}
#transferForm .expense-optional-grid .optional-label{
  flex:0 0 auto!important;
  margin:0!important;
  white-space:nowrap!important;
  color:var(--muted)!important;
  font-style:normal!important;
  font-weight:650!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
#transferForm .expense-optional-grid>.field :is(.input,.select){width:100%!important}
#transferForm .transfer-money-input{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px;
  align-items:center;
  min-width:0;
}
#transferForm .transfer-money-input .input{min-width:0;width:100%}
#transferForm .transfer-currency-indicator{
  min-width:30px;
  color:var(--muted);
  font-size:.70rem;
  font-weight:750;
  text-align:center;
}
#transferForm .transfer-readonly-amount{
  background:var(--panel-bg,var(--surface-soft))!important;
}
#transferForm .transfer-conversion-help{
  margin-left:3px;
  color:var(--muted);
  font-size:.62rem;
  font-weight:650;
}

@media (max-width:720px){
  #transferModal.modal{
    place-items:center!important;
    padding:
      max(18px,env(safe-area-inset-top,0px))
      max(14px,env(safe-area-inset-right,0px))
      max(18px,env(safe-area-inset-bottom,0px))
      max(14px,env(safe-area-inset-left,0px))!important;
  }
  #transferModal .transfer-entry-dialog{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - 36px)!important;
    margin:auto!important;
    align-self:center!important;
    border-radius:18px!important;
  }
  #transferForm .field>label{
    font-size:.64rem!important;
    line-height:1.18!important;
  }
  #transferForm :is(.input,.select){
    min-height:34px!important;
    height:34px!important;
    padding:5px 7px!important;
    font-size:.70rem!important;
    line-height:1.15!important;
  }
  #transferForm .optional-label{font-size:.54rem!important}
  #transferForm .modal-footer .btn{
    min-width:90px!important;
    min-height:32px!important;
    height:32px!important;
    padding:0 12px!important;
    font-size:.67rem!important;
  }
  #transferForm .expense-optional-details>summary{
    min-height:32px!important;
    padding:5px 8px!important;
    gap:5px!important;
    font-size:.64rem!important;
  }
  #transferForm .expense-optional-details>summary>small{
    max-width:44%!important;
    font-size:.51rem!important;
  }
  #transferForm .expense-optional-chevron{
    width:16px!important;
    height:16px!important;
    flex-basis:16px!important;
    font-size:.64rem!important;
  }
  #transferForm .expense-optional-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px 7px!important;
    padding:5px 8px 9px!important;
  }
  #transferForm .expense-optional-grid>.field>label{
    min-height:2.35em!important;
    margin-bottom:3px!important;
    font-size:.60rem!important;
    line-height:1.16!important;
  }
  #transferForm .transfer-currency-indicator{
    min-width:27px!important;
    font-size:.60rem!important;
  }
  #transferForm .transfer-conversion-help{font-size:.52rem!important}
}

@media (max-width:360px){
  #transferForm .modal-footer{gap:6px!important}
  #transferForm .modal-footer .btn{
    min-width:84px!important;
    padding-inline:10px!important;
  }
}

/* 2026-09-08 Wallet account particulars: entry/edit parity, protected detail view and transfer verification. */
#expenseModal:has(#expenseAccountForm:not(.hide)) .modal-body{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#expenseModal:has(#expenseAccountForm:not(.hide)) .modal-body::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
#expenseAccountForm .modal-footer{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  margin-top:4px!important;
  padding:4px 0 1px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
}
#expenseAccountForm .modal-footer .btn{
  flex:0 0 auto!important;
  min-width:96px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  font-size:.72rem!important;
  line-height:1!important;
}
#expenseAccountForm .expense-optional-details,
#editExpenseAccountDetailsGroup .expense-optional-details{
  border-radius:13px!important;
}
#expenseAccountForm .expense-optional-details>summary,
#editExpenseAccountDetailsGroup .expense-optional-details>summary{
  min-height:36px!important;
  padding:6px 10px!important;
  gap:7px!important;
  font-size:.76rem!important;
  line-height:1.15!important;
}
#expenseAccountForm .expense-optional-details>summary::after,
#editExpenseAccountDetailsGroup .expense-optional-details>summary::after{
  display:none!important;
  content:none!important;
}
#expenseAccountForm .expense-optional-details>summary>small,
#editExpenseAccountDetailsGroup .expense-optional-details>summary>small{
  font-size:.62rem!important;
  line-height:1.12!important;
}
#expenseAccountForm .expense-optional-chevron,
#editExpenseAccountDetailsGroup .expense-optional-chevron{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  display:inline-grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:var(--primary)!important;
  font-size:.72rem!important;
}
#expenseAccountForm .expense-chevron-down,
#editExpenseAccountDetailsGroup .expense-chevron-down{display:none}
#expenseAccountForm .expense-optional-details[open] .expense-chevron-right,
#editExpenseAccountDetailsGroup .expense-optional-details[open] .expense-chevron-right{display:none}
#expenseAccountForm .expense-optional-details[open] .expense-chevron-down,
#editExpenseAccountDetailsGroup .expense-optional-details[open] .expense-chevron-down{display:inline-block}
#expenseAccountForm .expense-optional-grid,
#editExpenseAccountDetailsGroup .expense-optional-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px 10px!important;
  align-items:stretch!important;
}
#expenseAccountForm .expense-optional-grid>.field,
#editExpenseAccountDetailsGroup .expense-optional-grid>.field{
  grid-column:span 1!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
#expenseAccountForm .expense-optional-grid>.field>label,
#editExpenseAccountDetailsGroup .expense-optional-grid>.field>label{
  min-height:1.45em!important;
  display:flex!important;
  align-items:flex-end!important;
  column-gap:3px!important;
}
#expenseAccountForm .expense-optional-grid .optional-label,
#editExpenseAccountDetailsGroup .expense-optional-grid .optional-label{
  flex:0 0 auto!important;
  margin:0!important;
  white-space:nowrap!important;
  color:var(--muted)!important;
  font-style:normal!important;
  font-weight:650!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
#expenseAccountForm .expense-optional-grid :is(.input,.select),
#editExpenseAccountDetailsGroup .expense-optional-grid :is(.input,.select){width:100%!important}

.transfer-account-mini{
  margin-top:5px;
  padding:6px 7px;
  border:1px solid color-mix(in srgb,var(--line) 82%,transparent);
  border-radius:10px;
  background:color-mix(in srgb,var(--surface-soft) 84%,transparent);
}
.transfer-account-mini-inner{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px 8px;
}
.transfer-account-mini-inner>span{min-width:0;display:flex;flex-direction:column;gap:1px}
.transfer-account-mini-inner small{color:var(--muted);font-size:.54rem;font-weight:700;line-height:1.05;text-transform:uppercase;letter-spacing:.02em}
.transfer-account-mini-inner strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);font-size:.64rem;line-height:1.15;font-weight:750}

#expenseAccountDetailsModal.modal{
  place-items:center!important;
  z-index:1185!important;
  padding:24px!important;
}
#expenseAccountDetailsModal .expense-account-details-dialog{
  width:min(590px,calc(100vw - 48px))!important;
  max-width:590px!important;
  max-height:calc(100dvh - 48px)!important;
  margin:auto!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border-radius:20px!important;
}
#expenseAccountDetailsModal .modal-head{padding:12px 14px 9px!important}
#expenseAccountDetailsModal .modal-head h3{font-size:1rem!important}
#expenseAccountDetailsModal .modal-head p{margin-top:2px!important;font-size:.70rem!important}
#expenseAccountDetailsModal .modal-body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:10px 14px 14px!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#expenseAccountDetailsModal .modal-body::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.expense-account-details-hero{
  display:flex;
  align-items:center;
  gap:11px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface-soft);
}
.expense-account-details-logo{
  width:46px;height:46px;flex:0 0 46px;
  display:grid;place-items:center;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--surface-elevated);
}
.expense-account-details-logo img{max-width:38px;max-height:38px;object-fit:contain}
.expense-account-details-hero>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.expense-account-details-hero small{color:var(--primary);font-size:.59rem;font-weight:850;letter-spacing:.06em}
.expense-account-details-hero strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);font-size:.94rem}
.expense-account-details-hero span{color:var(--muted);font-size:.69rem}
.expense-account-details-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:9px;
}
.expense-account-detail-card{
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface-elevated);
}
.expense-account-detail-card>small{display:block;margin-bottom:3px;color:var(--muted);font-size:.61rem;font-weight:700}
.expense-account-detail-card>div{min-width:0;display:flex;align-items:center;gap:6px}
.expense-account-detail-card strong{min-width:0;overflow-wrap:anywhere;color:var(--text-strong);font-size:.78rem;line-height:1.22}
.expense-account-detail-card.is-sensitive strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.02em}
.expense-account-reveal{width:28px!important;min-width:28px!important;height:28px!important;flex:0 0 28px!important;border-radius:50%!important;font-size:.68rem!important}
.expense-account-details-empty{display:flex;align-items:flex-start;gap:8px;margin-top:9px;padding:10px 11px;border:1px dashed var(--line-strong);border-radius:11px;background:var(--surface-soft);color:var(--muted);font-size:.72rem;line-height:1.35}
.expense-account-details-empty i{margin-top:1px;color:var(--primary)}
.wallet-account-details-btn{white-space:nowrap}

@media(max-width:720px){
  #expenseAccountForm .field>label{font-size:.64rem!important;line-height:1.18!important}
  #expenseAccountForm :is(.input,.select){min-height:34px!important;height:34px!important;padding:5px 7px!important;font-size:.70rem!important;line-height:1.15!important}
  #expenseAccountForm .modal-footer .btn{min-width:90px!important;min-height:32px!important;height:32px!important;padding:0 12px!important;font-size:.67rem!important}
  #expenseAccountForm .expense-optional-details>summary,
  #editExpenseAccountDetailsGroup .expense-optional-details>summary{min-height:32px!important;padding:5px 8px!important;gap:5px!important;font-size:.64rem!important}
  #expenseAccountForm .expense-optional-details>summary>small,
  #editExpenseAccountDetailsGroup .expense-optional-details>summary>small{max-width:44%!important;font-size:.51rem!important}
  #expenseAccountForm .expense-optional-chevron,
  #editExpenseAccountDetailsGroup .expense-optional-chevron{width:16px!important;height:16px!important;flex-basis:16px!important;font-size:.64rem!important}
  #expenseAccountForm .expense-optional-grid,
  #editExpenseAccountDetailsGroup .expense-optional-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px 7px!important;padding:5px 8px 9px!important}
  #expenseAccountForm .expense-optional-grid>.field>label,
  #editExpenseAccountDetailsGroup .expense-optional-grid>.field>label{min-height:2.35em!important;margin-bottom:3px!important;font-size:.60rem!important;line-height:1.16!important}
  .transfer-account-mini{padding:5px 6px;border-radius:9px}
  .transfer-account-mini-inner{gap:3px 6px}
  .transfer-account-mini-inner small{font-size:.48rem}
  .transfer-account-mini-inner strong{font-size:.57rem}
  #expenseAccountDetailsModal.modal{
    padding:max(18px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) max(18px,env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))!important;
  }
  #expenseAccountDetailsModal .expense-account-details-dialog{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 36px)!important;margin:auto!important;border-radius:18px!important}
  #expenseAccountDetailsModal .modal-head{padding:10px 11px 7px!important}
  #expenseAccountDetailsModal .modal-body{padding:8px 10px 10px!important}
  .expense-account-details-hero{padding:9px 10px;gap:9px;border-radius:12px}
  .expense-account-details-logo{width:40px;height:40px;flex-basis:40px;border-radius:11px}
  .expense-account-details-logo img{max-width:34px;max-height:34px}
  .expense-account-details-grid{gap:6px;margin-top:7px}
  .expense-account-detail-card{padding:7px 8px;border-radius:10px}
  .expense-account-detail-card>small{font-size:.55rem}
  .expense-account-detail-card strong{font-size:.69rem}
}
@media(max-width:720px){
  #expenseAccountForm .modal-grid{gap:6px!important}
  #expenseAccountForm .field{gap:3px!important;min-width:0!important}
  #expenseAccountForm .optional-label{font-size:.54rem!important}
}
@media(max-width:560px){
  #expenseAccountForm .modal-grid>.field.w6{grid-column:span 6!important}
  #expenseAccountForm .modal-grid>.field.w12,
  #expenseAccountForm .modal-grid>.expense-optional-details{grid-column:span 12!important}
}
@media(max-width:360px){
  #expenseAccountForm .modal-footer{gap:6px!important}
  #expenseAccountForm .modal-footer .btn{min-width:84px!important;padding-inline:10px!important}
}

/* Payment-card safety: the app never accepts a full PAN; only the final four digits are editable. */
#expenseAccountForm .expense-card-last4-input,
#editExpenseAccountDetailsGroup .expense-card-last4-input{
  width:100%;
  min-width:0;
  min-height:38px;
  display:grid;
  grid-template-columns:auto minmax(56px,1fr);
  align-items:center;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--surface);
  overflow:hidden;
  transition:border-color .16s ease,box-shadow .16s ease;
}
#expenseAccountForm .expense-card-last4-input:focus-within,
#editExpenseAccountDetailsGroup .expense-card-last4-input:focus-within{
  border-color:var(--primary);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent);
}
#expenseAccountForm .expense-card-last4-input>span,
#editExpenseAccountDetailsGroup .expense-card-last4-input>span{
  padding-left:10px;
  color:var(--muted);
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.015em;
  white-space:nowrap;
  pointer-events:none;
}
#expenseAccountForm .expense-card-last4-input>.input,
#editExpenseAccountDetailsGroup .expense-card-last4-input>.input{
  width:100%!important;
  min-width:0!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 9px 0 2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  color:var(--text-strong)!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.78rem!important;
  font-weight:800!important;
  letter-spacing:.08em;
}
@media (max-width:720px){
  #expenseAccountForm .expense-card-last4-input,
  #editExpenseAccountDetailsGroup .expense-card-last4-input{min-height:34px;border-radius:9px}
  #expenseAccountForm .expense-card-last4-input>span,
  #editExpenseAccountDetailsGroup .expense-card-last4-input>span{padding-left:8px;font-size:.62rem}
  #expenseAccountForm .expense-card-last4-input>.input,
  #editExpenseAccountDetailsGroup .expense-card-last4-input>.input{height:32px!important;min-height:32px!important;padding-right:7px!important;font-size:.68rem!important}
}

/* Expenses audit lifecycle + compact transaction pagination */
.expense-record-disabled{
  filter:saturate(.2);
  background:color-mix(in srgb,var(--panel, #fff) 84%,var(--muted,#8b93a6) 16%);
}
.expense-record-disabled td{color:var(--muted,#7b8495)!important}
.expense-record-disabled td strong,.expense-record-disabled td b{color:inherit!important}
.expense-record-disabled.is-archived{opacity:.7;filter:grayscale(.72)}
.expense-record-disabled .expense-tx-menu-btn,.expense-record-disabled .expense-record-menu-btn{opacity:.9}
.expense-audit-badge-host{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-top:.42rem}
.expense-audit-badge{
  display:inline-flex;align-items:center;gap:.34rem;min-height:23px;padding:.18rem .52rem;border-radius:999px;
  border:1px solid color-mix(in srgb,var(--border,#d8dce5) 78%,transparent);font-size:.69rem;font-weight:800;line-height:1.05;
  letter-spacing:.01em;vertical-align:middle;margin-left:.42rem;background:var(--panel,#fff);color:var(--muted,#6d7585);
}
button.expense-audit-badge{font:inherit;cursor:pointer}
.expense-audit-badge.is-deleted{background:color-mix(in srgb,var(--danger,#d84a4a) 9%,var(--panel,#fff));color:var(--danger,#b73a3a)}
.expense-audit-badge.is-archived{background:color-mix(in srgb,var(--text,#202633) 9%,var(--panel,#fff));color:var(--text,#303642)}
.expense-audit-badge.is-edited{background:color-mix(in srgb,var(--primary,#4668df) 9%,var(--panel,#fff));color:var(--primary,#3e5dcc)}
.expense-audit-badge.is-clickable:hover{transform:none;box-shadow:none}
.expense-tx-detail-dialog .expense-audit-badge-host .expense-audit-badge{margin-left:0}
.expense-audit-history-toolbar{display:flex;justify-content:flex-start;margin-bottom:.75rem}
.expense-audit-history-toolbar .btn{min-height:34px;padding:.42rem .72rem;border-radius:999px}
.expense-audit-history{display:grid;gap:.72rem}
.expense-audit-event{border:1px solid var(--border,#e1e4ea);border-radius:14px;padding:.75rem;background:var(--panel,#fff)}
.expense-audit-event header{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;margin-bottom:.6rem}
.expense-audit-event-title{font-size:.8rem;font-weight:900}
.expense-audit-event header small{font-size:.69rem;color:var(--muted,#758091);text-align:right}
.expense-audit-diff{display:grid;gap:.38rem}
.expense-audit-diff>div{display:grid;grid-template-columns:minmax(92px,.65fr) minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.5rem;padding:.4rem .48rem;border-radius:9px;background:color-mix(in srgb,var(--panel,#fff) 92%,var(--text,#222) 8%)}
.expense-audit-diff small{font-weight:800;color:var(--muted,#70798a)}
.expense-audit-diff span,.expense-audit-diff strong{font-size:.73rem;overflow-wrap:anywhere}
.expense-audit-diff i{font-size:.62rem;color:var(--muted,#70798a)}
.expense-audit-event-note{font-size:.75rem;color:var(--muted,#70798a);margin:.2rem 0}
.expense-audit-raw{margin-top:.58rem;border-top:1px dashed var(--border,#dde1e8);padding-top:.48rem}
.expense-audit-raw summary{cursor:pointer;font-size:.7rem;font-weight:800;color:var(--muted,#70798a)}
.expense-audit-raw>div{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.45rem}
.expense-audit-raw label{display:block;font-size:.65rem;font-weight:900;margin-bottom:.2rem}
.expense-audit-raw pre{margin:0;max-height:190px;overflow:auto;border-radius:9px;padding:.55rem;font-size:.63rem;line-height:1.4;background:color-mix(in srgb,var(--panel,#fff) 87%,var(--text,#222) 13%);white-space:pre-wrap;overflow-wrap:anywhere}
.expense-audit-empty{text-align:center;padding:1rem;color:var(--muted,#70798a)}
.expense-pagination{display:flex;align-items:center;justify-content:center;gap:.42rem;padding:.72rem .3rem .12rem}
.expense-pagination-pages{display:flex;align-items:center;gap:.28rem}
.expense-page-number,.expense-page-nav{appearance:none;border:1px solid var(--border,#dce0e7);background:var(--panel,#fff);color:var(--text,#242936);height:31px;min-width:31px;border-radius:999px;display:inline-grid;place-items:center;font-size:.72rem;font-weight:800;padding:0 .48rem;box-shadow:none;transform:none}
.expense-page-number.is-active{background:var(--text,#242936);color:var(--panel,#fff);border-color:var(--text,#242936)}
.expense-page-number:hover,.expense-page-nav:hover{transform:none;box-shadow:none}
.expense-page-nav:disabled{opacity:.35;cursor:not-allowed}
.expense-page-ellipsis{font-size:.75rem;color:var(--muted,#778090);padding:0 .08rem}
.expense-pagination-mobile{display:none;font-size:.72rem;font-weight:800;color:var(--muted,#778090);min-width:46px;text-align:center}
@media(max-width:680px){
  .expense-audit-badge{font-size:.64rem;padding:.16rem .42rem}
  .expense-audit-event{padding:.62rem;border-radius:12px}
  .expense-audit-event header{display:grid;gap:.18rem}
  .expense-audit-event header small{text-align:left}
  .expense-audit-diff>div{grid-template-columns:1fr;gap:.16rem}
  .expense-audit-diff i{transform:rotate(90deg);justify-self:start;margin:.08rem 0}
  .expense-audit-raw>div{grid-template-columns:1fr}
  .expense-pagination-pages{display:none}
  .expense-pagination-mobile{display:inline-block}
  .expense-pagination{padding-top:.58rem}
  .expense-page-nav{height:30px;min-width:38px}
}

/* Build 155 — unmistakable, motion-safe Expenses paging and clickable history affordance. */
.expense-page-number,.expense-page-nav{
  cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,opacity .16s ease;
  -webkit-tap-highlight-color:transparent;
}
.expense-page-number:not(.is-active):not(:disabled):hover,
.expense-page-nav:not(:disabled):hover{
  background:color-mix(in srgb,var(--panel,#fff) 88%,var(--text,#242936) 12%);
  border-color:color-mix(in srgb,var(--border,#dce0e7) 55%,var(--text,#242936) 45%);
  box-shadow:0 3px 10px color-mix(in srgb,var(--text,#242936) 12%,transparent);
}
.expense-page-number:not(:disabled):active,.expense-page-nav:not(:disabled):active{
  background:color-mix(in srgb,var(--panel,#fff) 82%,var(--text,#242936) 18%);
  box-shadow:none;
}
.expense-page-number:focus-visible,.expense-page-nav:focus-visible{
  outline:2px solid color-mix(in srgb,var(--text,#242936) 70%,transparent);
  outline-offset:2px;
}
.expense-page-number.is-active{cursor:default;box-shadow:0 2px 7px color-mix(in srgb,var(--text,#242936) 14%,transparent)}
.expense-pagination.is-loading .expense-page-number,
.expense-pagination.is-loading .expense-page-nav{pointer-events:none;opacity:.55;cursor:progress}
.expense-tx-row[role="button"]{cursor:pointer;transition:background-color .14s ease,box-shadow .14s ease}
.expense-tx-row[role="button"]:hover td{background:color-mix(in srgb,var(--panel,#fff) 91%,var(--text,#242936) 9%)}
.expense-tx-row[role="button"]:focus-visible{outline:2px solid color-mix(in srgb,var(--text,#242936) 68%,transparent);outline-offset:-2px}
.expense-item-row>summary{cursor:pointer}
.expense-item-row>summary:hover{background:color-mix(in srgb,var(--panel,#fff) 94%,var(--text,#242936) 6%)}
@media(max-width:680px){
  .expense-page-number,.expense-page-nav{box-shadow:none}
  .expense-tx-row[role="button"]:hover td,.expense-item-row>summary:hover{background:inherit}
}

/* Build 167 — wallet details transaction paging. */
.section-details-actions .wallet-account-details-btn,
.section-details-actions .wallet-transactions-btn{
  min-height:30px!important;
  padding:5px 9px!important;
  border-radius:9px!important;
  gap:5px;
  white-space:nowrap;
  font-size:.68rem!important;
}
.section-details-actions .wallet-transactions-btn.is-active{
  color:var(--primary);
  border-color:color-mix(in srgb,var(--primary) 35%,var(--line));
  background:color-mix(in srgb,var(--primary) 7%,var(--panel));
}
.wallet-transactions-view{display:grid;gap:10px;min-width:0}
.wallet-transactions-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:12px;
  padding:0 1px 2px;border-bottom:1px solid var(--line);
}
.wallet-transactions-head>div{display:grid;gap:2px}
.wallet-transactions-head span{font-size:.65rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.045em}
.wallet-transactions-head strong{font-size:.8rem;color:var(--text)}
.wallet-transactions-head small{font-size:.67rem;color:var(--muted);text-align:right}
.wallet-transactions-list{display:grid;gap:6px}
.wallet-transaction-row{
  display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;
  min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:11px;
  background:var(--panel);box-shadow:0 2px 7px rgba(0,0,0,.025);
}
.wallet-transaction-icon{
  width:34px;height:34px;border-radius:9px;display:grid;place-items:center;
  color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,transparent);font-size:.72rem;
}
.wallet-transaction-row.is-in .wallet-transaction-icon{color:var(--success);background:color-mix(in srgb,var(--success) 10%,transparent)}
.wallet-transaction-row.is-out .wallet-transaction-icon{color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,transparent)}
.wallet-transaction-main{display:grid;gap:3px;min-width:0}
.wallet-transaction-title{display:flex;align-items:center;gap:7px;min-width:0}
.wallet-transaction-title strong{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.wallet-transaction-title span{flex:0 0 auto;font-size:.59rem;font-weight:800;color:var(--muted);padding:2px 5px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2)}
.wallet-transaction-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 10px;color:var(--muted);font-size:.63rem}
.wallet-transaction-meta span{display:inline-flex;align-items:center;gap:4px;min-width:0}
.wallet-transaction-meta i{font-size:.58rem}
.wallet-transaction-main p{margin:0;color:var(--muted);font-size:.66rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wallet-transaction-amount{font-size:.78rem;font-weight:850;white-space:nowrap;text-align:right}
.wallet-transaction-amount.is-in{color:var(--success)}
.wallet-transaction-amount.is-out{color:var(--danger)}
.wallet-transactions-pagination{display:flex;align-items:center;justify-content:center;gap:6px;padding:3px 0 0}
.wallet-transaction-page-numbers{display:flex;align-items:center;gap:4px}
.wallet-transaction-page-number,.wallet-transaction-page-nav{
  appearance:none;border:1px solid var(--line);background:var(--panel);color:var(--text);
  min-width:30px;height:30px;border-radius:8px;padding:0 8px;font:inherit;font-size:.68rem;font-weight:800;
  display:inline-flex;align-items:center;justify-content:center;gap:5px;cursor:pointer;box-shadow:none;
}
.wallet-transaction-page-number.is-active{background:var(--primary);border-color:var(--primary);color:#fff;cursor:default}
.wallet-transaction-page-number:not(.is-active):hover,.wallet-transaction-page-nav:not(:disabled):hover{background:color-mix(in srgb,var(--primary) 7%,var(--panel));border-color:color-mix(in srgb,var(--primary) 30%,var(--line))}
.wallet-transaction-page-nav:disabled{opacity:.38;cursor:not-allowed}
.wallet-transaction-page-gap{color:var(--muted);font-size:.7rem;padding:0 1px}
.wallet-transactions-loading,.wallet-transactions-empty{
  min-height:210px;border:1px dashed var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel-2) 68%,transparent);
  display:grid;place-items:center;align-content:center;text-align:center;gap:6px;padding:22px;color:var(--muted)
}
.wallet-transactions-loading strong,.wallet-transactions-empty strong{font-size:.82rem;color:var(--text)}
.wallet-transactions-loading small,.wallet-transactions-empty span{font-size:.68rem;max-width:360px}
.wallet-transactions-empty>i{font-size:1.05rem;color:var(--primary)}
.wallet-transactions-empty.is-error>i{color:var(--danger)}
.wallet-transactions-spinner{width:22px;height:22px;border-radius:50%;border:2px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-top-color:var(--primary);animation:walletTransactionsSpin .72s linear infinite}
@keyframes walletTransactionsSpin{to{transform:rotate(360deg)}}
@media(max-width:680px){
  .section-details-actions .wallet-account-details-btn,
  .section-details-actions .wallet-transactions-btn{min-height:28px!important;padding:4px 7px!important;font-size:.63rem!important}
  .section-details-actions .wallet-account-details-btn span,
  .section-details-actions .wallet-transactions-btn span{display:inline}
  .wallet-transactions-head{align-items:flex-start;display:grid;gap:2px}
  .wallet-transactions-head small{text-align:left}
  .wallet-transaction-row{grid-template-columns:30px minmax(0,1fr);gap:8px;padding:8px}
  .wallet-transaction-icon{width:30px;height:30px;border-radius:8px}
  .wallet-transaction-amount{grid-column:2/3;text-align:left;margin-top:1px;font-size:.74rem}
  .wallet-transaction-main p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .wallet-transaction-title{align-items:flex-start;flex-wrap:wrap;gap:4px 6px}
  .wallet-transactions-pagination{gap:4px}
  .wallet-transaction-page-number,.wallet-transaction-page-nav{height:29px;min-width:29px;padding:0 6px;font-size:.64rem}
  .wallet-transaction-page-nav span{display:none}
}
@media(prefers-reduced-motion:reduce){.wallet-transactions-spinner{animation:none}}


/* Wallet transaction overlay polish — preserve scrolling without visible bars. */
#sectionDetailsBody:has(> .wallet-transactions-view){
  scrollbar-width:none;
  -ms-overflow-style:none;
}
#sectionDetailsBody:has(> .wallet-transactions-view)::-webkit-scrollbar{
  display:none;
  width:0;
  height:0;
}
.section-details-actions .wallet-account-details-btn,
.section-details-actions .wallet-transactions-btn{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:6px!important;
}
.section-details-actions .wallet-account-details-btn>i,
.section-details-actions .wallet-transactions-btn>i{
  flex:0 0 auto;
}

/* ===== SOURCE: Assets/style/44-financial-audit-report.css ===== */
/* Triplem VIP Build 001 — Financial Audit & Control Report */
.financial-audit-section{overflow:visible}
.financial-audit-head{padding-bottom:14px}
.financial-audit-readonly{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.02em;color:var(--muted);background:color-mix(in srgb,var(--card) 84%,var(--border));border:1px solid var(--border)}
.financial-audit-export-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.financial-audit-export-tools .btn{min-height:36px;border-radius:12px}
.financial-audit-runbar{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(160px,1fr) auto;gap:10px;align-items:end;margin-top:14px;padding:12px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--card) 94%,var(--primary) 6%)}
.financial-audit-runbar label{display:grid;gap:5px;min-width:0}
.financial-audit-runbar label>span{font-size:11px;font-weight:800;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}
.financial-audit-runbar .input,.financial-audit-runbar .select{width:100%;min-height:39px}
.financial-audit-run-btn{min-height:39px;border-radius:12px;white-space:nowrap}
.financial-audit-root{display:grid;gap:14px;margin-top:14px}
.financial-audit-welcome{display:flex;align-items:center;gap:13px;padding:18px;border:1px dashed var(--border);border-radius:16px;background:color-mix(in srgb,var(--card) 97%,var(--primary) 3%);color:var(--muted)}
.financial-audit-welcome>i{font-size:24px;color:var(--primary)}
.financial-audit-welcome div{display:grid;gap:3px}.financial-audit-welcome strong{color:var(--text)}.financial-audit-welcome span{font-size:12px;line-height:1.5}
.financial-audit-loading{display:grid;place-items:center;gap:8px;min-height:220px;border:1px solid var(--border);border-radius:16px;background:var(--card);color:var(--muted);text-align:center}
.financial-audit-loading i{font-size:24px;color:var(--primary)}
.financial-audit-period-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:16px;border:1px solid var(--border);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--card)),var(--card))}
.financial-audit-period-banner h4{margin:0 0 4px;font-size:16px}.financial-audit-period-banner p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.financial-audit-scope{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.financial-audit-scope span{padding:5px 8px;border-radius:999px;border:1px solid var(--border);font-size:10px;font-weight:800;color:var(--muted);background:var(--card)}.financial-audit-scope span.is-on{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}
.financial-audit-currency-block{display:grid;gap:9px}.financial-audit-currency-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.financial-audit-currency-title h4{margin:0;font-size:14px}.financial-audit-currency-title small{color:var(--muted)}
.financial-audit-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.financial-audit-metric{min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 8px 22px rgba(15,23,42,.035)}
.financial-audit-metric small{display:block;margin-bottom:5px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.financial-audit-metric strong{display:block;min-width:0;font-size:15px;line-height:1.25;overflow-wrap:anywhere}.financial-audit-metric.is-in strong{color:#16834a}.financial-audit-metric.is-out strong{color:#c73535}.financial-audit-metric.is-net strong{color:var(--primary)}
.financial-audit-note{padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%);font-size:11px;line-height:1.55;color:var(--muted)}
.financial-audit-module-card,.financial-audit-activity-card,.financial-audit-exception-card{border:1px solid var(--border);border-radius:16px;background:var(--card);overflow:hidden}
.financial-audit-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--border)}.financial-audit-card-head h4{margin:0;font-size:14px}.financial-audit-card-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.financial-audit-card-head-main{min-width:0}
.financial-audit-flow-select{min-width:145px;min-height:34px;font-size:12px}
.financial-audit-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px}
.financial-audit-module-row{padding:10px 11px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--card) 97%,var(--primary) 3%)}.financial-audit-module-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.financial-audit-module-row-head strong{font-size:12px}.financial-audit-module-row-head span{font-size:10px;color:var(--muted)}.financial-audit-module-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.financial-audit-module-values span{display:grid;gap:2px;font-size:9px;color:var(--muted)}.financial-audit-module-values b{font-size:11px;color:var(--text);font-weight:800}
.financial-audit-exceptions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px}.financial-audit-exception{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--border);border-radius:12px}.financial-audit-exception small{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:800}.financial-audit-exception strong{font-size:14px}
.financial-audit-table-wrap{overflow-x:auto;scrollbar-width:none}.financial-audit-table-wrap::-webkit-scrollbar{display:none}.financial-audit-table{width:100%;border-collapse:collapse;min-width:900px}.financial-audit-table th{padding:9px 10px;text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.045em;color:var(--muted);background:color-mix(in srgb,var(--card) 94%,var(--border));border-bottom:1px solid var(--border);white-space:nowrap}.financial-audit-table td{padding:10px;border-bottom:1px solid var(--border);font-size:11px;vertical-align:middle}.financial-audit-table tbody tr{transition:background .16s ease}.financial-audit-table tbody tr:hover{background:color-mix(in srgb,var(--primary) 5%,var(--card))}.financial-audit-table tbody tr:last-child td{border-bottom:0}.financial-audit-ref{font-weight:800;color:var(--primary);font-size:10px}.financial-audit-maincell{display:grid;gap:2px}.financial-audit-maincell strong{font-size:11px}.financial-audit-maincell span{max-width:300px;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.financial-audit-flow{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.035em;border:1px solid var(--border)}.financial-audit-flow.is-in{color:#16834a;background:rgba(22,131,74,.08)}.financial-audit-flow.is-out{color:#c73535;background:rgba(199,53,53,.08)}.financial-audit-flow.is-internal{color:#7459b5;background:rgba(116,89,181,.08)}.financial-audit-flow.is-noncash{color:#8a6519;background:rgba(138,101,25,.08)}.financial-audit-flow.is-accounting{color:#28708d;background:rgba(40,112,141,.08)}.financial-audit-flow.is-audit{color:var(--muted);background:color-mix(in srgb,var(--card) 80%,var(--border))}.financial-audit-amount{text-align:right;font-weight:800;white-space:nowrap}.financial-audit-amount.is-in{color:#16834a}.financial-audit-amount.is-out{color:#c73535}.financial-audit-muted{color:var(--muted)}
.financial-audit-pagination{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px;border-top:1px solid var(--border)}.financial-audit-page-btn{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 9px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font-weight:800;font-size:11px;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease,box-shadow .12s ease}.financial-audit-page-btn:hover:not(:disabled){transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--card));box-shadow:0 6px 16px rgba(15,23,42,.08)}.financial-audit-page-btn:active:not(:disabled){transform:translateY(0) scale(.97)}.financial-audit-page-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.financial-audit-page-btn:disabled{opacity:.38;cursor:not-allowed}.financial-audit-page-status{display:none;color:var(--muted);font-size:11px;font-weight:800;padding:0 4px}
.financial-audit-empty{padding:28px 14px;text-align:center;color:var(--muted);font-size:12px}
@media(max-width:1100px){.financial-audit-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.financial-audit-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.financial-audit-head{padding-left:12px;padding-right:12px}.financial-audit-runbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px;border-radius:14px}.financial-audit-run-btn{grid-column:1/-1;width:100%}.financial-audit-export-tools{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.financial-audit-export-tools .btn{width:100%;min-width:0;padding-left:8px;padding-right:8px}.financial-audit-period-banner{padding:12px;display:grid}.financial-audit-scope{justify-content:flex-start}.financial-audit-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.financial-audit-metric{padding:9px 10px;border-radius:12px}.financial-audit-metric strong{font-size:13px}.financial-audit-module-grid{grid-template-columns:1fr;padding:8px}.financial-audit-exceptions{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.financial-audit-card-head{align-items:flex-start;flex-direction:column}.financial-audit-flow-select{width:100%}.financial-audit-pagination .financial-audit-page-btn[data-page-number]{display:none}.financial-audit-page-status{display:inline-block}.financial-audit-table{min-width:760px}.financial-audit-table th,.financial-audit-table td{padding:8px}.financial-audit-root{gap:10px;margin-top:10px}}
@media(max-width:420px){.financial-audit-runbar{grid-template-columns:1fr 1fr}.financial-audit-runbar label:nth-child(3){grid-column:1/-1}.financial-audit-metrics{grid-template-columns:1fr 1fr}.financial-audit-readonly{font-size:9px;padding:4px 7px}}

/* Audit executive summary + selectable report sections */
.financial-audit-section-selector-wrap{display:grid;gap:7px;margin-top:12px;padding:10px 11px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--card) 97%,var(--primary) 3%)}
.financial-audit-section-selector-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.financial-audit-section-selector-head>span{font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.financial-audit-section-selector-head>small{font-size:9px;color:var(--muted);transition:color .16s ease}.financial-audit-section-selector-head>small.is-visible{color:var(--primary);font-weight:800}
.financial-audit-section-selector{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.financial-audit-scope-chip{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:4px 9px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--muted);font-size:10px;font-weight:850;cursor:pointer;user-select:none;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .1s ease}.financial-audit-scope-chip:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 42%,var(--border));color:var(--text);box-shadow:0 4px 12px rgba(15,23,42,.06)}.financial-audit-scope-chip:active:not(:disabled){transform:scale(.97)}.financial-audit-scope-chip.is-selected{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 48%,var(--border));background:color-mix(in srgb,var(--primary) 9%,var(--card))}.financial-audit-scope-chip:disabled{opacity:.42;cursor:not-allowed}.financial-audit-scope-check{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;font-size:7px;background:color-mix(in srgb,var(--card) 78%,var(--border))}.financial-audit-scope-chip.is-selected .financial-audit-scope-check{background:var(--primary);color:#fff}
.financial-audit-runbar{margin-top:8px;padding:9px 10px;border-radius:14px}.financial-audit-date-field .input{min-height:34px!important;height:34px;font-size:11px;padding-top:5px;padding-bottom:5px}.financial-audit-run-btn.needs-run{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}
.financial-audit-export-menu{position:relative}.financial-audit-export-toggle{display:inline-flex!important;align-items:center;gap:7px}.financial-audit-export-angle{font-size:10px;transition:transform .16s ease}.financial-audit-export-menu.is-open .financial-audit-export-angle{transform:rotate(180deg)}
.financial-audit-export-dropdown{position:absolute;z-index:2200;right:0;top:calc(100% + 6px);width:270px;padding:6px;border:1px solid var(--border);border-radius:13px;background:var(--card);box-shadow:0 18px 42px rgba(15,23,42,.16);opacity:0;visibility:hidden;transform:translateY(-4px);pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s ease}.financial-audit-export-menu.is-open .financial-audit-export-dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.financial-audit-export-dropdown>button{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:8px;width:100%;padding:9px;border:0;border-radius:9px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.financial-audit-export-dropdown>button:hover{background:color-mix(in srgb,var(--primary) 7%,var(--card))}.financial-audit-export-dropdown>button>i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--primary) 8%,var(--card));color:var(--primary)}.financial-audit-export-dropdown span{display:grid;gap:2px}.financial-audit-export-dropdown strong{font-size:11px}.financial-audit-export-dropdown small{font-size:9px;line-height:1.35;color:var(--muted)}
.financial-audit-period-sections{display:grid;gap:3px;max-width:48%;text-align:right}.financial-audit-period-sections small{font-size:9px;text-transform:uppercase;letter-spacing:.045em;color:var(--muted);font-weight:800}.financial-audit-period-sections strong{font-size:10px;line-height:1.45;color:var(--text);font-weight:750}
.financial-audit-executive-card{border:1px solid var(--border);border-radius:16px;background:var(--card);overflow:hidden}.financial-audit-executive-body{display:grid;gap:12px;padding:12px}.financial-audit-section-summary-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:11px 14px 4px;border-top:1px solid var(--border)}.financial-audit-section-summary-head strong{font-size:12px}.financial-audit-section-summary-head span{max-width:56%;font-size:9px;line-height:1.4;color:var(--muted);text-align:right}
.financial-audit-metric.is-tax-payable strong{color:#b45309}.financial-audit-metric.is-tax-credit strong{color:#16834a}.financial-audit-tax-position b{color:#b45309}.financial-audit-module-grid.is-executive{padding-top:8px}.financial-audit-module-grid.is-executive .financial-audit-module-values{grid-template-columns:repeat(2,minmax(0,1fr))}

@media(max-width:760px){.financial-audit-section-selector-wrap{margin-top:9px;padding:8px}.financial-audit-section-selector-head{align-items:flex-start;flex-direction:column;gap:2px}.financial-audit-section-selector{gap:5px}.financial-audit-scope-chip{min-height:26px;padding:3px 7px;font-size:9px}.financial-audit-export-menu{min-width:0}.financial-audit-export-dropdown{position:fixed;left:12px;right:12px;top:auto;bottom:18px;width:auto;z-index:6000}.financial-audit-period-sections{max-width:none;text-align:left}.financial-audit-section-summary-head{align-items:flex-start;flex-direction:column}.financial-audit-section-summary-head span{max-width:none;text-align:left}.financial-audit-date-field .input{min-height:33px!important;height:33px}.financial-audit-executive-body{padding:9px}}

/* ===== SOURCE: Assets/style/45-triplem-ai.css ===== */
/* Triplem VIP · Triplem AI */
.triplem-ai-section{overflow:hidden;position:relative;isolation:isolate}
.triplem-ai-section:before{content:"";position:absolute;inset:-130px auto auto -100px;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(67,97,238,.14),transparent 70%);pointer-events:none;z-index:-1}
.triplem-ai-readonly{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--accent,#2457d6) 10%,transparent);font-size:.72rem;font-weight:700;color:var(--muted)}
.triplem-ai-root{min-height:520px}
.triplem-ai-setup-state,.triplem-ai-unavailable{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px 18px}
.triplem-ai-orb{width:76px;height:76px;border-radius:25px;display:grid;place-items:center;font-size:1.6rem;color:#fff;background:linear-gradient(145deg,#172554,#3158d6 62%,#7c3aed);box-shadow:0 18px 44px rgba(37,74,180,.24)}
.triplem-ai-eyebrow,.triplem-ai-settings-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;font-weight:800;color:var(--muted)}
.triplem-ai-setup-state h4{font-size:1.45rem;margin:0;color:var(--text)}
.triplem-ai-setup-state>p{max-width:680px;margin:0;color:var(--muted);line-height:1.65}
.triplem-ai-privacy-row{max-width:720px;display:flex;align-items:flex-start;gap:10px;text-align:left;border:1px solid var(--line);background:var(--panel-2);border-radius:15px;padding:12px 14px;color:var(--muted);font-size:.82rem;line-height:1.55}
.triplem-ai-privacy-row i{color:var(--accent,#2457d6);margin-top:2px}
.triplem-ai-connect-btn{margin-top:5px;border-radius:999px;padding-inline:18px}
.triplem-ai-unavailable i{font-size:1.7rem;color:var(--muted)}.triplem-ai-unavailable strong{font-size:1.1rem}.triplem-ai-unavailable span{color:var(--muted)}
.triplem-ai-shell{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 12px 38px rgba(15,23,42,.07)}
.triplem-ai-console-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:linear-gradient(110deg,color-mix(in srgb,var(--panel-2) 94%,#3158d6 6%),var(--panel))}
.triplem-ai-console-brand{display:flex;align-items:center;gap:10px;min-width:0}.triplem-ai-console-brand>div{min-width:0;display:flex;flex-direction:column}.triplem-ai-console-brand strong{font-size:.94rem}.triplem-ai-console-brand small{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.triplem-ai-mini-orb{width:37px;height:37px;flex:0 0 37px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#172554,#3158d6 60%,#7c3aed)}
.triplem-ai-console-actions{display:flex;align-items:center;gap:6px}.triplem-ai-secure-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.68rem;font-weight:700;background:var(--panel)}
.triplem-ai-capability-strip{display:flex;gap:8px;flex-wrap:wrap;padding:8px 14px;border-bottom:1px solid var(--line);background:var(--panel-2)}.triplem-ai-capability-strip span{font-size:.66rem;color:var(--muted);display:inline-flex;align-items:center;gap:5px}.triplem-ai-capability-strip i{font-size:.62rem;color:var(--accent,#2457d6)}
.triplem-ai-thread{height:min(52vh,520px);min-height:360px;overflow:auto;padding:18px 16px;scrollbar-width:none}.triplem-ai-thread::-webkit-scrollbar{display:none}
.triplem-ai-message{display:flex;gap:10px;max-width:860px;margin:0 auto 16px}.triplem-ai-message.is-user{flex-direction:row-reverse}.triplem-ai-message-avatar{width:31px;height:31px;flex:0 0 31px;border-radius:10px;display:grid;place-items:center;background:var(--panel-2);border:1px solid var(--line);color:var(--muted);font-size:.72rem}.triplem-ai-message.is-ai .triplem-ai-message-avatar{color:#fff;border:0;background:linear-gradient(145deg,#172554,#3158d6 60%,#7c3aed)}
.triplem-ai-message-content{max-width:min(78%,720px)}.triplem-ai-message-label{font-size:.64rem;font-weight:800;color:var(--muted);margin:0 0 4px 4px}.triplem-ai-message.is-user .triplem-ai-message-label{text-align:right;margin-right:4px}.triplem-ai-message-text{padding:11px 13px;border:1px solid var(--line);border-radius:5px 15px 15px 15px;background:var(--panel-2);line-height:1.58;font-size:.84rem;color:var(--text);overflow-wrap:anywhere}.triplem-ai-message.is-user .triplem-ai-message-text{border-radius:15px 5px 15px 15px;background:color-mix(in srgb,var(--accent,#2457d6) 12%,var(--panel));border-color:color-mix(in srgb,var(--accent,#2457d6) 25%,var(--line))}
.triplem-ai-thinking{max-width:860px;margin:0 auto;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.72rem}.triplem-ai-thinking span{width:6px;height:6px;border-radius:50%;background:var(--accent,#2457d6);animation:triplem-ai-pulse 1s infinite alternate}.triplem-ai-thinking span:nth-child(2){animation-delay:.18s}.triplem-ai-thinking span:nth-child(3){animation-delay:.36s}.triplem-ai-thinking em{font-style:normal;margin-left:5px}@keyframes triplem-ai-pulse{to{opacity:.25;transform:translateY(-2px)}}
.triplem-ai-suggestions{max-width:860px;margin:-4px auto 12px;padding:0 16px;display:flex;gap:7px;flex-wrap:wrap}.triplem-ai-suggestion{appearance:none;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:7px 10px;cursor:pointer;font:inherit;font-size:.7rem;display:inline-flex;align-items:center;gap:6px;transition:transform .16s ease,border-color .16s ease,color .16s ease}.triplem-ai-suggestion:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent,#2457d6) 45%,var(--line));color:var(--text)}
.triplem-ai-composer{max-width:880px;margin:0 auto;padding:10px 16px 14px;position:relative}.triplem-ai-composer textarea{width:100%;min-height:46px;max-height:132px;resize:none;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:17px;padding:13px 52px 24px 14px;font:inherit;font-size:.84rem;line-height:1.45;outline:none;transition:border-color .16s ease,box-shadow .16s ease;scrollbar-width:none}.triplem-ai-composer textarea::-webkit-scrollbar{display:none}.triplem-ai-composer textarea:focus{border-color:color-mix(in srgb,var(--accent,#2457d6) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#2457d6) 9%,transparent)}
.triplem-ai-send{position:absolute;right:25px;top:18px;width:34px;height:34px;border:0;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#244fc9,#3158d6);color:#fff;cursor:pointer;box-shadow:0 6px 14px rgba(36,79,201,.2)}.triplem-ai-send:disabled{opacity:.5;cursor:wait}.triplem-ai-composer-foot{position:absolute;left:31px;right:31px;bottom:18px;display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.59rem;pointer-events:none}.triplem-ai-composer-foot span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.triplem-ai-settings-dialog{width:min(720px,calc(100vw - 28px));max-height:min(88vh,760px)}.triplem-ai-settings-hero{display:flex;gap:12px;align-items:flex-start;padding:13px;border-radius:16px;border:1px solid color-mix(in srgb,var(--accent,#2457d6) 20%,var(--line));background:color-mix(in srgb,var(--accent,#2457d6) 6%,var(--panel-2));margin-bottom:14px}.triplem-ai-settings-icon{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:var(--panel);border:1px solid var(--line);color:var(--accent,#2457d6)}.triplem-ai-settings-hero strong{display:block;font-size:.87rem;margin-bottom:3px}.triplem-ai-settings-hero p{margin:0;font-size:.75rem;line-height:1.5;color:var(--muted)}
.triplem-ai-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.triplem-ai-settings-field{display:flex;flex-direction:column;gap:6px}.triplem-ai-settings-field>label,.triplem-ai-settings-field>span,.triplem-ai-key-entry>label{font-size:.72rem;font-weight:800;color:var(--text)}.triplem-ai-settings-field>small{font-size:.65rem;color:var(--muted)}.triplem-ai-key-display{min-height:46px;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2)}.triplem-ai-key-display>i{color:var(--muted)}.triplem-ai-key-display.is-configured>i{color:#16a34a}.triplem-ai-key-display div{display:flex;flex-direction:column;min-width:0}.triplem-ai-key-display strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.triplem-ai-key-display small{font-size:.61rem;color:var(--muted)}
.triplem-ai-settings-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.triplem-ai-settings-status-grid>div{border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:var(--panel-2);display:flex;flex-direction:column;gap:2px}.triplem-ai-settings-status-grid span{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.triplem-ai-settings-status-grid strong{font-size:.72rem;font-weight:700}
.triplem-ai-key-entry{margin-top:13px}.triplem-ai-secret-input{display:flex;gap:6px;align-items:center;margin-top:6px}.triplem-ai-secret-input .input{min-width:0}.triplem-ai-key-entry>p{font-size:.64rem;color:var(--muted);margin:5px 0 0}.triplem-ai-settings-notice{display:flex;gap:8px;align-items:flex-start;margin-top:12px;padding:9px 11px;border-radius:12px;background:var(--panel-2);color:var(--muted);font-size:.68rem;line-height:1.45}.triplem-ai-settings-message{min-height:18px;margin-top:7px;font-size:.7rem;color:var(--accent,#2457d6)}.triplem-ai-settings-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.triplem-ai-delete-key{margin-right:auto;color:#b42318}
.triplem-ai-account-card .settings-pill.is-ok{color:#15803d}.triplem-ai-account-settings-row .account-settings-action-icon{background:linear-gradient(145deg,#172554,#3158d6 60%,#7c3aed);color:#fff}
.admin-triplem-ai-access-block{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0;padding:12px 14px;border:1px solid color-mix(in srgb,#6d5ce7 28%,var(--line));border-radius:15px;background:linear-gradient(120deg,color-mix(in srgb,#3158d6 6%,var(--panel-2)),var(--panel-2))}.admin-triplem-ai-access-copy{display:flex;gap:10px;align-items:flex-start}.admin-triplem-ai-access-icon{width:34px;height:34px;flex:0 0 34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#172554,#3158d6 60%,#7c3aed);color:#fff}.admin-triplem-ai-access-copy strong{display:block;font-size:.8rem}.admin-triplem-ai-access-copy small{display:block;color:var(--muted);font-size:.66rem;line-height:1.45;margin-top:2px}.admin-triplem-ai-switch{display:flex;align-items:center;gap:7px;cursor:pointer}.admin-triplem-ai-switch input{position:absolute;opacity:0;pointer-events:none}.admin-triplem-ai-switch span{width:39px;height:22px;border-radius:999px;background:color-mix(in srgb,var(--muted) 25%,var(--panel));position:relative;transition:.18s}.admin-triplem-ai-switch span:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.15);transition:.18s}.admin-triplem-ai-switch input:checked+span{background:#3158d6}.admin-triplem-ai-switch input:checked+span:after{transform:translateX(17px)}.admin-triplem-ai-switch em{font-size:.65rem;font-style:normal;color:var(--muted);min-width:20px}.admin-badge.triplem-ai-badge{background:color-mix(in srgb,#6d5ce7 12%,var(--panel-2));color:#6552d8;border-color:color-mix(in srgb,#6d5ce7 25%,var(--line))}
@media(max-width:720px){.triplem-ai-root{min-height:430px}.triplem-ai-console-head{padding:11px}.triplem-ai-secure-pill{display:none}.triplem-ai-capability-strip{padding:7px 10px;gap:6px}.triplem-ai-capability-strip span{font-size:.6rem}.triplem-ai-thread{height:48vh;min-height:300px;padding:13px 10px}.triplem-ai-message{gap:7px;margin-bottom:12px}.triplem-ai-message-avatar{width:27px;height:27px;flex-basis:27px;border-radius:8px}.triplem-ai-message-content{max-width:86%}.triplem-ai-message-text{font-size:.77rem;padding:9px 10px}.triplem-ai-suggestions{padding:0 10px;gap:5px}.triplem-ai-suggestion{font-size:.64rem;padding:6px 8px}.triplem-ai-composer{padding:8px 10px 12px}.triplem-ai-send{right:18px;top:16px}.triplem-ai-composer-foot{left:24px;right:24px;bottom:16px}.triplem-ai-composer-foot span:first-child{display:none}.triplem-ai-settings-grid,.triplem-ai-settings-status-grid{grid-template-columns:1fr}.triplem-ai-settings-dialog{width:calc(100vw - 18px);max-height:calc(100dvh - 28px);margin:auto}.triplem-ai-settings-actions .btn{font-size:.7rem;padding:7px 10px}.admin-triplem-ai-access-block{align-items:flex-start}.admin-triplem-ai-switch{margin-top:5px}}

/* 159 · Triplem AI focused chat workspace refinement */
.triplem-ai-section{padding:0!important;background:var(--panel);overflow:hidden}
.triplem-ai-root{min-height:640px}
.triplem-ai-shell{min-height:640px;display:flex;flex-direction:column;border:0;border-radius:inherit;box-shadow:none;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 98%,#3158d6 2%),var(--panel))}
.triplem-ai-console-head{min-height:72px;padding:16px 20px;border-bottom:1px solid color-mix(in srgb,var(--accent,#2457d6) 12%,var(--line));background:linear-gradient(115deg,color-mix(in srgb,var(--panel-2) 93%,#3158d6 7%),var(--panel))}
.triplem-ai-console-brand{gap:12px}.triplem-ai-console-brand strong{font-size:1.08rem;letter-spacing:-.015em}.triplem-ai-console-brand small{font-size:.72rem;display:flex;align-items:center;gap:6px;margin-top:2px}
.triplem-ai-mini-orb{width:44px;height:44px;flex-basis:44px;border-radius:14px;font-size:.95rem;box-shadow:0 9px 22px rgba(37,74,180,.18)}
.triplem-ai-status-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px color-mix(in srgb,#22c55e 16%,transparent);flex:0 0 7px}
.triplem-ai-console-actions .icon-btn{width:36px;height:36px;border-radius:11px}.triplem-ai-secure-pill{padding:7px 10px;background:color-mix(in srgb,var(--panel) 92%,#3158d6 8%)}
.triplem-ai-thread{flex:1;height:min(64vh,680px);min-height:470px;padding:24px 20px 18px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-2) 28%,transparent),transparent 22%)}
.triplem-ai-message{max-width:960px;gap:11px;margin-bottom:17px}.triplem-ai-message-avatar{width:34px;height:34px;flex-basis:34px;border-radius:11px}.triplem-ai-message-content{max-width:min(80%,760px)}
.triplem-ai-message-text{padding:12px 14px;border-radius:6px 16px 16px 16px;font-size:.86rem;line-height:1.62;box-shadow:0 3px 12px rgba(15,23,42,.025)}.triplem-ai-message.is-user .triplem-ai-message-text{border-radius:16px 6px 16px 16px}
.triplem-ai-answer-summary{display:block;margin-top:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--accent,#2457d6) 15%,var(--line));font-size:.82rem}.triplem-ai-answer-summary strong{color:var(--text)}
.triplem-ai-answer-tip{display:flex;align-items:flex-start;gap:7px;margin-top:8px;padding:8px 9px;border-radius:10px;background:color-mix(in srgb,var(--accent,#2457d6) 7%,var(--panel));color:var(--muted);font-size:.8rem}.triplem-ai-answer-tip>i{color:#d69e00;margin-top:2px}.triplem-ai-answer-tip strong{color:var(--text)}
.triplem-ai-thinking{max-width:960px;width:100%;padding:1px 0 8px;font-size:.74rem}.triplem-ai-thinking em{font-weight:700;color:var(--muted)}
.triplem-ai-suggestions{max-width:960px;margin:0 auto;padding:0 20px 12px;gap:7px}.triplem-ai-suggestion{padding:7px 11px;background:color-mix(in srgb,var(--panel-2) 80%,transparent);font-size:.69rem}
.triplem-ai-composer{max-width:none;width:100%;margin:0;padding:14px 20px 18px;border-top:1px solid color-mix(in srgb,var(--accent,#2457d6) 10%,var(--line));background:color-mix(in srgb,var(--panel) 97%,var(--panel-2) 3%)}
.triplem-ai-composer textarea{min-height:58px;max-height:160px;border-radius:18px;padding:14px 58px 27px 16px;background:var(--panel-2);font-size:.86rem;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 22%,transparent)}
.triplem-ai-composer textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#2457d6) 10%,transparent),0 8px 22px rgba(15,23,42,.035)}
.triplem-ai-send{right:30px;top:24px;width:38px;height:38px;border-radius:12px;transition:transform .16s ease,box-shadow .16s ease}.triplem-ai-send:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 9px 19px rgba(36,79,201,.25)}
.triplem-ai-composer-foot{left:36px;right:36px;bottom:22px;font-size:.6rem}.triplem-ai-composer-foot span:last-child{font-variant-numeric:tabular-nums}

@media(max-width:720px){.triplem-ai-section{border-radius:16px}.triplem-ai-root,.triplem-ai-shell{min-height:520px}.triplem-ai-console-head{min-height:62px;padding:11px 12px}.triplem-ai-mini-orb{width:38px;height:38px;flex-basis:38px;border-radius:12px}.triplem-ai-console-brand{gap:9px}.triplem-ai-console-brand strong{font-size:.94rem}.triplem-ai-console-brand small{font-size:.64rem;max-width:190px}.triplem-ai-thread{height:58dvh;min-height:350px;padding:16px 10px 12px}.triplem-ai-message{gap:8px;margin-bottom:13px}.triplem-ai-message-avatar{width:29px;height:29px;flex-basis:29px}.triplem-ai-message-content{max-width:88%}.triplem-ai-message-text{font-size:.79rem;line-height:1.55;padding:10px 11px}.triplem-ai-answer-summary{font-size:.76rem}.triplem-ai-answer-tip{font-size:.74rem}.triplem-ai-suggestions{padding:0 10px 9px}.triplem-ai-composer{padding:10px 10px 13px}.triplem-ai-composer textarea{min-height:54px;padding:12px 51px 25px 13px;font-size:.8rem}.triplem-ai-send{right:18px;top:18px;width:36px;height:36px}.triplem-ai-composer-foot{left:23px;right:23px;bottom:17px}.triplem-ai-composer-foot span:first-child{display:none}}

/* 160 · Verified references, AI Draft lifecycle, and compact control polish */
.triplem-ai-composer{padding:12px 20px 25px}
.triplem-ai-composer textarea{min-height:56px;padding:12px 49px 28px 14px}
.triplem-ai-send{right:30px;top:20px;width:32px;height:32px;border-radius:10px;font-size:.76rem;box-shadow:0 5px 12px rgba(36,79,201,.18)}
.triplem-ai-composer-foot{left:35px;right:35px;bottom:7px;min-height:14px;align-items:center;font-size:.58rem;line-height:1.1}
.triplem-ai-records{display:grid;gap:7px;margin-top:8px}
.triplem-ai-record-card{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:8px 9px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 93%,var(--primary) 7%);color:var(--text);text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}
.triplem-ai-record-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--surface) 88%,var(--primary) 12%)}
.triplem-ai-record-icon,.triplem-ai-draft-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 13%,var(--surface));color:var(--primary)}
.triplem-ai-record-copy{min-width:0;display:grid;gap:2px}.triplem-ai-record-top{display:flex;align-items:center;gap:6px;min-width:0}.triplem-ai-record-top strong{font-size:.74rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.triplem-ai-record-copy small{font-size:.61rem;color:var(--muted)}.triplem-ai-record-copy em{font-style:normal;font-size:.61rem;color:var(--text-soft,var(--muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.triplem-ai-record-open{font-size:.65rem;color:var(--muted)}
.triplem-ai-origin-badge{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;padding:2px 6px;border-radius:999px;background:color-mix(in srgb,#7256e8 13%,var(--surface));border:1px solid color-mix(in srgb,#7256e8 28%,var(--border));color:#7256e8;font-size:.53rem;font-weight:800;line-height:1.25;letter-spacing:.015em;vertical-align:middle}
.triplem-ai-reference-box{margin-top:9px;padding:8px 9px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:11px;background:color-mix(in srgb,var(--surface) 96%,var(--text) 4%)}
.triplem-ai-reference-title{display:flex;align-items:center;gap:6px;margin-bottom:5px;color:var(--muted);font-size:.62rem}.triplem-ai-reference-line{display:grid;grid-template-columns:18px minmax(0,1fr);gap:6px;padding:4px 0;border-top:1px solid color-mix(in srgb,var(--border) 58%,transparent)}.triplem-ai-reference-line:first-of-type{border-top:0}.triplem-ai-reference-line>span{width:17px;height:17px;border-radius:6px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary);font-size:.52rem;font-weight:800}.triplem-ai-reference-line p{margin:0;display:grid;gap:1px}.triplem-ai-reference-line strong{font-size:.62rem}.triplem-ai-reference-line small{font-size:.58rem;line-height:1.35;color:var(--muted)}
.triplem-ai-pending{padding:7px 14px 8px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 96%,#7256e8 4%)}.triplem-ai-pending>span{display:flex;align-items:center;gap:6px;margin-bottom:5px;color:var(--muted);font-size:.59rem;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.triplem-ai-drafts.is-compact{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.triplem-ai-drafts.is-compact::-webkit-scrollbar{display:none}.triplem-ai-draft-card{min-width:205px;max-width:290px;display:grid;grid-template-columns:30px minmax(0,1fr) 16px;align-items:center;gap:7px;padding:7px 8px;border:1px solid color-mix(in srgb,#7256e8 24%,var(--border));border-radius:11px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.triplem-ai-draft-card>span:nth-child(2){min-width:0;display:grid;gap:2px}.triplem-ai-draft-title{display:flex;align-items:center;gap:5px;min-width:0}.triplem-ai-draft-title strong{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.triplem-ai-draft-card small{font-size:.56rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.triplem-ai-draft-card>.fa-pen-to-square{font-size:.62rem;color:var(--muted)}
.triplem-ai-draft-dialog{width:min(660px,calc(100vw - 24px));max-height:calc(100dvh - 30px);overflow:hidden}.triplem-ai-draft-dialog .modal-head{padding:13px 15px}.triplem-ai-draft-dialog .modal-head h3{display:flex;align-items:center;gap:7px;margin:3px 0}.triplem-ai-draft-dialog .modal-head p{font-size:.66rem;line-height:1.4;margin:2px 0 0}.triplem-ai-draft-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 10px;padding:13px 15px;overflow:auto}.triplem-ai-draft-field{display:grid;gap:4px}.triplem-ai-draft-field>span{font-size:.62rem;font-weight:800;color:var(--muted)}.triplem-ai-draft-field .input{min-height:36px;height:36px;padding:7px 9px;font-size:.72rem}.triplem-ai-draft-field textarea.input{height:auto;min-height:92px;resize:vertical}.triplem-ai-draft-field.is-wide,.triplem-ai-draft-form .triplem-ai-settings-message{grid-column:1/-1}.triplem-ai-draft-actions{padding:9px 13px;gap:7px}.triplem-ai-draft-actions>div{display:flex;gap:6px;margin-left:auto}.triplem-ai-draft-actions .btn{min-height:32px;padding:6px 10px;font-size:.67rem;border-radius:9px}
.triplem-ai-settings-dialog{width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 34px)}.triplem-ai-settings-dialog .settings-sheet-head{padding:13px 15px}.triplem-ai-settings-dialog .settings-sheet-head h3{font-size:1rem;margin:2px 0}.triplem-ai-settings-dialog .settings-sheet-head p{font-size:.64rem}.triplem-ai-settings-dialog .settings-sheet-body{padding:12px 15px;gap:10px}.triplem-ai-settings-hero{padding:10px 11px;gap:9px}.triplem-ai-settings-icon{width:34px;height:34px;min-width:34px;border-radius:10px}.triplem-ai-settings-hero strong{font-size:.73rem}.triplem-ai-settings-hero p{font-size:.62rem;line-height:1.4;margin-top:2px}.triplem-ai-settings-grid{gap:8px}.triplem-ai-settings-field{gap:4px}.triplem-ai-settings-field>label,.triplem-ai-settings-field>span,.triplem-ai-key-entry>label{font-size:.61rem}.triplem-ai-settings-field .input,.triplem-ai-key-entry .input{min-height:36px;height:36px;padding:7px 9px;font-size:.7rem}.triplem-ai-key-display{min-height:45px;padding:7px 9px}.triplem-ai-key-display strong{font-size:.68rem}.triplem-ai-key-display small{font-size:.56rem}.triplem-ai-secret-input .icon-btn{width:29px;height:29px;right:4px;top:50%;transform:translateY(-50%);position:absolute}.triplem-ai-key-entry p,.triplem-ai-settings-notice{font-size:.59rem;line-height:1.4}.triplem-ai-settings-status-grid{gap:7px}.triplem-ai-settings-status-grid>div{padding:7px 9px}.triplem-ai-settings-actions{padding:9px 13px;gap:6px;justify-content:flex-end;align-items:center}.triplem-ai-settings-actions .btn{min-height:31px;padding:6px 9px;font-size:.65rem;border-radius:9px}.triplem-ai-settings-actions .triplem-ai-delete-key{margin-right:auto}
@media(max-width:720px){.triplem-ai-composer{padding:9px 10px 21px}.triplem-ai-composer textarea{min-height:52px;padding:11px 45px 25px 12px}.triplem-ai-send{right:18px;top:16px;width:31px;height:31px}.triplem-ai-composer-foot{left:23px;right:23px;bottom:6px}.triplem-ai-draft-form{grid-template-columns:1fr}.triplem-ai-draft-field.is-wide,.triplem-ai-draft-form .triplem-ai-settings-message{grid-column:auto}.triplem-ai-draft-actions{flex-wrap:wrap}.triplem-ai-draft-actions>div{margin-left:0}.triplem-ai-settings-actions{flex-wrap:wrap}.triplem-ai-settings-actions .triplem-ai-delete-key{margin-right:0}.triplem-ai-record-copy em{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}
.triplem-ai-record-detail-dialog{width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 34px);overflow:hidden}.triplem-ai-record-detail-dialog .modal-head{padding:13px 15px}.triplem-ai-record-detail-dialog .modal-head h3{display:flex;align-items:center;gap:7px;margin:3px 0}.triplem-ai-record-detail-dialog .modal-head p{margin:2px 0 0;font-size:.65rem;color:var(--muted);text-transform:capitalize}.triplem-ai-record-detail-dialog .modal-body{padding:12px 15px;overflow:auto}.triplem-ai-record-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.triplem-ai-record-detail-grid>div{min-width:0;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);padding:8px 9px;display:grid;gap:3px}.triplem-ai-record-detail-grid span{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.triplem-ai-record-detail-grid strong{font-size:.7rem;line-height:1.4;overflow-wrap:anywhere}.triplem-ai-record-detail-dialog .modal-footer{padding:9px 13px}.triplem-ai-record-detail-dialog .modal-footer .btn{min-height:31px;padding:6px 10px;font-size:.65rem}
@media(max-width:720px){.triplem-ai-record-detail-grid{grid-template-columns:1fr}.triplem-ai-record-detail-dialog{width:calc(100vw - 18px)}}

/* Triplem AI · viewport-bound chat and compact settings refinement */
#triplem-aiPanel .triplem-ai-section{
  height:var(--triplem-ai-viewport-height,calc(100dvh - 132px));
  min-height:0!important;
  max-height:var(--triplem-ai-viewport-height,calc(100dvh - 132px));
  display:flex;
  flex-direction:column;
  overscroll-behavior:contain;
  contain:layout paint;
}
#triplem-aiPanel .triplem-ai-root{
  flex:1 1 auto;
  width:100%;
  height:100%;
  min-height:0!important;
  overflow:hidden;
}
#triplem-aiPanel .triplem-ai-shell{
  width:100%;
  height:100%;
  min-height:0!important;
  max-height:100%;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
#triplem-aiPanel .triplem-ai-console-head,
#triplem-aiPanel .triplem-ai-pending,
#triplem-aiPanel .triplem-ai-suggestions,
#triplem-aiPanel .triplem-ai-composer{flex:0 0 auto;position:relative;z-index:2}
#triplem-aiPanel .triplem-ai-thread{
  flex:1 1 auto;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior-y:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-gutter:stable;
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--muted) 32%,transparent) transparent;
  position:relative;
  z-index:1;
}
#triplem-aiPanel .triplem-ai-thread::-webkit-scrollbar{display:block;width:6px}
#triplem-aiPanel .triplem-ai-thread::-webkit-scrollbar-track{background:transparent}
#triplem-aiPanel .triplem-ai-thread::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 26%,transparent);border-radius:999px}
#triplem-aiPanel .triplem-ai-thread:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 42%,transparent)}
#triplem-aiPanel .triplem-ai-console-head{box-shadow:0 8px 24px rgba(15,23,42,.025)}
#triplem-aiPanel .triplem-ai-composer{box-shadow:0 -10px 28px rgba(15,23,42,.035)}

.triplem-ai-settings-dialog{
  width:min(560px,calc(100vw - 24px))!important;
  max-height:calc(100dvh - 28px)!important;
  overflow:hidden;
  border-radius:18px;
}
.triplem-ai-settings-dialog .settings-sheet-head{
  min-height:0;
  padding:11px 13px!important;
  gap:12px;
  align-items:center;
}
.triplem-ai-settings-dialog .settings-sheet-head>div{min-width:0}
.triplem-ai-settings-dialog .settings-sheet-head h3{font-size:.92rem!important;line-height:1.2;margin:2px 0!important}
.triplem-ai-settings-dialog .settings-sheet-head p{font-size:.59rem!important;line-height:1.35;margin:2px 0 0!important}
.triplem-ai-settings-kicker{font-size:.56rem;letter-spacing:.1em}
.triplem-ai-settings-close{width:28px!important;height:28px!important;min-width:28px;border-radius:9px!important;font-size:.72rem}
.triplem-ai-settings-dialog .settings-sheet-body{
  padding:10px 13px!important;
  gap:8px!important;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.triplem-ai-settings-hero{
  margin:0 0 9px!important;
  padding:8px 9px!important;
  gap:8px!important;
  align-items:center!important;
  border-radius:12px!important;
}
.triplem-ai-settings-icon{width:30px!important;height:30px!important;min-width:30px!important;flex-basis:30px!important;border-radius:9px!important;font-size:.7rem}
.triplem-ai-settings-hero strong{font-size:.67rem!important;line-height:1.25;margin:0!important}
.triplem-ai-settings-hero p{font-size:.57rem!important;line-height:1.35!important;margin:2px 0 0!important}
.triplem-ai-settings-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:8px!important;align-items:start}
.triplem-ai-settings-field{gap:4px!important;min-width:0}
.triplem-ai-settings-field>label,.triplem-ai-settings-field>span,.triplem-ai-key-entry>label{font-size:.59rem!important;line-height:1.2}
.triplem-ai-settings-field>small{font-size:.54rem!important;line-height:1.3;min-height:1.3em}
.triplem-ai-settings-field .input,.triplem-ai-key-entry .input{height:34px!important;min-height:34px!important;padding:6px 9px!important;border-radius:10px;font-size:.66rem!important}
.triplem-ai-key-display{height:44px;min-height:44px!important;padding:6px 8px!important;gap:8px!important;border-radius:10px!important}
.triplem-ai-key-display>i{width:18px;text-align:center;font-size:.7rem}
.triplem-ai-key-display strong{font-size:.64rem!important;line-height:1.2}
.triplem-ai-key-display small{font-size:.52rem!important;line-height:1.25;margin-top:1px}
.triplem-ai-settings-status-grid{margin-top:8px!important;gap:7px!important}
.triplem-ai-settings-status-grid>div{padding:6px 8px!important;border-radius:10px!important;gap:1px!important}
.triplem-ai-settings-status-grid span{font-size:.51rem!important}
.triplem-ai-settings-status-grid strong{font-size:.62rem!important;line-height:1.25}
.triplem-ai-key-entry{margin-top:9px!important}
.triplem-ai-secret-input{display:block!important;position:relative!important;margin-top:5px!important;width:100%}
.triplem-ai-secret-input .input{width:100%;padding-right:39px!important}
.triplem-ai-secret-input .triplem-ai-key-eye{
  position:absolute!important;
  top:50%!important;
  right:4px!important;
  transform:translateY(-50%)!important;
  width:27px!important;
  height:27px!important;
  min-width:27px!important;
  margin:0!important;
  border-radius:8px!important;
  font-size:.66rem;
  z-index:3;
}
#triplemAiApiKey::-ms-reveal,#triplemAiApiKey::-ms-clear{display:none!important;width:0!important;height:0!important}
#triplemAiApiKey::-webkit-credentials-auto-fill-button{visibility:hidden!important;display:none!important;pointer-events:none!important;position:absolute!important;right:0!important}
.triplem-ai-key-entry>p{font-size:.54rem!important;line-height:1.35!important;margin:4px 1px 0!important}
.triplem-ai-settings-notice{margin-top:8px!important;padding:7px 8px!important;gap:7px!important;border-radius:10px!important;font-size:.55rem!important;line-height:1.35!important}
.triplem-ai-settings-notice>i{margin-top:1px;flex:0 0 auto}
.triplem-ai-settings-message{min-height:14px!important;margin-top:5px!important;font-size:.59rem!important;line-height:1.3}
.triplem-ai-settings-actions{padding:8px 11px!important;gap:5px!important;min-height:0;align-items:center!important}
.triplem-ai-settings-actions .btn{height:29px!important;min-height:29px!important;padding:5px 8px!important;border-radius:8px!important;font-size:.6rem!important;gap:5px}
.triplem-ai-settings-actions .btn i{font-size:.62rem}
.triplem-ai-settings-actions .triplem-ai-delete-key{margin-right:auto!important}

@media(max-width:720px){
  #triplem-aiPanel .triplem-ai-section{height:var(--triplem-ai-viewport-height,calc(100dvh - 96px));max-height:var(--triplem-ai-viewport-height,calc(100dvh - 96px))}
  #triplem-aiPanel .triplem-ai-thread{scrollbar-gutter:auto;scrollbar-width:none}
  #triplem-aiPanel .triplem-ai-thread::-webkit-scrollbar{display:none}
  .triplem-ai-settings-dialog{width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;border-radius:16px}
  .triplem-ai-settings-grid,.triplem-ai-settings-status-grid{grid-template-columns:1fr!important}
  .triplem-ai-settings-dialog .settings-sheet-head{padding:10px 11px!important}
  .triplem-ai-settings-dialog .settings-sheet-body{padding:9px 11px!important}
  .triplem-ai-settings-actions{padding:7px 9px!important;flex-wrap:nowrap!important}
  .triplem-ai-settings-actions .btn{white-space:nowrap;padding-inline:7px!important}
  .triplem-ai-settings-actions .triplem-ai-delete-key{margin-right:auto!important}
}



/* 2026-09-10 Triplem AI viewport lock: the app page never becomes the chat scroller. */
html.triplem-ai-workspace-active,body.triplem-ai-workspace-active{overflow:hidden!important;overscroll-behavior:none!important}
body.triplem-ai-workspace-active #triplem-aiPanel.active{height:var(--triplem-ai-viewport-height,calc(100dvh - 16px));max-height:var(--triplem-ai-viewport-height,calc(100dvh - 16px));overflow:hidden!important}
body.triplem-ai-workspace-active #triplem-aiPanel.active>.triplem-ai-section{height:100%!important;max-height:100%!important;min-height:0!important;overflow:hidden!important}
body.triplem-ai-workspace-active #triplem-aiPanel .triplem-ai-root,body.triplem-ai-workspace-active #triplem-aiPanel .triplem-ai-shell{height:100%!important;min-height:0!important;overflow:hidden!important}
body.triplem-ai-workspace-active #triplem-aiPanel .triplem-ai-thread{flex:1 1 0!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;touch-action:pan-y}

/* ===== SOURCE: Assets/style/47-section-keyboard-shortcuts.css ===== */
/* Triplem VIP reusable desktop-only section keyboard shortcuts. */
.section-shortcuts-tag{display:none!important}

@media (min-width:900px) and (any-hover:hover) and (any-pointer:fine){
  .section-shortcuts-tag{
    display:inline-flex!important;
    align-items:center;
    gap:6px;
    min-height:28px;
    padding:4px 9px;
    border-radius:999px;
    white-space:nowrap;
    line-height:1;
  }
  .section-shortcuts-tag i{font-size:.78rem}
}

.section-shortcuts-dialog{
  width:min(540px,calc(100vw - 32px));
  max-width:540px;
  border-radius:18px;
  overflow:hidden;
}

.section-shortcuts-head{
  align-items:flex-start;
  gap:14px;
  padding-bottom:11px;
}

.section-shortcuts-head h3{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0;
}

.section-shortcuts-head p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.4;
}

.section-shortcuts-body{
  display:grid;
  gap:7px;
  padding-top:4px;
}

.section-shortcut-row{
  display:grid;
  grid-template-columns:minmax(190px,auto) 1fr;
  align-items:center;
  gap:15px;
  min-height:52px;
  padding:9px 11px;
  border:1px solid var(--border);
  border-radius:13px;
  background:color-mix(in srgb,var(--card) 94%,var(--primary) 6%);
}

.section-shortcut-row>div:last-child{
  min-width:0;
  display:grid;
  gap:2px;
}

.section-shortcut-row strong{
  font-size:.84rem;
  line-height:1.2;
}

.section-shortcut-row small{
  color:var(--muted);
  font-size:.72rem;
  line-height:1.35;
}

.section-shortcut-keys{
  display:flex;
  align-items:center;
  gap:5px;
  white-space:nowrap;
}

.section-shortcut-keys span{
  color:var(--muted);
  font-size:.7rem;
}

.section-shortcut-keys kbd{
  min-width:28px;
  height:27px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 8px;
  border:1px solid var(--border);
  border-bottom-width:2px;
  border-radius:7px;
  background:var(--card);
  color:var(--text);
  font:700 .7rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  box-shadow:0 1px 0 color-mix(in srgb,var(--text) 10%,transparent);
}

.section-shortcuts-foot{
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:10px;
  padding:8px 10px;
  border-radius:10px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.35;
  background:color-mix(in srgb,var(--card) 96%,var(--text) 4%);
}

@media (max-width:899px),(any-hover:none),(any-pointer:coarse){
  .section-shortcuts-modal{display:none!important}
}

/* ===== SOURCE: Assets/style/48-installment-bought-sold.css ===== */
/* 163 — Bought / Sold installment plans. Compact, responsive, theme-safe. */
.installment-plan-mode{
  display:inline-grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:3px;
  width:min(100%,520px);
  margin:8px 0 10px;
  padding:3px;
  border:1px solid var(--line);
  border-radius:11px;
  background:color-mix(in srgb,var(--card) 92%,var(--muted) 8%);
}
.installment-plan-mode-btn{
  min-width:0;
  min-height:32px;
  border:0;
  border-radius:8px;
  padding:6px 9px;
  background:transparent;
  color:var(--muted);
  font:inherit;
  font-size:.73rem;
  font-weight:720;
  line-height:1.15;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease;
}
.installment-plan-mode-btn.active{
  background:var(--card);
  color:var(--primary);
  box-shadow:0 1px 4px rgba(15,23,42,.08);
}
.installment-plan-mode-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:1px}
.installment-type-badge{font-size:.61rem!important;padding:2px 6px!important;letter-spacing:.02em}
.installment-type-badge.is-sold{color:#067647;background:rgba(18,183,106,.1);border-color:rgba(18,183,106,.2)}
.installment-type-badge.is-bought{color:#2457d6;background:rgba(36,87,214,.08);border-color:rgba(36,87,214,.16)}
.installment-optional-details{
  border:1px solid var(--line);
  border-radius:11px;
  background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%);
  overflow:hidden;
}
.installment-optional-details>summary{
  min-height:38px;
  padding:8px 10px;
  list-style:none;
  cursor:pointer;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:8px;
  font-size:.74rem;
  font-weight:730;
  color:var(--text);
}
.installment-optional-details>summary::-webkit-details-marker{display:none}
.installment-optional-details>summary>span:first-child{display:flex;align-items:center;gap:6px;min-width:0}
.installment-optional-details>summary>small{font-size:.65rem;font-weight:550;color:var(--muted);white-space:nowrap}
.installment-optional-details .expense-optional-chevron{font-size:.68rem;color:var(--muted)}
.installment-optional-details .expense-chevron-down{display:none}
.installment-optional-details[open] .expense-chevron-right{display:none}
.installment-optional-details[open] .expense-chevron-down{display:inline-block}
.installment-optional-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 9px;
  padding:9px 10px 10px;
  border-top:1px solid var(--line);
}
.installment-optional-grid>.field{grid-column:auto!important;margin:0!important;min-width:0}
.installment-optional-grid>.expense-optional-wide{grid-column:1/-1!important}
.installment-optional-grid label{font-size:.66rem!important;margin-bottom:3px!important;color:var(--muted)!important}
.installment-optional-grid :is(.input,.select){min-height:32px!important;height:32px!important;padding:5px 8px!important;font-size:.72rem!important;width:100%!important}
.installment-details-card{
  border:1px solid var(--line);
  border-radius:10px;
  padding:9px 10px;
  background:color-mix(in srgb,var(--card) 97%,var(--primary) 3%);
}
.installment-details-card h4{margin:0 0 7px;font-size:.74rem;color:var(--text)}
.installment-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}
.installment-detail-row{min-width:0;display:flex;flex-direction:column;gap:1px}
.installment-detail-row small{font-size:.61rem;color:var(--muted)}
.installment-detail-row strong{font-size:.71rem;font-weight:650;word-break:break-word;color:var(--text)}
.installment-plan-card[data-plan-type="sold"] .ip-progress-fill{background:linear-gradient(90deg,#12b76a,#039855)}
#installmentPlanModal .ipo-actions .btn,#installmentEditModal .modal-footer .btn{min-height:31px;padding:5px 10px;font-size:.7rem}
#installmentEditModal .modal-dialog,#entryModal .modal-dialog.compact-entry-dialog{max-width:min(680px,calc(100vw - 24px))}
@media (max-width:640px){
  .installment-plan-mode{display:grid;width:100%;margin:7px 0 9px}
  .installment-plan-mode-btn{min-height:31px;padding:5px 6px;font-size:.67rem;gap:4px}
  .installment-plan-mode-btn i{font-size:.67rem}
  .installment-optional-details>summary{grid-template-columns:minmax(0,1fr) auto;padding:8px 9px}
  .installment-optional-details>summary>small{display:none}
  .installment-optional-grid{grid-template-columns:1fr;gap:7px;padding:8px 9px}
  .installment-optional-grid>.expense-optional-wide{grid-column:auto!important}
  .installment-details-grid{grid-template-columns:1fr}
  #entryModal .modal-dialog.compact-entry-dialog,#installmentEditModal .modal-dialog{width:calc(100vw - 12px);max-width:none;max-height:calc(100dvh - 12px)}
}

/* 2026-09-15 — schedule calculation mode: installment count or fixed monthly amount. */
.installment-calc-mode{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px;
  width:min(100%,300px);
  padding:3px;
  border:1px solid var(--line);
  border-radius:10px;
  background:color-mix(in srgb,var(--card) 94%,var(--muted) 6%);
}
.installment-calc-choice{margin:0!important;cursor:pointer;min-width:0}
.installment-calc-choice>input{position:absolute;opacity:0;pointer-events:none}
.installment-calc-choice>span{
  min-height:31px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:5px 9px;
  border-radius:7px;
  color:var(--muted);
  font-size:.71rem;
  font-weight:760;
  line-height:1;
  transition:background .14s ease,color .14s ease,box-shadow .14s ease;
}
.installment-calc-choice>span i{
  width:15px;
  height:15px;
  display:grid;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--muted) 42%,transparent);
  border-radius:50%;
  font-size:.47rem;
  color:transparent;
  transition:background .14s ease,border-color .14s ease,color .14s ease;
}
.installment-calc-choice>input:checked+span{
  background:var(--card);
  color:var(--primary);
  box-shadow:0 1px 4px rgba(15,23,42,.08);
}
.installment-calc-choice>input:checked+span i{
  color:#fff;
  border-color:var(--primary);
  background:var(--primary);
}
.installment-calc-choice>input:focus-visible+span{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:1px}
@media (max-width:640px){
  .installment-calc-mode{width:100%}
  .installment-calc-choice>span{min-height:30px;font-size:.68rem}
}

/* ===== SOURCE: Assets/style/50-dashboard-financial-timeline.css ===== */
/* Dashboard > Financial Timeline */
.dashboard-main-tabs{display:inline-flex;align-items:center;gap:3px;padding:3px;margin:0 0 12px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel-2) 86%,transparent);max-width:100%}
.dashboard-main-tab{appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.78rem;font-weight:700;line-height:1;padding:8px 11px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;transition:background .16s ease,color .16s ease,transform .16s ease}
.dashboard-main-tab i{font-size:.72rem}.dashboard-main-tab:hover{color:var(--text);background:color-mix(in srgb,var(--primary) 8%,transparent)}
.dashboard-main-tab.active{background:var(--primary);color:#fff;box-shadow:0 3px 10px color-mix(in srgb,var(--primary) 20%,transparent)}
.financial-timeline-root{display:grid;gap:12px;min-width:0}.timeline-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto 34px;gap:7px;align-items:center}
.timeline-search{height:34px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--input);color:var(--muted)}
.timeline-search:focus-within{border-color:color-mix(in srgb,var(--primary) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}
.timeline-search i{font-size:.72rem}.timeline-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:.78rem}.timeline-search input::placeholder{color:var(--muted)}
.timeline-filter,.timeline-refresh-btn{height:34px;border:1px solid var(--line);border-radius:9px;background:var(--input);color:var(--text);font:inherit;font-size:.75rem;font-weight:650;padding:0 9px;outline:0}
.timeline-filter:focus,.timeline-refresh-btn:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}
.timeline-refresh-btn{width:34px;padding:0;display:grid;place-items:center;cursor:pointer}.timeline-refresh-btn:hover{color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--input))}
.timeline-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.timeline-summary-grid article{min-height:58px;padding:9px 11px;border:1px solid var(--line);border-radius:11px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,var(--primary) 4%),var(--panel));display:grid;align-content:center;gap:4px;min-width:0}
.timeline-summary-grid article span:first-child{font-size:.66rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.045em}.timeline-summary-grid article>strong{font-size:.88rem;color:var(--text);display:flex;flex-wrap:wrap;gap:4px;min-width:0}.timeline-summary-grid article.is-inflow>strong{color:var(--success)}.timeline-summary-grid article.is-outflow>strong{color:var(--danger)}
.timeline-summary-currency{font-size:.75rem!important;text-transform:none!important;letter-spacing:0!important;color:inherit!important;display:inline-flex;align-items:center;padding:2px 5px;border-radius:5px;background:color-mix(in srgb,currentColor 7%,transparent)}
.timeline-stream{display:grid;gap:14px}.timeline-day{display:grid;grid-template-columns:116px minmax(0,1fr);gap:10px;align-items:start}.timeline-day>header{position:sticky;top:8px;padding:7px 4px}.timeline-day>header>div{display:grid;gap:2px}.timeline-day>header strong{font-size:.76rem;color:var(--text)}.timeline-day>header span{font-size:.66rem;color:var(--muted)}
.timeline-day-list{position:relative;display:grid;gap:6px;padding-left:15px}.timeline-day-list:before{content:"";position:absolute;left:3px;top:17px;bottom:17px;width:1px;background:color-mix(in srgb,var(--primary) 26%,var(--line))}
.timeline-event-card{position:relative;width:100%;min-width:0;text-align:left;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--text);padding:10px 28px 10px 10px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:9px;align-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.035);transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease}
.timeline-event-card:before{content:"";position:absolute;left:-15px;top:50%;width:8px;height:8px;border-radius:50%;transform:translateY(-50%);background:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--panel) 82%,transparent),0 0 0 4px color-mix(in srgb,var(--primary) 28%,var(--line))}.timeline-event-card:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--panel) 97%,var(--primary) 3%);box-shadow:0 6px 18px rgba(0,0,0,.07);transform:translateY(-1px)}
.timeline-event-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-size:.76rem}.timeline-event-card.is-inflow .timeline-event-icon{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.timeline-event-card.is-outflow .timeline-event-icon{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}.timeline-event-card.is-transfer .timeline-event-icon{color:var(--primary)}
.timeline-event-main{display:grid;min-width:0;gap:2px}.timeline-event-kicker{display:flex;align-items:center;gap:5px;min-width:0}.timeline-event-kicker b{font-size:.62rem;text-transform:uppercase;letter-spacing:.045em;color:var(--muted)}.timeline-event-kicker em{font-style:normal;font-size:.61rem;color:var(--muted);padding-left:5px;border-left:1px solid var(--line)}.timeline-event-main>strong{font-size:.79rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-event-main>small{font-size:.69rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-status{font-size:.58rem!important;padding:2px 5px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);color:var(--muted)!important;text-transform:capitalize!important;letter-spacing:0!important}
.timeline-event-side{display:grid;justify-items:end;gap:2px;white-space:nowrap}.timeline-event-side time{font-size:.62rem;color:var(--muted)}.timeline-amount{font-size:.76rem;font-weight:800}.timeline-amount.is-inflow{color:var(--success)}.timeline-amount.is-outflow{color:var(--danger)}.timeline-amount.is-transfer{color:var(--primary)}.timeline-secondary-amount{font-size:.62rem;color:var(--muted)}.timeline-event-open{position:absolute;right:9px;top:50%;transform:translateY(-50%);font-size:.58rem;color:var(--muted);opacity:.6}
.timeline-more-wrap{display:flex;justify-content:center;padding:2px 0 8px}.timeline-more-btn{min-height:32px!important;padding:6px 13px!important;font-size:.72rem!important;border-radius:8px!important}.timeline-empty{min-height:180px;border:1px dashed var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel-2) 65%,transparent);display:grid;place-items:center;align-content:center;text-align:center;gap:5px;padding:24px;color:var(--muted)}.timeline-empty i{font-size:1.2rem;color:var(--primary)}.timeline-empty strong{font-size:.86rem;color:var(--text)}.timeline-empty span{font-size:.72rem;max-width:380px}.timeline-empty.is-error i{color:var(--danger)}
.timeline-loading{display:grid;gap:7px}.timeline-loading span{height:64px;border-radius:11px;border:1px solid var(--line);background:linear-gradient(90deg,var(--panel),color-mix(in srgb,var(--panel-2) 75%,var(--primary) 5%),var(--panel));background-size:220% 100%;animation:timelineShimmer 1.2s linear infinite}@keyframes timelineShimmer{to{background-position:-220% 0}}
@media(max-width:900px){.timeline-toolbar{grid-template-columns:minmax(150px,1fr) repeat(2,minmax(0,auto)) 34px}.timeline-toolbar #timelineRangeFilter{grid-column:auto}.timeline-day{grid-template-columns:92px minmax(0,1fr)}.timeline-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dashboard-main-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.dashboard-main-tab{justify-content:center;font-size:.72rem;padding:8px}.timeline-toolbar{grid-template-columns:minmax(0,1fr) 34px}.timeline-search{grid-column:1/-1}.timeline-filter{min-width:0;width:100%}.timeline-toolbar #timelineRangeFilter{grid-column:1/2}.timeline-summary-grid{gap:6px}.timeline-summary-grid article{min-height:52px;padding:8px 9px;border-radius:9px}.timeline-day{grid-template-columns:1fr;gap:4px}.timeline-day>header{position:static;padding:3px 2px}.timeline-day>header>div{display:flex;justify-content:space-between;align-items:center}.timeline-day-list{padding-left:13px}.timeline-event-card{grid-template-columns:29px minmax(0,1fr);padding:9px 24px 9px 8px;border-radius:9px;gap:8px}.timeline-event-icon{width:29px;height:29px;border-radius:8px}.timeline-event-side{grid-column:2/3;display:flex;justify-content:flex-start;align-items:center;gap:7px;margin-top:2px}.timeline-event-main>strong{font-size:.76rem}.timeline-event-main>small{font-size:.66rem}.timeline-event-kicker em{display:none}.timeline-event-open{right:8px}.timeline-day-list:before{left:2px}.timeline-event-card:before{left:-13px}}
@media(prefers-reduced-motion:reduce){.timeline-event-card,.dashboard-main-tab{transition:none}.timeline-loading span{animation:none}}
.timeline-day-net{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px;color:var(--muted);font-size:.61rem}.timeline-day-net .timeline-summary-currency{font-size:.61rem!important;padding:1px 4px;background:var(--panel-2)}
@media(max-width:600px){.timeline-day-net{margin-left:auto;margin-top:0;justify-content:flex-end}}

/* Build 167 — record-opening feedback and stable timeline interaction. */
.timeline-event-card.is-opening{cursor:progress;pointer-events:none;opacity:.72;transform:none!important}
.timeline-event-card.is-opening .timeline-event-open{display:none}
.timeline-event-card.is-opening:after{content:"";position:absolute;right:9px;top:50%;width:11px;height:11px;margin-top:-6px;border-radius:50%;border:2px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-top-color:var(--primary);animation:timelineRecordSpin .7s linear infinite}
.timeline-record-loader{position:fixed;inset:0;z-index:2147481600;display:grid;place-items:center;padding:16px;background:color-mix(in srgb,#0f172a 10%,transparent);pointer-events:auto}
.timeline-record-loader.hide{display:none!important}
.timeline-record-loader-card{display:flex;align-items:center;gap:11px;width:min(340px,calc(100vw - 30px));padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--panel);color:var(--text);box-shadow:0 16px 48px rgba(15,23,42,.2)}
.timeline-record-loader-card>div{display:grid;gap:2px;min-width:0}.timeline-record-loader-card strong{font-size:.78rem}.timeline-record-loader-card small{font-size:.67rem;color:var(--muted);line-height:1.35}
.timeline-record-loader-spinner{width:22px;height:22px;flex:0 0 22px;border-radius:50%;border:2px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-top-color:var(--primary);animation:timelineRecordSpin .7s linear infinite}
@keyframes timelineRecordSpin{to{transform:rotate(360deg)}}
@media(max-width:600px){.timeline-record-loader-card{padding:12px;border-radius:11px}.timeline-record-loader-card strong{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.timeline-event-card.is-opening:after,.timeline-record-loader-spinner{animation:none}}

/* ===== SOURCE: Assets/style/51-messages-compose-receipts.css ===== */
/* Build 166/167: Messages compose viewport overlay + private message receipts. */

body > #messagesNewComposer.messages-compose{
  position:fixed;
  inset:0;
  z-index:2147481800;
  display:grid;
  place-items:center;
  margin:0!important;
  padding:14px;
  overflow:auto;
  overscroll-behavior:contain;
  isolation:isolate;
}
#messagesNewComposer.messages-compose.hide{display:none!important}
#messagesNewComposer .messages-compose-backdrop{
  position:absolute;
  inset:0;
  background:color-mix(in srgb,#0f172a 42%,transparent);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
#messagesNewComposer .messages-compose-card{
  position:relative;
  z-index:1;
  width:min(510px,calc(100vw - 28px));
  max-height:min(620px,calc(100dvh - 28px));
  overflow:auto;
  padding:15px;
  border:1px solid color-mix(in srgb,var(--primary,#2457d6) 16%,var(--line));
  border-radius:15px;
  background:var(--panel,#fff);
  box-shadow:0 22px 64px rgba(15,23,42,.24);
}
#messagesNewComposer .messages-compose-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 0 7px;
  padding:0 0 8px;
  border-bottom:1px solid var(--line);
}
#messagesNewComposer .messages-compose-head h4{
  margin:0;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.94rem;
}
#messagesNewComposer .messages-compose-head h4::before{
  content:"\f304";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  flex:0 0 28px;
  border-radius:9px;
  background:color-mix(in srgb,var(--primary,#2457d6) 10%,var(--panel,#fff));
  color:var(--primary,#2457d6);
  font-size:.72rem;
}
#messagesNewComposer .messages-compose-head .btn{
  width:30px;
  height:30px;
  min-width:30px;
  min-height:30px;
  padding:0;
  border-radius:9px;
}
#messagesNewComposer .help{
  margin:7px 0 10px;
  font-size:.72rem;
  line-height:1.42;
}
#messagesNewComposer .form-group{margin-bottom:9px}
#messagesNewComposer .form-label{
  display:block;
  margin-bottom:4px;
  font-size:.71rem;
  font-weight:750;
}
#messagesNewComposer .input,
#messagesNewComposer .select{
  min-height:36px;
  padding-top:7px;
  padding-bottom:7px;
  border-radius:10px;
  font-size:.78rem;
}
#messagesNewComposer .messages-textarea{
  min-height:94px;
  max-height:170px;
  resize:vertical;
  line-height:1.42;
}
#messagesNewComposer #inquiryFormError{margin-top:2px}
#messagesNewComposer .messages-compose-actions{
  display:flex;
  justify-content:flex-end;
  margin:9px 0 0;
  padding:9px 0 0;
  border-top:1px solid var(--line);
  background:transparent;
}
#messagesNewComposer .messages-compose-actions .btn{
  min-width:116px;
  min-height:35px;
  justify-content:center;
  border-radius:10px;
  font-size:.75rem;
}
body.messages-compose-open{overflow:hidden!important}

.chat-message-time-status{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
  white-space:nowrap;
}
.message-delivery-tick{
  display:inline-grid;
  place-items:center;
  width:15px;
  height:15px;
  font-size:.62rem;
  line-height:1;
  transition:color .2s ease,transform .2s ease;
}
.message-delivery-tick.is-sent{color:#94a3b8}
.message-delivery-tick.is-delivered{color:#f97316}
.message-delivery-tick.is-read{color:#166534}
.message-delivery-tick.is-read i{transform:scale(1.04)}

@media (max-width:600px){
  body > #messagesNewComposer.messages-compose{
    place-items:center;
    padding:9px;
  }
  #messagesNewComposer .messages-compose-card{
    width:min(100%,430px);
    max-height:calc(100dvh - 18px);
    padding:13px;
    border-radius:14px;
  }
  #messagesNewComposer .messages-compose-head{margin-bottom:6px;padding-bottom:7px}
  #messagesNewComposer .help{margin:6px 0 9px;font-size:.69rem}
  #messagesNewComposer .form-group{margin-bottom:8px}
  #messagesNewComposer .messages-textarea{min-height:86px;max-height:145px}
  #messagesNewComposer .messages-compose-actions{margin-top:8px;padding-top:8px}
  #messagesNewComposer .messages-compose-actions .btn{width:100%;min-height:36px}
  #messagesNewComposer .input,
  #messagesNewComposer .select,
  #messagesNewComposer textarea{font-size:16px!important}
  .chat-bubble{max-width:88%}
  .chat-bubble-meta{gap:7px}
}

/* ===== SOURCE: Assets/style/53-company-team-management.css ===== */
/* Company Team Management 2026-09-17
 * Compact, theme-native company administration surface. All visual surfaces use
 * central theme tokens so white/light/dark/pink/green/red/neon themes remain legible.
 */
#companyTeamModal .company-team-dialog {
  width: min(780px, calc(100vw - 24px));
  max-height: min(760px, calc(100dvh - 24px));
  overflow: hidden;
  padding: 0;
  background: var(--modal-bg) !important;
  color: var(--text) !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: 18px;
  box-shadow: var(--shadow-lg, 0 20px 55px rgba(0,0,0,.18));
}

#companyTeamModal .company-team-head {
  min-height: 0;
  padding: 14px 16px 12px;
  background: var(--modal-bg) !important;
  border-bottom: 1px solid var(--line) !important;
}

#companyTeamModal .company-team-head h3 {
  margin: 2px 0 1px;
  color: var(--text-strong) !important;
  font-size: 1.02rem;
  line-height: 1.2;
}

#companyTeamModal .company-team-head p {
  margin: 0;
  color: var(--muted) !important;
  font-size: .72rem;
  line-height: 1.35;
}

#companyTeamModal .company-team-kicker {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--primary) !important;
  font-size: .64rem !important;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

#companyTeamModal .company-team-shell {
  display: grid;
  grid-template-columns: 94px minmax(0, 1fr);
  min-height: 0;
  height: calc(min(760px, 100dvh - 24px) - 70px);
  max-height: calc(min(760px, 100dvh - 24px) - 70px);
  overflow: hidden;
  background: var(--modal-bg) !important;
}

#companyTeamModal .company-team-nav {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 10px 8px;
  background: var(--surface-soft) !important;
  border-right: 1px solid var(--line) !important;
}

#companyTeamModal .company-team-nav-btn,
#companyTeamModal .company-team-icon-btn {
  appearance: none;
  border: 1px solid transparent;
  background: transparent !important;
  color: var(--muted) !important;
  font: inherit;
  cursor: pointer;
  transition: .16s ease;
}

#companyTeamModal .company-team-nav-btn {
  min-height: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 6px 4px;
  border-radius: 11px;
  font-size: .64rem;
  font-weight: 700;
}

#companyTeamModal .company-team-nav-btn i { font-size: .88rem; }

#companyTeamModal .company-team-nav-btn:hover,
#companyTeamModal .company-team-nav-btn.is-active {
  color: var(--primary) !important;
  background: var(--control-hover) !important;
  border-color: var(--line-strong) !important;
}

#companyTeamModal .company-team-body {
  min-height: 0;
  height: 100%;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding: 14px;
  background: var(--modal-bg) !important;
  color: var(--text) !important;
}

#companyTeamModal .company-team-panel { color: var(--text) !important; }

#companyTeamModal .company-team-body::-webkit-scrollbar,
#companyTeamModal .company-team-nav::-webkit-scrollbar,
#companyTeamModal .company-team-activity-list::-webkit-scrollbar { width: 0; height: 0; display: none; }

#companyTeamModal .company-team-panel,
#companyTeamModal .company-team-list,
#companyTeamModal .company-team-access-list,
#companyTeamModal .company-team-activity-list,
#companyTeamModal .company-team-compact-form,
#companyTeamModal .company-team-billing-form {
  background: transparent !important;
  color: var(--text) !important;
}

#companyTeamModal .empty,
#companyTeamModal .empty.tiny {
  background: transparent !important;
  color: var(--muted) !important;
  border-color: var(--line) !important;
}

#companyTeamModal .company-team-activity-main strong,
#companyTeamModal .company-team-activity-main span,
#companyTeamModal .cta-line,
#companyTeamModal .cta-line * { color: var(--text) !important; }
#companyTeamModal .cta-line { background: var(--card-bg) !important; border-color: var(--line) !important; }
#companyTeamModal .cta-mod,
#companyTeamModal .cta-time { color: var(--muted) !important; }
#companyTeamModal .cta-mod { background: var(--surface-soft) !important; border-color: var(--line) !important; }

#companyTeamModal input[type="checkbox"],
#companyTeamModal input[type="radio"] { accent-color: var(--primary); }

#companyTeamModal .company-team-member-editor {
  scroll-margin-block: 14px;
}

#companyTeamModal .company-team-panel-head,
#companyTeamModal .company-team-activity-toolbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

#companyTeamModal .company-team-panel-head h4 {
  margin: 0;
  color: var(--text-strong) !important;
  font-size: .9rem;
}

#companyTeamModal .company-team-panel-head p {
  margin: 2px 0 0;
  color: var(--muted) !important;
  font-size: .69rem;
}

#companyTeamModal .company-team-panel-icon {
  color: var(--primary) !important;
  opacity: .82;
}

#companyTeamModal .company-team-seats,
#companyTeamModal .company-team-title-badge,
#companyTeamModal .company-team-chip,
#companyTeamModal .company-team-access-flags span {
  background: var(--surface-soft) !important;
  color: var(--text) !important;
  border: 1px solid var(--line) !important;
}

#companyTeamModal .company-team-seats {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: .67rem;
  font-weight: 750;
  white-space: nowrap;
}

#companyTeamModal .company-team-seats.is-full {
  color: var(--warning) !important;
  border-color: currentColor !important;
}

#companyTeamModal .company-team-list,
#companyTeamModal .company-team-access-list {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

#companyTeamModal .company-team-member,
#companyTeamModal .company-team-access-row,
#companyTeamModal .company-team-perm-editor,
#companyTeamModal .company-team-security-note,
#companyTeamModal .company-team-pending,
#companyTeamModal .company-team-quote,
#companyTeamModal .company-team-stat-grid > div,
#companyTeamModal .company-team-activity-list,
#companyTeamModal .company-team-activity-row {
  background: var(--card-bg) !important;
  color: var(--text) !important;
  border-color: var(--line) !important;
}

#companyTeamModal .company-team-member {
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
}

#companyTeamModal .company-team-member-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

#companyTeamModal .company-team-member-name {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex-wrap: wrap;
}

#companyTeamModal .company-team-member-name strong {
  color: var(--text-strong) !important;
  font-size: .83rem;
}

#companyTeamModal .company-team-member-name code {
  color: var(--muted) !important;
  font-size: .68rem;
}

#companyTeamModal .company-team-title-badge {
  display: inline-flex;
  padding: 2px 6px;
  border-radius: 999px;
  font-size: .61rem;
  font-weight: 750;
}

#companyTeamModal .company-team-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 7px;
}

#companyTeamModal .company-team-chip {
  padding: 2px 6px;
  border-radius: 999px;
  font-size: .61rem;
  font-weight: 650;
}

#companyTeamModal .company-team-chip.is-on { color: var(--primary) !important; }
#companyTeamModal .company-team-chip.is-off { color: var(--muted) !important; }

#companyTeamModal .company-team-member-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 8px;
}

#companyTeamModal .company-team-icon-btn {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 5px 8px;
  border-radius: 9px;
  border-color: var(--line) !important;
  background: var(--control-bg) !important;
  font-size: .67rem;
  font-weight: 700;
}

#companyTeamModal .company-team-icon-btn:hover:not(:disabled) {
  background: var(--control-hover) !important;
  color: var(--text-strong) !important;
  border-color: var(--line-strong) !important;
}

#companyTeamModal .company-team-icon-btn.is-danger { color: var(--danger) !important; }
#companyTeamModal .company-team-icon-btn:disabled { opacity: .45; cursor: default; }

#companyTeamModal .company-team-compact-form,
#companyTeamModal .company-team-billing-form,
#companyTeamModal .company-team-edit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

#companyTeamModal .company-team-form-wide { grid-column: 1 / -1; }

#companyTeamModal .form-label,
#companyTeamModal .help,
#companyTeamModal .company-team-activity-count,
#companyTeamModal .company-team-activity-page { color: var(--muted) !important; }

#companyTeamModal .input,
#companyTeamModal .admin-password-row,
#companyTeamModal .admin-check-grid,
#companyTeamModal .company-team-perm-grid,
#companyTeamModal .admin-check-item {
  background: var(--control-bg) !important;
  color: var(--text) !important;
  border-color: var(--line) !important;
}

#companyTeamModal .input {
  min-height: 36px;
  padding: 7px 9px;
  font-size: .78rem;
}

#companyTeamModal .input::placeholder { color: var(--muted) !important; opacity: .72; }

#companyTeamModal .company-team-perm-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  gap: 6px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 10px;
}

#companyTeamModal .admin-check-item {
  min-height: 32px;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 5px 7px;
  border: 1px solid var(--line);
  border-radius: 8px;
  font-size: .69rem;
}

#companyTeamModal .company-team-security-note,
#companyTeamModal .company-team-pending {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--muted) !important;
  font-size: .68rem;
}

#companyTeamModal .company-team-security-note i,
#companyTeamModal .company-team-pending i { color: var(--primary) !important; margin-top: 1px; }

#companyTeamModal .company-team-form-actions,
#companyTeamModal .company-team-perm-editor-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

#companyTeamModal .company-team-form-actions .lock-error { flex: 1 1 auto; margin: 0; }

#companyTeamModal .company-team-perm-editor {
  margin-top: 9px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 11px;
}

#companyTeamModal .company-team-access-row {
  display: grid;
  grid-template-columns: minmax(140px, .8fr) minmax(0, 1.6fr) auto;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
}

#companyTeamModal .company-team-access-row > div:first-child { display: flex; flex-direction: column; min-width: 0; }
#companyTeamModal .company-team-access-row strong { color: var(--text-strong) !important; font-size: .75rem; }
#companyTeamModal .company-team-access-row > div:first-child span { color: var(--muted) !important; font-size: .64rem; }
#companyTeamModal .company-team-access-flags { display: flex; gap: 4px; flex-wrap: wrap; }
#companyTeamModal .company-team-access-flags span { padding: 2px 5px; border-radius: 999px; font-size: .59rem; }

#companyTeamModal .company-team-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin-bottom: 9px;
}

#companyTeamModal .company-team-stat-grid > div {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
}

#companyTeamModal .company-team-stat-grid span { color: var(--muted) !important; font-size: .6rem; }
#companyTeamModal .company-team-stat-grid strong { color: var(--text-strong) !important; font-size: .8rem; }
#companyTeamModal .company-team-pending { margin-bottom: 9px; }
#companyTeamModal .company-team-pending div { display: flex; flex-direction: column; gap: 1px; }
#companyTeamModal .company-team-pending strong { color: var(--text-strong) !important; }

#companyTeamModal .company-team-quote {
  min-height: 36px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 2px 8px;
  padding: 7px 9px;
  border: 1px solid var(--line);
  border-radius: 10px;
}
#companyTeamModal .company-team-quote span,
#companyTeamModal .company-team-quote small { color: var(--muted) !important; font-size: .62rem; }
#companyTeamModal .company-team-quote strong { color: var(--text-strong) !important; font-size: .77rem; }
#companyTeamModal .company-team-quote small { grid-column: 1 / -1; }

#companyTeamModal .company-team-bank-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}
#companyTeamModal .company-team-bank-grid .signup-bank-card {
  margin: 0;
  background: var(--card-bg) !important;
  color: var(--text) !important;
  border-color: var(--line) !important;
}
#companyTeamModal .company-team-bank-grid .signup-bank-card.selected { border-color: var(--primary) !important; background: var(--surface-soft) !important; }
#companyTeamModal .company-team-bank-grid .signup-bank-card strong { color: var(--text-strong) !important; }
#companyTeamModal .company-team-bank-grid .signup-bank-card small { color: var(--muted) !important; }
#companyTeamModal .company-team-billing-form.is-pending { opacity: .58; pointer-events: none; }

#companyTeamModal .company-team-activity-list {
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: auto;
  max-height: min(54vh, 430px);
}
#companyTeamModal .cta-line { border-color: var(--line) !important; color: var(--text) !important; }
#companyTeamModal .cta-actor,
#companyTeamModal .cta-summary { color: var(--text) !important; }
#companyTeamModal .cta-mod { background: var(--surface-soft) !important; color: var(--muted) !important; }
#companyTeamModal .cta-time { color: var(--muted) !important; }

@media (max-width: 700px) {
  #companyTeamModal .company-team-dialog {
    width: calc(100vw - 14px);
    max-height: calc(100dvh - 14px);
    border-radius: 15px;
  }
  #companyTeamModal .company-team-shell {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr);
    height: calc(100dvh - 82px);
    max-height: calc(100dvh - 82px);
  }
  #companyTeamModal .company-team-nav {
    flex-direction: row;
    overflow-x: auto;
    border-right: 0 !important;
    border-bottom: 1px solid var(--line) !important;
    padding: 6px 7px;
  }
  #companyTeamModal .company-team-nav-btn {
    min-width: 58px;
    min-height: 42px;
    flex: 1 0 58px;
  }
  #companyTeamModal .company-team-body { padding: 10px; }
  #companyTeamModal .company-team-compact-form,
  #companyTeamModal .company-team-billing-form,
  #companyTeamModal .company-team-edit-grid,
  #companyTeamModal .company-team-bank-grid { grid-template-columns: 1fr; }
  #companyTeamModal .company-team-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #companyTeamModal .company-team-access-row { grid-template-columns: 1fr auto; }
  #companyTeamModal .company-team-access-flags { grid-column: 1 / -1; grid-row: 2; }
  #companyTeamModal .company-team-form-actions { align-items: stretch; flex-direction: column; }
  #companyTeamModal .company-team-form-actions .btn { width: 100%; }
  #companyTeamModal .company-team-member-actions .company-team-icon-btn span { display: none; }
  #companyTeamModal .company-team-member-actions .company-team-icon-btn { width: 32px; padding-inline: 0; }
}

/* 2026-09-22 — team billing support contact */
#companyTeamModal .company-team-billing-contact a{color:var(--primary)!important;font-weight:800;text-decoration:none;overflow-wrap:anywhere}
#companyTeamModal .company-team-billing-contact a:hover,#companyTeamModal .company-team-billing-contact a:focus-visible{text-decoration:underline;outline:none}

/* ===== SOURCE: Assets/style/54-insurance.css ===== */
/* Triplem VIP Insurance module. Uses the existing theme variables and modal primitives. */
.insurance-shell{display:grid;gap:12px}.insurance-head-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.insurance-view-tabs{display:flex;gap:6px;overflow:auto;scrollbar-width:none;padding:2px 0}.insurance-view-tabs::-webkit-scrollbar{display:none}.insurance-view-tab{white-space:nowrap}.insurance-view-tab.active{background:var(--accent);color:var(--accent-contrast,#fff);border-color:transparent}.insurance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.insurance-kpi{border:1px solid var(--border);background:var(--panel-2);border-radius:14px;padding:10px 12px;min-width:0}.insurance-kpi span{display:block;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.02em}.insurance-kpi strong{display:block;margin-top:4px;font-size:1rem;line-height:1.2;overflow-wrap:anywhere}.insurance-kpi.loss strong,.insurance-amount-loss{color:var(--danger,#c83d4c)}.insurance-toolbar{display:flex;gap:7px;align-items:end;flex-wrap:wrap}.insurance-toolbar .form-group{margin:0;min-width:120px;flex:1 1 140px}.insurance-toolbar .insurance-search{flex:2 1 220px}.insurance-list{display:grid;gap:8px}.insurance-row{border:1px solid var(--border);background:var(--panel);border-radius:14px;padding:11px 12px;display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(100px,.8fr)) auto;gap:10px;align-items:center;transition:.18s ease}.insurance-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.insurance-row-main{min-width:0}.insurance-row-main strong,.insurance-row-main small{display:block}.insurance-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insurance-row-main small,.insurance-cell small{color:var(--muted);font-size:.72rem}.insurance-cell{min-width:0}.insurance-cell b{display:block;font-size:.83rem;overflow-wrap:anywhere}.insurance-actions{display:flex;gap:5px;justify-content:flex-end}.insurance-empty{border:1px dashed var(--border);border-radius:14px;padding:24px 14px;text-align:center;color:var(--muted)}.insurance-empty i{font-size:1.35rem;display:block;margin-bottom:7px}.insurance-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.insurance-form-grid .wide{grid-column:1/-1}.insurance-form-grid label{font-size:.76rem;font-weight:700;color:var(--muted)}.insurance-form-grid label .input,.insurance-form-grid label .select{margin-top:5px;width:100%}.insurance-customer-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.insurance-customer-mode{border:1px solid var(--border);border-radius:11px;padding:8px;background:var(--panel-2);font-size:.76rem;font-weight:700;cursor:pointer}.insurance-customer-mode.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.insurance-calc{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.insurance-calc-item{padding:9px;border-radius:11px;background:var(--panel-2);border:1px solid var(--border)}.insurance-calc-item span{display:block;color:var(--muted);font-size:.7rem}.insurance-calc-item strong{display:block;margin-top:3px;font-size:.9rem}.insurance-warning{grid-column:1/-1;border-radius:10px;padding:8px 10px;font-size:.75rem;background:color-mix(in srgb,var(--warning,#d89b24) 12%,transparent);border:1px solid color-mix(in srgb,var(--warning,#d89b24) 35%,var(--border))}.insurance-warning.loss{background:color-mix(in srgb,var(--danger,#c83d4c) 10%,transparent);border-color:color-mix(in srgb,var(--danger,#c83d4c) 35%,var(--border))}.insurance-modal .modal-dialog{max-width:660px}.insurance-modal .modal-body{max-height:min(76vh,720px);overflow:auto;scrollbar-width:none}.insurance-modal .modal-body::-webkit-scrollbar{display:none}.insurance-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.insurance-detail{border:1px solid var(--border);background:var(--panel-2);border-radius:11px;padding:9px}.insurance-detail span{display:block;color:var(--muted);font-size:.7rem}.insurance-detail strong{display:block;margin-top:3px;font-size:.84rem;overflow-wrap:anywhere}.insurance-detail-wide{grid-column:1/-1}.insurance-document{background:#fff;color:#16191d;border-radius:12px;padding:26px;min-height:520px}.insurance-document-head{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #dce0e6;padding-bottom:16px}.insurance-document h2{margin:0;font-size:1.45rem}.insurance-document p{margin:3px 0;font-size:.78rem}.insurance-document .doc-muted{color:#68717d}.insurance-document-meta{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.insurance-document-table{width:100%;border-collapse:collapse;font-size:.8rem}.insurance-document-table th,.insurance-document-table td{padding:9px 7px;border-bottom:1px solid #e7e9ed;text-align:left}.insurance-document-table th:last-child,.insurance-document-table td:last-child{text-align:right}.insurance-document-total{margin-left:auto;width:min(320px,100%);padding-top:14px}.insurance-document-total div{display:flex;justify-content:space-between;gap:15px;padding:5px 0}.insurance-document-total .grand{border-top:1px solid #cbd0d8;margin-top:5px;padding-top:10px;font-size:1rem;font-weight:800}.insurance-pager{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:9px}.insurance-report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.insurance-temp-card{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--border);border-radius:13px;padding:10px 12px;background:var(--panel-2)}
@media(max-width:860px){.insurance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.insurance-row{grid-template-columns:minmax(0,1fr) auto}.insurance-row .insurance-cell{grid-column:1/-1;display:grid;grid-template-columns:110px 1fr;gap:8px;padding-top:3px;border-top:1px solid var(--border)}.insurance-actions{grid-column:2;grid-row:1;align-self:start}.insurance-report-summary{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:600px){.insurance-shell{gap:9px}.insurance-kpis{grid-template-columns:1fr 1fr;gap:6px}.insurance-kpi{padding:8px 9px;border-radius:11px}.insurance-kpi strong{font-size:.88rem}.insurance-toolbar{display:grid;grid-template-columns:1fr 1fr}.insurance-toolbar .form-group,.insurance-toolbar .insurance-search{min-width:0}.insurance-toolbar .insurance-search{grid-column:1/-1}.insurance-toolbar .insurance-toolbar-actions{grid-column:1/-1;display:flex;gap:6px}.insurance-form-grid{grid-template-columns:1fr}.insurance-form-grid .wide,.insurance-calc{grid-column:1}.insurance-customer-modes{grid-template-columns:1fr}.insurance-calc{grid-template-columns:1fr 1fr}.insurance-calc-item:last-child{grid-column:1/-1}.insurance-detail-grid{grid-template-columns:1fr}.insurance-detail-wide{grid-column:1}.insurance-report-summary{grid-template-columns:1fr}.insurance-modal .modal-dialog{width:min(96vw,660px);max-height:96dvh}.insurance-document{padding:16px}.insurance-document-head,.insurance-document-meta{display:block}.insurance-document-meta>div+div{margin-top:12px}.insurance-temp-card{align-items:flex-start;flex-direction:column}}
.insurance-report-record{border:1px solid var(--border);background:var(--panel);border-radius:14px;padding:10px 12px;display:grid;gap:9px}.insurance-report-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.insurance-report-record-head>div{min-width:0}.insurance-report-record-head strong,.insurance-report-record-head small{display:block}.insurance-report-record-head small{color:var(--muted);font-size:.71rem;margin-top:2px;overflow-wrap:anywhere}.insurance-report-money-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.insurance-report-money{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;padding:7px 8px;min-width:0}.insurance-report-money span{display:block;color:var(--muted);font-size:.66rem;line-height:1.2}.insurance-report-money strong{display:block;margin-top:3px;font-size:.78rem;overflow-wrap:anywhere}
@media(max-width:960px){.insurance-report-money-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.insurance-report-money-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insurance-report-record{padding:9px}.insurance-report-money{padding:7px}}

/* Admin Insurance access control: keep the long user form independently
   scrollable while actions remain stable and reachable on desktop/mobile. */
#adminCreateUserModal .admin-settings-sheet,
#adminEditUserModal .admin-settings-sheet{
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
#adminCreateUserModal .admin-user-access-scroll,
#adminEditUserModal .admin-user-access-scroll{
  flex:1 1 auto;
  min-height:0;
  max-height:none;
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-width:none;
}
#adminCreateUserModal .admin-user-access-scroll::-webkit-scrollbar,
#adminEditUserModal .admin-user-access-scroll::-webkit-scrollbar{width:0;height:0}
#adminCreateUserModal .admin-user-access-footer,
#adminEditUserModal .admin-user-access-footer{
  flex:0 0 auto;
  margin:0;
  padding:8px 10px 10px;
  border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);
  background:color-mix(in srgb,var(--panel) 94%,transparent);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
@media (max-width:560px){
  #adminCreateUserModal .admin-user-access-footer,
  #adminEditUserModal .admin-user-access-footer{padding:7px 8px calc(8px + env(safe-area-inset-bottom,0px))}
}


/* Insurance 172 — provider/policy separation and compact native overlays. */
.insurance-policy-note{display:flex;align-items:center;gap:6px;flex:1 1 320px;min-width:0;color:var(--muted);font-size:.72rem;line-height:1.25}
.insurance-policy-note i{color:var(--accent);font-size:.72rem;flex:0 0 auto}
.insurance-modal .insurance-entry-dialog{width:min(620px,calc(100vw - 20px));max-width:620px;max-height:min(760px,calc(100dvh - 24px));border-radius:16px;overflow:hidden}
.insurance-modal .insurance-entry-dialog .modal-head{padding:9px 12px 6px;gap:8px;align-items:center}
.insurance-modal .insurance-entry-dialog .modal-head h3{font-size:.94rem;line-height:1.15}
.insurance-modal .insurance-entry-dialog .modal-head p{margin:2px 0 0;font-size:.67rem;line-height:1.25;color:var(--muted)}
.insurance-modal .insurance-entry-dialog .modal-body{padding:7px 12px 8px;max-height:none;min-height:0;overflow:auto;scrollbar-width:none}
.insurance-modal .insurance-entry-dialog .modal-body::-webkit-scrollbar{display:none}
.insurance-modal .insurance-entry-dialog .modal-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;margin:0;padding:7px 12px 10px;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--panel) 96%,transparent)}
.insurance-modal .insurance-entry-dialog .modal-footer .btn{flex:0 0 auto;min-width:82px;min-height:30px;height:30px;padding:0 11px;border-radius:8px;font-size:.68rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}
.insurance-modal .insurance-form-grid{gap:7px 9px;align-items:start}
.insurance-modal .insurance-form-grid label{display:block;min-width:0;font-size:.68rem;line-height:1.2;font-weight:700;color:var(--muted)}
.insurance-modal .insurance-form-grid label .input,.insurance-modal .insurance-form-grid label .select{margin-top:3px;width:100%;min-height:31px;height:31px;padding:4px 8px;border-radius:8px;font-size:.74rem;line-height:1.1}
.insurance-modal .insurance-form-grid label textarea.input{height:auto;min-height:50px;max-height:82px;resize:vertical;padding-top:6px;padding-bottom:6px}
.insurance-modal .insurance-master-form{max-width:560px;margin:0 auto}
.insurance-modal .insurance-customer-modes{gap:5px}
.insurance-modal .insurance-customer-mode{min-height:30px;padding:4px 7px;border-radius:8px;font-size:.67rem;line-height:1.1}
.insurance-modal .insurance-sale-meta,.insurance-modal .insurance-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.insurance-modal .insurance-calc{gap:6px}
.insurance-modal .insurance-calc-item{padding:7px 8px;border-radius:9px;min-height:48px}
.insurance-modal .insurance-calc-item span{font-size:.62rem;line-height:1.15}
.insurance-modal .insurance-calc-item strong{margin-top:3px;font-size:.78rem;line-height:1.15}
.insurance-modal .insurance-warning{padding:6px 8px;border-radius:8px;font-size:.66rem;line-height:1.3}
.insurance-modal #insuranceExistingCustomerFields .help{font-size:.62rem;line-height:1.2;margin-top:3px}
.insurance-modal #insuranceExistingCustomerFields .select{margin-top:4px!important}
.insurance-modal .insurance-detail{padding:7px 8px;border-radius:9px}
.insurance-modal .insurance-detail span{font-size:.63rem}
.insurance-modal .insurance-detail strong{font-size:.76rem;line-height:1.25}
@media(max-width:600px){
  .insurance-policy-note{grid-column:1/-1;font-size:.66rem}
  .insurance-modal .insurance-entry-dialog{width:calc(100vw - 12px);max-width:none;max-height:calc(100dvh - 12px);border-radius:14px}
  .insurance-modal .insurance-entry-dialog .modal-head{padding:8px 9px 5px}
  .insurance-modal .insurance-entry-dialog .modal-body{padding:6px 9px 7px}
  .insurance-modal .insurance-entry-dialog .modal-footer{padding:6px 9px calc(7px + env(safe-area-inset-bottom,0px));gap:5px}
  .insurance-modal .insurance-entry-dialog .modal-footer .btn{min-width:76px;height:29px;min-height:29px;padding:0 9px;font-size:.65rem}
  .insurance-modal .insurance-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 7px}
  .insurance-modal .insurance-form-grid .wide{grid-column:1/-1}
  .insurance-modal .insurance-customer-modes{grid-template-columns:repeat(3,minmax(0,1fr))}
  .insurance-modal .insurance-sale-meta,.insurance-modal .insurance-price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .insurance-modal .insurance-calc{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .insurance-modal .insurance-calc-item:last-child{grid-column:auto}
  .insurance-modal .insurance-calc-item{padding:6px 5px;text-align:center}
  .insurance-modal .insurance-calc-item span{font-size:.56rem}
  .insurance-modal .insurance-calc-item strong{font-size:.7rem}
  .insurance-modal .insurance-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .insurance-modal .insurance-detail-wide{grid-column:1/-1}
}
@media(max-width:390px){
  .insurance-modal .insurance-sale-meta,.insurance-modal .insurance-price-grid{gap:4px}
  .insurance-modal .insurance-form-grid label{font-size:.64rem}
  .insurance-modal .insurance-form-grid label .input,.insurance-modal .insurance-form-grid label .select{font-size:.69rem;padding-inline:6px}
  .insurance-modal .insurance-customer-mode{font-size:.61rem;padding-inline:4px}
}

/* Insurance records refinement — compact filters, per-sale document menu and report views. */
.insurance-filter-toolbar{
  display:grid;
  grid-template-columns:minmax(180px,1.45fr) repeat(5,minmax(105px,.9fr)) auto;
  gap:6px;
  align-items:end;
  padding:7px;
  border:1px solid var(--border);
  border-radius:12px;
  background:color-mix(in srgb,var(--panel) 82%,transparent);
}
.insurance-report-filter-toolbar{
  grid-template-columns:minmax(175px,1.35fr) minmax(145px,1.05fr) repeat(5,minmax(102px,.82fr)) auto;
}
.insurance-filter-toolbar .insurance-filter-field{
  min-width:0;
  margin:0;
  flex:none;
}
.insurance-filter-toolbar .insurance-search{min-width:0;flex:none}
.insurance-filter-toolbar .form-label{
  display:block;
  margin:0 0 3px;
  font-size:.61rem;
  line-height:1;
  font-weight:750;
  color:var(--muted);
  letter-spacing:.01em;
}
.insurance-filter-toolbar .input,
.insurance-filter-toolbar .select{
  width:100%;
  min-width:0;
  height:30px;
  min-height:30px;
  padding:3px 7px;
  border-radius:8px;
  font-size:.69rem;
  line-height:1;
}
.insurance-filter-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  flex-wrap:nowrap;
  min-height:30px;
}
.insurance-filter-actions .btn{
  min-width:0;
  height:30px;
  min-height:30px;
  padding:0 8px;
  border-radius:8px;
  font-size:.64rem;
  line-height:1;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
}
.insurance-filter-actions .btn i{font-size:.64rem}

.insurance-sale-menu-wrap{position:relative;display:inline-flex;align-items:center}
.insurance-sale-menu{
  display:none;
  position:absolute;
  right:0;
  top:calc(100% + 5px);
  z-index:420;
  width:max-content;
  min-width:218px;
  max-width:min(260px,calc(100vw - 22px));
  padding:5px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--panel);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.insurance-sale-menu.is-open{display:grid;gap:2px}
.insurance-sale-menu button{
  width:100%;
  min-height:31px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--text);
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:7px;
  align-items:center;
  padding:6px 8px;
  text-align:left;
  font:inherit;
  font-size:.68rem;
  cursor:pointer;
}
.insurance-sale-menu button:hover,.insurance-sale-menu button:focus-visible{background:var(--panel-2);outline:none}
.insurance-sale-menu button i{width:18px;text-align:center;color:var(--accent);font-size:.72rem}
.insurance-sale-menu button span{white-space:nowrap}
.insurance-actions{overflow:visible;position:relative}

.insurance-report-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin:8px 1px 5px;
}
.insurance-report-heading strong,.insurance-report-heading span{display:block}
.insurance-report-heading strong{font-size:.76rem;line-height:1.15}
.insurance-report-heading span{margin-top:1px;color:var(--muted);font-size:.62rem;line-height:1.2}
.insurance-report-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(225px,1fr));
  gap:6px;
  margin-bottom:7px;
}
.insurance-report-total-card{
  min-width:0;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--panel-2);
  padding:7px 8px;
}
.insurance-report-total-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}
.insurance-report-total-head strong{font-size:.72rem}
.insurance-report-total-head span{color:var(--muted);font-size:.59rem;white-space:nowrap}
.insurance-report-total-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:4px}
.insurance-report-total-values>div{min-width:0;border-radius:7px;background:color-mix(in srgb,var(--panel) 68%,transparent);padding:5px 6px}
.insurance-report-total-values span,.insurance-report-total-values strong{display:block;min-width:0}
.insurance-report-total-values span{font-size:.56rem;line-height:1.15;color:var(--muted)}
.insurance-report-total-values strong{margin-top:2px;font-size:.69rem;line-height:1.15;overflow-wrap:anywhere}
.insurance-report-list{gap:6px}
.insurance-report-money-grid{gap:5px}
.insurance-report-money-grid-1{grid-template-columns:minmax(150px,260px)}
.insurance-report-money-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.insurance-report-money-grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}

@media(max-width:1180px){
  .insurance-filter-toolbar,.insurance-report-filter-toolbar{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .insurance-filter-toolbar .insurance-search{grid-column:span 2}
  .insurance-filter-toolbar .insurance-filter-actions{grid-column:span 2;justify-content:flex-end}
  .insurance-report-filter-toolbar .insurance-filter-actions{grid-column:1/-1;justify-content:center}
}
@media(max-width:700px){
  .insurance-filter-toolbar,.insurance-report-filter-toolbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px;
    padding:6px;
    border-radius:10px;
  }
  .insurance-filter-toolbar .insurance-search,
  .insurance-report-filter-toolbar .insurance-search,
  .insurance-report-filter-toolbar .insurance-report-view{grid-column:1/-1}
  .insurance-filter-toolbar .form-label{font-size:.58rem;margin-bottom:2px}
  .insurance-filter-toolbar .input,.insurance-filter-toolbar .select{height:29px;min-height:29px;padding:3px 6px;font-size:.66rem}
  .insurance-filter-toolbar .insurance-filter-actions,
  .insurance-report-filter-toolbar .insurance-filter-actions{grid-column:1/-1;justify-content:center;gap:4px}
  .insurance-filter-actions .btn{height:29px;min-height:29px;padding:0 8px;font-size:.61rem}
  .insurance-report-heading{margin-top:7px}
  .insurance-report-summary{grid-template-columns:1fr;gap:5px}
  .insurance-report-total-card{padding:6px 7px}
  .insurance-report-money-grid-1{grid-template-columns:1fr}
  .insurance-report-money-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .insurance-sale-menu{right:0;min-width:210px}
}
@media(max-width:420px){
  .insurance-filter-actions .btn span{display:none}
  .insurance-filter-actions .btn{width:30px;padding:0}
  .insurance-filter-actions .btn i{font-size:.7rem}
  .insurance-report-money-grid-3{grid-template-columns:1fr}
  .insurance-report-total-values{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Insurance UI refinement 2026-09-21 — compact controls, thin reports and complete theme parity. */
#insurancePanel .insurance-shell,
.insurance-modal{
  --insurance-surface:var(--surface-elevated,var(--panel,#fff));
  --insurance-soft:var(--surface-soft,var(--panel-2,var(--panel,#fff)));
  --insurance-line:var(--line,var(--border,rgba(148,163,184,.25)));
  --insurance-primary:var(--primary,var(--accent,#2457d6));
  color:var(--text,#17212b);
}
#insurancePanel .insurance-shell :is(.insurance-kpi,.insurance-row,.insurance-report-table,.insurance-temp-card),
.insurance-modal .modal-dialog{
  color:var(--text,#17212b);
  border-color:var(--insurance-line)!important;
}
#insurancePanel .insurance-kpi,
#insurancePanel .insurance-temp-card,
#insurancePanel .insurance-report-table,
.insurance-modal .modal-dialog{background:var(--insurance-surface)!important}
#insurancePanel .insurance-row,
#insurancePanel .insurance-customer-mode,
#insurancePanel .insurance-report-line-record,
#insurancePanel .insurance-report-line-total,
.insurance-modal :is(.insurance-detail,.insurance-calc-item,.insurance-customer-mode){background:var(--insurance-soft)!important;color:var(--text,#17212b)!important}
#insurancePanel :is(.input,.select),
.insurance-modal :is(.input,.select,input:not([type="hidden"]),select,textarea){
  background:var(--control-bg,var(--insurance-surface))!important;
  color:var(--text,#17212b)!important;
  -webkit-text-fill-color:var(--text,#17212b)!important;
  border-color:var(--insurance-line)!important;
}
#insurancePanel select option,.insurance-modal select option{background:var(--control-bg,var(--insurance-surface))!important;color:var(--text,#17212b)!important}
#insurancePanel :is(.form-label,.insurance-row-main small,.insurance-cell small,.help),
.insurance-modal :is(.form-label,label,.help,.modal-head p){color:var(--muted,#667085)!important}
#insurancePanel .btn.ghost,.insurance-modal .btn.ghost,#insurancePanel .icon-btn.ghost,.insurance-modal .icon-btn.ghost{
  background:var(--control-bg,var(--insurance-surface))!important;
  color:var(--text,#17212b)!important;
  border:1px solid var(--insurance-line)!important;
  box-shadow:none!important;
}
#insurancePanel .btn.danger,.insurance-modal .btn.danger{
  background:var(--danger-soft,color-mix(in srgb,var(--danger,#c83d4c) 10%,var(--insurance-surface)))!important;
  color:var(--danger,#c83d4c)!important;
  border:1px solid color-mix(in srgb,var(--danger,#c83d4c) 30%,var(--insurance-line))!important;
}
#insurancePanel .btn.primary,.insurance-modal .btn.primary{background:var(--insurance-primary)!important;color:var(--on-primary,var(--primary-contrast,#fff))!important;box-shadow:none!important}
#insurancePanel .btn:hover,.insurance-modal .btn:hover,#insurancePanel .icon-btn:hover,.insurance-modal .icon-btn:hover{transform:none;box-shadow:none}

/* Smaller, simpler Insurance actions everywhere. */
#insurancePanel .btn,.insurance-modal .btn{
  min-height:27px!important;height:27px!important;min-width:0!important;
  padding:0 8px!important;border-radius:7px!important;font-size:.62rem!important;line-height:1!important;
  display:inline-flex;align-items:center;justify-content:center;gap:4px;font-weight:750;
}
#insurancePanel .btn i,.insurance-modal .btn i{font-size:.6rem}
#insurancePanel .icon-btn,.insurance-modal .icon-btn{
  width:27px!important;height:27px!important;min-width:27px!important;min-height:27px!important;
  border-radius:7px!important;font-size:.7rem!important;box-shadow:none!important;
}
#insurancePanel .insurance-head-actions,#insurancePanel .insurance-toolbar-actions,#insurancePanel .insurance-actions,.insurance-modal .modal-footer{gap:4px!important}
#insurancePanel .insurance-view-tabs{gap:4px;padding:1px 0}
#insurancePanel .insurance-view-tab{height:27px!important;padding:0 8px!important;border-radius:7px!important;font-size:.61rem!important}
#insurancePanel .insurance-view-tab.active{background:var(--insurance-primary)!important;color:var(--on-primary,var(--primary-contrast,#fff))!important}
#insurancePanel .insurance-pager{gap:5px;margin-top:6px}
#insurancePanel .insurance-pager .help{font-size:.58rem}
.insurance-modal .insurance-entry-dialog .modal-footer{padding:6px 10px 8px!important;background:var(--insurance-surface)!important}
.insurance-modal .insurance-entry-dialog .modal-footer .btn{min-width:68px!important;height:27px!important;min-height:27px!important;padding:0 8px!important;font-size:.61rem!important}

/* Compact filters and dropdowns. */
.insurance-filter-toolbar,.insurance-report-filter-toolbar{
  gap:4px!important;padding:5px!important;border-radius:9px!important;
  background:var(--insurance-soft)!important;border-color:var(--insurance-line)!important;
}
.insurance-filter-toolbar .form-label{font-size:.56rem!important;margin-bottom:2px!important}
.insurance-filter-toolbar .input,.insurance-filter-toolbar .select{
  height:27px!important;min-height:27px!important;padding:2px 6px!important;border-radius:7px!important;font-size:.63rem!important;
}
.insurance-filter-actions{min-height:27px!important;gap:3px!important}
.insurance-filter-actions .btn{height:27px!important;min-height:27px!important;padding:0 7px!important;font-size:.59rem!important}
.insurance-sale-menu{
  min-width:188px!important;max-width:min(220px,calc(100vw - 18px))!important;padding:4px!important;border-radius:9px!important;
  background:var(--insurance-surface)!important;color:var(--text,#17212b)!important;border-color:var(--insurance-line)!important;
  box-shadow:0 10px 24px color-mix(in srgb,#000 16%,transparent)!important;
}
.insurance-sale-menu button{
  min-height:27px!important;padding:4px 6px!important;border-radius:6px!important;font-size:.61rem!important;
  grid-template-columns:15px minmax(0,1fr)!important;gap:5px!important;color:var(--text,#17212b)!important;
}
.insurance-sale-menu button:hover,.insurance-sale-menu button:focus-visible{background:var(--insurance-soft)!important}
.insurance-sale-menu button i{width:15px!important;font-size:.62rem!important;color:var(--insurance-primary)!important}

/* Thin desktop financial report list. */
.insurance-report-heading{margin:6px 1px 4px!important}
.insurance-report-heading strong{font-size:.7rem!important}
.insurance-report-heading span{font-size:.57rem!important;color:var(--muted,#667085)!important}
.insurance-report-table{border:1px solid var(--insurance-line);border-radius:10px;padding:0;min-width:0}
.insurance-report-list{display:grid;gap:0!important}
.insurance-report-line{
  display:grid;align-items:center;gap:5px;min-width:0;padding:5px 7px;border-bottom:1px solid var(--insurance-line);
  color:var(--text,#17212b);
}
.insurance-report-cols-1{grid-template-columns:minmax(260px,2fr) minmax(105px,.72fr) 60px}
.insurance-report-cols-3{grid-template-columns:minmax(260px,1.9fr) repeat(3,minmax(100px,.72fr)) 60px}
.insurance-report-cols-6{grid-template-columns:minmax(250px,1.7fr) repeat(6,minmax(88px,.7fr)) 60px}
.insurance-report-line-head{padding-top:5px;padding-bottom:5px;background:var(--insurance-soft)!important;color:var(--muted,#667085);font-size:.53rem;font-weight:850;text-transform:uppercase;letter-spacing:.025em;border-radius:9px 9px 0 0}
.insurance-report-line-record{min-height:38px;background:var(--insurance-surface)!important}
.insurance-report-line-record:hover{background:color-mix(in srgb,var(--insurance-primary) 4%,var(--insurance-surface))!important}
.insurance-report-item{min-width:0;display:grid;gap:1px}
.insurance-report-item strong{font-size:.64rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-report-item span{font-size:.53rem;line-height:1.15;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-report-line-value{min-width:0;text-align:right;font-size:.62rem;font-weight:780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-report-line-value span{font-size:inherit}
.insurance-report-line-actions{display:flex;align-items:center;justify-content:flex-end;gap:3px;min-width:0}
.insurance-report-line-action-head{text-align:right}
.insurance-report-totals{display:grid;gap:0}
.insurance-report-line-total{min-height:36px;background:color-mix(in srgb,var(--insurance-primary) 6%,var(--insurance-soft))!important;font-weight:850;border-bottom:0}
.insurance-report-line-total+.insurance-report-line-total{border-top:1px solid var(--insurance-line)}
.insurance-report-line-total .insurance-report-item strong{color:var(--insurance-primary)}
.insurance-report-total-empty{padding:7px;text-align:center;color:var(--muted,#667085);font-size:.59rem}
/* Retire the old card-style report treatment without disturbing old markup fallbacks. */
.insurance-report-summary,.insurance-report-record,.insurance-report-money-grid{display:none!important}

/* Customer document preview: aligned issuer and customer boxes in one row. */
.insurance-document{background:#fff!important;color:#16191d!important;padding:20px!important;min-height:480px}
.insurance-document-head{align-items:flex-end;padding-bottom:10px!important;border-color:#dce0e6!important}
.insurance-document-head h2{font-size:1.25rem!important}
.insurance-document-date{display:grid;gap:2px;text-align:right}
.insurance-document-date span,.insurance-document-party>span,.insurance-document-context span{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#68717d}
.insurance-document-date strong{font-size:.74rem}
.insurance-document-party-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 8px}
.insurance-document-party{border:1px solid #dce0e6;border-radius:9px;padding:9px 10px;min-height:96px;background:#f9fafb}
.insurance-document-party strong{display:block;margin:3px 0 4px;font-size:.8rem}
.insurance-document-party p{margin:2px 0!important;font-size:.65rem!important;line-height:1.25;color:#4b5563}
.insurance-document-context{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px}
.insurance-document-context>div{border-bottom:1px solid #e7e9ed;padding:6px 2px}
.insurance-document-context strong{display:block;margin-top:2px;font-size:.7rem}
.insurance-document-table{font-size:.72rem!important}
.insurance-document-table th,.insurance-document-table td{padding:7px 5px!important}
.insurance-document-total{padding-top:10px!important}
.insurance-document-total div{padding:4px 0!important;font-size:.72rem}
.insurance-document-total .grand{font-size:.86rem!important;padding-top:8px!important}
.insurance-document-note{margin-top:14px!important}

@media(max-width:1180px){
  .insurance-report-cols-6{grid-template-columns:minmax(220px,1.6fr) repeat(6,minmax(78px,.7fr)) 56px}
  .insurance-report-line{gap:4px;padding-inline:6px}
  .insurance-report-line-value{font-size:.58rem}
}
@media(max-width:700px){
  #insurancePanel .btn,.insurance-modal .btn{height:26px!important;min-height:26px!important;font-size:.59rem!important;padding-inline:7px!important}
  #insurancePanel .icon-btn,.insurance-modal .icon-btn{width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important}
  .insurance-filter-toolbar,.insurance-report-filter-toolbar{gap:4px!important;padding:5px!important}
  .insurance-filter-toolbar .input,.insurance-filter-toolbar .select{height:26px!important;min-height:26px!important;font-size:.61rem!important}
  .insurance-report-line-head{display:none}
  .insurance-report-line-record,.insurance-report-line-total{grid-template-columns:repeat(2,minmax(0,1fr))!important;position:relative;padding:7px 8px;gap:5px 7px;min-height:0}
  .insurance-report-line-record+.insurance-report-line-record{border-top:0}
  .insurance-report-item{grid-column:1/-1;padding-right:58px}
  .insurance-report-line-value{text-align:left;display:grid;gap:1px;white-space:normal}
  .insurance-report-line-value::before{content:attr(data-label);font-size:.5rem;color:var(--muted,#667085);font-weight:700}
  .insurance-report-line-actions{position:absolute;right:7px;top:7px}
  .insurance-report-line-total>div:last-child{display:none}
  .insurance-document-party-row,.insurance-document-context{grid-template-columns:1fr}
  .insurance-document-party{min-height:0}
}
@media(max-width:420px){
  .insurance-sale-menu{min-width:178px!important}
  .insurance-report-line-record,.insurance-report-line-total{grid-template-columns:1fr!important}
  .insurance-report-item{padding-right:56px}
}

/* Final density pass: keep Insurance visually advanced but deliberately quiet. */
#insurancePanel .insurance-shell{gap:8px!important}
#insurancePanel .insurance-kpis{gap:5px!important}
#insurancePanel .insurance-kpi{padding:7px 8px!important;border-radius:10px!important}
#insurancePanel .insurance-kpi span{font-size:.59rem!important;letter-spacing:.01em!important}
#insurancePanel .insurance-kpi strong{margin-top:2px!important;font-size:.78rem!important;color:var(--text,#17212b)}
#insurancePanel .insurance-list{gap:5px}
#insurancePanel .insurance-row{padding:7px 8px!important;border-radius:10px!important;gap:7px!important;transform:none!important}
#insurancePanel .insurance-row-main strong{font-size:.72rem!important;color:var(--text,#17212b)}
#insurancePanel .insurance-row-main small,#insurancePanel .insurance-cell small{font-size:.58rem!important}
#insurancePanel .insurance-cell b{font-size:.67rem!important;color:var(--text,#17212b)}
#insurancePanel .insurance-empty{padding:16px 10px!important;border-radius:10px!important;font-size:.65rem}
#insurancePanel .insurance-empty i{font-size:1rem!important;margin-bottom:5px!important}
#insurancePanel .insurance-temp-card{padding:7px 8px!important;border-radius:9px!important}
#insurancePanel .insurance-temp-card strong{font-size:.69rem}
#insurancePanel .insurance-temp-card .help{font-size:.57rem}
#insurancePanel .insurance-customer-mode.active,.insurance-modal .insurance-customer-mode.active{
  background:color-mix(in srgb,var(--insurance-primary) 9%,var(--insurance-surface))!important;
  color:var(--insurance-primary)!important;border-color:color-mix(in srgb,var(--insurance-primary) 60%,var(--insurance-line))!important;
}
.insurance-modal .insurance-entry-dialog{width:min(590px,calc(100vw - 20px))!important;max-width:590px!important;border-radius:13px!important}
.insurance-modal .insurance-entry-dialog .modal-head{padding:8px 10px 5px!important}
.insurance-modal .insurance-entry-dialog .modal-head h3{font-size:.86rem!important}
.insurance-modal .insurance-entry-dialog .modal-head p{font-size:.6rem!important}
.insurance-modal .insurance-entry-dialog .modal-body{padding:6px 10px 7px!important}
.insurance-modal .insurance-form-grid{gap:5px 7px!important}
.insurance-modal .insurance-form-grid label{font-size:.61rem!important}
.insurance-modal .insurance-form-grid label .input,.insurance-modal .insurance-form-grid label .select{
  height:28px!important;min-height:28px!important;margin-top:2px!important;padding:3px 7px!important;border-radius:7px!important;font-size:.67rem!important;
}
.insurance-modal .insurance-form-grid label textarea.input{height:auto!important;min-height:44px!important;max-height:72px!important}
.insurance-modal .insurance-customer-mode{height:27px!important;min-height:27px!important;padding:3px 6px!important;border-radius:7px!important;font-size:.6rem!important;color:var(--text,#17212b)}
.insurance-modal .insurance-calc-item{padding:6px 7px!important;min-height:42px!important;border-radius:8px!important}
.insurance-modal .insurance-calc-item span{font-size:.55rem!important}
.insurance-modal .insurance-calc-item strong{font-size:.69rem!important}
.insurance-modal .insurance-detail{padding:6px 7px!important;border-radius:8px!important}
.insurance-modal .insurance-detail span{font-size:.56rem!important}
.insurance-modal .insurance-detail strong{font-size:.68rem!important}
@media(max-width:700px){
  #insurancePanel .insurance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #insurancePanel .insurance-row{grid-template-columns:minmax(0,1fr) auto!important;gap:5px!important}
  #insurancePanel .insurance-row .insurance-cell{display:none}
  #insurancePanel .insurance-row-main small{white-space:normal;line-height:1.25}
  .insurance-modal .insurance-entry-dialog{width:calc(100vw - 10px)!important;max-width:none!important;border-radius:11px!important}
}

/* Insurance 173 — floating row menus, compact document actions and customer duplicate guard. */
#insurancePanel .insurance-clickable-row{cursor:pointer}
#insurancePanel .insurance-clickable-row:focus-visible{outline:2px solid color-mix(in srgb,var(--insurance-primary,var(--accent)) 55%,transparent);outline-offset:1px}
#insurancePanel .insurance-row-menu-btn{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;border-radius:6px!important;font-size:.62rem!important}

.insurance-floating-menu{
  position:fixed;z-index:2147483647!important;display:grid;gap:2px;
  min-width:164px;max-width:min(220px,calc(100vw - 16px));padding:4px;
  border:1px solid var(--insurance-line,var(--border));border-radius:9px;
  background:var(--insurance-surface,var(--panel));color:var(--text,#17212b);
  box-shadow:0 12px 30px color-mix(in srgb,#000 18%,transparent);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
}
.insurance-floating-menu button{
  width:100%;min-height:25px;border:0;border-radius:6px;background:transparent;color:inherit;
  display:grid;grid-template-columns:14px minmax(0,1fr);gap:5px;align-items:center;
  padding:4px 6px;text-align:left;font:inherit;font-size:.59rem;font-weight:700;cursor:pointer
}
.insurance-floating-menu button:hover,.insurance-floating-menu button:focus-visible{background:var(--insurance-soft,var(--panel-2));outline:none}
.insurance-floating-menu button i{width:14px;text-align:center;font-size:.6rem;color:var(--insurance-primary,var(--accent))}
.insurance-floating-menu button.danger,.insurance-floating-menu button.danger i{color:var(--danger,#c83d4c)}
.insurance-floating-menu button span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.insurance-modal .insurance-document-dialog{
  width:min(760px,calc(100vw - 20px))!important;max-width:760px!important;
  max-height:calc(100dvh - 20px);overflow:hidden;border-radius:13px!important
}
.insurance-modal .insurance-document-dialog .modal-head{padding:8px 10px 5px!important}
.insurance-modal .insurance-document-dialog .modal-head h3{font-size:.84rem!important}
.insurance-modal .insurance-document-dialog .modal-head p{font-size:.58rem!important;margin-top:1px!important}
.insurance-modal .insurance-document-dialog .modal-body{padding:6px 10px!important;overflow:auto;min-height:0;scrollbar-width:none}
.insurance-modal .insurance-document-dialog .modal-body::-webkit-scrollbar{display:none}
.insurance-modal .insurance-document-dialog .modal-footer{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;
  padding:6px 10px 8px!important;margin:0!important;border-top:1px solid var(--insurance-line,var(--border))!important;
  background:var(--insurance-surface,var(--panel))!important
}
.insurance-modal .insurance-document-dialog .modal-footer .btn{
  width:auto!important;min-width:54px!important;height:25px!important;min-height:25px!important;
  padding:0 7px!important;border-radius:6px!important;font-size:.58rem!important;line-height:1!important
}

#insuranceDuplicateCustomerModal .insurance-entry-dialog{width:min(390px,calc(100vw - 18px))!important;max-width:390px!important}
#insuranceDuplicateCustomerModal .modal-body{padding:6px 10px!important}
#insuranceDuplicateCustomerModal .insurance-duplicate-box{display:grid;gap:7px;padding:1px 0}
#insuranceDuplicateCustomerModal .insurance-duplicate-box p{margin:0;color:var(--text,#17212b);font-size:.64rem;line-height:1.3}
#insuranceDuplicateCustomerModal .insurance-duplicate-box .form-label{font-size:.58rem;margin:0}
#insuranceDuplicateCustomerModal .insurance-duplicate-box .select{height:27px!important;min-height:27px!important;margin-top:3px!important;font-size:.62rem!important}
#insuranceDuplicateCustomerModal .modal-footer .btn{min-width:62px!important;height:25px!important;min-height:25px!important;font-size:.57rem!important;padding:0 7px!important}

.insurance-modal input[readonly][name="customer_id"]{opacity:.82;cursor:default}

@media(max-width:600px){
  .insurance-floating-menu{min-width:154px;max-width:calc(100vw - 12px);padding:3px}
  .insurance-floating-menu button{min-height:24px;font-size:.57rem;padding:4px 5px}
  .insurance-modal .insurance-document-dialog{width:calc(100vw - 8px)!important;max-height:calc(100dvh - 8px);border-radius:10px!important}
  .insurance-modal .insurance-document-dialog .modal-footer{padding-bottom:calc(7px + env(safe-area-inset-bottom,0px))!important}
}

/* Insurance 174 — My Commission receivables and settlement ledger. */
.insurance-commission-filter-toolbar{grid-template-columns:minmax(190px,1.45fr) repeat(4,minmax(108px,.85fr)) auto}
.insurance-commission-heading{margin:6px 1px 4px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.insurance-commission-heading strong{display:block;font-size:.7rem;color:var(--text,#17212b)}
.insurance-commission-heading span{display:block;margin-top:1px;font-size:.56rem;color:var(--muted,#667085)}
.insurance-commission-table{border:1px solid var(--insurance-line,var(--border));border-radius:10px;overflow:hidden;background:var(--insurance-surface,var(--panel))}
.insurance-commission-list{display:grid;gap:0}
.insurance-commission-line{display:grid;grid-template-columns:minmax(210px,1.65fr) repeat(6,minmax(78px,.66fr)) minmax(105px,.78fr) 34px;gap:5px;align-items:center;min-width:0;padding:5px 7px;border-bottom:1px solid var(--insurance-line,var(--border));color:var(--text,#17212b)}
.insurance-commission-head{min-height:28px;background:var(--insurance-soft,var(--panel-2));color:var(--muted,#667085);font-size:.51rem;font-weight:850;text-transform:uppercase;letter-spacing:.02em}
.insurance-commission-head>div:not(:first-child){text-align:right}.insurance-commission-head>div:nth-last-child(2){text-align:left}
.insurance-commission-record{min-height:38px;background:var(--insurance-surface,var(--panel));cursor:pointer}
.insurance-commission-record:hover{background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-surface,var(--panel)))}
.insurance-commission-item{min-width:0;display:grid;gap:1px}.insurance-commission-item strong{font-size:.64rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-commission-item span{font-size:.52rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-commission-value{min-width:0;text-align:right;font-size:.61rem;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-amount-outstanding{color:var(--warning,#b7791f)}
.insurance-commission-status-cell{min-width:0;display:grid;justify-items:start;gap:2px}.insurance-commission-status-cell small{font-size:.48rem;color:var(--muted,#667085);white-space:nowrap}
.insurance-commission-status{display:inline-flex;align-items:center;min-height:19px;padding:2px 6px;border-radius:999px;border:1px solid var(--insurance-line,var(--border));font-size:.5rem;font-weight:800;line-height:1;white-space:nowrap;background:var(--insurance-soft,var(--panel-2));color:var(--text,#17212b)}
.insurance-commission-status.outstanding{color:var(--warning,#b7791f);border-color:color-mix(in srgb,var(--warning,#b7791f) 32%,var(--insurance-line));background:color-mix(in srgb,var(--warning,#b7791f) 8%,var(--insurance-surface))}
.insurance-commission-status.partial{color:var(--insurance-primary,var(--accent));border-color:color-mix(in srgb,var(--insurance-primary,var(--accent)) 32%,var(--insurance-line));background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 8%,var(--insurance-surface))}
.insurance-commission-status.received{color:var(--success,#20845c);border-color:color-mix(in srgb,var(--success,#20845c) 32%,var(--insurance-line));background:color-mix(in srgb,var(--success,#20845c) 8%,var(--insurance-surface))}
.insurance-commission-status.none{color:var(--muted,#667085)}.insurance-commission-status.none.loss{color:var(--danger,#c83d4c)}
.insurance-commission-totals{display:grid;gap:0;background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-soft,var(--panel-2)))}
.insurance-commission-total-line{display:grid;grid-template-columns:56px 75px repeat(3,minmax(145px,1fr));gap:8px;align-items:center;padding:6px 8px;border-top:1px solid var(--insurance-line,var(--border));font-size:.56rem;color:var(--muted,#667085)}
.insurance-commission-total-line strong{font-size:.62rem;color:var(--insurance-primary,var(--accent))}.insurance-commission-total-line span{white-space:nowrap}.insurance-commission-total-line b{color:var(--text,#17212b);font-size:.61rem;margin-left:3px}
.insurance-commission-total-empty{padding:7px;text-align:center;color:var(--muted,#667085);font-size:.58rem}

.insurance-commission-receive-form .insurance-commission-selection-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted,#667085);font-size:.6rem;font-weight:800}
.insurance-commission-candidate-list{display:grid;gap:3px;max-height:210px;overflow:auto;scrollbar-width:none;border:1px solid var(--insurance-line,var(--border));border-radius:8px;padding:4px;background:var(--insurance-soft,var(--panel-2))}
.insurance-commission-candidate-list::-webkit-scrollbar{display:none}
.insurance-commission-candidate{display:grid!important;grid-template-columns:18px minmax(0,1fr) auto;gap:6px;align-items:center;min-height:35px;padding:4px 6px;border:1px solid transparent;border-radius:7px;background:var(--insurance-surface,var(--panel));cursor:pointer;color:var(--text,#17212b)!important}
.insurance-commission-candidate:hover{border-color:color-mix(in srgb,var(--insurance-primary,var(--accent)) 28%,var(--insurance-line))}.insurance-commission-candidate input{width:14px;height:14px;margin:0;accent-color:var(--insurance-primary,var(--accent))}
.insurance-commission-candidate span{min-width:0;display:grid;gap:1px}.insurance-commission-candidate strong{font-size:.61rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-commission-candidate small{font-size:.51rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-commission-candidate>b{font-size:.59rem;white-space:nowrap}
.insurance-commission-selected-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:25px;padding:4px 7px;border-radius:7px;background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 6%,var(--insurance-surface));border:1px solid color-mix(in srgb,var(--insurance-primary,var(--accent)) 18%,var(--insurance-line));font-size:.56rem;color:var(--muted,#667085)}.insurance-commission-selected-summary strong{font-size:.62rem;color:var(--text,#17212b)}
.insurance-commission-allocation-note{padding:6px 7px;border-radius:7px;border:1px solid var(--insurance-line,var(--border));background:var(--insurance-soft,var(--panel-2));color:var(--muted,#667085);font-size:.54rem;line-height:1.3}
.insurance-commission-payment-history{margin-top:7px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;overflow:hidden;background:var(--insurance-surface,var(--panel))}.insurance-commission-payment-title{padding:5px 7px;background:var(--insurance-soft,var(--panel-2));font-size:.56rem;font-weight:850;color:var(--muted,#667085)}
.insurance-commission-payment-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 7px;border-top:1px solid var(--insurance-line,var(--border))}.insurance-commission-payment-row:first-of-type{border-top:0}.insurance-commission-payment-row>div{min-width:0;display:grid;gap:1px}.insurance-commission-payment-row strong{font-size:.61rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-commission-payment-row span{font-size:.51rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-commission-payment-row>b{font-size:.61rem;white-space:nowrap}.insurance-commission-payment-empty{padding:9px;text-align:center;color:var(--muted,#667085);font-size:.57rem}
.insurance-commission-receipt-list{display:grid;gap:4px}.insurance-commission-receipt-row{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;gap:8px;align-items:center;padding:6px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));cursor:pointer}.insurance-commission-receipt-row>div:first-child{min-width:0;display:grid;gap:1px}.insurance-commission-receipt-row strong{font-size:.62rem}.insurance-commission-receipt-row span{font-size:.51rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-commission-receipt-row>b{font-size:.62rem;white-space:nowrap}

@media(max-width:1180px){.insurance-commission-line{grid-template-columns:minmax(190px,1.5fr) repeat(6,minmax(70px,.62fr)) minmax(96px,.72fr) 32px}.insurance-commission-value{font-size:.57rem}}
@media(max-width:900px){.insurance-commission-filter-toolbar{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(105px,.8fr))}.insurance-commission-filter-toolbar .insurance-search{grid-column:span 1}.insurance-commission-filter-toolbar .insurance-commission-actions{grid-column:1/-1}.insurance-commission-head{display:none}.insurance-commission-line{grid-template-columns:repeat(3,minmax(0,1fr)) 30px!important;position:relative;padding:7px 8px;gap:5px 7px}.insurance-commission-item{grid-column:1/-1;padding-right:36px}.insurance-commission-value{text-align:left;display:grid;gap:1px;white-space:normal}.insurance-commission-value::before{content:attr(data-label);font-size:.48rem;color:var(--muted,#667085);font-weight:700}.insurance-commission-status-cell{grid-column:1/3}.insurance-commission-record .insurance-report-line-actions{position:absolute;right:7px;top:7px}.insurance-commission-total-line{grid-template-columns:1fr 1fr;gap:4px 8px}.insurance-commission-total-line strong,.insurance-commission-total-line>span:nth-child(2){grid-column:auto}.insurance-commission-total-line>span:nth-child(n+3){grid-column:span 1}}
@media(max-width:600px){.insurance-commission-filter-toolbar{grid-template-columns:1fr 1fr!important}.insurance-commission-filter-toolbar .insurance-search,.insurance-commission-filter-toolbar .insurance-commission-actions{grid-column:1/-1!important}.insurance-commission-filter-toolbar .insurance-commission-actions{justify-content:flex-start;flex-wrap:wrap}.insurance-commission-line{grid-template-columns:1fr 1fr 28px!important}.insurance-commission-item{grid-column:1/-1}.insurance-commission-status-cell{grid-column:1/3}.insurance-commission-total-line{grid-template-columns:1fr}.insurance-commission-total-line>*{grid-column:1!important}.insurance-commission-candidate{grid-template-columns:16px minmax(0,1fr)}.insurance-commission-candidate>b{grid-column:2}.insurance-commission-receipt-row{grid-template-columns:minmax(0,1fr) 28px}.insurance-commission-receipt-row>b{grid-column:1}.insurance-commission-receipt-row>div:last-child{grid-column:2;grid-row:1}}

/* Insurance 175 — policy cancellation, commission deductions and mobile alignment. */
.insurance-sale-cancelled{opacity:.96}
.insurance-cancelled-badge{display:inline-flex;align-items:center;gap:4px;margin-left:5px;padding:2px 5px;border:1px solid color-mix(in srgb,var(--danger,#c83d4c) 35%,var(--insurance-line,var(--border)));border-radius:999px;background:color-mix(in srgb,var(--danger,#c83d4c) 9%,var(--insurance-surface,var(--panel)));color:var(--danger,#c83d4c);font-size:.51rem;font-weight:800;line-height:1.1;vertical-align:middle}
.insurance-cancellation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;grid-column:1/-1;padding:6px;border:1px solid color-mix(in srgb,var(--danger,#c83d4c) 22%,var(--insurance-line,var(--border)));border-radius:9px;background:color-mix(in srgb,var(--danger,#c83d4c) 5%,var(--insurance-surface-soft,var(--panel-2)))}
.insurance-cancellation-summary>div{min-width:0}.insurance-cancellation-summary span{display:block;color:var(--muted);font-size:.57rem}.insurance-cancellation-summary strong{display:block;margin-top:2px;font-size:.7rem;overflow-wrap:anywhere}
.insurance-check-line{display:flex!important;align-items:flex-start;gap:6px;padding:6px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-surface-soft,var(--panel-2));color:var(--text,#17212b)!important;font-size:.63rem!important;line-height:1.3!important;font-weight:650!important}.insurance-check-line input{width:14px;height:14px;flex:0 0 auto;margin:1px 0 0;accent-color:var(--insurance-primary,var(--accent))}
.insurance-amount-deduction{color:var(--warning,#b7791f)!important}.insurance-commission-status.settled{color:var(--warning,#b7791f);background:color-mix(in srgb,var(--warning,#b7791f) 10%,var(--insurance-surface,var(--panel)));border-color:color-mix(in srgb,var(--warning,#b7791f) 34%,var(--insurance-line,var(--border)))}
.insurance-document-cancellation{margin:0 0 9px;padding:6px 8px;border:1px solid #e2b9bd;border-radius:7px;background:#fff7f7;color:#792b34;font-size:.64rem;line-height:1.35}.insurance-document-cancellation strong{font-size:.67rem}
.insurance-document-context{grid-template-columns:repeat(3,minmax(0,1fr))}
.insurance-commission-line{grid-template-columns:minmax(210px,1.65fr) repeat(7,minmax(76px,.64fr)) minmax(105px,.78fr) 34px}
.insurance-commission-total-line{grid-template-columns:56px 75px repeat(4,minmax(128px,1fr))}
@media(max-width:1180px){.insurance-commission-line{grid-template-columns:minmax(185px,1.45fr) repeat(7,minmax(66px,.6fr)) minmax(94px,.7fr) 32px}}
@media(max-width:900px){.insurance-commission-line{grid-template-columns:repeat(3,minmax(0,1fr)) 30px!important}.insurance-commission-total-line{grid-template-columns:1fr 1fr}.insurance-commission-total-line>span:nth-child(n+3){grid-column:span 1}}
@media(max-width:700px){
  .insurance-filter-toolbar,.insurance-report-filter-toolbar,.insurance-commission-filter-toolbar{align-items:end!important}
  .insurance-filter-toolbar .insurance-filter-field,.insurance-report-filter-toolbar .insurance-filter-field,.insurance-commission-filter-toolbar .insurance-filter-field{min-width:0!important;width:100%}
  .insurance-filter-toolbar input[type="date"],.insurance-filter-toolbar input[type="time"],.insurance-report-filter-toolbar input[type="date"],.insurance-report-filter-toolbar input[type="time"],.insurance-commission-filter-toolbar input[type="date"],.insurance-commission-filter-toolbar input[type="time"]{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
  .insurance-filter-toolbar .insurance-filter-actions,.insurance-report-filter-toolbar .insurance-filter-actions,.insurance-commission-filter-toolbar .insurance-commission-actions{width:100%;justify-content:center!important;align-items:center!important}
  .insurance-cancellation-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:5px}
  .insurance-document-context{grid-template-columns:1fr}
}
@media(max-width:480px){
  .insurance-filter-toolbar,.insurance-report-filter-toolbar,.insurance-commission-filter-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;padding:5px!important}
  .insurance-filter-toolbar .insurance-search,.insurance-report-filter-toolbar .insurance-search,.insurance-report-filter-toolbar .insurance-report-view,.insurance-commission-filter-toolbar .insurance-search,.insurance-commission-filter-toolbar .insurance-commission-actions{grid-column:1/-1!important}
  .insurance-filter-toolbar .form-label,.insurance-report-filter-toolbar .form-label,.insurance-commission-filter-toolbar .form-label{font-size:.55rem!important;line-height:1.05!important;margin-bottom:2px!important}
  .insurance-filter-toolbar .input,.insurance-filter-toolbar .select,.insurance-report-filter-toolbar .input,.insurance-report-filter-toolbar .select,.insurance-commission-filter-toolbar .input,.insurance-commission-filter-toolbar .select{height:27px!important;min-height:27px!important;padding:2px 5px!important;font-size:.61rem!important}
  .insurance-filter-toolbar .insurance-filter-actions,.insurance-report-filter-toolbar .insurance-filter-actions{grid-column:1/-1!important}
  .insurance-cancellation-summary{grid-template-columns:1fr 1fr}.insurance-cancellation-summary>div:last-child{grid-column:1/-1}
}
.insurance-cancellation-summary>span{display:block;min-width:0;padding:2px 3px;color:var(--text,#17212b);font-size:.66rem;line-height:1.25}.insurance-cancellation-summary>span b{display:block;margin-bottom:2px;color:var(--muted,#667085);font-size:.55rem;text-transform:uppercase;letter-spacing:.025em}
@media(max-width:700px){
  .insurance-modal .insurance-form-grid label{min-width:0}
  .insurance-modal .insurance-form-grid :is(.input,.select,input[type="date"],input[type="time"],input[type="number"]){width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
}

/* Insurance 176 — imported opening commission balances and compact top totals. */
.insurance-commission-summary-strip{display:grid;gap:4px;margin:5px 0 7px}
.insurance-commission-summary-currency{display:grid;grid-template-columns:48px repeat(3,minmax(150px,1fr)) auto;gap:5px;align-items:center;padding:5px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:9px;background:var(--insurance-surface,var(--panel));color:var(--text,#17212b)}
.insurance-commission-summary-code{display:flex;align-items:center;justify-content:center;min-height:27px;border-radius:7px;background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 9%,var(--insurance-soft,var(--panel-2)));color:var(--insurance-primary,var(--accent));font-size:.61rem;font-weight:900}
.insurance-commission-summary-currency>div:not(.insurance-commission-summary-code){min-width:0;display:grid;gap:1px;padding:0 6px;border-left:1px solid var(--insurance-line,var(--border))}
.insurance-commission-summary-currency span{font-size:.49rem;color:var(--muted,#667085);font-weight:750;white-space:nowrap}
.insurance-commission-summary-currency strong{font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-commission-summary-currency>small{font-size:.49rem;color:var(--warning,#b7791f);white-space:nowrap}
.insurance-commission-summary-empty{margin:5px 0 7px;padding:7px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));text-align:center;color:var(--muted,#667085);font-size:.56rem}

.insurance-opening-balance-section{margin:0 0 7px;border:1px solid var(--insurance-line,var(--border));border-radius:9px;overflow:hidden;background:var(--insurance-surface,var(--panel))}
.insurance-opening-balance-title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 7px;background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-soft,var(--panel-2)))}
.insurance-opening-balance-title>div{min-width:0;display:grid;gap:1px}.insurance-opening-balance-title strong{font-size:.62rem}.insurance-opening-balance-title span{font-size:.5rem;color:var(--muted,#667085)}.insurance-opening-balance-title>span{white-space:nowrap}
.insurance-opening-balance-head,.insurance-opening-balance-row{display:grid;grid-template-columns:minmax(230px,1.6fr) repeat(3,minmax(88px,.7fr)) minmax(105px,.75fr) 30px;gap:5px;align-items:center;padding:5px 7px}
.insurance-opening-balance-head{min-height:25px;border-top:1px solid var(--insurance-line,var(--border));border-bottom:1px solid var(--insurance-line,var(--border));background:var(--insurance-soft,var(--panel-2));color:var(--muted,#667085);font-size:.49rem;font-weight:850;text-transform:uppercase;letter-spacing:.02em}.insurance-opening-balance-head>div:not(:first-child){text-align:right}.insurance-opening-balance-head>div:nth-last-child(2){text-align:left}
.insurance-opening-balance-list{display:grid}.insurance-opening-balance-row{min-height:36px;border-bottom:1px solid var(--insurance-line,var(--border));cursor:pointer;color:var(--text,#17212b)}.insurance-opening-balance-row:last-child{border-bottom:0}.insurance-opening-balance-row:hover{background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-surface,var(--panel)))}
.insurance-opening-main{min-width:0;display:grid;gap:1px}.insurance-opening-main strong{font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-opening-main span{font-size:.5rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-opening-balance-row>div:not(.insurance-opening-main):not(.insurance-opening-status){text-align:right;font-size:.59rem;font-weight:760;white-space:nowrap}.insurance-opening-status{display:grid;justify-items:start;gap:2px}.insurance-opening-status small{font-size:.47rem;color:var(--muted,#667085);white-space:nowrap}
.insurance-opening-candidate{border-color:color-mix(in srgb,var(--insurance-primary,var(--accent)) 14%,var(--insurance-line,var(--border)))!important;background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 3%,var(--insurance-surface,var(--panel)))!important}

@media(max-width:900px){
  .insurance-commission-summary-currency{grid-template-columns:42px repeat(3,minmax(0,1fr));gap:4px}.insurance-commission-summary-currency>small{grid-column:2/-1}
  .insurance-opening-balance-head{display:none}.insurance-opening-balance-row{grid-template-columns:repeat(3,minmax(0,1fr)) 28px;position:relative;gap:5px 7px;padding:7px 8px}.insurance-opening-main{grid-column:1/-1;padding-right:34px}.insurance-opening-balance-row>div[data-label]{text-align:left!important;display:grid;gap:1px;white-space:normal}.insurance-opening-balance-row>div[data-label]::before{content:attr(data-label);font-size:.47rem;color:var(--muted,#667085);font-weight:700}.insurance-opening-status{grid-column:1/3}.insurance-opening-balance-row>div:last-child{position:absolute;right:7px;top:7px}
}
@media(max-width:600px){
  .insurance-commission-summary-currency{grid-template-columns:40px 1fr 1fr;padding:5px}.insurance-commission-summary-code{grid-row:1/3}.insurance-commission-summary-currency>div:not(.insurance-commission-summary-code){padding:0 4px}.insurance-commission-summary-currency>div:nth-child(4){grid-column:2/4}.insurance-commission-summary-currency>small{grid-column:2/4;white-space:normal}
  .insurance-opening-balance-title{align-items:flex-start}.insurance-opening-balance-title>span{font-size:.47rem}.insurance-opening-balance-row{grid-template-columns:1fr 1fr 28px}.insurance-opening-main{grid-column:1/-1}.insurance-opening-status{grid-column:1/3}
}
@media(max-width:480px){
  .insurance-commission-summary-currency{grid-template-columns:36px 1fr 1fr;gap:3px}.insurance-commission-summary-currency span{font-size:.46rem}.insurance-commission-summary-currency strong{font-size:.61rem}
  .insurance-opening-balance-title>div span{white-space:normal}.insurance-opening-balance-row{padding:6px}.insurance-opening-main span{white-space:normal;line-height:1.2}
}

/* Insurance 177 — separate referral payables and compact referral entry UI. */
.insurance-referral-entry{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(190px,1fr) minmax(130px,.75fr);gap:6px;align-items:end;padding:5px 6px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));min-width:0}
.insurance-referral-entry>label{min-width:0}.insurance-referral-toggle{min-height:28px;align-self:end;margin:0!important;padding:4px 6px!important;border-radius:7px!important;background:var(--insurance-surface,var(--panel));border:1px solid var(--insurance-line,var(--border));color:var(--text,#17212b)}
.insurance-referral-toggle span{font-size:.58rem;line-height:1.2}.insurance-referral-toggle input{width:13px!important;height:13px!important;min-width:13px!important}

.insurance-referral-filter-toolbar{grid-template-columns:minmax(210px,1.55fr) repeat(3,minmax(112px,.8fr)) auto}
.insurance-referral-summary-strip{margin-top:5px}
.insurance-referral-table{border:1px solid var(--insurance-line,var(--border));border-radius:10px;overflow:hidden;background:var(--insurance-surface,var(--panel));color:var(--text,#17212b)}
.insurance-referral-head,.insurance-referral-line{display:grid;grid-template-columns:minmax(260px,1.7fr) repeat(3,minmax(100px,.72fr)) minmax(112px,.78fr) 30px;gap:6px;align-items:center;padding:5px 7px}
.insurance-referral-head{min-height:27px;background:var(--insurance-soft,var(--panel-2));border-bottom:1px solid var(--insurance-line,var(--border));color:var(--muted,#667085);font-size:.49rem;font-weight:850;text-transform:uppercase;letter-spacing:.02em}
.insurance-referral-head>div:not(:first-child){text-align:right}.insurance-referral-head>div:nth-last-child(2){text-align:left}
.insurance-referral-list{display:grid}.insurance-referral-line{min-height:38px;border-bottom:1px solid var(--insurance-line,var(--border));cursor:pointer;background:var(--insurance-surface,var(--panel));transition:background .14s ease}.insurance-referral-line:last-child{border-bottom:0}.insurance-referral-line:hover{background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-surface,var(--panel)))}
.insurance-referral-main{display:grid;gap:1px;min-width:0}.insurance-referral-main strong{font-size:.63rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text,#17212b)}.insurance-referral-main span{font-size:.5rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-referral-line>div[data-label]{text-align:right;font-size:.6rem;font-weight:760;white-space:nowrap;color:var(--text,#17212b)}.insurance-referral-status{display:grid;justify-items:start;gap:2px}.insurance-referral-status small{font-size:.47rem;color:var(--muted,#667085);white-space:nowrap}
.insurance-referral-payment-form .insurance-referral-balance-card{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;min-height:34px;background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 5%,var(--insurance-surface,var(--panel)))}
.insurance-referral-payment-form .insurance-referral-balance-card span{font-size:.57rem}.insurance-referral-payment-form .insurance-referral-balance-card strong{font-size:.72rem}

@media(max-width:900px){
  .insurance-referral-head{display:none}.insurance-referral-line{grid-template-columns:repeat(3,minmax(0,1fr)) 28px;position:relative;gap:5px 7px;padding:7px 8px}.insurance-referral-main{grid-column:1/-1;padding-right:34px}.insurance-referral-line>div[data-label]{text-align:left;display:grid;gap:1px;white-space:normal}.insurance-referral-line>div[data-label]::before{content:attr(data-label);font-size:.47rem;color:var(--muted,#667085);font-weight:700}.insurance-referral-status{grid-column:1/3}.insurance-referral-line>div:last-child{position:absolute;right:7px;top:7px}
}
@media(max-width:700px){
  .insurance-referral-entry{grid-template-columns:1fr 1fr}.insurance-referral-entry>label:first-child{grid-column:1/-1}.insurance-referral-toggle{min-height:27px}.insurance-referral-filter-toolbar{align-items:end!important}.insurance-referral-filter-toolbar .insurance-filter-field{min-width:0!important;width:100%}.insurance-referral-filter-toolbar input[type="date"],.insurance-referral-filter-toolbar input[type="time"]{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.insurance-referral-filter-toolbar .insurance-filter-actions{width:100%;justify-content:center!important}
}
@media(max-width:480px){
  .insurance-referral-entry{grid-template-columns:1fr;padding:5px}.insurance-referral-entry>label:first-child{grid-column:auto}.insurance-referral-filter-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;padding:5px!important}.insurance-referral-filter-toolbar .insurance-search,.insurance-referral-filter-toolbar .insurance-filter-actions{grid-column:1/-1!important}.insurance-referral-filter-toolbar .form-label{font-size:.55rem!important;line-height:1.05!important;margin-bottom:2px!important}.insurance-referral-filter-toolbar .input,.insurance-referral-filter-toolbar .select{height:27px!important;min-height:27px!important;padding:2px 5px!important;font-size:.61rem!important}.insurance-referral-line{grid-template-columns:1fr 1fr 28px;padding:6px}.insurance-referral-main{grid-column:1/-1}.insurance-referral-main span{white-space:normal;line-height:1.2}.insurance-referral-status{grid-column:1/3}
}

/* Insurance 178 — reusable referrer directory and grouped referral ledger. */
.insurance-referral-entry{grid-template-columns:minmax(155px,1.05fr) minmax(155px,1.05fr) minmax(185px,1fr) minmax(120px,.72fr);gap:5px;padding:5px}
.insurance-referral-entry>.hide{display:none!important}.insurance-referral-entry .select,.insurance-referral-entry .input{min-width:0;width:100%}
.insurance-referrer-table{overflow:hidden}.insurance-referrer-head,.insurance-referrer-line{grid-template-columns:minmax(210px,1.05fr) minmax(360px,2fr) minmax(108px,.55fr) 30px}
.insurance-referrer-head>div:nth-child(2){text-align:left}.insurance-referrer-line{min-height:42px}.insurance-referrer-line>.insurance-referrer-money{text-align:left!important;display:grid;gap:2px;min-width:0}
.insurance-referrer-money-line{display:flex;align-items:center;gap:6px;min-width:0;font-size:.56rem;color:var(--text,#17212b)}.insurance-referrer-money-line>b{font-size:.48rem;min-width:26px;color:var(--muted,#667085)}.insurance-referrer-money-line>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-referrer-empty-money{color:var(--muted,#667085)}
.insurance-referrer-ledger-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:5px;margin-bottom:6px}.insurance-referrer-ledger-totals>div{display:grid;grid-template-columns:auto 1fr;gap:1px 7px;align-items:center;padding:5px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));color:var(--text,#17212b)}.insurance-referrer-ledger-totals span{font-size:.5rem;font-weight:800;color:var(--muted,#667085)}.insurance-referrer-ledger-totals b{font-size:.68rem;text-align:right}.insurance-referrer-ledger-totals small{grid-column:1/-1;font-size:.48rem;color:var(--muted,#667085)}
.insurance-referrer-ledger{border:1px solid var(--insurance-line,var(--border));border-radius:9px;overflow:hidden;background:var(--insurance-surface,var(--panel));color:var(--text,#17212b)}.insurance-referrer-ledger-head,.insurance-referrer-ledger-row{display:grid;grid-template-columns:minmax(260px,1.65fr) repeat(3,minmax(92px,.65fr)) minmax(105px,.65fr) 30px;gap:6px;align-items:center;padding:5px 7px}.insurance-referrer-ledger-head{background:var(--insurance-soft,var(--panel-2));border-bottom:1px solid var(--insurance-line,var(--border));font-size:.48rem;font-weight:850;color:var(--muted,#667085);text-transform:uppercase}.insurance-referrer-ledger-head>div:not(:first-child){text-align:right}.insurance-referrer-ledger-head>div:nth-last-child(2){text-align:left}.insurance-referrer-ledger-row{min-height:40px;border-bottom:1px solid var(--insurance-line,var(--border));cursor:pointer}.insurance-referrer-ledger-row:last-child{border-bottom:0}.insurance-referrer-ledger-row:hover{background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-surface,var(--panel)))}.insurance-referrer-ledger-row>div[data-label]{text-align:right;font-size:.58rem}.insurance-referrer-ledger-policy{display:grid;gap:1px;min-width:0}.insurance-referrer-ledger-policy strong{font-size:.61rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-referrer-ledger-policy span,.insurance-referrer-ledger-policy small{font-size:.48rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#insuranceReferrerDetailsModal .insurance-entry-dialog{width:min(920px,94vw)}

@media(max-width:900px){
  .insurance-referrer-head,.insurance-referrer-ledger-head{display:none}.insurance-referrer-line{grid-template-columns:1fr minmax(105px,.65fr) 28px;gap:5px;padding:7px 8px}.insurance-referrer-main{min-width:0}.insurance-referrer-line>.insurance-referrer-money{grid-column:1/-1}.insurance-referrer-line>.insurance-referral-status{grid-column:1/2}.insurance-referrer-line>div:last-child{position:absolute;right:7px;top:7px}
  .insurance-referrer-ledger-row{position:relative;grid-template-columns:repeat(3,minmax(0,1fr)) 28px;gap:5px 7px;padding:7px 8px}.insurance-referrer-ledger-policy{grid-column:1/-1;padding-right:32px}.insurance-referrer-ledger-row>div[data-label]{text-align:left;display:grid;gap:1px}.insurance-referrer-ledger-row>div[data-label]::before{content:attr(data-label);font-size:.46rem;color:var(--muted,#667085);font-weight:700}.insurance-referrer-ledger-row>.insurance-referral-status{grid-column:1/3}.insurance-referrer-ledger-row>div:last-child{position:absolute;right:7px;top:7px}
}
@media(max-width:700px){.insurance-referral-entry{grid-template-columns:1fr 1fr}.insurance-referral-entry>label:first-child{grid-column:1/-1}.insurance-referral-entry .insurance-referral-toggle{grid-column:auto}.insurance-referrer-ledger-totals{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.insurance-referral-entry{grid-template-columns:1fr}.insurance-referral-entry>label:first-child{grid-column:auto}.insurance-referrer-line{grid-template-columns:1fr 28px}.insurance-referrer-line>.insurance-referrer-money,.insurance-referrer-line>.insurance-referral-status{grid-column:1/-1}.insurance-referrer-money-line{font-size:.53rem;white-space:normal}.insurance-referrer-ledger-totals{grid-template-columns:1fr}.insurance-referrer-ledger-row{grid-template-columns:1fr 1fr 28px}.insurance-referrer-ledger-row>.insurance-referral-status{grid-column:1/3}.insurance-referrer-ledger-policy span,.insurance-referrer-ledger-policy small{white-space:normal;line-height:1.2}}

/* Insurance 178.1 — keep New Referral and commission controls inside the sale overlay. */
.insurance-referral-entry{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.72fr)!important;gap:5px!important;align-items:end!important;min-width:0!important;max-width:100%!important;overflow:hidden}
.insurance-referral-entry>label{min-width:0!important;max-width:100%!important}
.insurance-referral-entry #insuranceReferralIdentityField{grid-column:auto!important}
.insurance-referral-new-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;align-items:center;margin-top:3px;min-width:0;max-width:100%}
.insurance-referral-new-control.hide{display:none!important}
.insurance-referral-new-control .input{margin-top:0!important;min-width:0!important;width:100%!important;max-width:100%!important}
.insurance-referral-existing-btn{height:31px!important;min-height:31px!important;min-width:58px!important;padding:0 7px!important;border-radius:8px!important;font-size:.58rem!important;white-space:nowrap!important}
.insurance-referral-toggle{min-width:0!important;max-width:100%!important;overflow:hidden}
.insurance-referral-toggle span{white-space:normal!important;overflow-wrap:anywhere}
#insuranceReferralCommissionField{min-width:0!important;max-width:100%!important}
#insuranceReferralCommissionField .input{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
@media(max-width:700px){
  .insurance-referral-entry{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .insurance-referral-entry #insuranceReferralIdentityField{grid-column:1/-1!important}
  .insurance-referral-toggle,#insuranceReferralCommissionField{grid-column:auto!important}
}
@media(max-width:480px){
  .insurance-referral-entry{grid-template-columns:minmax(0,1fr)!important;padding:5px!important}
  .insurance-referral-entry #insuranceReferralIdentityField,.insurance-referral-toggle,#insuranceReferralCommissionField{grid-column:1!important}
  .insurance-referral-new-control{grid-template-columns:minmax(0,1fr) auto}
  .insurance-referral-existing-btn{min-width:54px!important;padding-inline:6px!important}
}


/* Insurance 179 — customer receivables, balances and payment history. */
.insurance-customer-payment-entry{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(280px,1.35fr);gap:5px;align-items:center;padding:5px 6px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));min-width:0;color:var(--text,#17212b)}
.insurance-customer-payment-toggle{min-height:29px;margin:0!important;padding:4px 6px!important;border:1px solid var(--insurance-line,var(--border));border-radius:7px;background:var(--insurance-surface,var(--panel));font-size:.6rem;font-weight:780}.insurance-customer-payment-toggle span{white-space:nowrap}
.insurance-customer-payment-fields{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,.85fr);gap:5px;align-items:end;min-width:0}.insurance-customer-payment-fields.hide{display:none!important}.insurance-customer-payment-fields label{min-width:0}.insurance-customer-payment-preview{display:grid;gap:1px;min-height:31px;padding:4px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:7px;background:var(--insurance-surface,var(--panel))}.insurance-customer-payment-preview span{font-size:.48rem;color:var(--muted,#667085);font-weight:750}.insurance-customer-payment-preview strong{font-size:.66rem;color:var(--warning,#b7791f)}
.insurance-customer-payment-entry>small{grid-column:1/-1;font-size:.49rem;line-height:1.25;color:var(--muted,#667085)}

.insurance-payment-status{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:2px 7px;border-radius:999px;border:1px solid var(--insurance-line,var(--border));background:var(--insurance-soft,var(--panel-2));font-size:.49rem;font-weight:850;white-space:nowrap;color:var(--text,#17212b)}
.insurance-payment-status.paid{border-color:color-mix(in srgb,var(--success,#15803d) 30%,var(--insurance-line,var(--border)));background:color-mix(in srgb,var(--success,#15803d) 8%,var(--insurance-surface,var(--panel)));color:var(--success,#15803d)}
.insurance-payment-status.partial,.insurance-payment-status.outstanding{border-color:color-mix(in srgb,var(--warning,#b7791f) 35%,var(--insurance-line,var(--border)));background:color-mix(in srgb,var(--warning,#b7791f) 9%,var(--insurance-surface,var(--panel)));color:var(--warning,#b7791f)}
.insurance-payment-status.unpaid{border-color:color-mix(in srgb,var(--danger,#b42318) 30%,var(--insurance-line,var(--border)));background:color-mix(in srgb,var(--danger,#b42318) 8%,var(--insurance-surface,var(--panel)));color:var(--danger,#b42318)}
.insurance-amount-outstanding{color:var(--warning,#b7791f)!important}

.insurance-customer-balance-toolbar{grid-template-columns:minmax(240px,1.5fr) minmax(150px,.65fr) auto!important;align-items:end!important}
.insurance-customer-balance-table{margin-top:7px;border:1px solid var(--insurance-line,var(--border));border-radius:9px;overflow:hidden;background:var(--insurance-surface,var(--panel));color:var(--text,#17212b)}
.insurance-customer-balance-head,.insurance-customer-balance-row{display:grid;grid-template-columns:minmax(230px,1.35fr) minmax(250px,1.15fr) minmax(120px,.55fr) 28px;gap:7px;align-items:center;padding:5px 8px}
.insurance-customer-balance-head{min-height:27px;background:var(--insurance-soft,var(--panel-2));border-bottom:1px solid var(--insurance-line,var(--border));font-size:.48rem;font-weight:850;color:var(--muted,#667085);text-transform:uppercase;letter-spacing:.02em}.insurance-customer-balance-head>div:nth-child(2){text-align:left}
.insurance-customer-balance-list{display:grid}.insurance-customer-balance-row{min-height:43px;border-bottom:1px solid var(--insurance-line,var(--border));cursor:pointer}.insurance-customer-balance-row:last-child{border-bottom:0}.insurance-customer-balance-row:hover{background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-surface,var(--panel)))}
.insurance-customer-balance-main{display:grid;gap:1px;min-width:0}.insurance-customer-balance-main strong{font-size:.63rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-customer-balance-main span{font-size:.49rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.insurance-customer-balance-outstanding{display:grid;gap:2px;min-width:0}.insurance-customer-balance-money{display:flex;align-items:center;gap:7px;min-width:0}.insurance-customer-balance-money>b{min-width:28px;font-size:.48rem;color:var(--muted,#667085)}.insurance-customer-balance-money>span{font-size:.61rem;font-weight:820;color:var(--warning,#b7791f);white-space:nowrap}.insurance-customer-balance-empty{color:var(--muted,#667085);font-size:.55rem}
.insurance-customer-balance-status{display:grid;justify-items:start;gap:2px}.insurance-customer-balance-status small{font-size:.46rem;color:var(--muted,#667085);white-space:nowrap}.insurance-customer-balance-arrow{display:flex;align-items:center;justify-content:flex-end;min-width:0;font-size:.55rem;color:var(--muted,#667085);text-align:right}

.insurance-customer-account-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:5px;margin-bottom:6px}.insurance-customer-account-totals>div{display:grid;grid-template-columns:auto 1fr;gap:1px 7px;align-items:center;padding:5px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));color:var(--text,#17212b)}.insurance-customer-account-totals span{font-size:.5rem;font-weight:850;color:var(--muted,#667085)}.insurance-customer-account-totals b{font-size:.69rem;text-align:right;color:var(--warning,#b7791f)}.insurance-customer-account-totals small{grid-column:1/-1;font-size:.48rem;color:var(--muted,#667085)}
.insurance-customer-account-ledger{border:1px solid var(--insurance-line,var(--border));border-radius:9px;overflow:hidden;background:var(--insurance-surface,var(--panel));color:var(--text,#17212b)}
.insurance-customer-account-head,.insurance-customer-account-row{display:grid;grid-template-columns:minmax(0,2.15fr) repeat(3,minmax(0,.82fr)) minmax(0,.9fr) minmax(88px,.9fr);gap:6px;align-items:center;padding:5px 7px;width:100%;min-width:0;box-sizing:border-box}.insurance-customer-account-head{background:var(--insurance-soft,var(--panel-2));border-bottom:1px solid var(--insurance-line,var(--border));font-size:.47rem;font-weight:850;color:var(--muted,#667085);text-transform:uppercase}.insurance-customer-account-head>div:not(:first-child){text-align:right}.insurance-customer-account-head>div:nth-last-child(2){text-align:left}.insurance-customer-account-row{min-height:42px;border-bottom:1px solid var(--insurance-line,var(--border));cursor:pointer}.insurance-customer-account-row:last-child{border-bottom:0}.insurance-customer-account-row:hover{background:color-mix(in srgb,var(--insurance-primary,var(--accent)) 4%,var(--insurance-surface,var(--panel)))}.insurance-customer-account-policy{display:grid;gap:1px;min-width:0}.insurance-customer-account-policy strong{font-size:.61rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-customer-account-policy span{font-size:.48rem;color:var(--muted,#667085);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-customer-account-head>div,.insurance-customer-account-row>div{min-width:0}.insurance-customer-account-row>div[data-label]{text-align:right;font-size:.58rem}.insurance-customer-account-status{display:grid;justify-items:start}.insurance-customer-account-actions{display:flex;align-items:center;justify-content:flex-end;min-width:0;text-align:right;color:var(--muted,#667085);font-size:.48rem}
#insuranceCustomerBalanceDetailsModal .insurance-entry-dialog{width:min(980px,94vw)}
#insuranceCustomerBalanceDetailsModal .modal-body{overflow-x:hidden!important}
#insuranceCustomerBalanceDetailsModal .insurance-customer-account-ledger{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
#insuranceCustomerBalanceDetailsModal .insurance-customer-account-head,#insuranceCustomerBalanceDetailsModal .insurance-customer-account-row{max-width:100%;overflow:visible}
#insuranceCustomerBalanceDetailsModal .insurance-customer-account-status{min-width:0;overflow:hidden}
#insuranceCustomerBalanceDetailsModal .insurance-payment-status{max-width:100%;overflow:hidden;text-overflow:ellipsis}
#insuranceCustomerBalanceDetailsModal .insurance-customer-account-actions,#insurancePanel .insurance-customer-balance-arrow{overflow:visible}
#insuranceCustomerBalanceDetailsModal .modal-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}

.insurance-customer-payment-detail{display:grid!important;gap:5px!important}.insurance-customer-payment-history{border:1px solid var(--insurance-line,var(--border));border-radius:8px;overflow:hidden;background:var(--insurance-surface,var(--panel));font-weight:400!important}.insurance-customer-payment-history-head,.insurance-customer-payment-history-row{display:grid;grid-template-columns:minmax(190px,1.3fr) minmax(115px,.7fr) minmax(100px,.55fr);gap:6px;align-items:center;padding:5px 7px}.insurance-customer-payment-history-head{background:var(--insurance-soft,var(--panel-2));border-bottom:1px solid var(--insurance-line,var(--border));font-size:.46rem;font-weight:850;color:var(--muted,#667085);text-transform:uppercase}.insurance-customer-payment-history-head>div:last-child{text-align:right}.insurance-customer-payment-history-row{border-bottom:1px solid var(--insurance-line,var(--border))}.insurance-customer-payment-history-row:last-child{border-bottom:0}.insurance-customer-payment-history-row>div{display:grid;gap:1px;min-width:0}.insurance-customer-payment-history-row strong{font-size:.57rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insurance-customer-payment-history-row small{font-size:.45rem;color:var(--muted,#667085);white-space:normal}.insurance-customer-payment-history-row>span{font-size:.5rem;color:var(--muted,#667085)}.insurance-customer-payment-history-row>b{text-align:right;font-size:.59rem}.insurance-customer-payment-history-empty{padding:7px;border:1px dashed var(--insurance-line,var(--border));border-radius:7px;color:var(--muted,#667085);font-size:.52rem;font-weight:500}
.insurance-customer-payment-balance{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 8px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));color:var(--text,#17212b)}.insurance-customer-payment-balance span{font-size:.56rem;color:var(--muted,#667085)}.insurance-customer-payment-balance strong{font-size:.73rem;color:var(--warning,#b7791f)}

@media(max-width:900px){
  .insurance-customer-balance-head,.insurance-customer-account-head{display:none}.insurance-customer-balance-row{grid-template-columns:1fr minmax(115px,.7fr) 28px;position:relative;gap:5px 7px;padding:7px 8px}.insurance-customer-balance-main{grid-column:1/-1;padding-right:28px}.insurance-customer-balance-outstanding{grid-column:1/2}.insurance-customer-balance-status{grid-column:2/3}.insurance-customer-balance-arrow{position:absolute;right:8px;top:9px}
  .insurance-customer-account-row{position:relative;grid-template-columns:repeat(3,minmax(0,1fr)) 28px;gap:5px 7px;padding:7px 8px}.insurance-customer-account-policy{grid-column:1/-1;padding-right:25px}.insurance-customer-account-row>div[data-label]{text-align:left;display:grid;gap:1px}.insurance-customer-account-row>div[data-label]::before{content:attr(data-label);font-size:.46rem;color:var(--muted,#667085);font-weight:700}.insurance-customer-account-status{grid-column:1/3}.insurance-customer-account-actions{position:absolute;right:8px;top:9px}
}
@media(max-width:700px){
  .insurance-customer-payment-entry{grid-template-columns:1fr 1fr}.insurance-customer-payment-entry>small{grid-column:1/-1}.insurance-customer-payment-fields{grid-column:1/-1}.insurance-customer-balance-toolbar{grid-template-columns:1fr 1fr!important}.insurance-customer-balance-toolbar .insurance-search,.insurance-customer-balance-toolbar .insurance-filter-actions{grid-column:1/-1!important}.insurance-customer-account-totals{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .insurance-customer-payment-entry{grid-template-columns:1fr;padding:5px}.insurance-customer-payment-toggle,.insurance-customer-payment-fields,.insurance-customer-payment-entry>small{grid-column:1}.insurance-customer-payment-fields{grid-template-columns:1fr}.insurance-customer-payment-toggle span{white-space:normal}.insurance-customer-balance-toolbar{grid-template-columns:1fr!important}.insurance-customer-balance-toolbar .insurance-filter-field,.insurance-customer-balance-toolbar .insurance-search,.insurance-customer-balance-toolbar .insurance-filter-actions{grid-column:1!important}.insurance-customer-balance-row{grid-template-columns:1fr 28px;padding:6px}.insurance-customer-balance-outstanding,.insurance-customer-balance-status{grid-column:1/-1}.insurance-customer-balance-main span{white-space:normal;line-height:1.2}.insurance-customer-account-totals{grid-template-columns:1fr}.insurance-customer-account-row{grid-template-columns:1fr 1fr 28px}.insurance-customer-account-policy{grid-column:1/-1}.insurance-customer-account-status{grid-column:1/3}.insurance-customer-account-policy span{white-space:normal;line-height:1.2}.insurance-customer-payment-history-head{display:none}.insurance-customer-payment-history-row{grid-template-columns:1fr auto}.insurance-customer-payment-history-row>div{grid-column:1/-1}.insurance-customer-payment-history-row>span{grid-column:1}.insurance-customer-payment-history-row>b{grid-column:2}
}

/* Insurance A5 document polish — explicit customer-ledger document dropdown. */
#insuranceCustomerBalanceDetailsModal .insurance-document-menu-btn{
  position:relative;width:28px!important;height:24px!important;min-width:28px!important;min-height:24px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:2px!important;
  overflow:visible!important;border-radius:6px!important
}
#insuranceCustomerBalanceDetailsModal .insurance-document-menu-btn>i:first-child{font-size:.58rem!important}
#insuranceCustomerBalanceDetailsModal .insurance-document-menu-caret{font-size:.38rem!important;transform:translateY(1px)}
#insuranceCustomerBalanceDetailsModal .insurance-customer-account-head>div:last-child{text-align:center!important;font-size:.43rem!important}
.insurance-document-party-row-three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.insurance-document-policy-notes{margin-top:5px;padding:5px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:7px;background:var(--insurance-soft,var(--panel-2));color:var(--muted,#667085);font-size:.55rem;line-height:1.3;overflow-wrap:anywhere}
@media(max-width:700px){.insurance-document-party-row-three{grid-template-columns:1fr!important}}

/* Customer statement transaction document controls — always visible and modal-safe.
   The floating menu is appended to <body>; it must outrank the shared .modal layer (2147483646) on desktop. */
.insurance-customer-account-document-hint{display:flex;align-items:flex-start;gap:6px;margin:0 0 6px;padding:5px 7px;border:1px solid var(--insurance-line,var(--border));border-radius:8px;background:var(--insurance-soft,var(--panel-2));color:var(--muted,#667085);font-size:.5rem;line-height:1.3}
.insurance-customer-account-document-hint i{color:var(--insurance-primary,var(--accent));font-size:.55rem;margin-top:1px}
#insuranceCustomerBalanceDetailsModal .insurance-customer-transaction-docs{width:auto!important;height:24px!important;min-width:82px!important;min-height:24px!important;padding:3px 6px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;font-size:.49rem!important;font-weight:800!important;white-space:nowrap!important;overflow:visible!important}
#insuranceCustomerBalanceDetailsModal .insurance-customer-transaction-docs>span{display:inline!important;max-width:none!important;overflow:visible!important}
#insuranceCustomerBalanceDetailsModal .insurance-customer-account-actions{min-width:88px!important;justify-content:center!important}
@media(max-width:900px){#insuranceCustomerBalanceDetailsModal .insurance-customer-account-policy{padding-right:92px!important}#insuranceCustomerBalanceDetailsModal .insurance-customer-account-actions{right:8px!important;top:8px!important;min-width:82px!important}}
@media(max-width:480px){#insuranceCustomerBalanceDetailsModal .insurance-customer-transaction-docs{min-width:31px!important;width:31px!important;padding:3px!important}#insuranceCustomerBalanceDetailsModal .insurance-customer-transaction-docs>span{display:none!important}#insuranceCustomerBalanceDetailsModal .insurance-customer-account-actions{min-width:31px!important}#insuranceCustomerBalanceDetailsModal .insurance-customer-account-policy{padding-right:39px!important}}

/* Customer statement transaction Documents dropdown.
   The ledger itself stays fluid inside the modal; the menu is a compact body-level floating panel so it never expands or clips the transaction row. */
#insuranceCustomerBalanceDetailsModal{overflow:visible!important}
.insurance-floating-menu.insurance-customer-documents-dropdown{
  position:fixed!important;
  z-index:2147483647!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-flow:row!important;
  width:196px!important;
  min-width:196px!important;
  max-width:min(220px,calc(100vw - 16px))!important;
  height:auto!important;
  padding:4px!important;
  gap:2px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  border-radius:9px;
  box-shadow:0 12px 30px color-mix(in srgb,#000 18%,transparent);
}
.insurance-floating-menu.insurance-customer-documents-dropdown button{
  position:relative!important;
  display:grid!important;
  grid-template-columns:15px minmax(0,1fr)!important;
  align-items:center!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:28px!important;
  height:auto!important;
  padding:5px 7px!important;
  margin:0!important;
  border-radius:6px;
  font-size:.58rem;
  font-weight:750;
  text-align:left!important;
  white-space:nowrap;
}
.insurance-floating-menu.insurance-customer-documents-dropdown button i{
  width:15px;
  text-align:center;
  font-size:.6rem;
}
.insurance-floating-menu.insurance-customer-documents-dropdown button span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media(max-width:600px){
  .insurance-floating-menu.insurance-customer-documents-dropdown{min-width:170px;max-width:calc(100vw - 12px)}
}

/* ===== SOURCE: Assets/style/55-app-downloads.css ===== */
/* Triplem VIP application downloads: compact cross-platform download hub + theme parity. */

.triplem-apps-overlay{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  z-index:9850;
  display:grid;
  place-items:center;
  overflow:hidden;
  box-sizing:border-box;
  padding:14px;
  color:var(--text,#101828);
  transform:none!important;
}
html.triplem-apps-open,body.triplem-apps-open{overflow:hidden!important}
.triplem-apps-overlay.hide{display:none!important}
.triplem-apps-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,6,23,.58);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.triplem-apps-modal{
  position:relative;
  width:min(520px,calc(100vw - 28px));
  max-height:min(82vh,680px);
  max-height:min(82dvh,680px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--line,rgba(148,163,184,.28));
  border-radius:16px;
  background:linear-gradient(155deg,var(--surface-glass-strong,var(--surface-elevated,#fff)),var(--surface-glass,var(--surface,#fff)));
  color:var(--text,#101828);
  box-shadow:var(--shadow-strong,0 22px 70px rgba(2,6,23,.28));
  margin:0!important;
  align-self:center!important;
  justify-self:center!important;
  transform:none!important;
}
.triplem-apps-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px 10px;
  border-bottom:1px solid var(--line,rgba(148,163,184,.24));
  background:var(--surface-soft,rgba(148,163,184,.08));
}
.triplem-apps-header h3{margin:1px 0 0;font-size:1rem;line-height:1.15;color:var(--text,#101828)}
.triplem-apps-kicker{margin:0;font-size:.61rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#667085)}
.triplem-apps-close{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border:1px solid var(--line,rgba(148,163,184,.28));
  border-radius:9px;
  background:var(--control-bg,var(--surface-elevated,#fff));
  color:var(--text,#101828);
  cursor:pointer;
}
.triplem-apps-close:hover{background:var(--control-hover,var(--surface-hover,rgba(148,163,184,.12)))}
.triplem-apps-body{padding:12px;overflow:auto;overscroll-behavior:contain}
.triplem-platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}
.triplem-platform-btn{
  min-width:0;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid var(--line,rgba(148,163,184,.28));
  border-radius:10px;
  background:var(--control-bg,var(--surface-elevated,#fff));
  color:var(--text,#101828);
  font:inherit;
  font-size:.76rem;
  font-weight:750;
  cursor:pointer;
}
.triplem-platform-btn i{font-size:.92rem}
.triplem-platform-btn:hover{background:var(--control-hover,var(--surface-hover,rgba(148,163,184,.12)))}
.triplem-platform-btn.active{
  border-color:var(--primary,#2457d6);
  background:var(--primary-soft,rgba(36,87,214,.11));
  color:var(--primary,#2457d6);
  box-shadow:0 0 0 2px var(--focus-ring,rgba(36,87,214,.10));
}
.triplem-platform-panel{
  padding:12px;
  border:1px solid var(--line,rgba(148,163,184,.25));
  border-radius:12px;
  background:var(--surface-soft,rgba(148,163,184,.07));
  color:var(--text,#101828);
}
.triplem-app-summary{display:flex;align-items:center;gap:10px;margin-bottom:9px;min-width:0}
.triplem-app-summary>i,
.triplem-app-summary>img{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:10px;
}
.triplem-app-summary>i{
  display:grid;
  place-items:center;
  border:1px solid var(--line,rgba(148,163,184,.25));
  background:var(--surface-elevated,var(--control-bg,#fff));
  color:var(--primary,#2457d6);
  font-size:1rem;
}
.triplem-app-summary>img{object-fit:cover;border:1px solid var(--line,rgba(148,163,184,.25))}
.triplem-app-summary div{min-width:0;display:grid;gap:2px}
.triplem-app-summary strong{font-size:.82rem;color:var(--text,#101828)}
.triplem-app-summary span{font-size:.68rem;line-height:1.35;color:var(--muted,#667085)}
.triplem-install-steps{
  margin:0 0 10px 18px;
  padding:0;
  display:grid;
  gap:5px;
  color:var(--text,#101828);
  font-size:.72rem;
  line-height:1.36;
}
.triplem-install-steps strong{color:var(--text,#101828)}
.triplem-app-note{
  display:flex;
  align-items:flex-start;
  gap:7px;
  padding:7px 8px;
  margin:0 0 10px;
  border:1px solid var(--line,rgba(148,163,184,.25));
  border-radius:9px;
  background:var(--surface-elevated,var(--control-bg,#fff));
  color:var(--muted,#667085);
  font-size:.65rem;
  line-height:1.35;
}
.triplem-app-note i{color:var(--primary,#2457d6);margin-top:1px}
.triplem-download-final{
  width:max-content;
  max-width:100%;
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 12px;
  border:1px solid var(--primary,#2457d6);
  border-radius:9px;
  background:var(--primary-gradient,var(--primary,#2457d6));
  color:var(--on-primary,#fff)!important;
  text-decoration:none!important;
  font-size:.72rem;
  font-weight:800;
  box-shadow:0 7px 18px var(--primary-soft,rgba(36,87,214,.16));
}
.triplem-download-final:hover{filter:brightness(1.03)}

/* Bring the existing landing iOS/Android download dialogs into the same compact themed system. */
.app-download-modal{
  width:min(500px,calc(100vw - 28px))!important;
  max-height:min(82vh,680px)!important;
  background:linear-gradient(155deg,var(--surface-glass-strong,var(--surface-elevated,#fff)),var(--surface-glass,var(--surface,#fff)))!important;
  border-color:var(--line,rgba(148,163,184,.28))!important;
  color:var(--text,#101828)!important;
  box-shadow:var(--shadow-strong,0 22px 70px rgba(2,6,23,.28))!important;
}
.app-download-header{
  padding:11px 13px 9px!important;
  background:var(--surface-soft,rgba(148,163,184,.08))!important;
  border-color:var(--line,rgba(148,163,184,.24))!important;
}
.app-download-header h3,.app-download-header h3 i{
  background:none!important;
  -webkit-background-clip:initial!important;
  -webkit-text-fill-color:currentColor!important;
  color:var(--text,#101828)!important;
}
.app-download-header h3{font-size:.92rem!important}
.app-download-header .btn{min-width:30px!important;width:30px!important;height:30px!important;padding:0!important;border-radius:9px!important}
.app-download-content{padding:12px!important;gap:10px!important}
.app-download-qr,.app-download-instructions,.app-download-note{
  background:var(--surface-soft,rgba(148,163,184,.07))!important;
  border-color:var(--line,rgba(148,163,184,.25))!important;
  color:var(--text,#101828)!important;
  box-shadow:none!important;
}
.app-download-qr{padding:10px!important;border-width:1px!important;border-radius:11px!important}
.app-download-instructions{padding:11px!important;border-radius:11px!important}
.app-download-instructions h4{color:var(--text,#101828)!important;font-size:.78rem!important}
.app-download-instructions li,.app-download-instructions p,.qr-instruction{color:var(--muted,#667085)!important}
.download-btn{padding:7px 11px!important;border-radius:8px!important;font-size:.7rem!important}

@media (max-width:640px){
  .triplem-apps-overlay{
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))!important;
    display:grid!important;
    place-items:center!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  .triplem-apps-modal{width:100%;max-height:calc(100dvh - max(20px,env(safe-area-inset-top)) - max(20px,env(safe-area-inset-bottom)));border-radius:15px;margin:0!important;align-self:center!important;justify-self:center!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;transform:none!important}
  .triplem-apps-header{padding:10px 11px 9px}
  .triplem-apps-body{padding:10px}
  .triplem-platform-grid{gap:5px}
  .triplem-platform-btn{height:36px;font-size:.7rem;gap:4px}
  .triplem-platform-panel{padding:10px}
  .triplem-install-steps{font-size:.69rem;gap:4px}
  .triplem-download-final{width:100%}
  .app-download-overlay{padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))!important;align-items:center!important;justify-content:center!important}
  .app-download-modal{width:100%!important;margin:auto!important;max-height:88vh!important;max-height:88dvh!important;border-radius:15px!important}
}
