/* Shared NTS Specular Glass icon system — derived from approved mobile Contract/Report icon treatment only. */
:root{--nts-spring-physics:cubic-bezier(.34,1.56,.64,1)}
.metro-glass-icon{position:relative;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);border:1.5px solid rgba(255,255,255,.65);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;backdrop-filter:blur(16px) saturate(200%);-webkit-backdrop-filter:blur(16px) saturate(200%);box-shadow:inset 0 2px 3px #fff,inset 0 -1.5px 2px rgba(0,0,0,.25),0 6px 16px -2px rgba(37,99,235,.35),0 2px 4px rgba(0,0,0,.05);transition:all .28s var(--nts-spring-physics);overflow:hidden}
.metro-glass-icon::before{content:"";position:absolute;inset:0 0 auto;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(255,255,255,0));border-radius:12px 12px 100% 100%;pointer-events:none}
.metro-glass-icon::after{content:"";position:absolute;inset:-50%;background:linear-gradient(45deg,transparent 40%,rgba(255,255,255,.7) 50%,transparent 60%);transform:translateX(-100%) rotate(25deg);transition:transform .6s ease;pointer-events:none}
.metro-glass-icon.green,.metro-glass-icon.emerald{background:linear-gradient(135deg,#10b981 0%,#065f46 100%);box-shadow:inset 0 2px 3px #fff,inset 0 -1.5px 2px rgba(0,0,0,.25),0 6px 16px -2px rgba(16,185,129,.4)}
.metro-glass-icon.amber,.metro-glass-icon.orange{background:linear-gradient(135deg,#f59e0b 0%,#b45309 100%);box-shadow:inset 0 2px 3px #fff,inset 0 -1.5px 2px rgba(0,0,0,.25),0 6px 16px -2px rgba(245,158,11,.4)}
.metro-glass-icon.rose,.metro-glass-icon.red{background:linear-gradient(135deg,#ef4444 0%,#991b1b 100%);box-shadow:inset 0 2px 3px #fff,inset 0 -1.5px 2px rgba(0,0,0,.25),0 6px 16px -2px rgba(239,68,68,.4)}
.metro-glass-icon.purple,.metro-glass-icon.violet{background:linear-gradient(135deg,#8b5cf6 0%,#5b21b6 100%);box-shadow:inset 0 2px 3px #fff,inset 0 -1.5px 2px rgba(0,0,0,.25),0 6px 16px -2px rgba(139,92,246,.4)}
.metro-glass-icon.cyan,.metro-glass-icon.teal{background:linear-gradient(135deg,#06b6d4 0%,#0e7490 100%);box-shadow:inset 0 2px 3px #fff,inset 0 -1.5px 2px rgba(0,0,0,.25),0 6px 16px -2px rgba(6,182,212,.4)}
.metro-glass-icon.slate,.metro-glass-icon.dark{background:linear-gradient(135deg,#475569 0%,#1e293b 100%);box-shadow:inset 0 2px 3px #fff,inset 0 -1.5px 2px rgba(0,0,0,.25),0 6px 16px -2px rgba(30,41,59,.35)}
.metro-icon{width:18px;height:18px;stroke:currentColor;stroke-width:2.2;fill:none;filter:drop-shadow(0 1.5px 2px rgba(15,23,42,.22)) drop-shadow(0 -.6px .6px rgba(255,255,255,.95));position:relative;z-index:2;transition:transform .28s var(--nts-spring-physics)}
.metro-glass-icon .metro-icon{stroke:#fff;stroke-width:2.3;filter:drop-shadow(0 2px 3.5px rgba(0,0,0,.45)) drop-shadow(0 -.6px 1px rgba(255,255,255,.7))}
.nts-glass-menu-item:hover .metro-glass-icon,.menu-item:hover .metro-glass-icon{transform:scale(1.1) translateY(-1px) rotate(2deg);box-shadow:inset 0 2.5px 3px #fff,0 10px 28px -4px rgba(67,56,202,.28)}
.nts-glass-menu-item:hover .metro-glass-icon::after,.menu-item:hover .metro-glass-icon::after{transform:translateX(100%) rotate(25deg)}

/* Shared approved Contract/Report tactile interaction language for Web + Mini. */
:root{--nts-spring-smooth:cubic-bezier(.34,1.56,.64,1)}
.nts-tactile-surface,
.btn,.nav-btn,.tg-nav-btn,.tg-menu-btn,.tg-nav-more,.nts-utility-trigger,
.slider-pill,.segment-pill,.filter-pill,.filter-tab,.filter-tab-btn,.tab-pill,.tab-item-m,.tg-pill-tab,.pill-btn,.quote-filter-tab,
.btn-primary,.btn-secondary,.btn-action,.btn-action-main,.btn-action-primary,.btn-action-secondary,.btn-card,.btn-tool,.btn-reload,.btn-refresh,.btn-search,.btn-icon-copy,.btn-action-copy,.mini-icon-btn,.tg-copy-btn,.fab-btn,
.choice,.choice-item,.checkbox-item,.tg-card-item,.receipt-card,.kpi-card,.m-card,.session-card,.audit-item-row,.import-drop-card,.lookup-card,[data-row-index]{
  transition:transform .22s var(--nts-spring-smooth),box-shadow .22s ease,background-color .18s ease,border-color .18s ease,filter .18s ease;
  -webkit-tap-highlight-color:transparent;
}
.kpi-card,.receipt-card,.m-card,.session-card,.tg-card-item,.import-drop-card,.lookup-card{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
@media (hover:hover) and (pointer:fine){
  .nts-tactile-surface:hover,
  .btn:not(:disabled):hover,.nav-btn:not(:disabled):hover,.tg-nav-btn:not(:disabled):hover,.tg-menu-btn:not(:disabled):hover,.tg-nav-more:not(:disabled):hover,
  .slider-pill:not(:disabled):hover,.segment-pill:not(:disabled):hover,.filter-pill:not(:disabled):hover,.filter-tab:not(:disabled):hover,.filter-tab-btn:not(:disabled):hover,.tab-pill:not(:disabled):hover,.tab-item-m:not(:disabled):hover,.tg-pill-tab:not(:disabled):hover,.pill-btn:not(:disabled):hover,.quote-filter-tab:not(:disabled):hover,
  .btn-primary:not(:disabled):hover,.btn-secondary:not(:disabled):hover,.btn-action:not(:disabled):hover,.btn-action-main:not(:disabled):hover,.btn-action-primary:not(:disabled):hover,.btn-action-secondary:not(:disabled):hover,.btn-card:not(:disabled):hover,.btn-tool:not(:disabled):hover,.btn-reload:not(:disabled):hover,.btn-refresh:not(:disabled):hover,.btn-search:not(:disabled):hover,.btn-icon-copy:not(:disabled):hover,.btn-action-copy:not(:disabled):hover,.mini-icon-btn:not(:disabled):hover,.tg-copy-btn:not(:disabled):hover,.fab-btn:not(:disabled):hover,
  .choice:hover,.choice-item:hover,.checkbox-item:hover,.tg-card-item:hover,.receipt-card:hover,.kpi-card:hover,.m-card:hover,.session-card:hover,.audit-item-row:hover,.import-drop-card:hover,.lookup-card:hover,[data-row-index]:hover{
    transform:translateY(-1.5px) scale(1.02);
    box-shadow:0 6px 16px rgba(15,23,42,.08),inset 0 1px 1px rgba(255,255,255,.85);
  }
}
.nts-tactile-surface:active,
.btn:not(:disabled):active,.nav-btn:not(:disabled):active,.tg-nav-btn:not(:disabled):active,.tg-menu-btn:not(:disabled):active,.tg-nav-more:not(:disabled):active,
.slider-pill:not(:disabled):active,.segment-pill:not(:disabled):active,.filter-pill:not(:disabled):active,.filter-tab:not(:disabled):active,.filter-tab-btn:not(:disabled):active,.tab-pill:not(:disabled):active,.tab-item-m:not(:disabled):active,.tg-pill-tab:not(:disabled):active,.pill-btn:not(:disabled):active,.quote-filter-tab:not(:disabled):active,
.btn-primary:not(:disabled):active,.btn-secondary:not(:disabled):active,.btn-action:not(:disabled):active,.btn-action-main:not(:disabled):active,.btn-action-primary:not(:disabled):active,.btn-action-secondary:not(:disabled):active,.btn-card:not(:disabled):active,.btn-tool:not(:disabled):active,.btn-reload:not(:disabled):active,.btn-refresh:not(:disabled):active,.btn-search:not(:disabled):active,.btn-icon-copy:not(:disabled):active,.btn-action-copy:not(:disabled):active,.mini-icon-btn:not(:disabled):active,.tg-copy-btn:not(:disabled):active,.fab-btn:not(:disabled):active,
.choice:active,.choice-item:active,.checkbox-item:active,.tg-card-item:active,.receipt-card:active,.kpi-card:active,.m-card:active,.session-card:active,.audit-item-row:active,.import-drop-card:active,.lookup-card:active,[data-row-index]:active{
  transform:scale(.96);
  box-shadow:inset 0 2px 4px rgba(0,0,0,.12);
}
@media (prefers-reduced-motion:reduce){
  .nts-tactile-surface,.btn,.nav-btn,.tg-nav-btn,.tg-menu-btn,.tg-nav-more,.slider-pill,.segment-pill,.filter-pill,.filter-tab,.filter-tab-btn,.tab-pill,.tab-item-m,.tg-pill-tab,.pill-btn,.quote-filter-tab,.btn-primary,.btn-secondary,.btn-action,.btn-action-main,.btn-action-primary,.btn-action-secondary,.btn-card,.btn-tool,.btn-reload,.btn-refresh,.btn-search,.btn-icon-copy,.btn-action-copy,.mini-icon-btn,.tg-copy-btn,.fab-btn,.choice,.choice-item,.checkbox-item,.tg-card-item,.receipt-card,.kpi-card,.m-card,.session-card,.audit-item-row,.import-drop-card,.lookup-card,[data-row-index]{transition-duration:.01ms!important}
}
