/* Euexia Life Lab · Neo-brutalismo funcional, accesible y mobile-first */
:root{
  --nb-black:#050505;
  --nb-white:#fff;
  --nb-paper:#f7f7f2;
  --nb-lime:#baff29;
  --nb-pink:#ff58b0;
  --nb-yellow:#ffe600;
  --nb-cyan:#53d9ff;
  --nb-orange:#ff8a3d;
  --nb-violet:#b79cff;
  --nb-green:#77efb0;
  --nb-border:3px solid var(--nb-black);
  --nb-shadow:5px 5px 0 var(--nb-black);
  --nb-shadow-small:3px 3px 0 var(--nb-black);
  --navy:var(--nb-black);
  --navy2:var(--nb-black);
  --teal:#006b60;
  --mint:#dfffd2;
  --paper:var(--nb-paper);
  --white:var(--nb-white);
  --ink:var(--nb-black);
  --muted:#414141;
  --line:var(--nb-black);
  --gold:var(--nb-yellow);
  --coral:#e8452f;
  --shadow:var(--nb-shadow);
  color:var(--nb-black);
  background:var(--nb-paper);
  font-family:Inter,Aptos,Arial,sans-serif;
}

/* Los accesos a programas sensibles permanecen fuera de la interfaz hasta que
   /api/me confirme el permiso. Esta regla prevalece sobre los display:flex de
   las variantes de navegación de escritorio y móvil. */
#main-nav [data-sensitive-program][hidden]{display:none!important}

