:root{--navy:#0b1f52;--navy-700:#142e6e;--navy-900:#061236;--red:#ff1717;--red-700:#d10000;--navy-rgb:11,31,82;--red-rgb:255,23,23;--on-navy:#fff;--on-red:#fff;--navy-ink:var(--navy);--red-ink:var(--red);--success:#059669;--warning:#d97706;--danger:#dc2626;--radius:10px;--radius-lg:14px;--radius-xl:18px;--transition:.18s cubic-bezier(.4, 0, .2, 1);--bg:#f8fafc;--surface:#fff;--surface-2:#f8fafc;--border:#f1f5f9;--border-strong:#e2e8f0;--text:#0f172a;--text-muted:#64748b;--text-subtle:#94a3b8;--navy-soft:var(--brand-light-primary-soft,#f1f4fc);--red-soft:var(--brand-light-accent-soft,#fff1f1);--shadow-xs:0 1px 2px #0f172a0a;--shadow:0 1px 3px #0f172a0f, 0 1px 2px #0f172a0a;--shadow-md:0 4px 12px -2px #0f172a14, 0 2px 6px -1px #0f172a0a;--shadow-lg:0 12px 28px -8px rgba(var(--navy-rgb),.18), 0 4px 12px -2px #0f172a0f;--primary:var(--red);--primary-light:#ff4d4d;--primary-dark:var(--navy);--accent-navy:var(--navy);--accent-red:var(--red);--gray-50:var(--surface-2);--gray-100:var(--border);--gray-200:var(--border-strong);--gray-300:#cbd5e1;--gray-400:var(--text-subtle);--gray-500:var(--text-muted);--gray-700:#334155;--gray-900:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--bg:var(--brand-dark-bg,#0a0f1f);--surface:var(--brand-dark-surface,#131a2e);--surface-2:var(--brand-dark-surface-2,#1a2238);--border:var(--brand-dark-border,#243054);--border-strong:var(--brand-dark-border-strong,#2e3a64);--text:#f1f5f9;--text-muted:#94a3b8;--text-subtle:#64748b;--navy-soft:var(--brand-dark-surface-2,#1a2238);--red-soft:var(--brand-dark-accent-soft,#2a1316);--shadow-xs:0 1px 2px #0006;--shadow:0 2px 6px #0006;--shadow-md:0 6px 16px #00000080;--shadow-lg:0 16px 36px #0000008c;--gray-300:#475569;--gray-700:#cbd5e1;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;letter-spacing:-.01em;transition:background var(--transition), color var(--transition);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}h1,h2,h3,h4{letter-spacing:-.02em;color:var(--gray-900);font-weight:700}h1{font-size:28px}h2{font-size:22px}h3{font-size:17px}h4{font-size:14px}a{color:var(--navy)}.status-bar{letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;min-height:26px;padding:4px 14px;font-size:11px;font-weight:500;display:flex}.status-bar.online{background:var(--navy);color:#ffffffd1}.status-bar.online:before{content:"";background:#22c55e;border-radius:50%;width:7px;height:7px;margin-right:4px;display:inline-block;box-shadow:0 0 4px #22c55e}.status-bar.offline{background:var(--warning);color:#fff}.app-header{background:var(--navy);color:#fff;border-bottom:2px solid var(--red);justify-content:space-between;align-items:center;min-height:84px;padding:10px 28px;display:flex}.brand-descriptor{display:var(--descriptor-display-narrow,inline);font-size:var(--descriptor-size-narrow);font-weight:var(--descriptor-weight-narrow);letter-spacing:var(--descriptor-tracking-narrow);white-space:nowrap;line-height:1.05}@media (width>=880px){.brand-descriptor{display:var(--descriptor-display,inline);font-size:var(--descriptor-size);font-weight:var(--descriptor-weight);letter-spacing:var(--descriptor-tracking)}}.app-title{letter-spacing:-.02em;font-size:20px;font-weight:700}.header-right{align-items:center;gap:14px;font-size:14px;display:flex}.user-role{text-transform:uppercase;letter-spacing:.08em;color:#fff;background:#ffffff29;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:700}.app-nav{background:var(--surface);border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch;z-index:10;-webkit-backdrop-filter:saturate(1.4)blur(8px);padding:0 16px;display:flex;position:sticky;top:0;overflow-x:auto}html[data-theme=dark] .app-nav a:hover,html[data-theme=dark] .app-nav a.active{color:#fff}.app-nav a{color:var(--gray-500);white-space:nowrap;transition:color var(--transition);padding:14px 18px;font-size:14px;font-weight:500;text-decoration:none;position:relative}.app-nav a:after{content:"";height:2px;transition:background var(--transition);background:0 0;border-radius:2px 2px 0 0;position:absolute;bottom:0;left:18px;right:18px}.app-nav a:hover{color:var(--navy)}.app-nav a.active{color:var(--navy);font-weight:600}.app-nav a.active:after{background:var(--red)}.app-main{max-width:1200px;margin:0 auto;padding:28px 24px 64px;animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.loading,.loading-screen{color:var(--gray-500);justify-content:center;align-items:center;padding:60px;font-size:15px;display:flex}.login-container{background:radial-gradient(circle at 20% 0%, rgba(var(--red-rgb),.08) 0%, transparent 40%), radial-gradient(circle at 80% 100%, #ffffff0a 0%, transparent 30%), linear-gradient(135deg, var(--navy) 0%, var(--navy-900) 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid #ffffff26;padding:40px 36px}.login-header{text-align:center;margin-bottom:28px}.login-header h1{color:var(--navy);margin-bottom:4px;font-size:24px}.login-header p{color:var(--gray-500);font-size:13px}.login-brand{letter-spacing:-.5px;color:var(--navy-ink);margin:0 0 8px;font-size:36px;font-weight:800;line-height:1}.login-brand span{color:var(--red-ink)}h1.login-brand--descriptor{color:var(--red-ink-aa,var(--red-ink,var(--red)));margin-bottom:.22em;font-weight:700;line-height:1.21}html[data-theme=dark] .login-brand{color:#fff}html[data-theme=dark] h1.login-brand--descriptor{color:var(--red-on-dark,#fff)}.form-group{margin-bottom:16px}.form-group label{color:var(--gray-700);letter-spacing:.01em;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-group input:not([type=radio]):not([type=checkbox]),.form-group select,.form-group textarea,input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=datetime-local],input[type=tel],input[type=search],select,textarea{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);transition:border-color var(--transition), box-shadow var(--transition);padding:11px 14px;font-family:inherit;font-size:14px}input[type=radio],input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--navy);flex-shrink:0}input::placeholder,textarea::placeholder{color:var(--text-subtle)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,input:focus,select:focus,textarea:focus{border-color:var(--navy);box-shadow:0 0 0 4px rgba(var(--navy-rgb),.08);outline:none}.form-row{gap:12px;display:flex}.form-row .form-group{flex:1}.form-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.btn-primary{background:var(--navy);color:#fff;border-radius:var(--radius);letter-spacing:.01em;cursor:pointer;transition:background var(--transition), transform var(--transition), box-shadow var(--transition);box-shadow:0 1px 2px rgba(var(--navy-rgb),.16);border:none;padding:11px 22px;font-size:14px;font-weight:600}.btn-primary:hover{background:var(--navy-700);box-shadow:0 4px 10px -2px rgba(var(--navy-rgb),.24)}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-primary.btn-large{width:100%;padding:16px 32px;font-size:16px}.btn-secondary{background:var(--surface);color:var(--gray-700);border:1px solid var(--gray-200);border-radius:var(--radius);cursor:pointer;transition:background var(--transition), border-color var(--transition);padding:11px 20px;font-size:14px;font-weight:500}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-300)}.btn-text{color:var(--navy);cursor:pointer;transition:background var(--transition);background:0 0;border:none;border-radius:6px;padding:6px 10px;font-size:14px;font-weight:500}.btn-text:hover{background:var(--navy-soft);text-decoration:none}html[data-theme=dark] .btn-text{color:#93c5fd}html[data-theme=dark] .btn-text:hover{background:#93c5fd1f}.app-header .btn-text{color:#fff}.app-header .btn-text:hover{background:#ffffff24}.app-header .user-name{color:#fff;font-weight:500}.login-container--on-brand{background-color:var(--login-page-bg,var(--navy));background-image:none}html:has(.login-container--on-brand){background:var(--login-page-bg,var(--navy))}html:has(.login-container--on-brand) body{background:var(--login-page-bg,var(--navy))}.login-card--on-brand{background:var(--navy);--surface:var(--login-field-bg,#fff);--surface-2:var(--login-field-bg,#f8fafc);--text:var(--login-text,#0f172a);--text-muted:var(--login-text-muted,#64748b);--text-subtle:var(--login-text-subtle,#94a3b8);--border:var(--login-border,#f1f5f9);--border-strong:var(--login-border,#e2e8f0);--gray-700:var(--login-text-muted,#334155);--gray-200:var(--login-border,#e2e8f0);--gray-300:var(--login-border,#cbd5e1);--navy-soft:#ffffff1a;--login-notice-bg:#10b98124;--login-notice-ink:#34d399;--login-notice-text:#a7f3d0;border-color:#0000;box-shadow:0 16px 36px #0000008c}.login-card--on-brand .login-brand{color:var(--login-text,#fff)}.login-card--on-brand .login-brand span,.login-card--on-brand h1.login-brand--descriptor{color:var(--red-on-dark,var(--login-text,#fff))}.login-card--on-brand .btn-primary{background:var(--login-text,#fff);color:var(--navy-ink);box-shadow:none}.login-card--on-brand .btn-primary:hover{background:var(--login-btn-hover,#e8ecf6);box-shadow:none}.login-card--on-brand .btn-primary:disabled{box-shadow:none}.login-card--on-brand .btn-text,html[data-theme=dark] .login-card--on-brand .btn-text{color:var(--red-on-dark,var(--login-text,#fff))}.login-card--on-brand .btn-text:hover,html[data-theme=dark] .login-card--on-brand .btn-text:hover{background:#ffffff1f}.login-card--on-brand .form-group input:focus,.login-card--on-brand .form-group select:focus,.login-card--on-brand .form-group textarea:focus,.login-card--on-brand input:focus,.login-card--on-brand select:focus,.login-card--on-brand textarea:focus{border-color:var(--login-text,#fff);box-shadow:0 0 0 4px #fff3}.login-card--on-brand .error-message{color:#fca5a5;background:#ef444424;border-color:#ef444473}.btn-small{padding:7px 14px;font-size:13px}.btn-icon{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 10px;font-size:18px;line-height:1}.btn-icon:hover{background:#ffffff24}.btn-nav{color:#fff;border-radius:var(--radius);cursor:pointer;background:#ffffff29;border:none;padding:11px 22px;font-weight:500}.btn-nav:disabled{opacity:.3;cursor:not-allowed}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin:20px 0;display:grid}.stat-card{background:var(--surface);border-radius:var(--radius-lg);text-align:center;border:1px solid var(--gray-100);box-shadow:var(--shadow);transition:transform var(--transition), box-shadow var(--transition);padding:20px}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-card h3{letter-spacing:-.03em;color:var(--navy);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0;font-size:30px;font-weight:800;line-height:1.15}.stat-card p{color:var(--gray-500);margin-top:6px;font-size:12px;font-weight:500}.stat-card.completed h3{color:var(--success)}.stat-card.pending h3{color:var(--warning)}.stat-card.cancelled h3{color:var(--danger,#dc2626)}.stat-card.sales h3{color:#7c3aed}.stat-card.collection h3{color:#0891b2}.stat-card.sync-warning{background:#fffbeb;border-color:#fde68a}.stat-card.sync-warning h3{color:var(--warning)}.actions-grid,.dashboard-actions{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:16px;display:grid}.action-btn,.action-card{background:var(--surface);border:1px solid var(--gray-200);border-radius:var(--radius-lg);color:var(--navy);transition:all var(--transition);cursor:pointer;justify-content:center;align-items:center;padding:18px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.action-btn:hover,.action-card:hover{border-color:var(--navy);box-shadow:var(--shadow-md);transform:translateY(-1px)}.action-card{text-align:center;flex-direction:column;gap:4px}.action-card h3{color:var(--navy);font-size:15px}.action-card p{color:var(--gray-500);font-size:12px;font-weight:400}.doctor-list{gap:12px;margin-top:16px;display:grid}.doctor-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--gray-100);box-shadow:var(--shadow);transition:box-shadow var(--transition), border-color var(--transition);padding:18px}.doctor-card:hover{box-shadow:var(--shadow-md);border-color:var(--gray-200)}.doctor-info{justify-content:space-between;align-items:center;display:flex}.doctor-info h3{color:var(--gray-900);font-size:16px}.specialty-badge{background:var(--navy-soft);color:var(--navy);letter-spacing:.02em;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.clinic-address{color:var(--gray-500);margin-top:6px;font-size:13px}.doctor-phone{color:var(--gray-700);margin-top:2px;font-size:13px}.search-bar{gap:10px;margin-bottom:16px;display:flex}.search-bar input{flex:1}.search-bar select{width:220px}.page-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.page-header h2{letter-spacing:-.02em}.modal-overlay{background:rgba(var(--navy-rgb),.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-lg);padding:28px;overflow-y:auto}.modal h3{margin-bottom:16px}.data-table{border-collapse:separate;border-spacing:0;background:var(--surface);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow);border:1px solid var(--gray-100);margin-top:12px;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--gray-100);padding:12px 16px;font-size:14px}.data-table th{background:var(--gray-50);text-transform:uppercase;color:var(--gray-500);letter-spacing:.06em;font-size:11px;font-weight:600}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--gray-50)}.status-badge{letter-spacing:.02em;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.status-badge.completed{color:var(--success);background:#d1fae5}.status-badge.waiting{color:var(--warning);background:#fef3c7}.status-badge.talking{background:var(--navy-soft);color:var(--navy)}.status-badge.scheduled{background:var(--gray-100);color:var(--gray-500)}.status-badge.missed{background:var(--red-soft);color:var(--danger)}.visit-workflow{max-width:640px;margin:0 auto}.visit-header{text-align:center;margin-bottom:24px}.visit-header h2{color:var(--navy)}.doctor-specialty{color:var(--gray-500);margin-top:4px;font-size:14px}.workflow-step{padding:16px 0}.timer-display{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);text-align:center;margin:16px 0;padding:28px 24px}.timer-label{color:var(--gray-500);letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:600}.timer-value{font-variant-numeric:tabular-nums;letter-spacing:-.04em;color:var(--gray-900);font-size:52px;font-weight:800}.timer-display.waiting .timer-value{color:var(--warning)}.timer-display.active .timer-value{color:var(--navy)}.timer-display.done{opacity:.7}.timer-display.done h3{font-size:24px}.timers-row{gap:14px;display:flex}.timers-row .timer-display{flex:1;padding:20px 16px}.timers-row .timer-display h3{font-size:28px;font-weight:800}.signer-select{margin:20px 0}.radio-group{justify-content:center;gap:24px;margin-top:10px;display:flex}.radio-group label{cursor:pointer;align-items:center;gap:8px;font-size:15px;font-weight:500;display:flex}.visit-summary{border-radius:var(--radius-lg);text-align:center;background:linear-gradient(135deg,#d1fae5 0%,#ecfdf5 100%);border:1px solid #a7f3d0;margin-bottom:20px;padding:22px}.visit-summary h3{color:var(--success)}.photo-capture{margin:20px 0}.photo-capture input[type=file]{margin-top:8px}.signature-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);padding:24px}.signature-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.attempts-badge{background:var(--gray-100);color:var(--gray-700);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.signature-canvas{border:1px solid var(--gray-200);border-radius:var(--radius);cursor:crosshair;touch-action:none;background:var(--surface)}.signature-actions{justify-content:flex-end;gap:12px;margin-top:14px;display:flex}.schedule-list{gap:14px;display:grid}.schedule-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);padding:18px}.schedule-header{justify-content:space-between;align-items:center;display:flex}.schedule-meta{color:var(--gray-500);gap:16px;margin-top:8px;font-size:13px;display:flex}.scheduled-dates{margin-top:14px}.scheduled-dates h4{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:12px}.date-item{border-bottom:1px solid var(--gray-100);justify-content:space-between;padding:8px 0;font-size:14px;display:flex}.add-date-inline{align-items:center;gap:8px;margin-top:10px;display:flex}.add-date-inline input{width:auto}.date-picker-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.date-picker-row input{width:auto}.date-list{flex-wrap:wrap;gap:8px;display:flex}.date-chip{background:var(--navy-soft);color:var(--navy);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:500;display:flex}.date-chip button{cursor:pointer;color:var(--danger);background:0 0;border:none;padding:0 2px}.sales-form{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);margin-bottom:24px;padding:22px}.sales-history{margin-top:24px}.live-map-page{position:relative}.map-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.map-controls{align-items:center;gap:12px;font-size:14px;display:flex}.medrep-count{color:var(--navy);font-weight:600}.map-container{border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);overflow:hidden}.map-popup strong{font-size:14px}.medrep-list{background:var(--surface);border-radius:var(--radius-lg);max-height:320px;box-shadow:var(--shadow-lg);border:1px solid var(--gray-100);z-index:1000;width:240px;padding:14px;position:absolute;top:60px;right:24px;overflow-y:auto}.medrep-list h3{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500);margin-bottom:10px;font-size:13px}.medrep-list-item{border-bottom:1px solid var(--gray-100);align-items:center;gap:10px;padding:8px 0;font-size:13px;display:flex}.medrep-list-item:last-child{border-bottom:none}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.active{background:var(--success);box-shadow:0 0 0 3px #0596692e}.slideshow-container{z-index:2000;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.slideshow-header{color:#fff;background:#000000d9;justify-content:space-between;align-items:center;padding:14px 22px;display:flex}.slideshow-controls-top{align-items:center;gap:16px;display:flex}.slide-viewport{flex:1;justify-content:center;align-items:center;padding:20px;display:flex;overflow:hidden}.slide-image{object-fit:contain;max-width:100%;max-height:100%}.slideshow-nav{background:#000000d9;justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.slide-dots{gap:8px;display:flex}.dot{cursor:pointer;width:10px;height:10px;transition:background var(--transition);background:#ffffff4d;border:none;border-radius:50%}.dot.active{background:var(--surface)}.error-message{background:var(--red-soft);color:var(--danger);border-radius:var(--radius);border:1px solid #fecaca;margin-bottom:16px;padding:12px 14px;font-size:14px;font-weight:500}.empty-state{text-align:center;color:var(--gray-400);padding:56px 24px;font-size:14px}.date-display{color:var(--gray-500);margin-bottom:16px}.calendar-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);margin-bottom:20px;padding:18px}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.calendar-header h3{color:var(--navy);font-size:18px}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-day-names{margin-bottom:6px}.calendar-day-name{text-align:center;color:var(--gray-400);text-transform:uppercase;letter-spacing:.06em;padding:6px 0;font-size:11px;font-weight:700}.calendar-cell{cursor:pointer;min-height:56px;transition:background var(--transition);border:2px solid #0000;border-radius:8px;padding:6px;position:relative}.calendar-cell:hover{background:var(--gray-50)}.calendar-cell.other-month{opacity:.3}.calendar-cell.past{opacity:.5;cursor:default}.calendar-cell.today{background:var(--navy-soft)}.calendar-cell.today .calendar-date{color:var(--navy);font-weight:700}.calendar-cell.selected{border-color:var(--navy);background:var(--navy-soft)}.calendar-date{font-size:13px;font-weight:500}.calendar-dots{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.event-dot{background:var(--red);border-radius:50%;width:6px;height:6px;display:inline-block}.event-count{background:var(--red);color:#fff;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700}.day-detail{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);margin-bottom:20px;padding:22px}.day-detail h3{align-items:center;gap:10px;display:flex}.today-badge{background:var(--red);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:3px 10px;font-size:10px;font-weight:700}.day-events{margin:14px 0}.day-event-card{background:var(--gray-50);border-radius:var(--radius);border-left:3px solid var(--red);align-items:center;gap:14px;margin-bottom:8px;padding:12px 14px;display:flex}.event-time{color:var(--navy);font-variant-numeric:tabular-nums;min-width:80px;font-size:14px;font-weight:700}.event-info{align-items:center;gap:8px;display:flex}.day-actions{border-top:1px solid var(--gray-100);margin-top:16px;padding-top:16px}.new-schedule-form{background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--gray-100);margin-top:14px;padding:18px}.new-schedule-form h4{margin-bottom:12px}.schedule-summary{margin-top:24px}.schedule-summary h3{margin-bottom:12px}.create-wizard{margin-bottom:22px}.wizard-steps{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);gap:6px;margin-bottom:22px;padding:12px;display:flex}.wizard-step{color:var(--gray-500);transition:background var(--transition);border-radius:8px;flex:1;align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}.wizard-step.active{background:var(--navy-soft);color:var(--navy);font-weight:600}.wizard-step.done{color:var(--success)}.step-number{background:var(--gray-200);width:26px;height:26px;color:var(--gray-500);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.wizard-step.active .step-number{background:var(--navy);color:#fff}.wizard-step.done .step-number{background:var(--success);color:#fff}.step-label{white-space:nowrap}.wizard-content{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--gray-100);padding:22px}.wizard-content h3{margin-bottom:14px}.calendar-cell.slot-selected{background:var(--navy-soft);border-color:var(--navy)}.calendar-cell.slot-selected .calendar-date{color:var(--navy);font-weight:700}.calendar-cell.moving-source{background:#fef3c7;border-color:#f59e0b}.calendar-cell.moving-source .calendar-date{color:#92400e;font-weight:700}.calendar-cell.move-target{cursor:pointer}.calendar-cell.move-target:hover{border-color:var(--success);background:#d1fae5}html[data-theme=dark] .stat-card h3,html[data-theme=dark] .doctor-info h3,html[data-theme=dark] h1,html[data-theme=dark] h2,html[data-theme=dark] h3,html[data-theme=dark] h4,html[data-theme=dark] .visit-header h2,html[data-theme=dark] .calendar-header h3,html[data-theme=dark] .medrep-count,html[data-theme=dark] .event-time{color:var(--text)}html[data-theme=dark] .specialty-badge,html[data-theme=dark] .date-chip,html[data-theme=dark] .wizard-step.active,html[data-theme=dark] .calendar-cell.today,html[data-theme=dark] .calendar-cell.selected,html[data-theme=dark] .calendar-cell.slot-selected{background:var(--surface-2);color:#cbd5fc}html[data-theme=dark] .visit-summary{background:#0596691f;border-color:#05966952}html[data-theme=dark] .visit-summary h3{color:#34d399}html[data-theme=dark] .day-event-card,html[data-theme=dark] .new-schedule-form{background:var(--surface-2)}html[data-theme=dark] .data-table th{background:var(--surface-2);color:var(--text-muted)}html[data-theme=dark] .data-table tbody tr:hover{background:#ffffff0a}html[data-theme=dark] .modal-overlay{background:#000000b3}html[data-theme=dark] .btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}html[data-theme=dark] .btn-secondary:hover{background:var(--border)}html[data-theme=dark] .action-btn,html[data-theme=dark] .action-card{color:#cbd5fc}html[data-theme=dark] .error-message{color:#fca5a5;background:#ef44441f;border-color:#ef444466}html[data-theme=dark] .stat-card.sync-warning{background:#d977061f;border-color:#d9770652}html[data-theme=dark] .signature-canvas{background:#fff}html[data-theme=dark] select option{background:var(--surface);color:var(--text)}.btn-primary,.btn-secondary,.btn-text{min-height:44px}.form-group input:not([type=radio]):not([type=checkbox]),.form-group select,.form-group textarea,input:not([type=radio]):not([type=checkbox]),select,textarea{min-height:44px;font-size:16px}.app-nav a{align-items:center;min-height:48px;display:flex}.doctor-card{padding:18px}.data-table th,.data-table td{padding:12px 14px}.stat-card h3{font-size:26px}@media (width<=768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.form-row,.search-bar{flex-direction:column}.search-bar select{width:100%}.timers-row{flex-direction:column}.medrep-list{width:100%;margin-top:12px;position:static}.map-container{height:50vh!important}.app-main{padding:16px}.btn-primary.btn-large{padding:18px 32px;font-size:18px}.timer-value{font-size:56px}h1{font-size:24px}h2{font-size:20px}}
