/* Obrero Portal — Apple-inspired Liquid Glass presentation layer.
   Visual only: behavior hooks, data flow, content, and permissions remain unchanged. */
:root{
  --portal-glass:rgba(31,51,78,.48);
  --portal-glass-strong:rgba(24,43,69,.72);
  --portal-glass-clear:rgba(255,255,255,.075);
  --portal-glass-line:rgba(255,255,255,.22);
  --portal-glass-gold:rgba(242,214,138,.42);
  --portal-glass-shadow:0 24px 70px rgba(0,8,24,.34),inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(255,255,255,.055);
  --portal-glass-shadow-hover:0 30px 84px rgba(0,8,24,.46),0 0 34px rgba(221,185,88,.13),inset 0 1px 0 rgba(255,255,255,.38);
}

body[data-page^="portal-obrero"],
body.analytics-body,
body.portal-liquid-glass{
  background:
    radial-gradient(circle at 18% 2%,rgba(119,163,219,.22),transparent 30%),
    radial-gradient(circle at 86% 15%,rgba(220,181,82,.16),transparent 28%),
    radial-gradient(circle at 48% 110%,rgba(30,91,145,.2),transparent 35%),
    linear-gradient(145deg,#061427 0%,#0a2039 48%,#07172b 100%) !important;
  background-attachment:fixed !important;
}

body[data-page^="portal-obrero"]::before,
body.analytics-body::after,
body.portal-liquid-glass::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(115deg,transparent 12%,rgba(255,255,255,.045) 35%,transparent 54%),
    radial-gradient(ellipse at 50% -10%,rgba(255,255,255,.11),transparent 52%);
}

body[data-page^="portal-obrero"] main,
body.analytics-body main,
body.portal-liquid-glass main{
  position:relative;
  z-index:1;
}

/* Functional glass layer: navigation, controls, toolbars, cards, and modals. */
body[data-page^="portal-obrero"] :is(
  .pomr-inner,.obrero-profile-chip,.obrero-home-hero,.obrero-home-panel,
  .obrero-nav-card,.obrero-resource-group-options,.obrero-admin-menu-options,
  .obrero-profile-panel,.obrero-inscripcion-card,.obrero-rol-card,
  .obrero-ai-header,.obrero-ai-sidebar,.obrero-ai-chat,.obrero-ai-intro,
  .library-topbar,.library-hero,.library-stat,.library-toolbar,.library-table-card,
  .library-drawer,.library-preview-panel,.talleres-topbar,.talleres-hero,.taller-card,
  .station-hero,.station-option,.station-form-host,.station-tracker,.station-admin,
  .library-card,.library-status,.doc,.admin-card,.admin-gate>div
),
body.analytics-body :is(
  .analytics-header,.analytics-range-tabs,.analytics-metrics article,.analytics-panel,
  .analytics-ai-card,.analytics-pie-card,.analytics-user-chip,.analytics-gate>div
),
body.portal-liquid-glass :is(.admin-head,.admin-tabs,.admin-card,.admin-gate>div){
  border:1px solid var(--portal-glass-line) !important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.035) 46%,rgba(4,15,31,.18)),
    var(--portal-glass) !important;
  box-shadow:var(--portal-glass-shadow) !important;
  -webkit-backdrop-filter:blur(28px) saturate(165%) contrast(105%) !important;
  backdrop-filter:blur(28px) saturate(165%) contrast(105%) !important;
}

body[data-page^="portal-obrero"] :is(
  .obrero-profile-chip,.obrero-nav-card,.station-option,.library-btn,
  .obrero-secondary-btn,.obrero-ai-back,.obrero-ai-header button,
  .analytics-header-actions a,.analytics-header-actions button
),
body.analytics-body :is(.analytics-header-actions a,.analytics-header-actions button,.analytics-range-tabs button),
body.portal-liquid-glass :is(button,.filter,.primary){
  border:1px solid rgba(255,255,255,.24) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.055)) !important;
  box-shadow:0 10px 28px rgba(0,7,20,.25),inset 0 1px 0 rgba(255,255,255,.3) !important;
  -webkit-backdrop-filter:blur(22px) saturate(170%) !important;
  backdrop-filter:blur(22px) saturate(170%) !important;
}

body[data-page^="portal-obrero"] :is(
  .pomr-inner,.obrero-profile-chip,.obrero-home-hero,.obrero-home-panel,
  .obrero-nav-card,.obrero-resource-group-options,.obrero-admin-menu-options,
  .obrero-profile-panel,.obrero-inscripcion-card,.obrero-rol-card,
  .obrero-ai-header,.obrero-ai-sidebar,.obrero-ai-chat,.obrero-ai-intro,
  .library-topbar,.library-hero,.library-stat,.library-toolbar,.library-table-card,
  .library-drawer,.library-preview-panel,.talleres-topbar,.talleres-hero,.taller-card,
  .station-hero,.station-option,.station-form-host,.station-tracker,.station-admin,
  .library-card,.library-status,.doc,.admin-card,.admin-gate>div
),
body.analytics-body :is(.analytics-header,.analytics-range-tabs,.analytics-metrics article,.analytics-panel,.analytics-ai-card,.analytics-pie-card,.analytics-user-chip,.analytics-gate>div),
body.portal-liquid-glass :is(.admin-head,.admin-tabs,.admin-card,.admin-gate>div){
  border-radius:clamp(20px,2.2vw,34px) !important;
}

