:root{--navy:#142b52;--ink:#17223b;--muted:#657086;--line:#dfe5ec;--canvas:#f2f5f8;--paper:#fff;--teal:#0f766e;--teal-soft:#def3ef;--violet:#6d4cc8;--violet-soft:#eee9ff;--amber:#a65300;--amber-soft:#fff3e0;--red:#b42318;--red-soft:#ffebe9;--shadow:0 16px 42px #142b5212}*{box-sizing:border-box}html,body,#root{background:var(--canvas);min-height:100%;color:var(--ink);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #0f766e4d}button:disabled{cursor:not-allowed;opacity:.55}.login-center{background:var(--paper);grid-template-columns:minmax(520px,1.08fr) minmax(430px,.92fr);min-height:100vh;display:grid}.login-context{isolation:isolate;background:var(--navy);color:#fff;flex-direction:column;justify-content:space-between;min-height:100vh;padding:42px clamp(42px,5vw,76px);display:flex;position:relative;overflow:hidden}.login-context:before{content:"";z-index:-1;background-color:#0000;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:54px 54px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(to bottom right,#000,#0000 78%);mask-image:linear-gradient(to bottom right,#000,#0000 78%)}.login-context:after{content:"";z-index:-1;border:78px solid #1fb5a42b;border-radius:50%;width:390px;height:390px;position:absolute;bottom:-195px;right:-165px}.login-brand{gap:5px;display:grid}.login-brand span,.login-message>span{color:#9fb0cf;letter-spacing:.17em;text-transform:uppercase;font-size:10px;font-weight:800}.login-brand strong{letter-spacing:-.04em;font-size:24px}.login-message{max-width:610px;margin:auto 0 42px}.login-message>span{color:#5ed2c3}.login-message h1{letter-spacing:-.06em;margin:12px 0 18px;font-size:clamp(40px,4.5vw,62px);line-height:1}.login-message p{color:#c5d1e5;max-width:555px;margin:0;font-size:15px;line-height:1.6}.login-week{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:12px;grid-template-columns:repeat(5,1fr);margin-bottom:22px;display:grid}.login-week div{border-right:1px solid #ffffff21;gap:8px;min-height:96px;padding:13px 14px;display:grid}.login-week div:last-child{border:0}.login-week b{color:#91a5c5;text-transform:uppercase;font:10px monospace}.login-week span{color:#fff;border-radius:5px;align-self:end;width:max-content;padding:5px 7px;font-size:10px;font-weight:750}.login-week span.appointment{color:#9ce1d8;background:#5ed2c32e}.login-week span.workshop{color:#d5c8ff;background:#ae91ff33}.login-week small{color:#aebdd4;font:9px monospace}.login-context>small{color:#9fb0cf;font-size:10px}.login-card{border:1px solid var(--line);background:#fff;border-radius:18px;align-self:center;width:min(420px,100% - 56px);margin:auto;padding:34px 38px;box-shadow:0 24px 70px #142b5221}.login-seal{background:var(--teal);color:#fff;letter-spacing:.05em;border-radius:12px;place-items:center;width:44px;height:44px;margin-bottom:24px;font-size:14px;font-weight:900;display:grid}.login-card>span{color:var(--teal);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:850}.login-card h2{letter-spacing:-.05em;margin:7px 0 8px;font-size:32px}.login-card>p{color:var(--muted);margin:0 0 25px;font-size:13px;line-height:1.55}.login-card label{color:#3f4a5d;gap:7px;margin-top:16px;font-size:11px;font-weight:800;display:grid}.login-card input{width:100%;color:var(--ink);background:#fbfcfe;border:1px solid #cfd7e3;border-radius:8px;padding:12px 13px;font-size:14px}.login-card input:hover{border-color:#9ba9bc}.login-card input:focus{border-color:var(--teal);background:#fff;outline:3px solid #0f766e24}.login-submit{border:1px solid var(--navy);border-radius:8px;width:100%;margin-top:22px;padding:13px 16px;font-size:12px;font-weight:850}.login-card>.notice{margin:16px 0 0}.login-card>small{color:#8791a3;text-align:center;margin-top:18px;font-size:10px;display:block}.oidc-login{color:var(--ink);text-align:center;background:#fff;border:1px solid #cfd7e3;border-radius:8px;margin-top:20px;padding:13px 16px;font-size:12px;font-weight:850;text-decoration:none;display:block}.oidc-login:hover{border-color:var(--teal);box-shadow:0 0 0 3px #0f766e1a}.login-divider{color:var(--muted);text-transform:uppercase;align-items:center;gap:10px;margin:20px 0 4px;font-size:10px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--line);flex:1;height:1px}.app-shell{grid-template-columns:270px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--navy);color:#dce6f8;flex-direction:column;height:100vh;padding:25px 14px 18px;display:flex;position:sticky;top:0;overflow:auto}.brand{padding:0 12px 18px;display:grid}.brand span{letter-spacing:.16em;text-transform:uppercase;color:#9fb0cf;font-size:10px}.brand strong{color:#fff;letter-spacing:-.04em;margin-top:5px;font-size:23px}.brand em{color:#b9c7dd;letter-spacing:.06em;border:1px solid #61779c;border-radius:4px;width:max-content;margin-top:10px;padding:4px 7px;font:8px monospace}.sidebar nav{gap:2px;display:grid}.menu-entry{display:grid}.menu-phase{color:#8194b5;letter-spacing:.08em;text-transform:uppercase;padding:13px 12px 4px;font-size:8px}.nav-link{color:#c5d0e3;border-radius:8px;grid-template-columns:22px 1fr;gap:7px;padding:8px 10px;text-decoration:none;display:grid}.nav-link:hover,.nav-link.active{color:#fff;background:#ffffff1c}.nav-link>span{color:#7f94b5;padding-top:2px;font:9px monospace}.nav-link b{font-size:12px}.nav-link small{color:#91a3c1;margin-top:2px;font-size:9px;font-weight:400;display:block}.sidebar footer{border-top:1px solid #ffffff1f;margin-top:auto;padding:14px 11px 0;display:grid}.sidebar footer b{font-size:11px}.sidebar footer span{color:#9fb0cf;text-transform:capitalize;margin-top:2px;font-size:9px}.sidebar footer button{color:#ffc1bc;background:0 0;border:0;width:max-content;margin-top:8px;padding:0;font-size:9px}.workspace{min-width:0;padding:22px 30px 60px}.global-week{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:minmax(150px,1fr) auto auto auto;align-items:center;gap:14px;margin-bottom:22px;padding:12px 14px;display:grid;box-shadow:0 8px 24px #142b520d}.week-context{gap:2px;display:grid}.week-context span,.global-week label>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:800}.week-context strong{font-size:12px}.week-navigator{border:1px solid var(--line);background:#f5f7fa;border-radius:9px;align-items:center;gap:7px;padding:4px;display:flex}.week-navigator label{gap:1px;padding:0 5px;display:grid}.week-navigator b{text-align:center;min-width:92px;padding:0 6px;font-size:10px}.global-week button,.filter-rail button,.module header button,.tabs button,.conflict-list button,.report-card button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:8px 11px;font-size:10px;font-weight:750}.week-navigator button{place-items:center;width:30px;height:30px;padding:0;display:grid}.global-week label,.filter-rail label{color:var(--muted);text-transform:uppercase;gap:3px;font-size:8px;font-weight:800;display:grid}.global-week input,.global-week select,.filter-rail input,.filter-rail select,.module header input,.modal input,.modal select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:7px 9px;font-size:10px}.site-selector select{min-width:126px}.global-week .timezone{border-left:1px solid var(--line);color:var(--muted);background:0 0;padding:7px 9px;font:8px/1.45 monospace}.timezone b{color:var(--ink);font-weight:650}.primary{border-color:var(--navy)!important;background:var(--navy)!important;color:#fff!important}.page-header{margin-bottom:16px}.page-header>span{color:var(--teal);letter-spacing:.14em;text-transform:uppercase;font-size:9px;font-weight:850}.page-header h1{letter-spacing:-.055em;margin:4px 0 2px;font-size:30px}.page-header p{max-width:860px;color:var(--muted);margin:0;font-size:11px}.workflow-strip{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:13px;margin-bottom:16px;padding:10px 14px;display:flex}.workflow-strip span{color:#fff;align-items:center;gap:8px;display:flex}.workflow-strip span:first-child:before,.workflow-strip span:nth-of-type(2):before,.workflow-strip span:nth-of-type(3):before{background:var(--navy);border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;display:grid}.workflow-strip span:first-child:before{content:"1"}.workflow-strip span:nth-of-type(2):before{content:"2"}.workflow-strip span:nth-of-type(3):before{content:"3"}.workflow-strip strong{color:var(--ink);font-size:10px}.workflow-strip i{color:#9da8ba;font-style:normal}.kpi-row{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:15px;display:grid}.kpi{border:1px solid var(--line);border-top:4px solid var(--navy);text-align:left;min-height:108px;box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:14px;display:grid}.kpi span{color:var(--muted);font-size:9px;font-weight:700}.kpi strong{font:28px monospace}.kpi em{color:var(--teal);align-self:end;font-size:8px;font-style:normal}.kpi.warning{border-top-color:var(--amber)}.kpi.warning strong{color:var(--amber)}.kpi.danger{border-top-color:var(--red)}.kpi.danger strong{color:var(--red)}.patient-week-kpis{grid-template-columns:repeat(4,1fr)}.module,.schedule-card,.workshop-sheet{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:11px;overflow:hidden}.module header,.workshop-sheet>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.module header small,.workshop-sheet header small,.catalog-grid article>small{color:var(--teal);text-transform:uppercase;font-size:8px;font-weight:800;display:block}.module h2,.workshop-sheet h2,.catalog-grid h2{margin:3px 0 0;font-size:14px}.split{grid-template-columns:1.25fr .75fr;gap:13px;display:grid}.below{margin-top:14px}.loading,.empty-state{color:var(--muted);text-align:center;padding:36px;font-size:11px}.empty-state{gap:5px;display:grid}.notice{border:1px solid #b9d8d4;border-left:4px solid var(--teal);color:var(--teal);background:#f5fbfa;border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:10px}.notice.danger,.run-result.danger{background:var(--red-soft);color:var(--red);border-color:#efb4ad}.planning-skeleton{background:#f5fbfa;border:1px solid #b9d8d4;border-radius:10px;margin:0 16px 16px;padding:14px}.planning-skeleton-copy{color:var(--navy);align-items:center;gap:11px;display:flex}.planning-skeleton-copy div{gap:3px;display:grid}.planning-skeleton-copy strong{font-size:11px}.planning-skeleton-copy small{color:var(--muted);font-size:9px}.planning-pulse{border:3px solid #b9d8d4;border-top-color:var(--teal);border-radius:50%;width:11px;height:11px;animation:.8s linear infinite planning-spin}.planning-skeleton-grid{grid-template-columns:repeat(5,1fr);gap:6px;margin-top:13px;display:grid}.planning-skeleton-grid i{background:linear-gradient(90deg,#e4efee 25%,#fff 50%,#e4efee 75%) 0 0/200% 100%;border-radius:5px;height:22px;animation:1.25s ease-in-out infinite planning-shimmer}.planning-skeleton-grid i:nth-child(3n+2){animation-delay:.12s}.planning-skeleton-grid i:nth-child(3n){animation-delay:.24s}@keyframes planning-spin{to{transform:rotate(360deg)}}@keyframes planning-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.planning-pulse,.planning-skeleton-grid i{animation:none}}.action-list{padding:2px 14px}.action-list article,.action-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:70px 1fr auto;align-items:center;gap:9px;width:100%;padding:9px 0;display:grid}.action-list time{color:var(--teal);font:9px monospace}.action-list strong{font-size:10px}.action-list span{color:var(--muted);font-size:9px;display:block}.action-list button b{color:var(--red);font:17px monospace}.action-list em{background:var(--amber-soft);color:var(--amber);border-radius:99px;padding:3px 6px;font-size:8px;font-style:normal}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:620px}th,td{border-bottom:1px solid var(--line);text-align:left;padding:9px 10px;font-size:10px}th{color:var(--muted);text-transform:uppercase;background:#f8fafc;font-size:8px}th[data-resizable=true]{min-width:72px;position:relative}th[data-sortable=true]{cursor:pointer;-webkit-user-select:none;user-select:none;padding-right:27px}th[data-sortable=true]:after{content:"↕";color:#9aa6b8;font-size:10px;position:absolute;right:12px}th[aria-sort=ascending]:after{content:"↑";color:var(--teal)}th[aria-sort=descending]:after{content:"↓";color:var(--teal)}th[data-sortable=true]:focus-visible{outline:2px solid var(--teal);outline-offset:-3px}.column-resizer{z-index:2;cursor:col-resize;touch-action:none;width:9px;height:100%;position:absolute;top:0;right:-4px}.column-resizer:after{content:"";background:#cbd4df;width:1px;position:absolute;top:24%;bottom:24%;left:4px}.column-resizer:hover:after,.column-resizer:focus-visible:after{background:var(--teal);width:2px}.column-resizer:focus-visible{outline:none}.filter-rail{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:10px;align-items:end;gap:10px;margin-bottom:12px;padding:12px 14px;display:flex}.filter-rail select{min-width:190px}.filter-rail input{min-width:230px}.filter-summary{color:var(--muted);margin-left:auto;padding-bottom:7px;font-size:9px}.segmented{background:#edf1f5;border-radius:7px;padding:3px;display:flex}.segmented button{background:0 0;border:0}.segmented button.active{background:#fff;box-shadow:0 2px 8px #142b521a}.legend{align-items:center;gap:8px;margin-bottom:10px;font-size:8px;display:flex}.legend span{border-radius:5px;padding:4px 7px}.legend .confirmed,.legend .available{background:var(--teal-soft);color:var(--teal)}.legend .proposal{background:var(--amber-soft);color:var(--amber)}.legend .unavailable{color:#667085;background:#e9edf2}.legend .lunch{color:#825500;background:#fff0c9}.legend .blocked{background:var(--red-soft);color:var(--red)}.legend small{color:var(--muted);margin-left:auto}.report-filters{box-shadow:none;border-width:0 0 1px;border-radius:0;margin:0}.report-filters label{flex:1}.report-filters select,.report-filters input{width:100%;min-width:0}.merge-panel{background:var(--red-soft);border:1px solid #efb4ad;border-radius:8px;gap:8px;margin-top:12px;padding:12px;display:grid}.merge-panel p{color:#7f342e;margin:0;font-size:9px}.agenda-actions-legend button{white-space:nowrap}.legend button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:5px;padding:4px 7px;font-size:8px;font-weight:750}.schedule-scroll,.slot-scroll{max-height:68vh;overflow:auto}.resource-week-grid{grid-template-columns:180px repeat(5,minmax(180px,1fr));min-width:1100px;display:grid}.schedule-row{display:contents}.schedule-head,.resource-cell,.resource-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.schedule-head{z-index:3;color:var(--muted);text-align:center;text-transform:uppercase;background:#f7f9fb;padding:9px;font-size:8px;position:sticky;top:0}.schedule-head:first-child{z-index:4;left:0}.schedule-head small{color:var(--teal);margin-top:2px;display:block}.resource-cell{z-index:2;background:#fbfcfe;padding:9px;position:sticky;left:0}.resource-cell strong,.resource-cell span{display:block}.resource-cell strong{font-size:10px}.resource-cell span{color:var(--muted);margin-top:3px;font-size:8px}.resource-day{background:#fff;min-height:112px;padding:6px}.day-empty{color:#adb5c2;padding:8px;font-size:8px;display:block}.schedule-event{border:0;border-left:3px solid var(--teal);background:var(--teal-soft);width:100%;color:var(--ink);text-align:left;border-radius:5px;margin-bottom:5px;padding:6px;display:block}.schedule-event.propuesta{border-left-color:var(--amber);background:var(--amber-soft)}.schedule-event.selected{outline:2px solid var(--navy)}.schedule-event b,.schedule-event strong,.schedule-event span,.schedule-event small{display:block}.schedule-event b{font:8px monospace}.schedule-event strong{margin-top:2px;font-size:9px}.schedule-event span,.schedule-event small{color:#546179;margin-top:2px;font-size:8px}.slot-grid{grid-template-columns:76px repeat(5,minmax(150px,1fr));min-width:900px;display:grid}.slot-row{display:contents}.slot-head,.slot-time,.slot{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:34px}.slot-head{z-index:2;color:var(--muted);text-align:center;text-transform:uppercase;background:#f8fafc;padding:8px;font-size:8px;font-weight:800;position:sticky;top:0}.slot-head small{color:var(--red);margin-top:2px;display:block}.slot-time{color:var(--muted);background:#fbfcfe;padding:9px;font:8px monospace}.slot{color:#657086;text-align:center;background:#eef1f4;padding:5px;font-size:8px;font-weight:700}.slot.available{background:var(--teal-soft);color:var(--teal)}.slot.lunch{color:#825500;background:#fff0c9}.slot.blocked{background:var(--red-soft);color:var(--red)}.slot.occupied{text-align:left;color:var(--navy);background:#dce5f3}.slot.occupied.workshop{background:var(--violet-soft);color:var(--violet)}.slot.occupied b,.slot.occupied small{display:block}.slot.occupied small{margin-top:2px;font-weight:400}.slot.holiday,.slot-head.holiday{color:var(--red);background:repeating-linear-gradient(135deg,#fff5f3,#fff5f3 8px,#fcebe8 8px 16px)}.run-body{grid-template-columns:160px 160px 1fr;align-items:center;gap:12px;padding:17px;display:grid}.run-body>div{display:grid}.run-body span{color:var(--muted);font-size:9px}.run-body strong{font:25px monospace}.run-body button{border:1px solid var(--navy);border-radius:8px;justify-self:end;padding:11px 15px}.run-result{color:var(--teal);background:#f5fbfa;border:1px solid #b9d8d4;border-radius:8px;gap:3px;margin:0 16px 16px;padding:11px;display:grid}.run-result strong{font-size:11px}.run-result span,.run-result small{font-size:9px}.proposal-summary{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:repeat(3,1fr);margin-bottom:12px;display:grid}.proposal-summary>div{border-right:1px solid var(--line);padding:13px}.proposal-summary>div:last-child{border:0}.proposal-summary span{color:var(--muted);text-transform:uppercase;font-size:8px;display:block}.proposal-summary strong{font:17px monospace}.conflict-list{padding:10px 15px;display:grid}.conflict-list article{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;gap:8px;padding:10px 0;display:grid}.conflict-list b{color:var(--red);font:9px monospace}.conflict-list strong{font-size:10px}.conflict-list span{color:var(--muted);font-size:9px}.conflict-list em{font-size:8px}.conflict-list article>div{grid-column:2/4;gap:6px;display:flex}.master-detail{grid-template-columns:350px 1fr;gap:13px;display:grid}.patient-list{max-height:68vh;overflow:auto}.patient-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:1fr auto;width:100%;padding:11px 13px;display:grid}.patient-list>button:hover,.patient-list>button.selected{background:#f0faf8}.patient-list strong{font-size:10px}.patient-list span{color:var(--muted);grid-column:1;margin-top:3px;font-size:8px}.patient-list em{color:var(--teal);grid-area:1/2/3;font-size:8px;font-style:normal}.patient-record header p{color:var(--muted);margin:3px 0 0;font-size:9px}.status-chip{background:var(--teal-soft);color:var(--teal);border-radius:99px;padding:4px 7px;font-size:8px}.patient-demographics{border-bottom:1px solid var(--line);background:#fbfcfe;grid-template-columns:repeat(4,1fr);display:grid}.patient-demographics>div{border-right:1px solid var(--line);min-width:0;padding:13px 15px}.patient-demographics>div:last-child{border:0}.patient-demographics span,.patient-demographics strong,.patient-demographics small{text-overflow:ellipsis;display:block;overflow:hidden}.patient-demographics span{color:var(--muted);text-transform:uppercase;font-size:8px}.patient-demographics strong{margin-top:4px;font-size:10px}.patient-demographics small{color:var(--muted);white-space:nowrap;margin-top:3px;font-size:8px}.content-tabs{border-bottom:1px solid var(--line);background:#fff;gap:5px;padding:8px 15px;display:flex}.content-tabs button{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:7px 10px;font-size:9px;font-weight:750}.content-tabs button.active{background:var(--navy);color:#fff}.need-list{padding:4px 15px}.need-list article{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.need-list strong,.need-list span,.need-list small{display:block}.need-list strong{font-size:10px}.need-list span,.need-list small{color:var(--muted);margin-top:3px;font-size:8px}.need-list em{color:var(--amber);font-size:8px;font-style:normal}.availability-toolbar{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:11px;grid-template-columns:auto minmax(180px,.55fr) minmax(320px,1fr);align-items:end;gap:14px;margin-bottom:12px;padding:13px 15px;display:grid}.availability-kind{gap:6px;display:grid}.availability-kind>span,.availability-toolbar>label{color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:800}.availability-kind .segmented{gap:2px}.availability-kind button{color:var(--muted);background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:8px 10px;font-size:9px;font-weight:750;display:flex}.availability-kind button.active{color:var(--ink);background:#fff;box-shadow:0 2px 8px #142b521a}.availability-kind button b{min-width:18px;height:18px;color:var(--navy);background:#dce4ee;border-radius:99px;place-items:center;padding:0 5px;font:8px monospace;display:grid}.availability-toolbar>label{gap:6px;display:grid}.availability-toolbar select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:7px;padding:9px 10px;font-size:10px}.availability-actions{grid-column:1/-1;gap:7px;display:flex}.availability-actions button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:9px 11px;font-size:9px;font-weight:750}.availability-calendar header>span{color:var(--teal);background:#edf5f4;border-radius:6px;padding:5px 8px;font-size:8px;font-weight:750}.workshop-sheet>header{border-top:7px solid #f0dc32}.workshop-sheet header p{color:var(--muted);margin:3px 0 0;font-size:9px}.workshop-sheet header>strong{color:var(--violet);font:11px monospace}.workshop-columns{grid-template-columns:repeat(5,1fr);min-width:850px;display:grid;overflow:auto}.workshop-columns>div{border-right:1px solid var(--line);min-height:260px;padding:10px}.workshop-columns>div>b{color:var(--muted);text-transform:uppercase;font-size:8px}.workshop-columns>div>span{color:#a2aaba;text-align:center;margin-top:18px;font-size:8px;display:block}.workshop-columns article{border-left:4px solid var(--violet);background:var(--violet-soft);border-radius:5px;margin-top:9px;padding:8px}.workshop-columns time,.workshop-columns strong,.workshop-columns span,.workshop-columns small{display:block}.workshop-columns time{font:8px monospace}.workshop-columns strong{margin-top:3px;font-size:9px}.workshop-columns span,.workshop-columns small{color:var(--muted);margin-top:3px;font-size:8px}.participant-grid{grid-template-columns:repeat(4,1fr);gap:6px;padding:14px;display:grid}.participant-grid span{background:#f3f6fa;border-radius:6px;padding:7px;font-size:9px}.modal-backdrop{z-index:20;background:#0d1c3394;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:min(560px,100%);overflow:hidden;box-shadow:0 30px 80px #0000004d}.modal>header{border-bottom:1px solid var(--line);justify-content:space-between;padding:14px 17px;display:flex}.modal h2{margin:0;font-size:14px}.modal header button{background:0 0;border:0;font-size:20px}.modal-form{grid-template-columns:1fr 1fr;gap:11px;padding:17px;display:grid}.modal-form label{color:var(--muted);text-transform:uppercase;gap:4px;font-size:8px;font-weight:800;display:grid}.modal-form button{border:1px solid var(--navy);border-radius:7px;align-self:end;padding:9px}.report-card>div{align-items:center;gap:8px;padding:18px;display:flex}.report-card p{max-width:420px;color:var(--muted);margin-left:auto;font-size:9px}.tabs{background:#e9edf2;border-radius:8px;width:max-content;margin-bottom:12px;padding:3px;display:flex}.tabs button{background:0 0;border:0}.tabs button.active{background:#fff;box-shadow:0 2px 8px #142b521a}.catalog-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.catalog-grid article{padding:15px}.catalog-grid article strong{margin-top:14px;font:25px monospace;display:block}.catalog-grid article span{color:var(--muted);font-size:9px}@media (width<=1100px){.kpi-row{grid-template-columns:repeat(3,1fr)}.split,.master-detail{grid-template-columns:1fr}.catalog-grid{grid-template-columns:1fr 1fr}.global-week{grid-template-columns:1fr auto auto}.week-context{display:none}.availability-toolbar{grid-template-columns:1fr 1fr}.availability-kind{grid-column:1/-1}.availability-actions{grid-column:1/-1;justify-content:flex-end}.patient-demographics{grid-template-columns:1fr 1fr}}@media (width<=850px){.login-center{background:var(--canvas);display:block}.login-context{min-height:auto;padding:30px 24px}.login-message{margin:54px 0 34px}.login-message h1{font-size:44px}.login-week{display:none}.login-card{width:min(430px,100% - 32px);margin:28px auto}.app-shell{display:block}.sidebar{height:auto;position:static}.sidebar nav{display:flex;overflow:auto}.menu-entry{flex:none}.menu-phase,.sidebar footer{display:none}.workspace{padding:17px 13px 50px}.global-week{grid-template-columns:1fr auto}.site-selector{display:none}.kpi-row{grid-template-columns:1fr 1fr}.filter-rail{flex-direction:column;align-items:stretch}.filter-summary{margin-left:0}.participant-grid{grid-template-columns:1fr 1fr}.availability-toolbar{grid-template-columns:1fr}.availability-actions{grid-column:auto;justify-content:stretch}.availability-actions button{flex:1}}@media (width<=520px){.login-context{padding:24px 20px}.login-message{margin:38px 0}.login-message h1{font-size:36px}.login-message p{font-size:14px}.login-card{padding:26px 22px}.global-week{display:block}.week-navigator{justify-content:space-between}.week-navigator b,.global-week .timezone{display:none}.kpi-row,.proposal-summary,.catalog-grid,.modal-form,.patient-demographics{grid-template-columns:1fr}.patient-demographics>div{border-right:0;border-bottom:1px solid var(--line)}.page-header h1{font-size:25px}.workflow-strip{overflow:auto}.run-body{grid-template-columns:1fr}.run-body button{justify-self:stretch}.report-card>div{flex-direction:column;align-items:stretch}.report-card p{margin:8px 0 0}.participant-grid{grid-template-columns:1fr}}.workshop-columns>div.holiday{color:var(--red);background:repeating-linear-gradient(135deg,#fff5f3,#fff5f3 8px,#fcebe8 8px 16px)}.admin-layout{grid-template-columns:minmax(0,1fr) 360px;gap:13px;display:grid}.access-editor>div{gap:12px;padding:15px;display:grid}.access-editor label:not(.check-line){color:var(--muted);gap:5px;font-size:9px;font-weight:700;display:grid}.access-editor fieldset{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;gap:6px;margin:0;padding:10px;display:grid}.access-editor legend{color:var(--muted);text-transform:uppercase;padding:0 5px;font-size:8px;font-weight:800}.check-line{align-items:center;gap:7px;font-size:9px;display:flex}.check-line input{width:auto}.access-editor .primary{border:0;border-radius:7px;padding:10px}@media (width<=1100px){.admin-layout{grid-template-columns:1fr}}.create-user{grid-column:1/-1}.create-user .modal-form fieldset{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:6px;margin:0;padding:10px;display:grid}.create-user .modal-form fieldset:last-of-type{grid-column:1/-1}.create-user .notice{grid-column:1/-1;margin:0}.slot.available-in-person{color:#fff;background:#176b55}.slot.available-remote{color:#276b5a;background:#dff6ee}.legend .available-in-person{color:#fff;background:#176b55}.legend .available-remote{color:#276b5a;background:#dff6ee}.resource-occupancy-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin:0 0 12px;display:grid}.resource-occupancy-grid>button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:9px;gap:7px;padding:10px;display:grid}.resource-occupancy-grid>button.active{border-color:var(--teal);box-shadow:0 0 0 2px #0f766e1f}.resource-occupancy-grid button>span{justify-content:space-between;gap:8px;display:flex}.resource-occupancy-grid b{font-size:9px}.resource-occupancy-grid strong{color:var(--teal);font:12px monospace}.resource-occupancy-grid i{background:#e8edf2;border-radius:99px;height:5px;display:block;overflow:hidden}.resource-occupancy-grid i span{border-radius:inherit;background:var(--teal);height:100%;display:block}.resource-occupancy-grid small{color:var(--muted);font-size:8px}.assignment-warning{font-weight:750;color:var(--red)!important}.workshop-class-list{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:6px;margin-top:10px;display:grid}.workshop-class-list>div{background:var(--violet-soft);border-radius:6px;padding:8px}.workshop-class-list b,.workshop-class-list span,.workshop-class-list small{font-size:8px;display:block}.workshop-plan-card>div{flex:1}.legend .workshop{background:var(--violet-soft);color:var(--violet)}.legend .occupied-appointment{color:var(--navy);background:#dce5f3}.schedule-event.taller{border-left-color:var(--violet);background:var(--violet-soft)}.slot.occupied{box-shadow:inset 3px 0 0 var(--navy);color:var(--navy);background:#dce5f3}.slot.occupied.workshop{box-shadow:inset 3px 0 0 var(--violet);background:var(--violet-soft);color:var(--violet)}.run-result>div{gap:7px;margin-top:8px;display:flex}.run-result button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:9px 12px;font-size:9px;font-weight:800}.run-result button.secondary{color:var(--navy);background:#fff;border-color:#a9b7c9}.holiday-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;padding:14px;display:grid}.holiday-list span{border:1px solid var(--line);color:var(--muted);border-radius:7px;gap:2px;padding:9px;font-size:9px;display:grid}.holiday-list span.current{background:var(--red-soft);color:var(--red);border-color:#efb4ad}.holiday-list b{color:var(--ink);font:9px monospace}.holiday-audit>header>strong{color:var(--teal);font:13px monospace}.proposal-summary>button{border:0;border-right:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:0;padding:13px;display:block}.proposal-summary>button.active{box-shadow:inset 0 -4px var(--teal)}.proposal-summary>button.danger strong{color:var(--red)}.proposal-summary>button.active.danger{box-shadow:inset 0 -4px var(--red)}.proposal-summary small{color:var(--muted);text-transform:uppercase;font-size:8px;display:block}.proposal-view-tabs{margin-top:0}.proposal-filters{flex-wrap:wrap}.proposal-table table{min-width:1180px}.table-link{color:var(--teal);text-align:left;background:0 0;border:0;padding:0;font-size:10px;font-weight:800}.review-rule{color:var(--muted);align-self:center;font-size:9px;font-weight:700}.score-order{color:var(--teal);align-self:center;font-size:9px;font-weight:800}.proposal-status{color:#8a5700;white-space:nowrap;background:#fff2d2;border-radius:99px;padding:4px 7px;font-size:8px;font-weight:800;display:inline-block}.proposal-status.confirmada{color:var(--teal);background:#dff4ef}.proposal-status.vencida{color:#667085;background:#f2f4f7}.proposal-actions button{min-width:88px}.proposal-actions button:disabled{opacity:.6}.conflict-table table{min-width:1180px}.conflict-table td{vertical-align:top}.conflict-table td>strong,.conflict-table td>span,.conflict-table td>small{display:block}.conflict-table td>small{color:var(--muted);margin-top:3px;font-size:8px}.conflict-table td>b{color:var(--red);margin-bottom:3px;font:8px monospace;display:block}.conflict-table td>span:not(.conflict-kind){color:var(--muted);font-size:9px}.conflict-kind{background:var(--red-soft);width:max-content;color:var(--red);border-radius:99px;padding:4px 7px;font-size:8px;font-weight:800}.conflict-kind.profesional{color:#9a5b00;background:#fff2d2}.conflict-kind.paciente{color:#5f3ab3;background:#ece6ff}.conflict-kind.recurso{color:#b42318;background:#ffe5e2}.conflict-kind.servicio,.conflict-kind.taller{color:var(--teal);background:#e5f5f2}.table-actions{white-space:nowrap;gap:6px;display:flex}.table-actions button{padding:7px 9px}.conflict-resolution-modal>header small{color:var(--teal);text-transform:uppercase;font-size:8px;font-weight:800}.conflict-facts{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.conflict-facts>div{background:#fff;min-height:88px;padding:15px}.conflict-facts span,.conflict-facts strong,.conflict-facts small{display:block}.conflict-facts span{color:var(--muted);text-transform:uppercase;font-size:8px}.conflict-facts strong{margin-top:7px;font-size:10px}.conflict-facts small{color:var(--muted);margin-top:4px;font-size:8px}.problem-table td{vertical-align:top}.problem-table td>strong,.problem-table td>small{display:block}.problem-table td>small{color:var(--muted);margin-top:4px;font-size:8px;line-height:1.4}.problem-table button{white-space:nowrap}.need-list .coverage{text-transform:capitalize;border-radius:99px;height:max-content;padding:4px 7px}.need-list .coverage.confirmada{background:var(--teal-soft);color:var(--teal)}.need-list .coverage.propuesta,.need-list .coverage.parcial{background:var(--amber-soft);color:var(--amber)}.need-list .coverage.pendiente{background:var(--red-soft);color:var(--red)}.need-list .edit-inline{border:1px solid var(--line);height:max-content;color:var(--navy);background:#fff;border-radius:6px;padding:4px 7px;font-size:8px;font-weight:800}.patient-appointment-actions{justify-items:end;gap:7px;height:max-content;display:grid}.patient-appointment-actions .edit-inline{white-space:nowrap}.protected-appointment{color:#69758c;white-space:nowrap}.appointment-inline-error{margin:10px 17px 0}.appointment-alternatives{background:#f8fafc;border-bottom:1px solid #dbe3ec;padding:14px 17px}.appointment-alternatives>div:first-child{justify-content:space-between;gap:12px;display:flex}.appointment-alternative-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:220px;margin-top:10px;display:grid;overflow:auto}.appointment-alternative-list button{text-align:left;color:#17233d;background:#fff;border:1px solid #d5deea;border-radius:10px;gap:3px;padding:10px 12px;display:grid}.appointment-alternative-list button span{text-transform:uppercase;letter-spacing:.08em;color:#148276;font-size:10px}.appointment-alternative-list button small{color:#667188}.appointment-alternative-list button.selected{background:#f3fbf9;border-color:#148276;box-shadow:0 0 0 2px #d8f1ed}@media (width<=720px){.appointment-alternative-list{grid-template-columns:1fr}}.workshop-edit-modal{width:min(1180px,96vw);max-height:92vh;overflow:auto}.workshop-session-editor{gap:7px;display:grid}.workshop-session-heading{justify-content:space-between;align-items:center;display:flex}.workshop-session-heading strong{font-size:10px}.workshop-session-editor article{grid-template-columns:110px minmax(150px,1fr) minmax(180px,1fr) minmax(180px,1fr) 95px 95px 70px;gap:7px;display:grid}.workshop-session-editor input,.workshop-session-editor select{border:1px solid var(--line);min-width:0;color:var(--ink);background:#fff;border-radius:7px;padding:7px 8px;font-size:9px}.danger-text{color:var(--red);background:0 0;border:0;font-size:9px;font-weight:750}.modal-form .full{grid-column:1/-1}.modal-form fieldset{border:1px solid var(--line);border-radius:8px;margin:0;padding:9px}.modal-form legend{color:var(--muted);text-transform:uppercase;padding:0 4px;font-size:8px;font-weight:800}.agenda-actions-legend{margin-top:12px}.appointment-edit-modal{width:min(620px,96vw);max-height:92vh;overflow:auto}.appointment-edit-modal header small{color:var(--teal);text-transform:uppercase;margin-bottom:3px;font-size:8px;font-weight:800;display:block}.appointment-summary{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.appointment-summary>div{gap:3px;padding:13px 17px;display:grid}.appointment-summary>div+div{border-left:1px solid var(--line)}.appointment-summary span{color:var(--muted);text-transform:uppercase;font-size:8px}.appointment-summary strong{font-size:11px}.availability-rule{margin:14px 17px 0}.time-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.time-fields label{gap:4px;display:grid}.appointment-cancel{border-top:1px solid var(--line);background:#fbfcfe;padding:13px 17px}.appointment-cancel p{color:var(--ink);margin:0 0 9px;font-size:10px}.appointment-cancel>div{justify-content:flex-end;gap:7px;display:flex}.appointment-cancel button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:8px 10px}.appointment-cancel button.danger{border-color:var(--red);background:var(--red);color:#fff}.appointment-cancel>.danger-text{background:0 0;border:0;padding:0}.modal-form button.primary{background:var(--navy);color:#fff}.proposal-confirm-modal{width:min(590px,96vw)}.proposal-confirm-modal>header small,.proposal-conflict-modal>header small{color:var(--teal);text-transform:uppercase;margin-bottom:3px;font-size:8px;font-weight:800;display:block}.proposal-confirm-summary{gap:5px;padding:18px;display:grid}.proposal-confirm-summary>strong{font-size:16px}.proposal-confirm-summary>span{color:var(--muted);font-size:10px}.proposal-confirm-summary dl{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin:10px 0;display:grid}.proposal-confirm-summary dl>div{background:#f8fafc;padding:11px}.proposal-confirm-summary dt{color:var(--muted);text-transform:uppercase;font-size:8px}.proposal-confirm-summary dd{margin:5px 0 0;font-size:9px;font-weight:750}.proposal-confirm-summary p{color:#6f4b00;background:#fff7e2;border-radius:8px;margin:3px 0 0;padding:10px;font-size:9px;line-height:1.5}.proposal-confirm-modal>footer,.proposal-conflict-modal>footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:12px 17px;display:flex}.proposal-confirm-modal>footer button,.proposal-conflict-modal>footer button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:8px 10px}.proposal-conflict-backdrop{z-index:30}.proposal-conflict-modal{border-top:5px solid var(--red);width:min(620px,96vw)}.proposal-conflict-list{gap:7px;padding:17px;display:grid}.proposal-conflict-list article{background:var(--red-soft);border:1px solid #f0b7b1;border-radius:8px;grid-template-columns:70px 1fr;gap:10px;padding:10px;display:grid}.proposal-conflict-list b{color:var(--red);font:9px monospace}.proposal-conflict-list span{font-size:9px;line-height:1.45}.proposal-conflict-modal>.modal-help{margin:0 17px 17px}.modal-help{color:var(--muted);background:#f4f7fa;border-radius:7px;margin:0;padding:9px;font-size:9px}.appointment-edit-modal{width:min(1040px,96vw)}.proposal-actor-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.proposal-slot-legend{flex-wrap:wrap;gap:6px;display:flex}.proposal-slot-legend span{border-radius:99px;padding:5px 8px;font-size:8px;font-weight:800}.proposal-slot-legend .available{background:var(--teal-soft);color:var(--teal)}.proposal-slot-legend .confirmed{color:var(--navy);background:#dce5f3}.proposal-slot-legend .proposed,.proposal-slot-legend .current{background:var(--amber-soft);color:var(--amber)}.proposal-slot-legend .unavailable{color:#69758a;background:#edf0f4}.proposal-slot-board{border:1px solid var(--line);background:var(--line);border-radius:9px;grid-template-columns:repeat(5,minmax(160px,1fr));gap:1px;max-height:360px;transition:opacity .15s;display:grid;overflow:auto}.proposal-slot-board.refreshing{opacity:.55}.proposal-slot-board>section{background:#f8fafc;min-width:160px}.proposal-slot-board>section>header{z-index:2;border-bottom:1px solid var(--line);color:var(--navy);text-transform:capitalize;background:#f8fafc;justify-content:space-between;padding:9px 10px;display:flex;position:sticky;top:0}.proposal-slot-board>section>header strong{font-size:9px}.proposal-slot-board>section>header span{color:var(--muted);font:8px monospace}.proposal-slot-board>section>div{gap:4px;padding:6px;display:grid}.proposal-slot-board button{text-align:left;border:1px solid #0000;border-left-width:4px;border-radius:7px;gap:3px;min-height:45px;padding:7px 8px;display:grid}.proposal-slot-board button:disabled{opacity:1}.proposal-slot-board button time{font:800 8px monospace}.proposal-slot-board button span{text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.proposal-slot-board button.disponible{background:var(--teal-soft);color:var(--teal);border-color:#9bd2ca}.proposal-slot-board button.disponible:hover,.proposal-slot-board button.disponible.selected{outline:2px solid var(--teal);outline-offset:1px;background:#c9ece6}.proposal-slot-board button.confirmada{border-left-color:var(--navy);color:var(--navy);background:#dce5f3}.proposal-slot-board button.propuesta,.proposal-slot-board button.actual{border-left-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.proposal-slot-board button.no_disponible{color:#69758a;background:#edf0f4;border-left-color:#b9c1cc}.proposal-slot-selection{background:#f4f7fa;border-radius:7px;justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.proposal-slot-selection span{color:var(--muted);text-transform:uppercase;font-size:8px}.proposal-slot-selection strong{font:10px monospace}@media (width<=720px){.proposal-actor-fields{grid-template-columns:1fr}.proposal-slot-board{grid-template-columns:repeat(5,minmax(145px,1fr))}}.care-plan-modal{width:min(760px,100%);max-height:92vh;overflow:auto}.care-plan-modal label small{color:var(--muted);text-transform:none;font-size:8px;font-weight:500}.care-plan-items{border:1px solid var(--line);background:#f8fafc;border-radius:9px;gap:6px;max-height:190px;padding:10px;display:grid;overflow:auto}.care-plan-items>p{color:var(--muted);text-align:center;margin:0;font-size:9px}.care-plan-items article{border:1px solid var(--line);border-left:4px solid var(--teal);background:#fff;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.care-plan-items article strong,.care-plan-items article span{display:block}.care-plan-items article strong{font-size:10px}.care-plan-items article span{color:var(--muted);margin-top:3px;font-size:8px}.care-plan-items article button{color:var(--red);background:0 0;border-color:#0000;align-self:center;padding:5px 7px;font-size:8px}.care-plan-actions{justify-content:flex-end;gap:8px;display:flex}.care-plan-actions button{min-height:39px}.care-plan-actions .primary{flex:1}.modality-fieldset .segmented{width:max-content}.session-rules{background:#f4fbfa;border:1px solid #bedbd7;border-radius:8px;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.session-rules>div{gap:2px;display:grid}.session-rules span{color:var(--muted);text-transform:uppercase;font-size:8px}.session-rules strong{font-size:11px}.session-rules p{color:var(--muted);grid-column:1/-1;margin:1px 0 0;font-size:8px}.preferred-window{grid-template-columns:1fr 1fr;gap:8px;display:grid}.preferred-window small{color:var(--muted);grid-column:1/-1;font-size:8px}.need-actions{align-items:center;gap:4px;display:flex}.delete-need-modal{border-top:5px solid var(--red);width:min(520px,96vw)}.delete-need-copy{gap:7px;padding:20px;display:grid}.delete-need-copy strong{font-size:15px}.delete-need-copy p{color:var(--muted);margin:0;font-size:10px;line-height:1.55}.delete-need-modal>footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:12px 17px;display:flex}.delete-need-modal>footer button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 11px}.delete-need-modal>footer .danger{border-color:var(--red);background:var(--red);color:#fff}.proposal-bulk-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f8fafc;align-items:center;gap:12px;padding:10px 14px;display:flex}.proposal-bulk-bar label{color:var(--ink);align-items:center;gap:7px;font-size:9px;font-weight:750;display:flex}.proposal-bulk-bar input,.selection-column input{width:16px;height:16px;accent-color:var(--teal)}.proposal-bulk-bar span{color:var(--muted);margin-left:auto;font-size:9px}.proposal-bulk-bar button{border:1px solid var(--navy);border-radius:7px;padding:8px 10px}.selection-column{text-align:center;width:42px!important;min-width:42px!important}.proposal-table tr.selected-row td{background:#f0faf8}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.resource-policy{grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:12px;display:grid}.resource-policy article{border:1px solid var(--line);border-left:4px solid var(--teal);background:#fff;border-radius:9px;grid-template-columns:1fr auto;gap:3px 10px;padding:11px 13px;display:grid}.resource-policy article.warning{border-left-color:var(--amber)}.resource-policy span{color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:800}.resource-policy strong{font:12px monospace}.resource-policy small{color:var(--muted);grid-column:1/-1;font-size:8px;line-height:1.45}@media (width<=720px){.preferred-window,.session-rules{grid-template-columns:1fr}.session-rules p,.preferred-window small{grid-column:1}.proposal-bulk-bar{flex-direction:column;align-items:stretch}.proposal-bulk-bar span{margin-left:0}.proposal-bulk-bar button{width:100%}.resource-policy{grid-template-columns:1fr}}.priority-fieldset{background:#f8fafc}.priority-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.priority-options button{border:1px solid var(--line);min-height:68px;color:var(--ink);text-align:left;background:#fff;border-radius:8px;gap:4px;padding:10px;display:grid}.priority-options button strong{font-size:10px}.priority-options button span{color:var(--muted);font-size:8px;line-height:1.4}.priority-options button.active.normal{border-color:var(--teal);box-shadow:0 0 0 2px #10857921}.priority-options button.active.urgente{border-color:var(--amber);box-shadow:0 0 0 2px #b96f0021}.priority-options button.active.sobrecupo{border-color:var(--red);box-shadow:0 0 0 2px #be2d2721}.incident-modal{width:min(980px,96vw);max-height:92vh;overflow:auto}.incident-modal>header p{color:var(--muted);margin:3px 0 0;font-size:9px}.incident-modal-body{grid-template-columns:minmax(310px,.8fr) minmax(420px,1.2fr);gap:16px;padding:16px;display:grid}.incident-modal-body>section>small{color:var(--teal);text-transform:uppercase;margin-bottom:8px;font-size:8px;font-weight:800;display:block}.compact-agenda{gap:6px;max-height:470px;display:grid;overflow:auto}.compact-agenda article{border:1px solid var(--line);border-left:4px solid var(--teal);background:#fff;border-radius:7px;gap:3px;padding:9px 10px;display:grid}.compact-agenda article.affected{border-color:var(--red);background:var(--red-soft)}.compact-agenda time{color:var(--muted);font:8px monospace}.compact-agenda strong{font-size:9px}.compact-agenda span{color:var(--muted);font-size:8px}.resolution-options{align-content:start;gap:8px;display:grid}.resolution-options>article{border:1px solid var(--line);background:#f8fafc;border-radius:8px;gap:9px;padding:11px;display:grid}.resolution-options>article>div:first-child{grid-template-columns:24px 1fr;gap:2px 8px;display:grid}.resolution-options>article b{background:var(--navy);color:#fff;border-radius:99px;grid-row:1/3;place-items:center;width:24px;height:24px;font-size:8px;display:grid}.resolution-options>article strong{font-size:10px}.resolution-options>article span,.resolution-options>article em{color:var(--muted);font-size:8px;font-style:normal}.inline-action{gap:7px;display:flex}.inline-action select{flex:1}.incident-modal>footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.weekly-conflict-scan{gap:7px;margin-top:10px;display:grid}.weekly-conflict-scan>strong{font-size:9px}.weekly-conflict-scan article{border:1px solid var(--line);background:#f8fafc;border-radius:8px;padding:10px}.weekly-conflict-scan header{justify-content:space-between;gap:8px;display:flex}.weekly-conflict-scan header span{font:8px monospace}.weekly-conflict-scan header b{color:var(--navy);font-size:8px}.weekly-conflict-scan p{color:var(--muted);margin:5px 0;font-size:8px}.weekly-conflict-scan article>div{flex-wrap:wrap;gap:4px;display:flex}.weekly-conflict-scan article>div span{color:#8f2b20;background:#fff0ee;border-radius:99px;padding:4px 6px;font-size:7px}.weekly-conflict-scan article>div b{margin-right:4px}.filter-rail.embedded{border:0;border-bottom:1px solid var(--line);box-shadow:none;border-radius:0;margin:0}.unassigned-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;display:grid}.unassigned-list article{border:1px solid var(--line);border-left:4px solid var(--red);background:#fff;border-radius:8px;padding:13px}.unassigned-list header{border:0;padding:0 0 8px}.unassigned-list h3{margin:3px 0 0;font-size:11px}.unassigned-list em{color:var(--red);font-size:8px;font-style:normal}.unassigned-list p{color:var(--muted);margin:8px 0;font-size:9px}.unassigned-list>article>strong{font-size:9px;display:block}.unassigned-list>article>div{gap:6px;margin-top:10px;display:flex}.unassigned-list>article>div button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;padding:7px 9px;font-size:8px;font-weight:750}.incident-columns{grid-template-columns:1fr 1fr;gap:13px;display:grid}@media (width<=900px){.unassigned-list,.incident-columns{grid-template-columns:1fr}}.incident-stack{gap:13px;display:grid}.module header p{color:var(--muted);margin:4px 0 0;font-size:9px}.input-blockers article{grid-template-columns:150px 1fr auto}.input-blockers article>p{color:var(--muted);grid-column:2/4;margin:0;font-size:9px}.conflict-list button.primary,.resolution-list button.primary{border-color:var(--navy);background:var(--navy);color:#fff}.conflict-list button.text-danger{color:var(--red);background:0 0;border-color:#0000}.resolution-list{gap:10px;padding:14px;display:grid}.resolution-list>article{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.resolution-list>article>header{border-bottom:1px solid var(--line);background:#fbfcfe;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.resolution-list h3{margin:3px 0 0;font-size:11px}.resolution-list header small{color:var(--muted);font-size:8px}.resolution-list header em{background:var(--red-soft);color:var(--red);border-radius:99px;padding:4px 7px;font-size:8px;font-style:normal}.resolution-path{grid-template-columns:1fr auto 1fr;align-items:center;gap:11px;padding:13px 14px;display:grid}.resolution-path>i{color:#93a0b3;font-style:normal}.resolution-path section{border-radius:8px;gap:4px;min-height:70px;padding:10px 12px;display:grid}.resolution-path small{text-transform:uppercase;font-size:8px;font-weight:850}.resolution-path strong{font:10px monospace}.resolution-path span{font-size:9px}.blocked-slot{border-left:4px solid var(--red);background:var(--red-soft)}.blocked-slot small,.blocked-slot span{color:#8f2c24}.suggested-slot{border-left:4px solid var(--teal);background:var(--teal-soft)}.suggested-slot small,.suggested-slot span{color:var(--teal)}.missing-slot{border-left:4px solid var(--amber);background:var(--amber-soft)}.missing-slot small,.missing-slot span{color:var(--amber)}.resolution-list footer{justify-content:flex-end;gap:7px;padding:0 14px 13px;display:flex}.resolution-list footer button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:8px 10px;font-size:8px;font-weight:800}@media (width<=700px){.input-blockers article{grid-template-columns:1fr}.input-blockers article>p,.input-blockers article>div{grid-column:1}.resolution-path{grid-template-columns:1fr}.resolution-path>i{text-align:center;transform:rotate(90deg)}.resolution-list footer{flex-direction:column;align-items:stretch}.workshop-session-editor article{grid-template-columns:1fr 1fr}.workshop-session-editor article input:first-of-type,.workshop-session-editor article select:nth-of-type(n+2){grid-column:1/-1}}.landing-login .login-link{width:100%;color:var(--teal);text-underline-offset:3px;background:0 0;border:0;margin-top:8px;font-size:9px;font-weight:800;text-decoration:underline}.session-expiry-backdrop{z-index:120;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d1c33ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.session-expiry-modal{border-top:5px solid var(--amber);background:#fff;border-radius:13px;width:min(470px,100%);overflow:hidden;box-shadow:0 32px 90px #08183066}.session-expiry-modal>header{border-bottom:1px solid var(--line);padding:20px 22px 14px}.session-expiry-modal header small{color:var(--amber);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font-size:8px;font-weight:800;display:block}.session-expiry-modal h2{color:var(--ink);margin:0;font-size:21px}.session-expiry-copy{gap:8px;padding:19px 22px;display:grid}.session-expiry-copy>strong{color:var(--navy);font:28px monospace}.session-expiry-copy p{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.session-expiry-copy .notice{margin:5px 0 0}.session-expiry-modal>footer{border-top:1px solid var(--line);background:#f8fafc;justify-content:flex-end;gap:8px;padding:14px 22px;display:flex}.session-expiry-modal footer button{border:1px solid var(--line);min-height:38px;color:var(--ink);background:#fff;border-radius:8px;padding:9px 14px;font-weight:750}.session-expiry-modal footer button.primary{border-color:var(--navy);background:var(--navy);color:#fff}.session-expiry-modal footer button:disabled{cursor:not-allowed;opacity:.58}.patient-create-modal{width:min(840px,96vw);max-height:92vh;overflow:auto}.intake-form{grid-template-columns:1fr 1fr;gap:10px;padding:16px;display:grid}.intake-form label{color:var(--muted);text-transform:uppercase;gap:5px;font-size:8px;font-weight:800;display:grid}.intake-form input,.intake-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);text-transform:none;background:#fff;border-radius:7px;padding:9px;font-size:9px}.intake-form textarea{resize:vertical;min-height:72px}.intake-form .full{grid-column:1/-1}.discharge-modal{border-top:5px solid var(--teal);width:min(700px,96vw);max-height:92vh;overflow:auto}.clinical-row-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.clinical-row-actions button{min-height:30px}.professional-need-modal{border-top:5px solid var(--navy);width:min(720px,96vw);max-height:92vh;overflow:auto}.professional-need-modal header p{color:var(--muted);margin:4px 0 0;font-size:10px}.professional-need-modal label small{color:var(--muted);text-transform:none;font-weight:500;line-height:1.4}@media (width<=720px){.intake-form{grid-template-columns:1fr}.intake-form .full{grid-column:1}}.landing{min-height:100vh;color:var(--ink);background:#f6f9fc}.landing-nav{z-index:5;color:#fff;background:linear-gradient(110deg,#082d59,#0b3b6d);grid-template-columns:1fr auto 1fr;align-items:center;min-height:76px;padding:0 clamp(28px,6vw,92px);display:grid;position:sticky;top:0}.landing-brand{color:#fff;align-items:center;gap:11px;width:max-content;text-decoration:none;display:flex}.landing-brand>span{background:linear-gradient(145deg,#18b8a9,#0e8a84);border-radius:11px;place-items:center;width:38px;height:38px;font-size:14px;font-weight:900;display:grid}.landing-brand div{display:grid}.landing-brand small{color:#a9bed9;letter-spacing:.09em;text-transform:uppercase;font-size:9px}.landing-brand strong{letter-spacing:-.03em;font-size:19px}.landing-nav nav{gap:38px;display:flex}.landing-nav nav a{color:#d9e4f2;border-bottom:3px solid #0000;padding:27px 0 24px;font-size:12px;text-decoration:none}.landing-nav nav a:hover,.landing-nav nav a:focus-visible{color:#fff;border-bottom-color:#23c4b3}.landing-access{color:#fff;background:#12a99d;border:1px solid #ffffff47;border-radius:99px;justify-self:end;padding:11px 22px;font-size:11px;font-weight:800;text-decoration:none;box-shadow:0 8px 22px #0000001f}.landing-hero{background:radial-gradient(circle at 72% 35%,#1fb5a41a,#0000 25%),linear-gradient(115deg,#fff 0% 39%,#eaf3fadb 100%);grid-template-columns:minmax(420px,.82fr) minmax(610px,1.18fr);align-items:center;gap:42px;min-height:630px;padding:65px clamp(28px,6vw,92px) 72px;display:grid;position:relative;overflow:hidden}.landing-hero:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0 64%,#ffffff7a),repeating-linear-gradient(90deg,#0000 0 109px,#142b5206 110px);position:absolute;inset:0}.landing-copy,.landing-product{z-index:1;position:relative}.landing-copy{max-width:570px}.landing-copy>span{color:#0b9187;letter-spacing:.15em;text-transform:uppercase;font-size:10px;font-weight:900}.landing-copy h1{color:#123465;letter-spacing:-.06em;margin:17px 0 23px;font-size:clamp(48px,4.7vw,70px);line-height:1.02}.landing-copy h1 em{color:#0ea396;font-style:normal}.landing-copy>p{color:#596984;max-width:510px;margin:0;font-size:16px;line-height:1.6}.landing-cta{color:#fff;background:#123465;border-radius:99px;align-items:center;gap:34px;margin-top:30px;padding:13px 20px 13px 24px;font-size:11px;font-weight:850;text-decoration:none;display:inline-flex;box-shadow:0 12px 30px #12346533}.landing-cta b{font-size:17px}.landing-points{color:#44536c;flex-wrap:wrap;gap:17px;margin-top:34px;font-size:9px;display:flex}.landing-points span{align-items:center;gap:6px;display:flex}.landing-points b{color:#0c998e;background:#e2f5f2;border-radius:7px;place-items:center;width:22px;height:22px;display:grid}.landing-product{min-height:488px}.product-window{transform-origin:100%;background:#fff;border:8px solid #19202b;border-radius:18px;height:440px;position:absolute;top:18px;left:0;right:145px;overflow:hidden;transform:perspective(1300px)rotateY(-3deg)rotateX(1deg);box-shadow:0 34px 70px #112d523d}.product-window>header{background:#f6f8fb;border-bottom:1px solid #e6ebf1;align-items:center;gap:5px;height:34px;padding:0 13px;display:flex}.product-window>header i{background:#ff6b63;border-radius:50%;width:7px;height:7px}.product-window>header i:nth-child(2){background:#f5bd43}.product-window>header i:nth-child(3){background:#35bd72}.product-window>header strong{color:#46536a;margin-left:9px;font-size:9px}.product-body{grid-template-columns:104px 1fr;height:calc(100% - 34px);display:grid}.product-body aside{color:#c8d7e9;background:#15345f;padding:18px 10px}.product-body aside b{color:#fff;margin-bottom:20px;font-size:10px;display:block}.product-body aside span{border-radius:5px;margin:7px 0;padding:7px;font-size:7px;display:block}.product-body aside span:first-of-type{color:#70ddd1;background:#19beac38}.product-calendar{padding:18px 16px}.product-calendar>strong{font-size:12px}.product-days{color:#647086;text-align:center;grid-template-columns:repeat(5,1fr);margin:18px 0 7px 42px;font-size:7px;display:grid}.product-grid{background:repeating-linear-gradient(90deg,#0000 0 calc(20% - 1px),#e6ebf1 calc(20% - 1px) 20%),repeating-linear-gradient(#0000 0 38px,#e6ebf1 38px 39px);border:1px solid #e6ebf1;height:310px;margin-left:42px;position:relative}.product-grid>small{color:#8590a0;height:39px;margin-left:-40px;font:7px monospace;display:block}.mock-event{color:#33435d;background:#dff4f0;border-left:3px solid #0e9488;border-radius:5px;width:18%;padding:7px;font-size:7px;line-height:1.45;position:absolute;box-shadow:0 2px 6px #142b5214}.mock-event b{display:block}.mock-event.one{top:10px;left:2%}.mock-event.two{background:#eee9ff;border-color:#6d4cc8;top:83px;left:21%}.mock-event.three{top:46px;left:41%}.mock-event.four{background:#ffebe9;border-color:#b42318;top:160px;left:61%}.landing-login{z-index:3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff7;border:1px solid #d6e0eb;border-radius:17px;width:315px;padding:27px 28px;position:absolute;top:78px;right:0;box-shadow:0 25px 65px #112d5233}.landing-login .login-seal{border-radius:10px;width:38px;height:38px;margin-bottom:15px;font-size:12px}.landing-login>span{color:var(--teal);letter-spacing:.14em;text-transform:uppercase;font-size:8px;font-weight:900}.landing-login h2{letter-spacing:-.05em;margin:6px 0 5px;font-size:25px}.landing-login>p{color:var(--muted);margin:0 0 14px;font-size:10px}.landing-login label{color:#3f4a5d;gap:5px;margin-top:11px;font-size:9px;font-weight:800;display:grid}.landing-login input{width:100%;color:var(--ink);background:#fbfcfe;border:1px solid #cfd7e3;border-radius:8px;padding:10px 11px;font-size:11px}.landing-login input:focus{border-color:var(--teal);background:#fff;outline:3px solid #0f766e24}.landing-login .login-submit{margin-top:15px;padding:11px}.landing-login>.notice{margin:12px 0 0}.landing-login>small{color:#8791a3;text-align:center;margin-top:13px;font-size:8px;display:block}.landing-login .oidc-login{margin-top:14px;padding:10px;font-size:10px}.landing-login .login-divider{margin:12px 0 2px}.landing-features{background:#f2f7fb;padding:62px clamp(28px,6vw,92px) 70px;scroll-margin-top:76px}.landing-features>span,.landing-security>div>span{color:#0b9187;letter-spacing:.15em;text-align:center;text-transform:uppercase;margin-bottom:9px;font-size:9px;font-weight:900;display:block}.landing-features h2{color:#123465;text-align:center;margin:0 0 28px;font-size:27px}.landing-features>div{grid-template-columns:repeat(4,1fr);gap:15px;max-width:1320px;margin:auto;display:grid}.landing-features article{background:#fff;border:1px solid #dfe7f0;border-radius:12px;grid-template-columns:42px 1fr;align-items:center;gap:3px 11px;min-height:125px;padding:20px;display:grid;box-shadow:0 8px 24px #142b520f}.landing-features i{color:#0c998e;background:#def3ef;border-radius:12px;grid-row:1/3;place-items:center;width:42px;height:42px;font-size:19px;font-style:normal;display:grid}.landing-features article:nth-child(2) i{color:#6d4cc8;background:#eee9ff}.landing-features article:nth-child(3) i{color:#3468cf;background:#e4edff}.landing-features article:nth-child(4) i{color:#588b27;background:#eaf5dc}.landing-features strong{font-size:11px}.landing-features article span{color:var(--muted);align-self:start;font-size:8px;line-height:1.45}.landing-security{color:#fff;background:#0d315f;grid-template-columns:.85fr 1.15fr;align-items:center;gap:70px;padding:72px clamp(28px,9vw,150px);scroll-margin-top:76px;display:grid}.landing-security>div>span{text-align:left;color:#55d5c7}.landing-security h2{letter-spacing:-.04em;max-width:600px;margin:0 0 16px;font-size:34px;line-height:1.08}.landing-security p{color:#c5d5e8;max-width:590px;margin:0;font-size:13px;line-height:1.65}.landing-security ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.landing-security li{background:#ffffff0f;border:1px solid #ffffff24;border-radius:11px;gap:4px;padding:17px 20px;display:grid}.landing-security b{font-size:11px}.landing-security small{color:#bfd0e4;font-size:9px;line-height:1.5}@media (width<=1120px){.landing-nav{grid-template-columns:1fr auto}.landing-nav nav{display:none}.landing-hero{grid-template-columns:minmax(350px,.75fr) minmax(530px,1.25fr);gap:22px;padding-inline:38px}.landing-copy h1{font-size:50px}.product-window{right:105px}.landing-login{width:285px}.landing-features{padding-inline:38px}}@media (width<=850px){.landing-nav{padding:0 22px}.landing-hero{min-height:auto;padding:58px 24px;display:block}.landing-copy{text-align:center;margin:auto}.landing-copy>p{margin:auto}.landing-cta{margin-top:25px}.landing-points{justify-content:center}.landing-product{max-width:430px;min-height:420px;margin:28px auto 0}.product-window{display:none}.landing-login{text-align:left;width:min(380px,100%);top:20px;right:50%;transform:translate(50%)}.landing-features>div{grid-template-columns:1fr 1fr}.landing-security{grid-template-columns:1fr;gap:30px;padding-inline:38px}}@media (width<=520px){.landing-nav{min-height:67px}.landing-brand small{display:none}.landing-brand strong{font-size:16px}.landing-access{padding:9px 13px;font-size:9px}.landing-hero{padding-top:45px}.landing-copy h1{font-size:39px}.landing-copy>p{font-size:14px}.landing-points{display:grid}.landing-product{min-height:405px}.landing-login{padding:24px 22px}.landing-features{padding:25px 18px 38px}.landing-features>div{grid-template-columns:1fr}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.proposal-status.bloqueada{color:#b42318;background:#fee4e2}
