/* OneFenix UX 2026-09-24: presentation only. All data and authorization stay server-owned. */
:root {
  --ux-ink: #141b29;
  --ux-navy: #203148;
  --ux-cobalt: #2f6fed;
  --ux-cobalt-ink: #245aca;
  --ux-cyan: #16c4e5;
  --ux-mist: #f5f8fc;
  --ux-line: #dfe7f0;
  --ux-shadow: 0 12px 32px rgb(27 58 97 / 6%);
  --ux-shadow-hover: 0 18px 38px rgb(27 58 97 / 12%);
}
html { scroll-behavior: smooth; }
body.tailadmin-ui { background: var(--ux-mist); color: var(--ux-ink); }
.tailadmin-ui .experience-shell { grid-template-columns: 252px minmax(0,1fr); }
.tailadmin-ui .experience-shell .sidebar {
  background: #1c2b3d;
  color: #eaf3ff;
  border: 0;
  padding: 23px 14px 18px;
  box-shadow: 8px 0 32px rgb(18 35 59 / 7%);
}
.tailadmin-ui .experience-shell .brand {
  background: #fff;
  border-radius: 13px;
  padding: 15px 18px;
  margin: 0 8px 25px;
  min-height: 69px;
  box-shadow: 0 10px 25px rgb(0 0 0 / 10%);
}
.tailadmin-ui .experience-shell .brand-logo { max-width: 190px; }
.sidebar-caption {
  color: #8eabc5;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .18em;
  margin: 0 18px 7px;
}
.tailadmin-ui .experience-shell .sidebar nav a,
.tailadmin-ui .experience-shell .sidebar summary {
  color: #d8e5f4;
  border-radius: 10px;
  font-weight: 550;
  min-height: 43px;
  padding: 8px 11px;
  font-size: .91rem;
}
.tailadmin-ui .experience-shell .sidebar nav a:hover,
.tailadmin-ui .experience-shell .sidebar summary:hover {
  color: #fff;
  background: #2a435e;
}
.tailadmin-ui .experience-shell .sidebar nav a.active {
  color: #fff;
  background: linear-gradient(105deg,#2f6fed,#1959cf);
  box-shadow: inset 3px 0 0 var(--ux-cyan),0 7px 18px rgb(0 0 0 / 13%);
}
.tailadmin-ui .experience-shell .sidebar details[open] > summary { color: #fff; }
.tailadmin-ui .experience-shell .experience-links,
.tailadmin-ui .experience-shell .experience-admin,
.tailadmin-ui .experience-shell .experience-tools,
.tailadmin-ui .experience-shell .sidebar-user { border-color: #40546a; }
.tailadmin-ui .experience-shell .experience-links { margin-left: 18px; }
.tailadmin-ui .experience-shell .sidebar-user { background: #263b52; border-radius: 13px; padding: 12px; }
.tailadmin-ui .experience-shell .sidebar-user strong { color: #fff; }
.tailadmin-ui .experience-shell .sidebar-user small { color: #b7c9dd; }
.tailadmin-ui .experience-shell .sidebar-user .avatar { background: var(--ux-cobalt); }
.tailadmin-ui .experience-shell .sidebar-user .icon-button { color: #fff; }
.tailadmin-ui .experience-shell .topbar {
  min-height: 72px;
  padding: 0 34px;
  border-color: var(--ux-line);
  box-shadow: 0 2px 14px rgb(24 48 77 / 3%);
}
.tailadmin-ui .global-search { margin: 0 auto 0 0; max-width: 660px; }
.tailadmin-ui .experience-shell .global-search input {
  height: 44px;
  background: #f6f9fc;
  border-color: #dce6f1;
  border-radius: 12px;
  box-shadow: none;
  padding-left: 45px;
}
.tailadmin-ui .experience-shell .global-search input:focus { background: #fff; }
.tailadmin-ui .experience-shell .icon-link {
  border: 0;
  border-radius: 11px;
  color: var(--ux-navy);
  background: #f1f6fc;
  font-size: 0;
  min-width: 44px;
  min-height: 44px;
  justify-content: center;
  padding: 8px;
}
.tailadmin-ui .experience-shell .icon-link .ta-icon { width: 22px; height: 22px; }
.topbar-person { border-left: 1px solid var(--ux-line); padding-left: 19px; display: flex; align-items: center; gap: 10px; white-space: nowrap; font-size: .85rem; font-weight: 700; }
.topbar-person .avatar { width: 34px; height: 34px; background: #dbeafa; color: var(--ux-navy); }
.tailadmin-ui .page { max-width: 1550px; padding: 23px 32px 48px; }
.tailadmin-ui .experience-location { margin-bottom: 14px; font-size: .78rem; }
.tailadmin-ui .page-heading {
  background: #fff;
  border: 1px solid var(--ux-line);
  border-left: 4px solid var(--ux-cyan);
  border-radius: 15px;
  padding: 23px 27px;
  margin-bottom: 17px;
  box-shadow: var(--ux-shadow);
}
.tailadmin-ui .page-heading h1 { color: var(--ux-ink); font-size: clamp(1.75rem,2vw,2.25rem); letter-spacing: -.04em; }
.tailadmin-ui .page-heading p { color: #52677e; }
.tailadmin-ui .panel, .tailadmin-ui .create-panel { border-color: var(--ux-line); border-radius: 14px; box-shadow: var(--ux-shadow); }
.tailadmin-ui .panel-heading { padding: 17px 21px; }
.tailadmin-ui .panel-heading h2 { font-size: 1.13rem; letter-spacing: -.02em; }
.tailadmin-ui .document-content { padding: 17px 21px; }
.tailadmin-ui .item-list article { padding: 11px 21px; }
.tailadmin-ui .item-list strong { font-size: .91rem; line-height: 1.38; }
.tailadmin-ui .item-list small, .tailadmin-ui .item-list p { font-size: .8rem; margin-top: 3px; }
.tailadmin-ui .item-list a { text-decoration: none; min-height: 32px; }
.tailadmin-ui .item-list a:hover { text-decoration: underline; }
.tailadmin-ui .empty { min-height: 90px; padding: 18px; }
.tailadmin-ui .empty p { font-size: .88rem; }
.tailadmin-ui .text-link { text-decoration: none; color: var(--ux-cobalt-ink); }
.tailadmin-ui .text-link:hover { text-decoration: underline; }
.tailadmin-ui .primary, .tailadmin-ui .button.primary { background: var(--ux-cobalt); border-color: var(--ux-cobalt); font-weight: 700; }
.tailadmin-ui .primary:hover, .tailadmin-ui .button.primary:hover { background: #245aca; }
.tailadmin-ui .filter-bar { box-shadow: var(--ux-shadow); }
.tailadmin-ui .date-chip { border: 0; background: #e8f2ff; color: #245aca; font-weight: 700; }
.tailadmin-ui .metric { box-shadow: var(--ux-shadow); transition: transform .15s ease,box-shadow .15s ease; }
.tailadmin-ui .metric:hover { transform: translateY(-3px); box-shadow: var(--ux-shadow-hover); }
.tailadmin-ui .metric .ta-metric-icon { margin: 0; }
.tailadmin-ui .metric .ta-metric-main strong { font-size: 2rem; }
.tailadmin-ui .metric .ta-metric-main small { font-size: .72rem; }
.tailadmin-ui .metric.violet { background: #f1f9ff; }
.tailadmin-ui .metric.blue { background: #f1f5ff; }
.tailadmin-ui .metric.green { background: #ecfaf5; }
.tailadmin-ui .metric.amber { background: #fff8e9; }
.day-hero { background: linear-gradient(115deg,#fff 43%,#eef7ff 100%) !important; align-items: center; position: relative; overflow: hidden; }
.day-hero::after { content: ''; position: absolute; width: 240px; height: 240px; right: -70px; top: -140px; border: 34px solid rgb(22 196 229 / 13%); border-radius: 50%; pointer-events: none; }
.day-hero .eyebrow { color: var(--ux-cobalt-ink) !important; }
.day-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 13px; position: relative; z-index: 1; }
.day-hero-actions .primary { min-height: 41px; padding: 7px 14px; gap: 12px; }
.day-hero-actions .text-link { min-height: 41px; }
.day-metrics { margin-bottom: 17px !important; }
.day-metrics .metric { min-height: 128px; padding: 17px 18px; gap: 4px; }
.day-metrics .metric .ta-metric-icon { width: 32px; height: 32px; }
.day-metrics .metric .ta-metric-icon svg { width: 20px; height: 20px; }
.day-sections { display: grid; grid-template-columns: minmax(0,1fr); }
.day-overview { margin-bottom: 17px !important; gap: 17px; }
.day-panel { min-width: 0; }
.day-panel .panel-heading { display: flex; justify-content: space-between; gap: 12px; }
.day-panel .panel-heading > div { display: flex; align-items: center; gap: 10px; }
.day-step { display: inline-grid; place-items: center; width: 27px; height: 27px; border-radius: 8px; background: #e4f4fd; color: #086382; font-size: .72rem; font-weight: 800; }
.day-panel-decide .day-step { background: #eef0ff; color: #245aca; }
.day-panel-do .day-step { background: #e7faf1; color: #087047; }
.day-panel-hint { font-size: .73rem; color: #60738b; }
.day-panel .document-content { border-bottom: 1px solid #ecf0f5; }
.day-panel .document-content:last-child { border-bottom: 0; }
.day-panel .document-content h3 { font-size: .92rem; margin: 0 0 6px; }
.day-panel .document-content p { font-size: .81rem; line-height: 1.5; margin: 0; }
.day-panel .document-content > .text-link { min-height: 34px; margin-top: 5px; }
.day-panel .item-list .status { flex: 0 0 auto; white-space: nowrap; }
.day-panel-do .document-content { padding-top: 13px; padding-bottom: 13px; }
.day-community { margin-top: 21px; }
.day-community-heading { display: flex; justify-content: space-between; align-items: end; gap: 16px; margin-bottom: 11px; }
.day-community-heading .eyebrow { margin: 0 0 3px; color: var(--ux-cobalt-ink); }
.day-community-heading h2 { margin: 0; font-size: 1.13rem; letter-spacing: -.02em; }
.day-community-heading > p { margin: 0; color: #60738b; font-size: .8rem; }
.day-community-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.day-community-card { min-width: 0; }
.day-community-card .panel-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.day-community-card .panel-heading h3 { margin: 0; font-size: .94rem; }
.day-community-card .panel-heading a { font-size: .78rem; white-space: nowrap; }
.day-community-list { list-style: none; padding: 0 20px 11px; margin: 0; }
.day-community-list li { display: flex; align-items: center; gap: 12px; min-height: 48px; border-top: 1px solid #ecf0f5; padding: 5px 0; }
.day-community-list li:first-child { border-top: 0; }
.day-community-list a { color: var(--ux-ink); font-weight: 650; line-height: 1.35; text-decoration: none; padding: 8px 0; }
.day-community-list a:hover { color: var(--ux-cobalt-ink); text-decoration: underline; }
.day-community-list a:focus-visible { outline: 3px solid var(--ux-cobalt); outline-offset: 2px; border-radius: 3px; }
.day-community-list small { display: block; color: #60738b; line-height: 1.35; font-size: .75rem; }
.day-community-date, .day-community-type { flex: 0 0 auto; border-radius: 99px; background: #edf3ff; color: var(--ux-cobalt-ink); padding: 5px 9px; font-size: .72rem; font-weight: 750; }
.day-community-date { min-width: 58px; text-align: center; }
.day-community-empty { margin: 0; padding: 5px 21px 20px; color: #60738b; font-size: .84rem; }
.birthday-admin .document-content .form-grid { align-items: end; grid-template-columns: minmax(0,1fr) auto; }
.birthday-admin .document-content .form-grid button { min-height: 44px; }
.birthday-admin .document-content > p { margin: 8px 0 0; color: #60738b; font-size: .8rem; }
.birthday-admin-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(190px,240px) auto; gap: 16px; align-items: end; border-top: 1px solid #ecf0f5; padding: 15px 21px; }
.birthday-admin-row > div { align-self: center; }
.birthday-admin-row strong, .birthday-admin-row small { display: block; }
.birthday-admin-row small { color: #60738b; margin-top: 3px; }
.birthday-admin-row label { margin: 0; }
.birthday-admin-row input { width: 100%; }
.birthday-admin-row button { min-height: 44px; }
.widget-profile-panel .filter-row { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.widget-profile-panel .filter-row a { display: inline-flex; min-width: 55px; min-height: 40px; justify-content: center; align-items: center; padding: 7px 12px; border: 1px solid #d9e4f0; border-radius: 9px; color: #314c68; background: #f8fbfe; font-weight: 700; text-decoration: none; }
.widget-profile-panel .filter-row a[aria-current] { background: var(--ux-cobalt); color: #fff; border-color: var(--ux-cobalt); }
.widget-profile-panel .document-content p { font-size: .82rem; color: #5b6f86; margin-bottom: 0; }
.widget-rule-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; padding: 16px; }
.widget-rule-card { border: 1px solid var(--ux-line); border-radius: 12px; background: #fff; box-shadow: 0 4px 16px rgb(26 49 78 / 4%); }
.widget-rule-card h3 { margin: 0 0 4px; }
.widget-rule-card p { margin: 0 0 12px; color: #66788b; font-size: .8rem; }
.widget-rule-card .form-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.widget-rule-card .form-grid label { font-size: .76rem; }
.widget-rule-card select, .widget-rule-card input { width: 100%; }
.widget-rule-card button { margin-top: 12px; }
.public-page.tailadmin-ui { background: #fff; }
.tailadmin-ui .auth-shell { min-height: 100svh; }
.tailadmin-ui .auth-intro { position: relative; overflow: hidden; background: linear-gradient(145deg,#e8f7ff 0%,#f0f5ff 58%,#dbeafa 100%); padding: clamp(40px,6vw,95px); }
.tailadmin-ui .auth-intro::before { content: ''; position: absolute; width: 520px; height: 520px; right: -230px; bottom: -255px; border: 65px solid rgb(47 111 237 / 10%); border-radius: 50%; }
.tailadmin-ui .auth-intro::after { content: ''; position: absolute; width: 250px; height: 250px; right: 5%; top: 7%; border: 36px solid rgb(22 196 229 / 13%); border-radius: 50%; }
.tailadmin-ui .auth-intro > * { position: relative; z-index: 1; }
.tailadmin-ui .auth-brand { margin-bottom: 48px; }
.tailadmin-ui .auth-brand .brand-logo { max-width: 370px; }
.tailadmin-ui .auth-intro h2 { color: var(--ux-navy); max-width: 11ch; font-size: clamp(2.8rem,4vw,4.8rem); line-height: 1.04; letter-spacing: -.065em; }
.tailadmin-ui .auth-intro p { font-size: 1.05rem; max-width: 34ch; color: #3f5b76; }
.tailadmin-ui .auth-accent { width: 65px; height: 5px; background: var(--ux-cyan); margin: 25px 0; border-radius: 9px; }
.auth-values { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 54px; }
.auth-values span { border: 1px solid #bad7ef; background: rgb(255 255 255 / 57%); border-radius: 99px; padding: 7px 11px; font-size: .68rem; font-weight: 800; letter-spacing: .11em; color: #2d5c83; }
.tailadmin-ui .auth-shell > #contenido { max-width: 550px; padding: 42px; }
.tailadmin-ui .auth-card h1 { font-size: clamp(2rem,2.4vw,2.65rem); letter-spacing: -.05em; line-height: 1.1; max-width: 12ch; margin-bottom: 12px; }
.tailadmin-ui .auth-card .eyebrow { font-size: .72rem !important; margin-bottom: 12px; }
.tailadmin-ui .auth-card .muted { font-size: .93rem; max-width: 44ch; }
.tailadmin-ui .auth-card .stack { gap: 16px; margin-top: 30px; }
.tailadmin-ui .auth-card .stack input { min-height: 48px; border-radius: 10px; }
.tailadmin-ui .auth-card .stack label { font-size: .85rem; }
.tailadmin-ui .auth-card .primary { min-height: 51px; justify-content: space-between; padding: 10px 18px; }
.tailadmin-ui .auth-card > .text-link { display: inline-flex; margin-top: 8px; }
.mobile-dock { display: none; }
@media (max-width: 1200px) {
  .topbar-person > span:last-child { display: none; }
  .widget-rule-card .form-grid { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 1000px) {
  .tailadmin-ui .experience-shell { grid-template-columns: minmax(0,1fr); }
  .tailadmin-ui .experience-shell .topbar { padding: 8px 16px; min-height: 109px; gap: 8px; }
  .tailadmin-ui .experience-shell .icon-link { font-size: 0; }
  .tailadmin-ui .experience-shell .icon-link .ta-icon { display: block; }
  .topbar-person { display: none; }
  .tailadmin-ui .page { padding: 18px 20px 72px; }
  .birthday-admin-row { grid-template-columns: minmax(0,1fr) minmax(180px,230px); }
  .birthday-admin-row button { grid-column: 2; }
}
@media (max-width: 767px) {
  .tailadmin-ui .page { padding: 13px 13px calc(95px + env(safe-area-inset-bottom)); }
  .tailadmin-ui .experience-location { margin-bottom: 9px; }
  .tailadmin-ui .page-heading { padding: 19px; gap: 11px; border-radius: 12px; }
  .tailadmin-ui .page-heading h1 { font-size: 1.8rem; }
  .tailadmin-ui .page-heading p { font-size: .87rem; }
  .tailadmin-ui .panel-heading { padding: 13px 16px; }
  .tailadmin-ui .document-content { padding: 13px 16px; }
  .tailadmin-ui .item-list article { padding: 11px 16px; }
  .tailadmin-ui .metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .tailadmin-ui .metric { padding: 11px; min-width: 0; }
  .tailadmin-ui .metric .ta-metric-main strong { font-size: 1.6rem; }
  .tailadmin-ui .metric .ta-metric-main small { display: none; }
  .day-hero-actions { width: 100%; gap: 7px; }
  .day-hero-actions .date-chip { order: -1; }
  .day-hero-actions .primary { flex: 1; }
  .day-metrics .metric { min-height: 105px; padding: 11px; }
  .day-metrics .metric > span:nth-child(2) { font-size: .76rem; line-height: 1.25; }
  .day-panel-hint { display: none; }
  .day-overview { gap: 12px; }
  .day-community-heading { display: block; }
  .day-community-heading > p { margin-top: 3px; }
  .day-community-grid { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .day-community-list { padding: 0 16px 9px; }
  .day-community-card .panel-heading a { min-height: 44px; display: inline-flex; align-items: center; }
  .birthday-admin .document-content .form-grid, .birthday-admin-row { grid-template-columns: minmax(0,1fr); }
  .birthday-admin-row button { grid-column: 1; }
  .widget-rule-grid { grid-template-columns: minmax(0,1fr); padding: 10px; }
  .widget-rule-card .form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .widget-rule-card .form-grid label:last-child { grid-column: 1/-1; }
  .mobile-dock {
    display: flex;
    position: fixed;
    z-index: 19;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 7px 7px calc(7px + env(safe-area-inset-bottom));
    border-top: 1px solid #dce6f1;
    background: rgb(255 255 255 / 97%);
    box-shadow: 0 -10px 28px rgb(20 45 75 / 9%);
    gap: 2px;
    justify-content: space-around;
  }
  .mobile-dock a { display: flex; min-width: 0; flex: 1; min-height: 54px; align-items: center; justify-content: center; flex-direction: column; gap: 2px; padding: 5px 2px; border-radius: 9px; color: #52677e; font-size: .64rem; line-height: 1.2; text-decoration: none; font-weight: 650; text-align: center; }
  .mobile-dock a .ta-icon { width: 21px; height: 21px; }
  .mobile-dock a.active { background: #eaf2ff; color: #245aca; }
  .mobile-dock a:focus-visible { outline: 3px solid #245aca; outline-offset: -3px; }
  .tailadmin-ui .auth-shell { display: flex; flex-direction: column; min-height: 100svh; max-width: none; }
  .tailadmin-ui .auth-intro { min-height: 155px; align-items: flex-start; padding: 20px 24px 18px; }
  .tailadmin-ui .auth-intro::before { width: 210px; height: 210px; right: -110px; bottom: -125px; border-width: 30px; }
  .tailadmin-ui .auth-intro::after, .auth-values { display: none; }
  .tailadmin-ui .auth-brand { margin: 0; justify-content: flex-start; }
  .tailadmin-ui .auth-brand .brand-logo { max-width: 210px; }
  .tailadmin-ui .auth-intro h2 { display: block; font-size: 1.25rem; max-width: none; margin: 14px 0 0; letter-spacing: -.02em; }
  .tailadmin-ui .auth-shell > #contenido { max-width: 560px; padding: 27px 24px 48px; margin: 0 auto; }
  .tailadmin-ui .auth-card h1 { font-size: 2rem; }
}
@media (max-width: 365px) {
  .mobile-dock a { font-size: .59rem; }
  .widget-rule-card .form-grid { grid-template-columns: minmax(0,1fr); }
  .widget-rule-card .form-grid label:last-child { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .tailadmin-ui .metric { transition: none; }
}
