@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-cyrillic-ext-300-normal-CgCALhwJ.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-300-normal-RId2JxDB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-cyrillic-300-normal-BnqRxXuy.woff2)format("woff2"),url(/assets/inter-cyrillic-300-normal-LR1W_oT8.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-greek-ext-300-normal-l2DDyC6M.woff2)format("woff2"),url(/assets/inter-greek-ext-300-normal-DLbbeei1.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-greek-300-normal-DmGD3g_f.woff2)format("woff2"),url(/assets/inter-greek-300-normal-BrhSP0vQ.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-vietnamese-300-normal-Bdr24Bqb.woff2)format("woff2"),url(/assets/inter-vietnamese-300-normal-DDGmYYdT.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-latin-ext-300-normal-CPgO9Ksf.woff2)format("woff2"),url(/assets/inter-latin-ext-300-normal-Dp1L8vcn.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-latin-300-normal-BVlfKGgI.woff2)format("woff2"),url(/assets/inter-latin-300-normal-i8F0SvXL.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary-hsl:215, 65%, 42%;--primary:hsl(var(--primary-hsl));--primary-hover:#205297;--primary-light:#eaf1fb;--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-300:#93c5fd;--primary-400:#60a5fa;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--primary-800:#1e40af;--primary-900:#1e3a8a;--primary-dark:#1e3a8a;--secondary-hsl:160, 60%, 40%;--secondary:hsl(var(--secondary-hsl));--secondary-hover:#238b68;--danger-500:#ef4444;--danger-600:#dc2626;--danger-700:#b91c1c;--success-500:#22c55e;--success-600:#16a34a;--success-700:#15803d;--accent-amber:#f59f0a;--accent-indigo:#5562e7;--accent-rose:#e23653;--bg-app:#f4f7fa;--bg-surface:#fff;--bg-subtle:#f8fafc;--border-color:#cbd5e1;--border-light:#e2e8f0;--border-medium:#cbd5e1;--border-strong:#94a3b8;--text-main:#0f172a;--text-muted:#64748b;--text-inverse:#fff;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--transition-fast:.15s ease}select,input,textarea,button,option{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}select option{color:#0f172a!important;background-color:#fff!important}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-app);color:var(--text-main);-webkit-font-smoothing:antialiased;line-height:1.5}.app-container{flex-direction:column;gap:1.5rem;max-width:1440px;min-height:100vh;margin:0 auto;padding:1.5rem;display:flex}.app-main-content{flex-direction:column;gap:1rem;display:flex}.table-actions-bar{justify-content:flex-start;align-items:center;display:flex}.toggle-form-btn{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);padding:.55rem 1.1rem;font-size:.875rem}.app-header{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:1.25rem;padding:1.25rem 1.5rem;display:flex}.header-top-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand-container{align-items:center;gap:.85rem;display:flex}.brand-logo{border-radius:var(--radius-md);background:linear-gradient(135deg,#1f6bd6,#1354ae);justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;display:flex;box-shadow:0 4px 10px #0f52ba40}.brand-title{color:var(--text-main);letter-spacing:-.02em;font-size:1.35rem;font-weight:700}.brand-subtitle{color:var(--text-muted);font-size:.825rem;font-weight:500}.header-actions-group{align-items:center;gap:.75rem;display:flex}.date-navigation-bar{background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.date-controls-left{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.date-section-label{color:var(--text-muted);font-size:.875rem;font-weight:600}.date-picker-button-group{background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);align-items:center;display:flex;overflow:hidden}.btn-icon{cursor:pointer;color:var(--text-main);transition:background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:.4rem .6rem;display:flex}.btn-icon:hover{background:var(--border-light)}.date-input-wrapper{border-left:1px solid var(--border-light);border-right:1px solid var(--border-light);align-items:center;gap:.35rem;padding:0 .5rem;display:flex}.calendar-icon{color:var(--primary)}.date-picker-input{color:var(--text-main);cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit;font-size:.9rem;font-weight:600}.today-btn{padding:.35rem .75rem;font-size:.8rem}.date-info-display{align-items:center;gap:1rem;display:flex}.current-date-text{color:var(--primary);font-size:1.1rem;font-weight:600}.exam-count-badge{background:var(--primary-light);color:var(--primary);border:1px solid #2563eb33;border-radius:999px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.65;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--primary);color:var(--text-inverse)}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{border-color:var(--border-medium);color:var(--text-main);background:#fff}.btn-secondary:hover{background:var(--bg-subtle);border-color:var(--border-strong)}.btn-cancel{color:var(--accent-rose);background:#fef2f2;border-color:#fca5a5}.btn-cancel:hover{border-color:var(--accent-rose);background:#fee2e2}.btn-outline{border-color:var(--border-medium);color:var(--text-main);background:0 0}.btn-outline:hover{background:var(--bg-subtle)}.btn-save{color:#fff;background:#22a076}.btn-update{color:#fff;background:#1763cf}.btn-update:hover{background:#1354ae}.btn-danger{color:#fff;background:#df2040}.btn-danger:hover{background:#bb1b36}.btn-active{background:var(--text-main);color:#fff}.btn-text{color:var(--text-muted);background:0 0;border:none;padding:.4rem .6rem}.btn-text:hover{color:var(--text-main);text-decoration:underline}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.inline-form-container{background:var(--bg-surface);border:2px solid var(--primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;gap:1rem;margin-bottom:1rem;padding:1.25rem 1.5rem;animation:.2s ease-in-out fadeIn;display:flex}.inline-form-container.edit-mode{border-color:var(--accent-amber);background:#fffdfa}.form-header{border-bottom:1px solid #e2e8f0;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;display:flex}.badge,.form-mode-pill{color:#fff;letter-spacing:.5px;background:#1d59c6;border-radius:6px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.edit-mode .badge,.edit-mode .form-mode-pill{color:#fff;background:#d97706}.form-title{color:#1e293b;margin:0;font-size:17px;font-weight:700}.form-row{gap:12px;margin-bottom:12px;display:grid}.form-row-row1{grid-template-columns:.8fr .95fr 1.8fr 1.1fr 1.1fr .85fr .95fr;gap:8px}.form-row-row1 .form-control,.form-row-row1 input[type=text],.form-row-row1 input[type=time],.form-row-row1 input[type=tel],.form-row-row1 .typeahead-input{height:33px;padding:5px 8px;font-size:12px}.form-row-row1 label,.form-row-row1 .typeahead-label{margin-bottom:3px;font-size:11.5px}.form-row-row2{grid-template-columns:2.8fr 85px 105px 1.5fr 1.25fr 1.25fr;gap:8px;margin-bottom:12px}.form-row-extra-exam{grid-template-columns:2.8fr 85px 105px 1.5fr 1.25fr 1.25fr;gap:8px;margin-bottom:12px;animation:.15s ease-in-out fadeIn}.form-row-extra-exam .form-control,.form-row-extra-exam input[type=text],.form-row-extra-exam .typeahead-input{height:33px;padding:5px 8px;font-size:12px}.form-row-extra-exam label,.form-row-extra-exam .typeahead-label{margin-bottom:3px;font-size:11.5px}.btn-icon-remove-exam{color:#dc2626;cursor:pointer;width:100%;max-width:110px;height:33px;transition:all var(--transition-fast);background:#fff;border:1px solid #fca5a5;border-radius:4px;justify-content:center;align-items:center;gap:4px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.btn-icon-remove-exam:hover{background:#fee2e2;border-color:#ef4444}.form-add-exam-row{margin-top:2px;margin-bottom:14px;display:flex}.btn-add-exam-inline{border:1px dashed var(--primary);color:var(--primary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border-radius:4px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:600;display:inline-flex}.btn-add-exam-inline:hover{background:var(--primary-light);border-color:var(--primary-hover);color:var(--primary-hover)}.form-row-row2 .form-control,.form-row-row2 input[type=text],.form-row-row2 .typeahead-input{height:33px;padding:5px 8px;font-size:12px}.form-row-row2 label,.form-row-row2 .typeahead-label{margin-bottom:3px;font-size:11.5px}.form-row-3{grid-template-columns:2fr 1fr 1fr}.form-row-4{grid-template-columns:1fr 1fr 1fr 1fr}.form-row-2{grid-template-columns:1fr 1fr}.form-group{flex-direction:column;display:flex}.form-group.full-width{grid-column:1/-1;width:100%}.form-group label,.typeahead-label{color:#374151;margin-bottom:4px;font-size:12px;font-weight:500}.required{color:#ef4444}.form-footer{border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding-top:16px;display:flex}.btn-clear{color:#64748b;cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:6px;padding:8px 12px;font-family:inherit;font-size:13px}.btn-clear:hover{background:#f1f5f9}.btn-group{gap:10px;display:flex}.btn-close{color:#dc2626;cursor:pointer;transition:background-color var(--transition-fast);background:#fff;border:1px solid #fca5a5;border-radius:6px;padding:8px 20px;font-family:inherit;font-size:13px;font-weight:500}.btn-close:hover{background:#fef2f2}.btn-save{color:#fff;cursor:pointer;transition:background-color var(--transition-fast);background:#059669;border:none;border-radius:6px;padding:8px 20px;font-family:inherit;font-size:13px;font-weight:600}.btn-save:hover{background:#047857}.field-label{color:var(--text-main);white-space:nowrap;font-size:.825rem;font-weight:600}.required-star{color:var(--accent-rose);font-weight:700}.form-control{border:1px solid var(--border-medium);border-radius:var(--radius-sm);background:var(--bg-surface);width:100%;color:var(--text-main);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2563eb26}.input-error{border-color:var(--accent-rose)!important;box-shadow:0 0 0 3px #e11d481f!important}.error-text{color:var(--accent-rose);font-size:.75rem;font-weight:500}.cardiopediatrics-notice{border-radius:var(--radius-sm);color:#854d0e;background:#fefce8;border:1px solid #fef08a;align-items:center;gap:.5rem;padding:.6rem .85rem;font-size:.825rem;display:flex}.form-actions-row{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;margin-top:.25rem;padding-top:.85rem;display:flex}.form-actions-right{align-items:center;gap:.75rem;display:flex}.typeahead-wrapper{flex-direction:column;width:100%;display:flex;position:relative}.typeahead-label{color:#374151;margin-bottom:4px;font-size:12px;font-weight:500}.typeahead-input-container{width:100%;position:relative}input[type=text],input[type=time],input[type=tel],.form-control,.typeahead-input{color:#334155;box-sizing:border-box;width:100%;height:35px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin:0;padding:8px 10px;font-family:inherit;font-size:13px}input[type=time]{cursor:pointer}.typeahead-input{padding-right:2rem}.typeahead-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2563eb26}.typeahead-clear-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.1rem;line-height:1;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.typeahead-clear-btn:hover{color:var(--text-main)}.typeahead-dropdown{background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;max-height:240px;padding:.35rem 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.typeahead-dropdown-item{cursor:pointer;transition:background var(--transition-fast);flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem .85rem;display:flex}.typeahead-item-content{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.typeahead-item-remove-btn{color:#94a3b8;cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:2px 6px;font-size:1.1rem;font-weight:700;line-height:1;display:inline-flex}.typeahead-item-remove-btn:hover{color:#ef4444;background-color:#fee2e2}.typeahead-dropdown-item:hover,.typeahead-dropdown-item.highlighted{background:var(--bg-subtle)}.typeahead-dropdown-item.selected{background:var(--primary-light)}.typeahead-item-main{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.typeahead-item-label{color:var(--text-main);font-size:.875rem;font-weight:600}.typeahead-item-badges{flex-shrink:0;align-items:center;gap:.35rem;display:inline-flex}.typeahead-item-badge{color:#92400e;background:#fef3c7;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:700}.typeahead-dropdown-item.item-already-scheduled{background:#fff7ed;border-left:4px solid #ea580c;padding-left:calc(.85rem - 4px)}.typeahead-dropdown-item.item-already-scheduled:hover,.typeahead-dropdown-item.item-already-scheduled.highlighted{background:#ffedd5}.typeahead-dropdown-item.item-already-scheduled.selected{background:#fed7aa}.typeahead-dropdown-item.item-already-scheduled .typeahead-item-label{color:#7c2d12;font-weight:700}.typeahead-item-scheduled-badge{color:#9a3412;white-space:nowrap;letter-spacing:.01em;background:#ffedd5;border:1.5px solid #ea580c;border-radius:9999px;align-items:center;gap:.3rem;padding:.12rem .55rem;font-size:.725rem;font-weight:700;display:inline-flex;box-shadow:0 1px 3px #ea580c26}.typeahead-item-scheduled-badge .scheduled-bullet{color:#ea580c;font-size:.55rem;line-height:1}.typeahead-item-sublabel{color:var(--text-muted);font-size:.75rem}.typeahead-no-results{background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--text-muted);z-index:100;text-align:center;padding:.75rem;font-size:.825rem;position:absolute;top:calc(100% + 4px);left:0;right:0}.typeahead-help{color:var(--text-muted);font-size:.725rem}.typeahead-error-text{color:var(--accent-rose);font-size:.75rem}.table-responsive-container{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.daily-examination-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.daily-examination-table th{color:#334155;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border-medium);white-space:nowrap;text-align:center;background:#f1f5f9;padding:.85rem 1rem;font-size:.775rem;font-weight:700}.daily-examination-table td{border:1px solid var(--border-light);vertical-align:middle;padding:.85rem 1rem}.row-even{background:#fff}.row-odd{background:#f8fafc}.daily-examination-table tr:hover{background:#f1f5f9}.row-editing,.row-editing td{background-color:#fefce8!important}.row-editing td:first-child{box-shadow:inset 4px 0 0 var(--accent-amber,#f59e0b)!important}.cell-time-location,.cell-time,.cell-location,.cell-mv,.cell-type,.cell-code,.cell-category{text-align:center}.cell-time-location,.cell-time,.th-type,.cell-type{white-space:nowrap}.th-time-location,.cell-time-location{width:130px;min-width:125px;padding-left:.5rem!important;padding-right:.5rem!important}.th-type,.cell-type{width:120px;min-width:110px;padding-left:.5rem!important;padding-right:.5rem!important}.origin-block{flex-direction:column;justify-content:center;align-items:center;gap:.45rem;display:flex}.sector-pill{color:#1e293b;white-space:nowrap;letter-spacing:.02em;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:4px;justify-content:center;align-items:center;padding:.1rem .45rem;font-family:monospace;font-size:.725rem;font-weight:700;display:inline-flex}.th-category,.cell-category{width:105px;min-width:95px}.time-location-block{flex-direction:column;justify-content:center;align-items:center;gap:.35rem;display:flex}.time-badge{color:#0369a1;border-radius:var(--radius-sm);background:#e0f2fe;align-items:center;gap:.35rem;padding:.25rem .55rem;font-family:monospace;font-size:.9rem;font-weight:700;display:inline-flex}.patient-info-block{flex-direction:column;align-items:flex-start;gap:.2rem;line-height:1.2;display:flex}.patient-name-text{color:var(--text-main);font-weight:700}.patient-meta-row{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.mv-badge{color:#475569;border:1px solid var(--border-light);background:#f1f5f9;border-radius:4px;align-items:center;padding:.12rem .4rem;font-family:monospace;font-size:.775rem;font-weight:600;display:inline-flex}.city-badge,.phone-badge{border-radius:4px;align-items:center;padding:.1rem .35rem;font-size:.725rem;font-weight:500;display:inline-flex}.city-badge{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd}.phone-badge{color:#475569;border:1px solid var(--border-light);background:#f8fafc;font-family:monospace}.th-patient,.cell-patient{min-width:210px}.th-exam,.cell-exam{text-align:left;min-width:225px}.exam-info-block{align-items:baseline;gap:.45rem;line-height:1.25;display:flex}.code-badge{color:#1e293b;white-space:nowrap;background:#e2e8f0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:.15rem .45rem;font-family:monospace;font-size:.85rem;font-weight:700;display:inline-flex}.exam-name-text{color:#1e293b;white-space:normal;word-break:normal;font-weight:600}.location-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.775rem;font-weight:700;display:inline-flex}.location-milena{color:#3730a3;background:#e0e7ff}.location-colina{color:#86198f;background:#fae8ff}.patient-type-pill{white-space:nowrap;border-radius:4px;padding:.15rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.type-hospitalizado,.type-internado{color:#9f1239;background:#fecdd3}.type-ambulatório,.type-ambulatorial{color:#166534;background:#dcfce7}.category-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.category-usg{color:#1e40af;background:#dbeafe}.category-vascular{color:#065f46;background:#d1fae5}.category-cardio{color:#9f1239;background:#ffe4e6}.table-section-container{flex-direction:column;gap:.75rem;display:flex}.table-toolbar{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.table-filter-group{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.filter-icon{color:var(--primary)}.filter-label{color:var(--text-main);font-size:.85rem;font-weight:600}.filter-select{border:1px solid var(--border-medium);border-radius:var(--radius-sm);background-color:var(--bg-subtle);appearance:none;color:var(--text-main);cursor:pointer;transition:border-color var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;outline:none;padding:.4rem 2.25rem .4rem .75rem;font-family:inherit;font-size:.85rem}.filter-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb26}.btn-clear-filter{border:1px solid var(--border-medium);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:#f1f5f9;padding:.35rem .65rem;font-size:.775rem;font-weight:600}.btn-clear-filter:hover{color:var(--accent-rose);background:#e2e8f0}.th-technician,.cell-technician{white-space:nowrap;text-align:center;width:130px;min-width:115px;max-width:140px;padding-left:.4rem!important;padding-right:.4rem!important}.cell-physician{white-space:nowrap}.physician-info-block{flex-direction:column;gap:.25rem;line-height:1.2;display:flex}.physician-name-text{color:#1e293b;text-transform:uppercase;font-size:.85rem;font-weight:600}.technician-name-text{color:#1e293b;text-transform:uppercase;font-size:.825rem;font-weight:600}.physician-prestador-text{color:#475569;font-family:monospace;font-size:.825rem;font-weight:700}.th-actions,.cell-actions{text-align:center;width:65px;min-width:60px;max-width:75px;padding-left:.35rem!important;padding-right:.35rem!important}.action-buttons-group{flex-direction:column;justify-content:center;align-items:center;gap:.25rem;display:flex}.action-btn{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem .35rem;font-size:.775rem;font-weight:600;display:inline-flex}.confirm-btn{color:#10b981}.confirm-btn:hover{background:#dcfce7}.confirm-btn.is-confirmed{color:#047857;background:#a7f3d0}.absent-btn{color:#f43f5e}.absent-btn:hover{background:#ffe4e6}.absent-btn.is-absent{color:#9f1239;background:#fecdd3}.edit-btn{color:#0284c7}.edit-btn:hover{background:#e0f2fe}.delete-btn{color:#e11d48}.delete-btn:hover{background:#ffe4e6}.row-confirmed,.row-confirmed td{background-color:#dcfce7!important}.row-confirmed:hover td{background-color:#bbf7d0!important}.row-confirmed td:first-child{box-shadow:inset 4px 0 #059669!important}.row-absent,.row-absent td{background-color:#fee2e2!important}.row-absent:hover td{background-color:#fecaca!important}.row-absent td:first-child{box-shadow:inset 4px 0 #dc2626!important}.period-divider-row{transition:background-color var(--transition-fast)}.period-divider-row.period-row-morning{background-color:#fffbeb!important}.period-divider-row.period-row-afternoon{background-color:#fff7ed!important}.period-divider-cell{border-left:1px solid var(--border-light);border-right:1px solid var(--border-light);transition:background-color var(--transition-fast), border-color var(--transition-fast);padding:.55rem 1rem!important}.period-divider-cell.period-morning{background-color:#fffbeb!important;border-top:1px solid #fef3c7!important;border-bottom:1px solid #fde68a!important}.period-divider-cell.period-afternoon{background-color:#fff7ed!important;border-top:1px solid #ffedd5!important;border-bottom:1px solid #fed7aa!important}.period-divider-content{justify-content:center;align-items:center;width:100%;display:flex}.divider-badge{border-radius:9999px;align-items:center;gap:.45rem;padding:.25rem .85rem;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #0000000a}.divider-badge.badge-morning{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.divider-badge.badge-afternoon{color:#9a3412;background:#ffedd5;border:1px solid #fed7aa}.period-icon-morning{color:#d97706}.period-icon-afternoon{color:#ea580c}.period-title{letter-spacing:.08em;text-transform:uppercase;font-size:.775rem;font-weight:800}.badge-morning .period-title{color:#92400e}.badge-afternoon .period-title{color:#9a3412}.text-amber{color:#d97706}.text-orange{color:#ea580c}.text-indigo{color:#4f46e5}.table-empty-state{background:var(--bg-surface);border:1px dashed var(--border-medium);border-radius:var(--radius-lg);text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:3.5rem 1.5rem;display:flex}.empty-icon{color:var(--border-strong)}.empty-title{color:var(--text-main);font-size:1.1rem;font-weight:700}.empty-subtitle{color:var(--text-muted);font-size:.875rem}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;overscroll-behavior:contain;background:#0f172a99;justify-content:center;align-items:center;padding:1.25rem;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:440px;animation:.15s ease-out scaleUp;display:flex;overflow:hidden}.modal-header{justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-header-danger{color:#9f1239;background:#ffe4e6;border-bottom:1px solid #fecdd3}.modal-title-container{align-items:center;gap:.5rem;display:flex}.modal-title{font-size:1rem;font-weight:700}.modal-close-btn{cursor:pointer;color:inherit;opacity:.8;background:0 0;border:none}.modal-close-btn:hover{opacity:1}.modal-body{padding:1.25rem}.modal-message{color:var(--text-main);font-size:.9rem;line-height:1.4}.modal-footer{background:var(--bg-subtle);border-top:1px solid var(--border-light);justify-content:flex-end;gap:.75rem;padding:.85rem 1.25rem;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-icon{animation:.8s linear infinite spin}.report-modal-container{flex-direction:column;width:95vw;max-width:1280px;height:90vh;max-height:90vh;display:flex}.report-modal-header{background:var(--bg-surface);border-bottom:1px solid var(--border-light);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.75rem;display:flex}.report-modal-date-controls{align-items:center;gap:.75rem;margin-left:auto;margin-right:.5rem;display:flex}.report-modal-date-picker-group{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);background:#fff;border:1px solid #cbd5e1;align-items:center;display:flex;overflow:hidden}.report-date-nav-btn{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.35rem .5rem;transition:background .15s;display:flex;color:#0f172a!important}.report-date-nav-btn:hover{background:#f1f5f9}.report-date-input-wrapper{background:#fff;border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0;align-items:center;gap:.35rem;padding:0 .5rem;display:flex}.report-calendar-icon{color:var(--primary-600)}.report-date-picker-input{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit;font-size:.85rem;font-weight:600;color:#0f172a!important}.report-today-btn{border-radius:var(--radius-sm);cursor:pointer;padding:.35rem .75rem;font-size:.8rem;font-weight:700;transition:all .15s;color:#1e3a8a!important;background:#eff6ff!important;border:1px solid #bfdbfe!important}.report-today-btn:hover{background:#dbeafe!important;border-color:#93c5fd!important}.report-modal-icon-badge{width:44px;height:44px;color:var(--primary-600);border-radius:var(--radius-md);background:#eff6ff;border:1px solid #dbeafe;justify-content:center;align-items:center;display:flex}.report-modal-date-subtitle{color:var(--text-muted);margin-top:.15rem;font-size:.875rem;font-weight:500;display:block}.report-modal-body{overscroll-behavior:contain;flex-direction:column;flex:1;gap:1.5rem;min-height:0;padding:1.5rem 1.75rem;display:flex;overflow-y:auto}.report-period-selector-bar{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem;padding:.85rem 1.15rem;display:flex}.report-period-presets{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.report-period-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:.35rem;margin-right:.25rem;font-size:.8rem;font-weight:700;display:inline-flex}.report-period-preset-btn{border-radius:var(--radius-sm);cursor:pointer;background-color:#f8fafc;border:1px solid #cbd5e1;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.825rem;font-weight:600;transition:all .15s;display:inline-flex;color:#0f172a!important}.report-period-preset-btn:hover{background-color:#e2e8f0;border-color:#93c5fd;color:#1e3a8a!important}.report-period-preset-btn.active{color:#fff!important;background-color:#2563eb!important;border-color:#1d4ed8!important;font-weight:700!important;box-shadow:0 1px 3px #2563eb59!important}.report-period-nav-group{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}.report-custom-range-inputs{color:#334155;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.report-custom-date-field{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);background-color:#fff;border:1px solid #cbd5e1;align-items:center;gap:.4rem;padding:.35rem .6rem;display:flex}.report-custom-date-field span{color:#334155;font-size:.8rem;font-weight:700}.report-custom-date-field input[type=date]{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit;font-size:.85rem;font-weight:600;color:#0f172a!important}.report-loading-indicator{color:var(--primary-600);align-items:center;gap:.4rem;margin-left:.75rem;font-size:.8rem;font-weight:500;display:inline-flex}.report-filters-section{background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-shrink:0;padding:1.15rem 1.35rem}.report-filters-header{justify-content:space-between;align-items:center;margin-bottom:.85rem;display:flex}.report-filters-title{color:var(--text-main);text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;display:flex}.report-clear-btn{color:var(--danger-600);background:#fff;border-color:#fecdd3;align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.8rem;font-weight:600;transition:all .15s;display:inline-flex}.report-clear-btn:hover{color:var(--danger-700);background:#ffe4e6;border-color:#fda4af}.report-filters-grid{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.75rem;display:grid}.report-filter-item{flex-direction:column;gap:.35rem;display:flex}.filter-input-icon-wrapper{align-items:center;width:100%;display:flex;position:relative}.filter-field-icon{color:var(--primary-600);pointer-events:none;z-index:2;opacity:.85;position:absolute;left:.75rem}.report-filter-select,.report-filter-input{border:1px solid var(--border-color);border-radius:var(--radius-sm);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;width:100%;padding:.55rem .75rem;font-size:.875rem;font-weight:500;transition:border-color .15s,box-shadow .15s,background-color .15s;color:#0f172a!important;background-color:#fff!important}.report-filter-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;padding-right:2.25rem}.report-filter-select option{padding:4px 8px;font-weight:400;color:#0f172a!important;background-color:#fff!important}.report-filter-select.with-icon{padding-left:2.35rem;padding-right:2.25rem}.report-filter-input.with-icon{padding-left:2.35rem}.report-filter-select:focus,.report-filter-input:focus{border-color:var(--primary-600);outline:none;box-shadow:0 0 0 3px #2563eb2e;color:#0f172a!important;background-color:#fff!important}.report-filter-select.filter-has-value,.report-filter-input.filter-has-value{box-shadow:0 1px 2px #2563eb1a;color:#1e3a8a!important;background-color:#eff6ff!important;border-color:#2563eb!important;font-weight:700!important}.report-filter-select.filter-has-value{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}.report-filter-select.filter-has-value option{color:#0f172a!important;background-color:#fff!important;font-weight:400!important}.active-filter-chips-bar{border-top:1px dashed var(--border-color);flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.85rem;padding-top:.75rem;display:flex}.chips-label{color:var(--text-muted);text-transform:uppercase;font-size:.775rem;font-weight:600}.chips-container{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.filter-chip{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:9999px;align-items:center;gap:.4rem;padding:.25rem .65rem;font-size:.8rem;font-weight:700;display:inline-flex;color:#0369a1!important;background:#e0f2fe!important;border:1px solid #bae6fd!important}.filter-chip span{font-weight:600;color:#0369a1!important}.filter-chip-remove{color:#0284c7;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .15s;display:flex}.filter-chip-remove:hover{color:#0c4a6e}.report-preview-section{flex-direction:column;flex:1;gap:.65rem;min-height:0;display:flex}.report-preview-header{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.report-preview-title{color:var(--text-main);align-items:center;gap:.45rem;font-size:.9rem;font-weight:700;display:flex}.report-preview-stats-group{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.report-result-count-badge{color:var(--text-main);background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:.25rem .65rem;font-size:.85rem;font-weight:600}.report-attendance-stats-pills{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.report-stat-pill{border-radius:var(--radius-sm);align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.775rem;font-weight:600;display:inline-flex}.report-stat-pill.stat-confirmed{color:#15803d;background-color:#dcfce7;border:1px solid #bbf7d0}.report-stat-pill.stat-absent{color:#b91c1c;background-color:#fee2e2;border:1px solid #fecaca}.report-stat-pill.stat-scheduled{color:#475569;background-color:#f1f5f9;border:1px solid #e2e8f0}.report-preview-table-container{overscroll-behavior:contain;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-surface);flex:1;min-height:280px;overflow-y:auto}.report-preview-table{border-collapse:collapse;text-align:left;width:100%;font-size:.85rem}.report-preview-table th{background:var(--bg-subtle);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);border-bottom:1px solid var(--border-color);z-index:1;padding:.65rem .85rem;font-size:.775rem;font-weight:700;position:sticky;top:0}.report-preview-table td{border-bottom:1px solid var(--border-light);color:var(--text-main);vertical-align:middle;padding:.6rem .85rem}.report-preview-table tr:hover td{background:#f8fafc}.report-preview-table .row-confirmed td{background-color:#f0fdf4!important}.report-preview-table .row-confirmed:hover td{background-color:#dcfce7!important}.report-preview-table .row-confirmed td:first-child{box-shadow:inset 3.5px 0 #16a34a!important}.report-preview-table .row-absent td{background-color:#fef2f2!important}.report-preview-table .row-absent:hover td{background-color:#fee2e2!important}.report-preview-table .row-absent td:first-child{box-shadow:inset 3.5px 0 #dc2626!important}.preview-status-pill{white-space:nowrap;border-radius:9999px;align-items:center;gap:.3rem;padding:.15rem .45rem;font-size:.725rem;font-weight:700;display:inline-flex}.preview-status-pill.status-confirmed{color:#15803d;background-color:#dcfce7;border:1px solid #86efac}.preview-status-pill.status-absent{color:#b91c1c;background-color:#fee2e2;border:1px solid #fca5a5}.preview-status-pill.status-scheduled{color:#64748b;background-color:#f1f5f9;border:1px solid #cbd5e1}.preview-patient-name{font-weight:600}.preview-patient-mv{color:var(--text-muted);margin-left:.35rem;font-size:.725rem}.preview-sector-badge{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:.1rem .4rem;font-size:.725rem;font-weight:700;display:inline-block}.preview-exam-code{color:var(--primary-700);font-weight:700}.preview-category-badge{color:#4338ca;background:#eef2ff;border-radius:4px;padding:.15rem .45rem;font-size:.725rem;font-weight:600;display:inline-block}.report-preview-empty{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;font-size:.875rem;display:flex}.report-modal-footer{border-top:1px solid var(--border-light);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn-print-report{align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.report-header-btn{border-radius:var(--radius-md);cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#1d4ed8,#2563eb);border:1px solid #1e40af;align-items:center;gap:.6rem;padding:.65rem 1.35rem;font-size:.95rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 3px 10px #2563eb59,0 1px 2px #0000001a;color:#fff!important}.report-header-btn:hover{background:linear-gradient(135deg,#1e40af,#1d4ed8);border-color:#1e3a8a;transform:translateY(-2px);box-shadow:0 6px 18px #2563eb73;color:#fff!important}.report-header-btn:active{transform:translateY(0);box-shadow:0 2px 6px #2563eb4d}@media (width<=768px){.report-filters-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.report-filters-grid{grid-template-columns:1fr}}@media (width<=992px){.form-row-row1,.form-row-row2,.form-row-extra-exam{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}}@media (width<=768px){.form-row-row1,.form-row-row2,.form-row-extra-exam,.form-row-3,.form-row-4,.form-row-2{grid-template-columns:1fr}}@media (width<=640px){.app-container{gap:1rem;padding:.75rem}.header-top-row{flex-direction:column;align-items:flex-start}.header-actions-group{justify-content:space-between;width:100%}.btn-label-desktop{display:none}.date-navigation-bar{flex-direction:column;align-items:stretch}.date-info-display{justify-content:space-between}.form-row-3col,.form-row-2col,.form-row-4col,.form-row-patient,.form-row-examination,.form-row-scheduling,.form-row-team{grid-template-columns:1fr}.col-patient,.col-exam-name,.col-physician{grid-column:span 1}.daily-examination-table th,.daily-examination-table td{padding:.6rem .5rem;font-size:.8rem}.action-btn-label{display:none}}.doctor-tab-bar-container{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:.65rem .85rem;overflow:hidden}.doctor-tab-bar-scroll{scrollbar-width:thin;scrollbar-color:var(--border-medium) transparent;align-items:center;gap:.5rem;padding-bottom:2px;display:flex;overflow-x:auto}.doctor-tab-bar-scroll::-webkit-scrollbar{height:4px}.doctor-tab-bar-scroll::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:4px}.doctor-tab-btn{background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-main);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem .85rem;font-size:.825rem;font-weight:600;display:inline-flex}.doctor-tab-btn:hover{border-color:var(--primary);color:var(--primary);box-shadow:var(--shadow-sm);background:#fff;transform:translateY(-1px)}.doctor-tab-btn.active{background:linear-gradient(135deg, hsl(var(--primary-hsl)), #1750a1);color:#fff;border-color:#0000;box-shadow:0 4px 10px #0f52ba40}.doctor-tab-btn.active .doctor-tab-icon{color:#fff}.doctor-tab-btn.active .doctor-tab-prest-sub{color:#fffc}.doctor-tab-btn.active .doctor-tab-count-badge{color:var(--primary);background:#fff}.doctor-tab-btn.active .doctor-tab-duty-indicator{color:#fff;background:#ffffff40;border-color:#fff6}.doctor-tab-btn.active .duty-dot{background:#4ade80;box-shadow:0 0 6px #4ade80}.doctor-tab-icon{color:var(--text-muted);flex-shrink:0}.doctor-tab-text-group{flex-direction:column;align-items:flex-start;line-height:1.15;display:flex}.doctor-tab-name{font-size:.825rem;font-weight:600}.doctor-tab-prest-sub{color:var(--text-muted);font-family:monospace;font-size:.675rem;font-weight:500}.doctor-tab-duty-indicator{color:#065f46;text-transform:uppercase;letter-spacing:.02em;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .4rem;font-size:.65rem;font-weight:700;display:inline-flex}.duty-dot{background:#10b981;border-radius:50%;width:6px;height:6px}.doctor-tab-count-badge{background:var(--primary-light);min-width:20px;height:20px;color:var(--primary);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:.725rem;font-weight:700;display:inline-flex}.doctor-agenda-banner-card{border:1px solid #cbd5e1;border-left:5px solid var(--primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#fff 0%,#f8fafc 100%);flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;animation:.2s ease-out fadeIn;display:flex}.doctor-agenda-banner-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.doctor-agenda-identity{align-items:flex-start;gap:1rem;display:flex}.doctor-avatar-badge{background:linear-gradient(135deg, hsl(var(--primary-hsl)), #1750a1);color:#fff;border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex;box-shadow:0 4px 10px #0f52ba33}.doctor-title-row{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.4rem;display:flex}.doctor-banner-name{color:var(--text-main);letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.doctor-prest-badge{color:#334155;border-radius:var(--radius-sm);letter-spacing:.03em;background:#f1f5f9;border:1px solid #cbd5e1;padding:.15rem .55rem;font-family:monospace;font-size:.875rem;font-weight:800}.doctor-specialty-pill{text-transform:uppercase;letter-spacing:.02em;border-radius:999px;padding:.2rem .6rem;font-size:.725rem;font-weight:700}.doctor-specialty-pill.cardio{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.doctor-specialty-pill.usg{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.doctor-banner-schedule-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.doctor-shift-pill{border-radius:var(--radius-md);align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.doctor-shift-pill.on-duty{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.doctor-shift-pill.off-duty{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1}.shift-time{font-weight:700}.shift-divider{opacity:.5}.shift-loc{font-weight:600}.doctor-agenda-actions{align-items:center;gap:.6rem;display:flex}.doctor-print-btn{background:#fff;font-weight:600}.doctor-back-btn{color:var(--text-muted)}.doctor-weekly-routine-row{border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:.6rem;padding-top:.6rem;display:flex}.routine-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:700}.routine-chips-list{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.routine-chip{color:#475569;border-radius:var(--radius-sm);background:#f1f5f9;border:1px solid #e2e8f0;padding:.2rem .55rem;font-size:.725rem}.routine-chip-today{color:#166534;background:#dcfce7;border-color:#86efac;font-weight:700}.doctor-stats-bar{border-radius:var(--radius-md);background:#fff;border:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:1.25rem;padding:.5rem 1rem;font-size:.825rem;display:flex}.doctor-stat-item{align-items:center;gap:.4rem;display:flex}.doctor-stat-item .stat-label{color:var(--text-muted);font-size:.775rem}.doctor-stat-item .stat-val{align-items:center;gap:.25rem;font-size:.85rem;font-weight:700;display:inline-flex}.doctor-stat-item .stat-val.total{color:var(--primary)}.doctor-stat-item .stat-val.confirmed{color:#059669}.doctor-stat-item .stat-val.absent{color:#dc2626}.doctor-stat-item .stat-val.pending{color:#d97706}.header-module-tabs{border-radius:var(--radius-md);border:1px solid var(--border-light);background:#f1f5f9;align-items:center;gap:.35rem;padding:.3rem;display:flex}.module-tab-btn{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.825rem;font-weight:600;display:inline-flex}.module-tab-btn:hover{color:var(--text-main);background:#fff9}.module-tab-btn.active{color:var(--primary);box-shadow:var(--shadow-sm);background:#fff;font-weight:700}.doctor-grid-selector-section{flex-direction:column;gap:1.5rem;animation:.2s ease-out fadeIn;display:flex}.doctor-grid-header{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;display:flex}.doctor-grid-title-group{align-items:center;gap:1rem;display:flex}.doctor-grid-icon-badge{border-radius:var(--radius-md);background:linear-gradient(135deg, hsl(var(--primary-hsl)), #1750a1);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 4px 10px #0f52ba33}.doctor-grid-title{color:var(--text-main);letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.doctor-grid-subtitle{color:var(--text-muted);margin-top:.15rem;font-size:.825rem}.doctor-grid-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.doctor-search-input-wrapper{border:1px solid var(--border-medium);border-radius:var(--radius-md);min-width:200px;height:38px;transition:all var(--transition-fast);background:#fff;align-items:center;gap:.5rem;padding:0 .65rem;display:flex}.doctor-search-input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #0f52ba26}.doctor-search-icon{color:var(--text-muted);flex-shrink:0}input[type=text].doctor-search-input,.doctor-search-input{min-width:0;color:var(--text-main);flex:1;font-size:.875rem;height:100%!important;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;outline:none!important;padding:0!important}input[type=text].doctor-search-input:focus,.doctor-search-input:focus{box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important}.doctor-input-clear-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:.2rem;display:flex}.doctor-input-clear-btn:hover{color:var(--text-main);background:#f1f5f9}.doctor-date-filter-wrapper{align-items:center;gap:.4rem;display:flex;position:relative}.doctor-date-filter-icon{color:var(--text-muted);pointer-events:none;z-index:1;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.doctor-date-filter-input{border:1px solid var(--border-medium);border-radius:var(--radius-md);height:38px;color:var(--text-main);transition:all var(--transition-fast);cursor:pointer;background:#fff;padding:.45rem .65rem .45rem 2.1rem;font-size:.825rem;line-height:1.4}.doctor-date-filter-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #0f52ba26}.doctor-date-filter-input.has-value{border-color:var(--primary);color:var(--primary-dark);background:#eff6ff;font-weight:600}.doctor-filter-clear-btn{color:#c2410c;border-radius:var(--radius-sm);cursor:pointer;height:38px;transition:all var(--transition-fast);background:#fff7ed;border:1px solid #fed7aa;align-items:center;gap:.25rem;padding:0 .65rem;font-size:.775rem;font-weight:600;display:inline-flex}.doctor-filter-clear-btn:hover{background:#ffedd5;border-color:#fdba74}.doctor-quick-today-btn{border:1px solid var(--border-medium);height:38px;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:#fff;justify-content:center;align-items:center;padding:0 .75rem;font-size:.775rem;font-weight:600;display:inline-flex}.doctor-quick-today-btn:hover{color:var(--text-main);border-color:var(--border-strong);background:#f1f5f9}.doctor-filter-segmented-group{border:1px solid var(--border-light);border-radius:var(--radius-md);background:#f1f5f9;align-items:center;gap:.25rem;height:38px;padding:.2rem;display:flex}.filter-seg-btn{height:100%;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0 .75rem;font-size:.775rem;font-weight:600;display:inline-flex}.filter-seg-btn:hover{color:var(--text-main)}.filter-seg-btn.active{color:var(--primary);box-shadow:var(--shadow-sm);background:#fff;font-weight:700}.doctor-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;display:grid}.doctor-card-item{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;gap:.75rem;padding:1.25rem;display:flex;position:relative;overflow:hidden}.doctor-card-item:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.doctor-card-item.doctor-card-duty{background:linear-gradient(135deg,#fff 0%,#f0fdf4 100%);border-left:4px solid #10b981}.doctor-card-top{align-items:flex-start;width:100%;display:flex}.doctor-card-identity{flex:1;width:100%;min-width:0}.doctor-card-name-row{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.doctor-card-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;overflow:hidden}.doctor-card-mv{border-radius:var(--radius-sm);color:#334155;letter-spacing:.03em;background:#f1f5f9;border:1px solid #cbd5e1;flex-shrink:0;padding:.12rem .45rem;font-family:monospace;font-size:.85rem;font-weight:800}.doctor-card-specialty{text-transform:uppercase;letter-spacing:.02em;border-radius:999px;padding:.15rem .5rem;font-size:.675rem;font-weight:700;display:inline-block}.doctor-card-specialty.cardio{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.doctor-card-specialty.usg{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.doctor-card-today-status{margin-top:.1rem}.today-duty-badge{color:#065f46;border-radius:var(--radius-sm);background:#ecfdf5;border:1px solid #a7f3d0;align-items:center;gap:.4rem;width:100%;padding:.3rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.duty-pulse-dot{background:#10b981;border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 6px #10b981}.doctor-card-routine{border-top:1px solid #f1f5f9;flex-direction:column;gap:.4rem;padding-top:.6rem;display:flex}.routine-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.7rem;font-weight:700}.routine-weekdays-grid{align-items:center;gap:.35rem;display:flex}.weekday-box{border-radius:var(--radius-sm);width:28px;height:28px;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;line-height:1;display:flex}.weekday-box.inactive{color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0}.weekday-box.active{color:#fff;background:#10b981;border:1px solid #059669;box-shadow:0 1px 3px #10b98140}.weekday-letter{display:block}.routine-on-demand{color:var(--text-muted);font-size:.775rem;font-weight:500}.doctor-card-footer{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.6rem;display:flex}.doctor-card-exam-count{font-size:.775rem}.count-active{color:#059669;align-items:center;gap:.25rem;font-weight:700;display:inline-flex}.count-zero{color:var(--text-muted)}.doctor-open-agenda-btn{padding:.35rem .75rem;font-size:.775rem}.doctor-grid-empty{text-align:center;background:var(--bg-surface);border:1px dashed var(--border-medium);border-radius:var(--radius-lg);flex-direction:column;grid-column:1/-1;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.doctor-notebook-banner{background:var(--bg-surface);border:1px solid var(--border-light);border-left:5px solid var(--primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:1.25rem;padding:1.25rem 1.5rem;animation:.2s ease-out fadeIn;display:flex}.doctor-notebook-header-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.doctor-switch-btn{font-weight:600}.doctor-notebook-identity{align-items:center;gap:.85rem;display:flex}.doctor-notebook-avatar{border-radius:var(--radius-md);background:linear-gradient(135deg, hsl(var(--primary-hsl)), #1750a1);color:#fff;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 4px 10px #0f52ba33}.doctor-notebook-name-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.doctor-notebook-name{color:var(--text-main);letter-spacing:-.01em;font-size:1.3rem;font-weight:700}.doctor-notebook-prest{border-radius:var(--radius-sm);color:#334155;letter-spacing:.03em;background:#f1f5f9;border:1px solid #cbd5e1;padding:.15rem .55rem;font-family:monospace;font-size:.9rem;font-weight:800}.doctor-notebook-actions{align-items:center;gap:.5rem;display:flex}.doctor-date-selector-card{border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-sm);background:#fff;border:1px solid #e2e8f0;padding:.75rem 1rem}.doctor-card-split-layout{align-items:stretch;gap:1.25rem;width:100%;display:flex}.doctor-info-panel-left{flex-direction:column;flex:4 1 0;justify-content:space-between;gap:.6rem;min-width:320px;padding-right:.5rem;display:flex}.doctor-info-top-actions{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding-bottom:.35rem;display:flex}.doctor-planner-shift-row{justify-content:center;align-items:center;gap:.5rem;width:100%;display:flex}.doctor-right-stats-grid{grid-template-columns:repeat(auto-fit,minmax(75px,1fr));gap:.4rem;display:grid}.doctor-calendar-panel-right{border-radius:var(--radius-sm);background:#f8fafc;border:1px solid #f1f5f9;flex-direction:column;flex:6 1 0;gap:.35rem;min-width:0;padding:.5rem .65rem;display:flex}.date-shift-badge{border-radius:var(--radius-md);text-align:center;justify-content:center;align-items:center;gap:.4rem;width:100%;padding:.28rem .65rem;font-size:.775rem;font-weight:600;display:inline-flex}.date-shift-badge.is-regular{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.date-shift-badge.is-override{color:#1e40af;background:#eff6ff;border:1px solid #93c5fd}.date-shift-badge.is-off{color:var(--text-muted);border:1px dashed var(--border-medium);background:#fff}.override-tag{color:#fff;text-transform:uppercase;background:#2563eb;border-radius:999px;margin-left:.25rem;padding:.08rem .35rem;font-size:.625rem;font-weight:700}.doctor-schedule-gear-btn{border-radius:var(--radius-sm);border:1px solid var(--border-medium);width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:#fff;justify-content:center;align-items:center;padding:0;display:flex}.doctor-schedule-gear-btn:hover{color:var(--primary);border-color:var(--primary);background:#f0f7ff}.compact-stat-pill{border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.compact-stat-pill.total{color:var(--text-main);background:#f8fafc;border:1px solid #e2e8f0}.compact-stat-pill.confirmed{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.compact-stat-pill.absent{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.compact-stat-pill.pending{color:#d97706;background:#fffbeb;border:1px solid #fde68a}.compact-stat-label{color:var(--text-muted);font-size:.7rem}.compact-stat-val{font-size:.85rem;font-weight:800}.doctor-month-calendar-container{flex-direction:column;gap:.35rem;width:100%;display:flex}.doctor-calendar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.calendar-nav-left{align-items:center;gap:.3rem;display:flex}.calendar-month-title{color:var(--text-main);text-align:center;-webkit-user-select:none;user-select:none;min-width:120px;font-size:.85rem;font-weight:700}.calendar-nav-btn{border-radius:var(--radius-sm);border:1px solid var(--border-medium);cursor:pointer;width:24px;height:24px;color:var(--text-muted);transition:all var(--transition-fast);background:#fff;justify-content:center;align-items:center;padding:0;display:flex}.calendar-nav-btn:hover{color:var(--primary);background:#f1f5f9}.calendar-today-btn{border-radius:var(--radius-sm);cursor:pointer;height:24px;transition:all var(--transition-fast);justify-content:center;align-items:center;margin-left:.35rem;padding:.15rem .55rem;font-size:.725rem;font-weight:600;line-height:1;display:inline-flex}.calendar-today-btn.btn-outline{color:var(--text-main);border:1px solid var(--border-medium);background:#fff}.calendar-today-btn.btn-outline:hover{color:var(--primary);border-color:var(--border-strong);background:#f1f5f9}.calendar-today-btn.btn-primary{background:var(--primary);color:#fff;border:1px solid var(--primary)}.calendar-today-btn.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}@media (width<=960px){.doctor-card-split-layout{flex-direction:column}.doctor-info-panel-left{border-bottom:1px solid #f1f5f9;min-width:100%;padding-bottom:.75rem;padding-right:0}}.doctor-calendar-weekdays{text-align:center;grid-template-columns:repeat(7,1fr);gap:3px;width:100%;display:grid}.weekday-header-cell{color:#94a3b8;text-transform:uppercase;padding:.05rem 0;font-size:.65rem;font-weight:700}.doctor-calendar-days-grid.wide-compact-grid{grid-template-columns:repeat(7,1fr);gap:3px;width:100%;display:grid}.calendar-day-cell{border-radius:var(--radius-sm);cursor:pointer;height:28px;min-height:28px;transition:all var(--transition-fast);box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:.1rem .45rem;display:flex;position:relative}.calendar-day-cell.is-other-month{opacity:.25;cursor:default;pointer-events:none;background:#f8fafc;border-color:#f1f5f9}.calendar-day-cell.is-current:hover{background:#f8fafc;border-color:#cbd5e1}.calendar-day-cell.has-duty{background:#f0fdf4;border-color:#86efac}.calendar-day-cell.has-duty .day-number-text{color:#15803d;font-weight:800}.calendar-day-cell.has-duty:hover{background:#dcfce7;border-color:#4ade80}.calendar-day-cell.is-selected{background:var(--primary,#0f52ba)!important;border-color:var(--primary,#0f52ba)!important;box-shadow:0 1px 4px #0f52ba4d!important}.calendar-day-cell.is-selected .day-number-text{font-weight:800;color:#fff!important}.calendar-day-cell.is-selected .day-today-tag{color:var(--primary,#0f52ba)!important;background:#fff!important}.calendar-day-cell.is-today:not(.is-selected){border-color:var(--primary)}.calendar-day-cell.is-today:not(.is-selected) .day-number-text{color:var(--primary);font-weight:800}.day-cell-compact-content{justify-content:space-between;align-items:center;gap:4px;width:100%;display:flex}.day-number-text{color:#475569;font-size:.725rem;font-weight:700;line-height:1}.day-today-tag{background:var(--primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;padding:.08rem .35rem;font-size:.575rem;font-weight:700;line-height:1;display:inline-flex}.day-locations-wrap{align-items:center;gap:2px;display:flex}.day-micro-loc{text-align:center;white-space:nowrap;border-radius:2px;padding:.08rem .25rem;font-size:.575rem;font-weight:700;line-height:1}.day-micro-loc.milena{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd}.day-micro-loc.colina{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.calendar-day-cell.is-selected .day-micro-loc{color:#fff!important;background:#ffffff40!important;border-color:#0000!important}.doctor-notebook-stats-bar{border-radius:var(--radius-md);background:#fff;border:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:.6rem 1.25rem;display:flex}.stat-pill{align-items:center;gap:.45rem;font-size:.825rem;display:flex}.stat-pill .stat-label{color:var(--text-muted)}.stat-pill .stat-num.total{color:var(--primary);font-size:.95rem}.stat-pill .stat-num.confirmed{color:#059669;align-items:center;gap:.25rem;display:inline-flex}.stat-pill .stat-num.absent{color:#dc2626;align-items:center;gap:.25rem;display:inline-flex}.stat-pill .stat-num.pending{color:#d97706}.doctor-schedule-modal-container{flex-direction:column;width:95vw;max-width:680px;max-height:90vh;display:flex}.schedule-modal-tabs{border-bottom:1px solid var(--border-light);background:#f8fafc;flex-shrink:0;display:flex}.schedule-tab-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.75rem 1rem;font-size:.85rem;font-weight:600}.schedule-tab-btn:hover{color:var(--text-main);background:#ffffff80}.schedule-tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);background:#fff;font-weight:700}.schedule-modal-body{overscroll-behavior:contain;flex:1;padding:1.5rem;overflow-y:auto}.override-intro-box{border-radius:var(--radius-md);color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.825rem}.form-check-card{border:1px solid var(--border-light);border-radius:var(--radius-md);background:#f8fafc;padding:.85rem 1rem}.checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;font-size:.875rem;line-height:1.35;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:1.15rem;height:1.15rem;accent-color:var(--primary);flex-shrink:0;margin:0}.location-radio-group{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.35rem;display:grid}.location-radio-card{border:1.5px solid var(--border-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#fff;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600;display:flex}.location-radio-card:hover{border-color:var(--primary)}.location-radio-card.selected{border-color:var(--primary);color:var(--primary);background:#f0f7ff}.weekly-days-list{flex-direction:column;gap:.75rem;display:flex}.weekly-day-card{border:1px solid var(--border-light);border-radius:var(--radius-md);transition:all var(--transition-fast);background:#fff;padding:.85rem 1rem}.weekly-day-card.active{background:#f8fbff;border-color:#93c5fd}.weekly-day-card.inactive{opacity:.75;background:#f8fafc}.day-card-header{justify-content:space-between;align-items:center;display:flex}.day-name-bold{color:var(--text-main);margin-left:.5rem;font-size:.9rem;font-weight:700}.day-status-pill{border-radius:999px;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.day-status-pill.on{color:#166534;background:#dcfce7}.day-card-body{border-top:1px dashed var(--border-light);margin-top:.75rem;padding-top:.75rem}.form-label-sm{color:var(--text-muted);margin-bottom:.2rem;font-size:.75rem;font-weight:600;display:block}.btn-danger-custom{color:#dc2626;border-color:#fecaca}.btn-danger-custom:hover{background:#fee2e2;border-color:#f87171}.print-only-container{display:none}@media print{@page{size:A4 landscape;margin:8mm 10mm}html,body{color:#000!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;width:100%!important;height:auto!important;min-height:auto!important;margin:0!important;padding:0!important}.no-print,.app-container,.app-main-content,.app-header,.inline-form-container,.table-responsive-container,.modal-backdrop,.confirm-modal-overlay,.confirm-modal-card{display:none!important}.print-only-container{box-sizing:border-box;flex-direction:column;font-family:Arial,Helvetica,sans-serif;width:100%!important;height:auto!important;min-height:auto!important;margin:0!important;padding:0!important;display:flex!important}.print-header{break-after:avoid;page-break-after:avoid;border-bottom:2px solid #000;justify-content:space-between;align-items:flex-end;margin-bottom:6px;padding-bottom:4px;display:flex}.print-hospital-title{color:#000;margin:0;font-size:14pt;font-weight:700;line-height:1.1}.print-subtitle-container{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.print-subtitle{color:#444;margin:0;font-size:9.5pt;font-weight:400}.print-filter-badge{color:#1e293b;text-transform:uppercase;letter-spacing:.02em;background:#f1f5f9;border:1px solid #94a3b8;border-radius:3px;padding:1px 6px;font-size:7.5pt;font-weight:700}.print-header-right{text-align:right}.print-date-badge{color:#000;font-size:10.5pt;font-weight:700}.print-total-badge{color:#555;margin-top:2px;font-size:8.5pt}.print-table-wrapper{break-after:avoid;page-break-after:avoid;flex:1;width:100%;overflow:hidden}.print-table{break-after:avoid;page-break-after:avoid;border:1px solid #000;border-collapse:collapse!important;table-layout:fixed!important;width:100%!important}.print-col-time-location,.print-col-status{text-align:center;width:9%}.print-col-patient{text-align:left;width:22%}.print-col-type{text-align:center;width:9%}.print-col-exam{text-align:left;width:23%}.print-col-category{text-align:center;width:8%}.print-col-physician{text-align:left;width:11%}.print-col-technician{text-align:left;width:9%}.print-table tr{break-inside:avoid;page-break-inside:avoid}.print-table th{text-transform:uppercase;box-sizing:border-box;border:1px solid #000;font-weight:700;line-height:1.2;color:#000!important;text-align:center!important;background-color:#e2e8f0!important}.print-table td{vertical-align:middle;word-wrap:break-word;box-sizing:border-box;border:1px solid #666;line-height:1.2;overflow:hidden}.print-table tr:nth-child(2n) td{background-color:#f8fafc!important}.print-row-confirmed td{background-color:#f0fdf4!important}.print-row-absent td{background-color:#fef2f2!important}.print-period-row td{text-align:center;text-transform:uppercase;letter-spacing:.05em;font-weight:700;background-color:#0000!important;border:none!important;border-left:1px solid #000!important;border-right:1px solid #000!important}.print-period-cell.morning{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#92400e!important;background-color:#fef3c7!important;border-top:1px solid #fde68a!important;border-bottom:1px solid #fde68a!important}.print-period-cell.afternoon{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#9a3412!important;background-color:#ffedd5!important;border-top:1px solid #fed7aa!important;border-bottom:1px solid #fed7aa!important}.print-period-content{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.print-period-title{white-space:nowrap;padding:0 4px;font-size:8pt;font-weight:700;color:#000!important}.print-date-group-row td{break-after:avoid;page-break-after:avoid;font-weight:700;background-color:#f1f5f9!important;border:1px solid #000!important;border-top-width:2px!important;padding:3px 8px!important}.print-date-group-content{justify-content:flex-start;align-items:center;gap:8px;width:100%;display:flex}.print-date-group-title{text-transform:uppercase;letter-spacing:.03em;font-size:8.5pt;font-weight:700;color:#0f172a!important}.print-empty-cell{color:#666;font-style:italic;padding:16px!important}.font-mono{font-family:Courier New,Courier,monospace}.font-bold{font-weight:700}.center{text-align:center}.print-time-location-block{flex-direction:column;justify-content:center;align-items:center;gap:2px;line-height:1.1;display:flex}.print-location{text-transform:uppercase;letter-spacing:.03em;font-size:.8em}.print-exam-block{align-items:baseline;gap:5px;line-height:1.2;display:flex}.print-exam-code{color:#000;flex-shrink:0;font-size:.9em}.print-patient-block,.print-physician-block{flex-direction:column;gap:2px;line-height:1.1;display:flex}.print-origin-block{flex-direction:column;justify-content:center;align-items:center;gap:3.5px;line-height:1.1;display:flex}.print-origin-type{font-size:.95em}.print-origin-sector{color:#0f172a;letter-spacing:.02em;border:1px solid #94a3b8;border-radius:2.5px;padding:.5px 3px;font-size:.825em;background:#f1f5f9!important}.print-subtext{color:#333;font-size:.9em;font-weight:700}.print-patient-meta{flex-wrap:wrap;align-items:center;gap:3.5px;margin-top:2px;display:flex}.print-meta-badge{border:1px solid #94a3b8;border-radius:3px;align-items:center;padding:.5px 3.5px;font-size:.8em;line-height:1.15;display:inline-flex;background-color:#f1f5f9!important}.print-mv-badge{color:#0f172a;border-color:#475569;font-family:Courier New,Courier,monospace;font-weight:700;background-color:#f1f5f9!important}.print-city-badge{color:#1e3a8a;border-color:#93c5fd;font-size:.775em;background-color:#eff6ff!important}.print-phone-badge{color:#334155;border-color:#cbd5e1;font-family:Courier New,Courier,monospace;font-size:.775em;background-color:#f8fafc!important}.print-stats-breakdown{color:#334155;font-size:8pt;font-weight:500}.print-status-badge{letter-spacing:.02em;white-space:nowrap;text-transform:uppercase;border-radius:2.5px;padding:1px 4px;font-size:6.8pt;font-weight:800;line-height:1.1;display:inline-block}.print-status-confirmed{color:#15803d!important;background-color:#dcfce7!important;border:1px solid #86efac!important}.print-status-absent{color:#b91c1c!important;background-color:#fee2e2!important;border:1px solid #fca5a5!important}.print-status-scheduled{color:#475569!important;background-color:#f1f5f9!important;border:1px solid #cbd5e1!important}.print-density-normal th{padding:5px 6px;font-size:8.5pt}.print-density-normal td{padding:4px 6px;font-size:8.5pt}.print-density-normal .print-period-cell{padding:3px 0}.print-density-normal .print-period-title{font-size:8pt}.print-density-moderate th{padding:4px 5px;font-size:8pt}.print-density-moderate td{padding:3.5px 5px;font-size:8pt}.print-density-moderate .print-period-cell{padding:2.5px 0}.print-density-moderate .print-period-title{font-size:7.5pt}.print-density-compact th{padding:3px 4px;font-size:7.5pt}.print-density-compact td{padding:2.5px 4px;font-size:7.5pt}.print-density-compact .print-period-cell{padding:2px 0}.print-density-compact .print-period-title{font-size:7pt}.print-density-ultra-compact th{padding:2px 3px;font-size:7pt}.print-density-ultra-compact td{padding:1.5px 3px;font-size:6.8pt}.print-density-ultra-compact .print-period-cell{padding:1.5px 0}.print-density-ultra-compact .print-period-title{font-size:6.5pt}.print-footer{color:#666;break-after:avoid;page-break-after:avoid;border-top:1px solid #ccc;justify-content:space-between;margin-top:4px;padding-top:4px;font-size:7.5pt;display:flex}}