/* 3.15 · equipo profesional y censo administrador */
.professional-profile-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:start}
.profile-photo{width:54px;height:54px;border:var(--nb-border);border-radius:8px;overflow:hidden;background:var(--nb-cyan);box-shadow:3px 3px 0 var(--nb-black);display:grid;place-items:center;font-weight:950}
.profile-photo.large{width:104px;height:104px;flex:0 0 104px;background:var(--nb-yellow);font-size:1.8rem}
.profile-photo img{width:100%;height:100%;display:block;object-fit:contain;object-position:center top;background:#fff}
.my-profile-identity{display:flex;align-items:flex-start;gap:18px;min-width:0}
.my-profile-identity>div:last-child{min-width:0}
.professional-card-main{min-width:0}.professional-card-actions{display:flex;flex-direction:column;gap:8px}.professional-week-kpis{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.professional-week-kpis span,.professional-focus small{border:2px solid #000;background:#fff;padding:7px 9px;font-weight:700}.professional-week-kpis span:first-child{background:var(--nb-yellow,#ffe600)}.professional-week-kpis span:nth-child(2){background:var(--nb-cyan,#52d9ff)}.professional-next{background:#f5f5f5;border-left:6px solid #000;padding:10px}.professional-focus{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.professional-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.live-work-status{display:inline-flex;max-width:320px;border:2px solid #000;background:#eee;padding:7px 9px;font-size:.72rem;font-weight:900;line-height:1.3;text-transform:uppercase}.live-work-status.is-working{background:var(--nb-lime,#b9ff38);box-shadow:3px 3px 0 #000}.professional-week-kpis span:nth-child(3){background:var(--nb-pink,#ff70bb)}.weekly-type-breakdown{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.weekly-type-breakdown span{border:2px solid #000;background:#fff;padding:6px 8px;font-size:.72rem}.professional-photo{width:62px;height:62px;min-width:62px;border:3px solid #000;box-shadow:4px 4px 0 #000}.professional-photo img{width:100%;height:100%;object-fit:contain;object-position:center top;background:#fff}.profile-photo.professional-photo{overflow:hidden;background:#fff}
.admin-roster-card{margin:24px 0;background:var(--nb-lime,#b9ff39)!important}.admin-roster-card .section-head{align-items:flex-start}.admin-roster-card #admin-roster-metrics{display:flex;flex-wrap:wrap;gap:8px}.admin-roster-card #admin-roster-metrics>*{background:#fff;border:2px solid #000;padding:8px 10px;box-shadow:3px 3px 0 #000}.admin-participant-roster{display:grid;gap:10px}.admin-participant-row{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#fff;border:3px solid #000;padding:14px;box-shadow:4px 4px 0 #000}.admin-participant-row>div{display:grid;gap:4px}.admin-participant-row span{font-weight:900;font-size:.72rem;letter-spacing:.05em}.admin-participant-row.is-participating span{color:#087b5d}.admin-participant-row.is-history{background:#eee}
#program-permission-list{display:grid;gap:12px;margin-top:16px}#program-permission-list .admin-participant-row>div:last-child{gap:12px;min-width:min(100%,620px)}#program-permission-list form{display:grid;grid-template-columns:minmax(130px,.5fr) minmax(260px,1fr) auto;gap:10px;align-items:center;border-top:2px solid #000;padding-top:10px}#program-permission-list form:first-child{border-top:0;padding-top:0}#program-permission-list .assignment-chips{margin:0}#program-permission-list .assignment-chips label{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:800}#program-permission-list input[type="checkbox"]{width:auto}
.toggle-program-participation{font-size:0}.toggle-program-participation::after{font-size:.84rem;font-weight:900}.toggle-program-participation[data-active="1"]::after{content:"MANDAR AL EQUIPO"}.toggle-program-participation[data-active="0"]{background:#b9ff39}.toggle-program-participation[data-active="0"]::after{content:"✓ EN EL EQUIPO · RETIRAR"}
.person-team-state{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 4px;padding:10px;border:2px solid #000;background:#fff}.person-team-state span{font-size:.72rem;font-weight:950;letter-spacing:.04em}.person-card.is-in-history{background:#efefef!important}.person-card.is-in-history .person-team-state{background:#fff9bd}.person-team-toggle{min-height:42px}
@media(max-width:760px){.professional-profile-card{grid-template-columns:auto 1fr}.professional-card-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.professional-card-actions:has(:only-child){grid-template-columns:1fr}.professional-heading{flex-direction:column}.live-work-status{max-width:none;width:100%;box-sizing:border-box}.admin-participant-row{align-items:stretch;flex-direction:column}.admin-participant-row button{width:100%;min-height:52px}#program-permission-list form{grid-template-columns:1fr}.professional-focus small{font-size:.78rem}.operations-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.my-profile-identity{flex-direction:column}.profile-photo.large{width:92px;height:92px;flex-basis:92px}.profile-self-actions{display:grid;grid-template-columns:1fr}.profile-self-actions button{width:100%}}

html{scroll-behavior:smooth;background:var(--nb-paper)}
body{background:var(--nb-paper);color:var(--nb-black)}
button,input,select,textarea{font:inherit;color:var(--nb-black)}
button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:4px solid #6d3dff;
  outline-offset:3px;
}

h1,h2,.operations-heading h2,.section-head h2,.participant-welcome h1{
  color:var(--nb-black)!important;
  font-family:"Arial Black","Archivo Black",Impact,Arial,sans-serif!important;
  font-weight:900!important;
  letter-spacing:-.045em;
  line-height:.98;
}
.eyebrow,.topbar small{color:var(--nb-black);font-weight:950;letter-spacing:.13em}

.primary,.secondary,.ghost,.chip,.inspire-cta,.participant-primary,.participant-logout,
.participant-ideas button,.participant-week button,.participant-goals>button,.quick-slots button{
  min-height:48px;
  border:var(--nb-border)!important;
  border-radius:8px!important;
  box-shadow:var(--nb-shadow-small)!important;
  color:var(--nb-black)!important;
  font-weight:900!important;
  transition:transform .08s ease,box-shadow .08s ease;
}
.primary,.participant-primary,.participant-pending button{background:var(--nb-lime)!important}
.secondary{background:var(--nb-cyan)!important}
.ghost{background:var(--nb-white)!important}
.inspire-cta{background:var(--nb-pink)!important}
.chip{background:var(--nb-white)!important}
.chip.active{background:var(--nb-yellow)!important}
.primary:active,.secondary:active,.ghost:active,.chip:active,.inspire-cta:active,
.participant-primary:active,.participant-logout:active,.participant-ideas button:active,
.participant-week button:active,.participant-goals>button:active,.quick-slots button:active{
  transform:translate(3px,3px);
  box-shadow:0 0 0 var(--nb-black)!important;
}

input,select,textarea{
  width:100%;
  min-height:48px;
  border:var(--nb-border)!important;
  border-radius:7px!important;
  background:var(--nb-white)!important;
  box-shadow:none!important;
  padding:12px!important;
}
textarea{min-height:96px}
select[multiple]{min-height:150px}
label{color:var(--nb-black)!important;font-weight:850!important}

.card,.today-panel,.metric-grid article,.people-grid article,.mission-grid article,
.operations-section,.calendar-commandbar,.calendar-event,.professional-row,
.notification-card,.person-card,.user-card,.my-profile-card,.work-total-card{
  border:var(--nb-border)!important;
  border-radius:10px!important;
  box-shadow:var(--nb-shadow)!important;
  background:var(--nb-white);
}
.operations-metrics button{
  border:var(--nb-border)!important;
  border-radius:8px!important;
  box-shadow:var(--nb-shadow-small)!important;
  color:var(--nb-black)!important;
}
.operations-metrics button:nth-child(1){background:var(--nb-lime)!important}
.operations-metrics button:nth-child(2){background:var(--nb-cyan)!important}
.operations-metrics button:nth-child(3){background:var(--nb-pink)!important}
.operations-metrics button:nth-child(4){background:var(--nb-yellow)!important}
.operations-metrics button:active{transform:translate(3px,3px);box-shadow:0 0 0!important}

.people-grid article:nth-child(4n+1),.mission-grid article:nth-child(4n+1){background:#efffd2}
.people-grid article:nth-child(4n+2),.mission-grid article:nth-child(4n+2){background:#dff7ff}
.people-grid article:nth-child(4n+3),.mission-grid article:nth-child(4n+3){background:#fff0f8}
.people-grid article:nth-child(4n),.mission-grid article:nth-child(4n){background:#fff9bd}
.functional-label,.program-link-badge,.running-badge,.oliva-badge,.status-badge{
  border:2px solid var(--nb-black)!important;
  border-radius:999px!important;
  color:var(--nb-black)!important;
  font-weight:950!important;
}
.mission-card-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:auto}.mission-card-actions .mission-detail{flex:1 1 100%}.mission-card-actions .edit-mission,.mission-card-actions .delete-mission{flex:1 1 7rem}.coverage-person-name{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.coverage-person-name .oliva-badge{font-size:.65rem;padding:.18rem .4rem}.reformulation-confirmation{display:block;margin:.7rem 0;padding:.65rem .75rem;border:2px solid #000;background:#b7ff2a;box-shadow:3px 3px 0 #000}.reformulation-confirmation[hidden]{display:none}
.functional-label{background:var(--nb-yellow)!important}

.sidebar{background:var(--nb-black);border-right:var(--nb-border);color:var(--nb-white)}
.brand-mark{border:3px solid var(--nb-white);border-radius:7px;color:var(--nb-yellow);box-shadow:3px 3px 0 var(--nb-pink)}
.nav-item{border:2px solid transparent;color:var(--nb-white);font-weight:850;border-radius:7px}
.nav-item:hover,.nav-item.active{background:var(--nb-lime);border-color:var(--nb-white);color:var(--nb-black);box-shadow:3px 3px 0 var(--nb-white)}
.pilot-badge{border-top:2px solid var(--nb-white)}
.pilot-badge>span{background:var(--nb-lime);box-shadow:0 0 0 4px #baff2940}
.pilot-badge small{color:#ddd}

.topbar{background:var(--nb-yellow);border-bottom:var(--nb-border)}
.topbar h1{color:var(--nb-black);font-size:clamp(1.45rem,3vw,2.25rem)}
.topbar-account-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.notification-bell{position:relative;width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border:var(--nb-border);border-radius:8px;background:#fff;color:var(--nb-black);box-shadow:var(--nb-shadow-small);font-size:1.45rem;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}
.notification-bell>span{display:block;line-height:1;filter:grayscale(1)}
.notification-bell>i{position:absolute;right:4px;top:4px;width:12px;height:12px;border:2px solid #000;border-radius:50%;background:#ff4d4d}
.notification-bell.is-active{background:var(--nb-lime)}
.notification-bell.is-active>span{filter:none;animation:euexia-bell-ring .45s ease-out}
.notification-bell.is-active>i{background:#00a86b}
.notification-bell:active{transform:translate(3px,3px);box-shadow:none}
@keyframes euexia-bell-ring{0%,100%{transform:rotate(0)}25%{transform:rotate(-13deg)}75%{transform:rotate(13deg)}}
.admin-view-toggle{min-height:46px;padding:9px 14px;border:var(--nb-border);border-radius:8px;background:var(--nb-cyan);color:var(--nb-black);box-shadow:var(--nb-shadow-small);font-weight:950;cursor:pointer}
.admin-view-toggle:active{transform:translate(3px,3px);box-shadow:none}
.admin-worker-mode .admin-view-toggle{background:var(--nb-lime)}
.profile-self-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.profile{width:48px;height:48px;border:var(--nb-border);border-radius:8px;background:var(--nb-pink);color:var(--nb-black);box-shadow:var(--nb-shadow-small)}
#toast{border:var(--nb-border);border-radius:8px;background:var(--nb-black);color:var(--nb-white);box-shadow:5px 5px 0 var(--nb-pink)}

dialog{
  border:var(--nb-border)!important;
  border-radius:10px!important;
  box-shadow:8px 8px 0 var(--nb-black)!important;
  background:var(--nb-paper);
  max-height:min(90dvh,900px);
  overflow:auto;
}
dialog::backdrop{background:#53d9ffb8;backdrop-filter:none}
.dialog-close{width:48px;height:48px;border:var(--nb-border)!important;border-radius:7px!important;background:var(--nb-pink)!important;color:var(--nb-black)!important;font-weight:950;z-index:2}

.access-screen{background:var(--nb-cyan)!important;padding:20px}
.access-card{border:var(--nb-border)!important;border-radius:10px!important;box-shadow:9px 9px 0 var(--nb-black)!important;background:var(--nb-white)!important}
.access-card h1{font-family:"Arial Black",Impact,Arial,sans-serif!important;text-transform:uppercase;color:var(--nb-black)!important}
.access-card .brand-mark{border-color:var(--nb-black);color:var(--nb-black);background:var(--nb-yellow);box-shadow:3px 3px 0 var(--nb-black)}

/* Mi Euexia: misma identidad con menor densidad visual. */
.participant-app{background:var(--nb-paper);color:var(--nb-black);font-family:Inter,Aptos,Arial,sans-serif}
.participant-header{background:var(--nb-yellow);border-bottom:var(--nb-border);color:var(--nb-black)}
.participant-header small{color:var(--nb-black)}
.participant-logout{background:var(--nb-white)!important}
.participant-welcome{background:var(--nb-lime)!important;border:var(--nb-border);border-radius:10px;box-shadow:var(--nb-shadow);color:var(--nb-black)}
.participant-welcome p{color:var(--nb-black)}
.participant-experience,.participant-day-card,.participant-today-card,.participant-no-today,.participant-goals,.participant-achievements,.participant-current-interests,.participant-ideas,.participant-pending{
  border:var(--nb-border)!important;
  border-radius:10px!important;
  box-shadow:var(--nb-shadow)!important;
  color:var(--nb-black);
}
.participant-experience:nth-child(4n+1){background:#efffd2}
.participant-experience:nth-child(4n+2){background:#dff7ff}
.participant-experience:nth-child(4n+3){background:#fff0f8}
.participant-experience:nth-child(4n){background:#fff9bd}
.participant-day-card:nth-child(4n+1){background:#efffd2}
.participant-day-card:nth-child(4n+2){background:#dff7ff}
.participant-day-card:nth-child(4n+3){background:#fff0f8}
.participant-day-card:nth-child(4n){background:#fff9bd}
.participant-day-card.today{border:4px solid var(--nb-black)!important}
.participant-day-card details{border-top:2px solid var(--nb-black)}
.participant-day-card summary{min-height:58px}
.participant-day-detail{border:2px solid var(--nb-black);border-radius:7px;background:var(--nb-white)}
.participant-today-card a,.participant-no-today a{min-height:48px;display:grid;place-items:center;border:var(--nb-border);border-radius:7px;background:var(--nb-yellow);box-shadow:var(--nb-shadow-small);color:var(--nb-black)}
.participant-answer{background:var(--nb-white);border:2px solid var(--nb-black);border-radius:7px}
.participant-answer.purpose{background:var(--nb-yellow)}
.participant-empty{border:2px dashed var(--nb-black);border-radius:8px;background:var(--nb-white);color:var(--nb-black)}
.participant-ideas{background:var(--nb-cyan)}
.participant-ideas button:nth-child(1){background:var(--nb-lime)!important}
.participant-ideas button:nth-child(2){background:var(--nb-yellow)!important}
.participant-ideas button:nth-child(3){background:var(--nb-pink)!important}
.participant-goals>button{background:var(--nb-lime)!important}
.participant-goal{border:2px solid var(--nb-black);border-radius:8px;background:var(--nb-white)}
.participant-goal.achieved{background:var(--nb-yellow)}
.goal-dots i{border-color:var(--nb-black)}
.goal-dots i.filled{background:var(--nb-lime);border-color:var(--nb-black)}
.participant-bottom-nav{background:var(--nb-black);border-top:3px solid var(--nb-black);box-shadow:0 -4px 0 var(--nb-pink)}
.participant-bottom-nav a{min-height:58px;color:var(--nb-white);border-radius:7px;font-weight:900}
.participant-bottom-nav a:hover,.participant-bottom-nav a:focus{background:var(--nb-lime);color:var(--nb-black)}
.participant-dialog form{padding:24px}
.face-rating label{min-height:74px;border:2px solid var(--nb-black);border-radius:7px;background:var(--nb-white)}
.face-rating label:has(input:checked){background:var(--nb-lime);border-color:var(--nb-black);box-shadow:var(--nb-shadow-small)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

@media(max-width:720px){
  body{padding-bottom:84px}
  .app-shell{display:block}
  .sidebar{
    position:fixed;
    inset:auto 0 0 0;
    z-index:50;
    width:100%;
    height:auto;
    padding:0;
    transform:none!important;
    border:0;
    border-top:var(--nb-border);
    background:var(--nb-white);
    overflow:visible;
  }
  .sidebar>.brand,.sidebar>.pilot-badge{display:none}
  .sidebar nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;padding:6px 5px calc(6px + env(safe-area-inset-bottom));gap:4px}
  .sidebar .nav-item{
    min-width:0;
    min-height:58px;
    margin:0;
    padding:7px 5px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:3px;
    border:2px solid transparent;
    background:transparent;
    color:var(--nb-black);
    font-size:1.2rem;
    text-align:center;
  }
  .sidebar .nav-item span,.nav-more>summary span{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;font-weight:950}
  .sidebar .nav-item.active{background:var(--nb-lime);border-color:var(--nb-black);box-shadow:2px 2px 0 var(--nb-black)}
  .sidebar .nav-item:active{transform:translate(2px,2px);box-shadow:none}
  .nav-more{min-width:0;position:static}
  .nav-more>summary{min-height:58px;padding:7px 5px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--nb-black)!important;font-weight:950;list-style:none}
  .nav-more>summary::-webkit-details-marker{display:none}
  .nav-more[open]>summary{background:var(--nb-yellow);border:2px solid var(--nb-black);border-radius:7px}
  .nav-more>div{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:82px!important;
    z-index:60;
    max-height:65dvh;
    overflow:auto;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    padding:12px!important;
    border:var(--nb-border)!important;
    border-radius:10px!important;
    background:var(--nb-yellow)!important;
    box-shadow:7px 7px 0 var(--nb-black)!important;
  }
  .nav-more>div .nav-item{width:100%;min-height:54px;flex:1 1 auto;background:var(--nb-white);border-color:var(--nb-black);box-shadow:2px 2px 0 var(--nb-black);font-size:1rem}
  .nav-group-label{grid-column:1/-1;color:var(--nb-black)!important;font-weight:950}
  main{padding-bottom:18px}
  .topbar{position:sticky;top:0;z-index:25;height:auto;min-height:76px;padding:10px 14px;gap:10px}
  #menu-button{display:none!important}
  .topbar small{font-size:.62rem}
  .topbar h1{font-size:clamp(1.2rem,6vw,1.65rem);margin-top:3px}
  .topbar-account-actions{gap:7px}
  .admin-view-toggle{max-width:132px;min-height:48px;padding:6px 9px;font-size:.72rem;line-height:1.05;text-transform:uppercase}
  .profile,.notification-bell{flex:0 0 48px}
  .view{padding:22px 13px 36px}
  .operations-heading,.section-head,.pras-section-head{align-items:flex-start;gap:12px;flex-direction:column}
  .operations-heading h2,.section-head h2{font-size:clamp(2rem,11vw,3.2rem);overflow-wrap:anywhere}
  .operations-clock{align-self:stretch;display:flex;align-items:center;justify-content:space-between}
  .operations-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .operations-metrics button{min-height:96px;padding:12px}
  .operations-metrics button:last-child{grid-column:1/-1}
  .operations-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .operations-actions>*{width:100%;margin:0!important}
  .operations-columns,.metric-grid,.people-grid,.mission-grid,.two-col,.hero-grid,
  .scale-pair,.my-work-summary,.team-overview,.user-grid,.pras-filters,.ap-insight-grid,.ap-record-columns{
    grid-template-columns:1fr!important;
  }
  .card,.today-panel,.metric-grid article,.people-grid article,.mission-grid article,
  .operations-section,.notification-card{padding:16px!important;box-shadow:4px 4px 0 var(--nb-black)!important}
  .section-head{margin:24px 0 14px}
  .section-head>button,.section-head>.settings-actions,.agenda-head-actions{width:100%}
  .section-head>button,.settings-actions button,.agenda-head-actions button{width:100%}
  .filter-row,.mission-category-tabs,.agenda-filters{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:5px;scroll-snap-type:x proximity}
  .filter-row>*,.mission-category-tabs>*{flex:0 0 auto;scroll-snap-align:start}
  dialog{width:calc(100% - 18px)!important;max-width:none!important;max-height:92dvh;margin:auto;box-shadow:5px 5px 0 var(--nb-black)!important}
  dialog form,.mission-detail-shell{padding:22px 15px!important}
  dialog h2{font-size:clamp(1.8rem,9vw,2.6rem)!important;padding-right:42px}
  .dialog-close{right:10px;top:10px}
  #toast{left:10px;right:10px;top:88px;text-align:center}
  .calendar-commandbar{padding:10px}
  .calendar-views{overflow-x:auto}
  .calendar-views button,.calendar-date-nav button{min-height:48px}
  .week-view{grid-template-columns:1fr!important}
  .calendar-day{min-height:0!important}
  .agenda-item,.pras-person-card,.pras-record-card,.ap-record-card,.professional-row{grid-template-columns:1fr!important}
  .agenda-actions,.person-admin-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .agenda-actions button,.person-admin-actions button{min-height:48px}
  .mission-detail-grid,.similar-activities>div,.evolution-coverage-grid{grid-template-columns:1fr!important}
  .face-rating{gap:5px}
  .participant-app{padding-bottom:0}
  .participant-header{position:sticky;top:0;z-index:20;height:auto;min-height:76px;padding:10px 12px}
  .participant-header-actions{gap:6px;flex-direction:row}
  .participant-logout{min-height:44px;padding:8px 10px!important;font-size:.78rem}
  .participant-main{padding:18px 12px 105px}
  .participant-welcome,.participant-experience,.participant-day-card,.participant-today-card,.participant-no-today,.participant-goals,.participant-achievements,.participant-current-interests,.participant-ideas,.participant-pending{padding:16px;box-shadow:4px 4px 0 var(--nb-black)!important}
  .participant-welcome h1{font-size:clamp(2rem,11vw,3.2rem)}
  .participant-week{align-items:center}
  .participant-week label{min-width:0;flex:1}
  .participant-week button{flex:0 0 48px}
  .participant-date{flex-direction:row;align-items:center;flex-wrap:wrap}
  .participant-ideas>div:first-of-type,.participant-goals>#participant-goals{grid-template-columns:1fr!important}
  .participant-bottom-nav{grid-template-columns:repeat(4,1fr);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .participant-bottom-nav a{padding:6px 2px;font-size:1.15rem}
  .participant-bottom-nav span{font-size:.58rem;text-transform:uppercase}
}

.user-card.account-inactive{background:#e7e7e7;opacity:.82}
.user-card.account-active{background:#fff}
.account-state{display:inline-flex;width:max-content;padding:.25rem .55rem;border:2px solid #000;background:#a8ff38;font-size:.72rem;font-weight:900;letter-spacing:.05em}
.account-inactive .account-state{background:#ff8fa3}
.account-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin:.75rem 0}
.account-active-check{display:flex!important;align-items:center;gap:.65rem;padding:.8rem;border:2px solid #000;background:#fff27a;font-weight:900}
.account-active-check input{width:1.35rem;height:1.35rem;margin:0}
#change-my-password{margin-top:.75rem}
.ai-activity-result{display:grid;gap:.3rem;margin-top:.8rem;padding:.85rem 1rem;border:3px solid #000;box-shadow:4px 4px 0 #000;color:#000}
.ai-activity-result[hidden]{display:none}
.ai-activity-result strong{font-size:1rem;font-weight:950}
.ai-activity-result span{font-size:.9rem;line-height:1.35}
.ai-activity-result.loading{background:#fff27a}
.ai-activity-result.success{background:#a8ff38}
.ai-activity-result.error{background:#ff9fb2}
.consent-help{padding:.8rem;border:2px solid #000;background:#fff27a;font-weight:800}
.consent-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0;padding:1rem;border:3px solid #000;box-shadow:5px 5px 0 #000}
.consent-card>div{display:grid;gap:.25rem}.consent-card.pending{background:#fff27a}.consent-card.signed{background:#a8ff38}.consent-card strong{font-size:1.05rem}.consent-card small{line-height:1.35}
.consent-dialog{width:min(760px,calc(100vw - 20px))}.consent-document{max-height:280px;overflow:auto;margin:.8rem 0;padding:1rem;border:3px solid #000;background:#fff}
.consent-document pre{margin:0;white-space:pre-wrap;font:inherit;line-height:1.5}.consent-accept{padding:1rem!important;border:3px solid #000;background:#fff27a;font-weight:900}.consent-accept input{width:1.4rem;height:1.4rem}
.signature-block{display:grid;gap:.6rem;margin:1rem 0}.signature-block canvas{display:block;width:100%;height:180px;border:3px solid #000;background:#fff;touch-action:none;box-shadow:4px 4px 0 #000}.signature-block button{justify-self:start}
.consent-sealed{display:grid;gap:.55rem;padding:1rem;border:4px solid #000;background:#a8ff38;box-shadow:6px 6px 0 #000}.consent-sealed>span{font-weight:950;letter-spacing:.06em}.consent-sealed img{width:min(100%,460px);max-height:180px;object-fit:contain;border:3px solid #000;background:#fff}.consent-sealed small{overflow-wrap:anywhere}
@media(max-width:700px){.account-actions>*{width:100%}.user-card details select[multiple]{min-height:11rem}}
@media(max-width:700px){.consent-card{align-items:stretch;flex-direction:column}.consent-card button{width:100%}.signature-block canvas{height:150px}}

.booking-save-status{margin:.8rem 0;padding:.85rem 1rem;border:3px solid #000;box-shadow:4px 4px 0 #000;background:#53d9ff;color:#000;font-weight:900;line-height:1.35}
.booking-save-status[hidden]{display:none}.booking-save-status[data-kind="error"]{background:#ff8fa3}.booking-save-status[data-kind="success"]{background:#baff29}.booking-save-status[data-kind="working"],.booking-save-status[data-kind="warning"]{background:#ffe600}
.attention-options-help{display:grid;gap:.35rem;margin:-.25rem 0 .8rem;padding:.8rem;border:3px solid #000;background:#fff27a;box-shadow:4px 4px 0 #000}
.attention-options-help p{margin:0;font-size:.88rem;line-height:1.35}.attention-options-help b{font-weight:950}
.calendar-event summary .calendar-participant-names,.calendar-event summary .calendar-purpose{display:block;margin-top:.2rem;font-size:.72rem;line-height:1.25;color:#111;font-weight:750}
.calendar-event summary .calendar-purpose{max-width:58ch;color:#333}
.calendar-event.has-records{border-color:#000;background:#baff29;box-shadow:6px 6px 0 #000}
.calendar-event.has-records summary>i{background:#118c4f!important;color:#fff!important;border-color:#000!important}
.calendar-event.has-records .calendar-event-detail{background:#e8ffad}
.mobile-record-alert{display:none!important}
.calendar-event .booking-stop{padding:.55rem .75rem;min-height:2.5rem;border:3px solid #000;background:#ff8fa3;color:#000;box-shadow:3px 3px 0 #000;font-weight:950}
.calendar-event .booking-stop:active{transform:translate(3px,3px);box-shadow:none}
.calendar-event.missing-record{border-color:#000;background:#ff8fa3;box-shadow:6px 6px 0 #000}
.calendar-event.missing-record summary>i{background:#e51f3f!important;color:#fff!important;border-color:#000!important}
.missing-record-warning{padding:.75rem;border:3px solid #000;background:#ffced6;font-weight:800}
.group-observation-toggle{display:flex!important;align-items:flex-start;gap:.7rem;margin:.7rem 0;padding:.85rem;border:3px solid #000;background:#53d9ff;box-shadow:4px 4px 0 #000}
.group-observation-toggle input{flex:0 0 auto;width:1.45rem;height:1.45rem;margin:.1rem 0 0}.group-observation-toggle span{display:grid;gap:.2rem}.group-observation-toggle b{font-weight:950}.group-observation-toggle small{line-height:1.35}

@media(max-width:720px){.calendar-event.missing-record .mobile-record-alert{display:inline-block!important;width:auto;margin:0 0 .5rem;padding:.35rem .5rem;border:3px solid #000;background:#ffe600;color:#000;box-shadow:3px 3px 0 #000;font-size:.7rem;line-height:1.15;font-weight:950;letter-spacing:.02em;text-transform:uppercase}}

@media(max-width:390px){
  .operations-actions{grid-template-columns:1fr}
  .sidebar .nav-item,.nav-more{min-width:0}
  .face-rating{grid-template-columns:repeat(5,minmax(0,1fr))}
  .face-rating b{font-size:1.45rem}
  .face-rating small{font-size:.58rem}
}
.program-start{display:none!important}