/* Optical edge light and fluid response. */
body[data-page^="portal-obrero"] :is(.obrero-nav-card,.obrero-home-panel,.station-option,.taller-card,.library-stat),
body.analytics-body :is(.analytics-metrics article,.analytics-panel,.analytics-user-chip),
body.portal-liquid-glass .admin-card{
  position:relative;
  overflow:hidden;
  transition:transform .32s cubic-bezier(.2,.8,.2,1),border-color .32s ease,box-shadow .32s ease,background .32s ease !important;
}

body[data-page^="portal-obrero"] :is(.obrero-nav-card,.obrero-home-panel,.station-option,.taller-card,.library-stat)::after,
body.analytics-body :is(.analytics-metrics article,.analytics-panel,.analytics-user-chip)::after,
body.portal-liquid-glass .admin-card::after{
  content:"";
  position:absolute;
  inset:-80% -45%;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 39%,rgba(255,255,255,.17) 48%,rgba(242,214,138,.09) 52%,transparent 61%);
  transform:translateX(-32%) rotate(2deg);
  opacity:.45;
  transition:transform .72s cubic-bezier(.2,.8,.2,1),opacity .32s ease;
}

body[data-page^="portal-obrero"] :is(.obrero-nav-card,.obrero-home-panel,.station-option,.taller-card,.library-stat):hover,
body.analytics-body :is(.analytics-metrics article,.analytics-panel,.analytics-user-chip):hover,
body.portal-liquid-glass .admin-card:hover{
  transform:translateY(-4px) scale(1.006) !important;
  border-color:rgba(255,244,207,.42) !important;
  box-shadow:var(--portal-glass-shadow-hover) !important;
}

body[data-page^="portal-obrero"] :is(.obrero-nav-card,.obrero-home-panel,.station-option,.taller-card,.library-stat):hover::after,
body.analytics-body :is(.analytics-metrics article,.analytics-panel,.analytics-user-chip):hover::after,
body.portal-liquid-glass .admin-card:hover::after{
  transform:translateX(30%) rotate(2deg);
  opacity:.8;
}

body[data-page^="portal-obrero"] :is(input,select,textarea),
body.analytics-body :is(input,select,textarea),
body.portal-liquid-glass :is(input,select,textarea){
  border:1px solid rgba(255,255,255,.2) !important;
  background:rgba(2,12,27,.46) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 9px 24px rgba(0,6,18,.18) !important;
  -webkit-backdrop-filter:blur(18px) saturate(140%) !important;
  backdrop-filter:blur(18px) saturate(140%) !important;
}

body[data-page^="portal-obrero"] :is(input,select,textarea):focus,
body.analytics-body :is(input,select,textarea):focus,
body.portal-liquid-glass :is(input,select,textarea):focus{
  border-color:rgba(242,214,138,.72) !important;
  box-shadow:0 0 0 4px rgba(242,214,138,.12),inset 0 1px 0 rgba(255,255,255,.18) !important;
}

body[data-page^="portal-obrero"] :is(.obrero-nav-icon,.obrero-chip-avatar,.obrero-ai-avatar,.station-number),
body.analytics-body :is(.analytics-topic-row>strong,.analytics-legend i){
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 10px 28px rgba(0,5,17,.28),0 0 24px rgba(220,181,82,.12) !important;
}

@media(max-width:700px){
  :root{--portal-glass-shadow:0 16px 44px rgba(0,8,24,.32),inset 0 1px 0 rgba(255,255,255,.24)}
  body[data-page^="portal-obrero"] :is(.obrero-home-hero,.obrero-home-panel,.obrero-nav-card,.station-option,.library-card),
  body.analytics-body :is(.analytics-header,.analytics-metrics article,.analytics-panel){border-radius:24px !important}
}

@media(prefers-reduced-transparency:reduce){
  body[data-page^="portal-obrero"] :is(.obrero-home-panel,.obrero-nav-card,.obrero-ai-header,.obrero-ai-sidebar,.obrero-ai-chat,.library-card,.station-option),
  body.analytics-body :is(.analytics-header,.analytics-panel),
  body.portal-liquid-glass :is(.admin-card,.admin-gate>div){background:#132944 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important}
}

@media(prefers-reduced-motion:reduce){
  body[data-page^="portal-obrero"] *,body.analytics-body *,body.portal-liquid-glass *{transition:none !important;animation:none !important}
}
