:root{--color-primary:#1e293b;--color-primary-light:#334155;--color-accent:#3b82f6;--color-accent-hover:#2563eb;--color-background:#f8fafc;--color-white:#fff;--color-border:#e2e8f0;--color-text-main:#0f172a;--color-text-muted:#64748b;--color-success:#10b981;--color-danger:#ef4444;--color-warning:#f59e0b;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:20px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-background);color:var(--color-text-main);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;padding:0;font-family:Inter,system-ui,-apple-system,sans-serif}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:all .2s}button:active{transform:scale(.98)}input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}@keyframes spin{to{transform:rotate(360deg)}}.recharts-responsive-container{min-width:0}.recharts-surface{margin:0!important;padding:0!important}.custom-tooltip{color:#fff;box-shadow:var(--shadow-md);background:#1e293be6;border:none;border-radius:8px;padding:10px 15px;font-size:12px}.alert-modal-card{text-align:center;max-width:400px!important}.alert-modal-title{color:var(--color-primary);margin:0 0 .75rem;font-size:1.2rem}.alert-modal-message{color:#64748b;white-space:pre-wrap;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.alert-modal-actions{justify-content:center;gap:1rem;display:flex}.loading-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:3000;background:#0f172a80;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-content{text-align:center}.loading-spinner{border:4px solid #fff3;border-top-color:var(--color-accent);border-radius:50%;width:48px;height:48px;margin:0 auto 1rem;animation:.8s linear infinite spin}.loading-text{color:#fff;font-size:1.1rem;font-weight:500}.btn{border-radius:var(--radius-md);justify-content:center;align-items:center;gap:.5rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-accent-hover)}.btn-secondary{background-color:var(--color-primary);color:#fff}.btn-outline{border:1px solid var(--color-border);color:var(--color-text-main);background-color:#0000}.btn-outline:hover:not(:disabled){background-color:var(--color-background)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-text{color:var(--color-accent);cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-weight:700}.btn-text:hover:not(:disabled){text-decoration:underline}.btn-sm{padding:.4rem .8rem;font-size:.875rem}.btn-md{padding:.6rem 1.2rem;font-size:1rem}.btn-lg{padding:.8rem 1.6rem;font-size:1.125rem}.loader{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.login-container{background-color:var(--color-background);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background-color:var(--color-white);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-md);border:1px solid var(--color-border);padding:2.5rem}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{color:var(--color-primary);margin-bottom:.5rem;font-size:1.875rem}.login-header p{color:var(--color-text-muted);font-size:.875rem}.login-card form{width:100%}.logo-circle{width:64px;height:64px;color:var(--color-accent);background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon svg{color:var(--color-text-muted);position:absolute;left:1rem}.input-with-icon .input-field{padding-left:2.75rem!important}.login-btn{justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:1.5rem!important;display:flex!important}.error-message{color:#b91c1c;text-align:center;background:#fee2e2;border-radius:8px;margin-bottom:1.5rem;padding:.75rem;font-size:.875rem;font-weight:600}.w-full{margin-top:1rem;width:100%!important}.login-footer{text-align:center;color:var(--color-text-muted);flex-direction:column;gap:.5rem;margin-top:2rem;font-size:.875rem;display:flex}.login-footer a{color:var(--color-accent);font-weight:500}.role-picker-overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.role-picker-card{text-align:center;background:#fff;border-radius:16px;width:90%;max-width:400px;padding:2rem;box-shadow:0 16px 48px #0003}.role-picker-card h2{color:var(--color-primary);margin:0 0 .35rem;font-size:1.25rem}.role-picker-card p{color:var(--color-text-muted);margin:0 0 1.5rem;font-size:.85rem}.role-options{flex-direction:column;gap:.75rem;display:flex}.role-option{border:2px solid var(--color-border);cursor:pointer;text-align:left;background:#fff;border-radius:12px;align-items:center;gap:.75rem;padding:1rem 1.25rem;transition:all .15s;display:flex}.role-option:hover{border-color:var(--color-primary);background:#f8faff}.role-option-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.role-option-icon.professional{color:#3b82f6;background:#eff6ff}.role-option-icon.patient{color:#f59e0b;background:#fef3c7}.role-option-info h3{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.role-option-info span{color:var(--color-text-muted);font-size:.8rem}.input-group{flex-direction:column;gap:.4rem;width:100%;margin-bottom:1rem;display:flex}.input-label{color:var(--color-primary-light);font-size:.875rem;font-weight:500}.input-field{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-white);width:100%;padding:.6rem .8rem;font-size:1rem;transition:border-color .2s}.input-field:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #3b82f61a}.input-error{border-color:var(--color-danger)}.error-text{color:var(--color-danger);font-size:.75rem}.phone-input-wrapper{gap:0;display:flex;position:relative}.phone-country-select{border:1px solid var(--color-border);border-radius:var(--radius-md) 0 0 var(--radius-md);background:var(--color-surface);cursor:pointer;white-space:nowrap;color:var(--color-primary);-webkit-user-select:none;user-select:none;border-right:none;align-items:center;gap:.3rem;padding:.6rem;font-size:.875rem;font-weight:600;display:flex}.phone-country-select:hover{background:var(--color-border)}.phone-caret{color:var(--color-text-muted);font-size:.5rem}.phone-number-input{border-radius:0 var(--radius-md) var(--radius-md) 0!important}.phone-dropdown{z-index:100;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;width:220px;margin-top:4px;position:absolute;top:100%;left:0;box-shadow:0 8px 24px #0000001f}.phone-search{border-bottom:1px solid var(--color-border);padding:.5rem}.phone-search input{border:1px solid var(--color-border);border-radius:var(--radius-sm);box-sizing:border-box;width:100%;padding:.4rem .5rem;font-size:.8rem}.phone-search input:focus{border-color:var(--color-accent);outline:none}.phone-options{max-height:180px;overflow-y:auto}.phone-option{cursor:pointer;align-items:center;gap:.6rem;padding:.45rem .75rem;font-size:.8rem;transition:background .1s;display:flex}.phone-option:hover{background:var(--color-primary-soft)}.phone-option.active{background:var(--color-primary-soft);font-weight:600}.phone-option-code{color:var(--color-primary);min-width:40px;font-weight:600}.phone-option-label{color:var(--color-text-muted);text-transform:uppercase}.working-hours-config{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1rem}.wh-header{color:#1e293b;align-items:center;gap:.4rem;margin-bottom:.75rem;display:flex}.wh-header h3{margin:0;font-size:.95rem}.wh-list{flex-direction:column;gap:.4rem;display:flex}.wh-row{background:#f8fafc;border-radius:6px;align-items:center;gap:.75rem;padding:.4rem .6rem;transition:all .15s;display:flex}.wh-row.active{background:#eff6ff;border:1px solid #bfdbfe}.wh-toggle{cursor:pointer;align-items:center;gap:.4rem;min-width:110px;display:flex}.wh-toggle input[type=checkbox]{accent-color:#2563eb}.wh-day-name{color:#334155;font-size:.8rem;font-weight:600}.wh-times{align-items:center;gap:.4rem;display:flex}.wh-times input[type=time]{border:1px solid #e2e8f0;border-radius:4px;outline:none;padding:.2rem .4rem;font-size:.8rem}.wh-times input[type=time]:focus{border-color:#2563eb}.wh-sep{color:#94a3b8;font-size:.7rem}.wh-save-btn{margin-top:.75rem}.dashboard-wrapper{background-color:var(--color-background);min-height:100vh;margin:0;padding:0;display:flex}.sidebar{background-color:var(--color-primary);color:#fff;z-index:1000;flex-direction:column;width:260px;height:100dvh;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow:hidden}.dashboard-wrapper.collapsed .sidebar{width:80px}.sidebar-brand{border-bottom:1px solid #ffffff1a;align-items:center;height:64px;padding:1.5rem;font-size:1.25rem;font-weight:700;display:flex}.dashboard-wrapper.collapsed .sidebar-brand{justify-content:center;padding:1rem 0}.brand-mini{background-color:var(--color-accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.125rem;font-weight:800;display:flex}.sidebar-nav{flex-direction:column;flex:1;gap:.25rem;margin-top:.5rem;padding:.75rem;display:flex;overflow-y:auto}.nav-item{color:#ffffffa6;cursor:pointer;white-space:nowrap;border-radius:10px;align-items:center;gap:1rem;padding:.75rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.dashboard-wrapper.collapsed .nav-item{justify-content:center;width:48px;margin:0 auto;padding:.75rem 0}.dashboard-wrapper.collapsed .nav-label{display:none}.nav-item:hover{color:#fff;background-color:#ffffff14}.nav-item.active{background-color:var(--color-accent);color:#fff;box-shadow:0 4px 12px #3b82f640}.nav-item svg{flex-shrink:0;width:18px;height:18px}.dashboard-wrapper.collapsed .nav-item svg{width:20px;height:20px}.nav-icon-wrapper{flex-shrink:0;display:inline-flex;position:relative}.nav-icon-badge{background:var(--color-danger);color:#fff;border:2px solid var(--color-sidebar-bg,#fff);border-radius:50%;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.6rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.dashboard-wrapper.collapsed .nav-icon-badge{border-width:2px;min-width:8px;height:8px;padding:0;font-size:0;top:-3px;right:-3px}.nav-label-container{flex:1;justify-content:space-between;align-items:center;display:flex}.alert-badge{background:var(--color-danger);color:#fff;border-radius:10px;padding:.15rem .45rem;font-size:.625rem;font-weight:900}.sidebar-footer{border-top:1px solid #ffffff1a;flex-direction:column;gap:.25rem;padding:1rem .75rem;display:flex}.toggle-btn,.logout-btn,.sidebar-footer .nav-item{text-align:left;background:0 0;border:none;width:100%}.dashboard-wrapper.collapsed .sidebar-footer .nav-item{margin:0 auto}.main-content{background-color:var(--color-background);flex-direction:column;flex:1;min-height:100vh;margin-left:260px;transition:margin-left .3s;display:flex}.dashboard-wrapper.collapsed .main-content{margin-left:80px}.content-header{background-color:var(--color-white);border-bottom:1px solid var(--color-border);z-index:10;justify-content:flex-end;align-items:center;height:64px;padding:0 2rem;display:flex;position:sticky;top:0}.header-user{align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.role-switch-btn{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:32px;height:32px;color:var(--color-text-muted);border-radius:8px;justify-content:center;align-items:center;margin-left:.25rem;transition:all .15s;display:flex}.role-switch-btn:hover{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary)}.content-inner{z-index:1;width:100%;max-width:1600px;margin:0 auto;padding:1rem;position:relative}@media (width<=768px){.sidebar{left:-260px}.dashboard-wrapper.mobile-open .sidebar{width:260px;left:0;box-shadow:20px 0 50px #0003}.dashboard-wrapper.mobile-open .nav-label{display:inline!important}.dashboard-wrapper.mobile-open.collapsed .sidebar-nav .nav-item{justify-content:flex-start;width:100%;margin:0;padding:.75rem 1rem}.dashboard-wrapper.mobile-open.collapsed .sidebar-nav .nav-item svg{width:18px;height:18px}.dashboard-wrapper.mobile-open .sidebar-footer .nav-item{justify-content:flex-start;width:100%;margin:0;padding:.75rem 1rem}.main-content{margin-left:0!important}.content-header{justify-content:space-between!important;padding:0 1.5rem!important}.content-inner{padding:1rem}}.mobile-menu-toggle{color:var(--color-primary);cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;padding:.5rem;display:none}@media (width<=768px){.mobile-menu-toggle{display:flex}}.sidebar-overlay{z-index:999;background:#0006;display:none;position:fixed;inset:0}.dashboard-wrapper.mobile-open .sidebar-overlay{display:block}.mobile-only{display:none!important}.desktop-only{display:flex!important}@media (width<=768px){.mobile-only{display:flex!important}.desktop-only{display:none!important}.sidebar-brand{justify-content:center}.sidebar-brand h2{text-align:center;flex:1;font-size:1.15rem}}.dashboard-wrapper .modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0f172a99;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dashboard-wrapper .modal-card{background:#fff;border-radius:20px;width:100%;max-height:90vh;padding:2rem;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.dashboard-wrapper .input-group{flex-direction:column;gap:.35rem;display:flex}.dashboard-wrapper .input-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:700}.dashboard-wrapper .input-field{border:1px solid var(--color-border);width:100%;color:var(--color-primary);box-sizing:border-box;background:#f8fafc;border-radius:10px;padding:.6rem .75rem;font-size:.8125rem;font-weight:600;transition:all .2s}.dashboard-wrapper .input-field:focus{border-color:var(--color-accent);background:#fff;outline:none;box-shadow:0 0 0 3px #3b82f626}.dashboard-wrapper .full-btn{width:100%}.sub-banner{align-items:center;gap:.6rem;padding:.6rem 1.5rem;font-size:.8rem;font-weight:500;display:flex}.sub-banner.trial-ending{color:#fff;background:#f59e0b}.sub-banner.expired{color:#fff;background:#dc2626}.header-logo{align-items:center;margin-right:1rem;display:flex}.header-logo img{object-fit:contain;max-width:120px;max-height:40px}.logo-upload-wrapper{cursor:pointer;border:2px dashed var(--color-border);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin-bottom:1.5rem;padding:1.5rem;transition:all .2s;display:flex}.logo-upload-wrapper:hover{border-color:var(--color-accent);background:#3b82f60a}.logo-upload-placeholder{color:var(--color-text-muted);flex-direction:column;align-items:center;gap:.5rem;display:flex}.logo-upload-placeholder span{font-size:.8rem;font-weight:500}.logo-preview{object-fit:contain;max-width:200px;max-height:80px}.page-bg-logo{background-image:var(--page-bg-logo);opacity:.08;pointer-events:none;z-index:0;background-position:100% 100%;background-repeat:no-repeat;background-size:contain;width:300px;height:300px;position:fixed;bottom:0;right:0}.dashboard-page{flex-direction:column;gap:1.5rem;width:100%;display:flex}.dashboard-page-loading{height:300px;color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.dashboard-page .page-header{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.dashboard-page .page-header h1{color:var(--color-primary);margin:0;font-size:1.25rem;font-weight:800}.dashboard-page .page-header p{color:var(--color-text-muted);margin:.15rem 0 0;font-size:.825rem;font-weight:500}.dashboard-stats-overview{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.stat-card-v2{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.stat-v2-info h3{color:var(--color-primary);margin:0;font-size:1.5rem;font-weight:800;line-height:1}.stat-v2-info p{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:.25rem 0 0;font-size:.75rem;font-weight:700}.stat-card-v2.alert-active{border-left:4px solid var(--color-danger)}.dashboard-section-v2{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:1.25rem 1.5rem}.section-v2-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.section-v2-header h2{color:var(--color-primary);align-items:center;gap:.5rem;margin:0;font-size:1.05rem;font-weight:700;display:flex}.agenda-v2-list{flex-direction:column;gap:.5rem;display:flex}.agenda-v2-item{background:#fcfcfd;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:1.25rem;padding:.75rem 1rem;display:flex}.time-v2{color:var(--color-accent);text-align:center;background:#eff6ff;border-radius:8px;min-width:55px;padding:.4rem;font-size:.9375rem;font-weight:900}.agenda-v2-info{flex:1}.agenda-v2-info p{color:var(--color-primary);margin:0;font-size:.875rem;font-weight:700}.agenda-v2-info span{color:var(--color-text-muted);font-size:.75rem;font-weight:500}.btn-v2-primary{background:var(--color-accent);color:#fff;border-radius:8px;align-items:center;gap:.4rem;padding:.4rem 1rem;font-size:.75rem;font-weight:700;display:flex}.icon-btn-sync{color:var(--color-accent);cursor:pointer;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.icon-btn-sync:hover{background:var(--color-accent);color:#fff;transform:rotate(180deg)}.icon-btn-sync.active{color:#166534;background:#dcfce7;border-color:#bbf7d0}.sync-modal{max-width:500px!important}.sync-modal-content{margin-top:1rem}.sync-modal-content p{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:.875rem;line-height:1.5}.sync-options-list{flex-direction:column;gap:.75rem;display:flex}.sync-option-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem;transition:all .2s;display:flex}.sync-option-card.connected{background:#f0fdf4;border-color:#bbf7d0}.sync-option-card.connected strong{color:#166534}.sync-option-card.disabled{opacity:.6;grayscale:1}.sync-info{align-items:center;gap:1rem;display:flex}.sync-info strong{color:var(--color-primary);font-size:.875rem;display:block}.sync-info span{color:var(--color-text-muted);font-size:.75rem}.agenda-v2-item{transition:all .2s;position:relative}.agenda-v2-item.status-completed{opacity:.7;background:#f8fafc;border-style:dashed}.agenda-v2-item.status-cancelled{opacity:.6;grayscale:1;text-decoration:line-through}.apt-status-badge{text-transform:uppercase;color:#64748b;background:#f1f5f9;border-radius:100px;padding:.15rem .5rem;font-size:.65rem;font-weight:800}.status-scheduled .apt-status-badge{color:#3b82f6;background:#eff6ff}.status-completed .apt-status-badge{color:#166534;background:#dcfce7}.status-cancelled .apt-status-badge{color:#991b1b;background:#fee2e2}.agenda-actions-v2{align-items:center;gap:.5rem;display:flex}.btn-agenda-action{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.btn-agenda-action.success{color:#166534;background:#dcfce7;border-color:#bbf7d0}.btn-agenda-action.success:hover{color:#fff;background:#166534}.btn-agenda-action.danger{color:#991b1b;background:#fee2e2;border-color:#fecdd3}.btn-agenda-action.danger:hover{color:#fff;background:#991b1b}.inline-search{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.5rem 1.1rem;transition:all .2s;display:flex;box-shadow:0 1px 3px #00000005}.inline-search:focus-within{border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 0 0 4px #3b82f61a}.inline-search input{color:var(--color-primary);flex:1;margin:0;padding:0;font-size:.9rem;font-weight:600;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important}.connection-form-v2{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.connection-header-mini{align-items:center;gap:.75rem;display:flex}.input-group-v2{flex-direction:column;gap:.5rem;display:flex}.input-group-v2 label{color:var(--color-text-muted);text-transform:uppercase;font-size:.75rem;font-weight:800}.input-group-v2 input{border:1px solid #e2e8f0;border-radius:10px;padding:.6rem 1rem;font-weight:600}.connection-actions-v2{justify-content:flex-end;gap:.75rem;display:flex}.quick-links-v2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.quick-link-card{border:1px solid var(--color-border);cursor:pointer;text-align:left;background:#f8fafc;border-radius:12px;align-items:center;gap:1rem;padding:1rem;transition:all .2s;display:flex}.quick-link-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-sm);background:#eff6ff;transform:translateY(-2px)}.quick-link-card svg{color:var(--color-accent)}.ql-text{flex-direction:column;gap:.15rem;display:flex}.ql-text strong{color:var(--color-primary);font-size:.875rem}.ql-text span{color:var(--color-text-muted);font-size:.75rem;font-weight:500}.intelligence-v2-list{flex-direction:column;gap:.5rem;display:flex}.intelligence-v2-list.scrollable{max-height:300px;padding-right:.5rem;overflow-y:auto}.intelligence-v2-list.scrollable::-webkit-scrollbar{width:6px}.intelligence-v2-list.scrollable::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.intelligence-v2-list.scrollable::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.agenda-v2-empty,.intel-v2-empty{color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.agenda-v2-empty p,.intel-v2-empty p{margin:0;font-size:.875rem;font-weight:600}.intel-v2-row{border:1px solid var(--color-border);border-radius:10px;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.intel-v2-row.adherence-low{color:#991b1b;background:#fef2f2;border-color:#fee2e2}.intel-v2-row.missing-logs{color:#92400e;background:#fffbeb;border-color:#fef3c7}.intel-v2-row p{flex:1;margin:0;font-size:.8125rem;font-weight:600}.intel-v2-row button{color:inherit;background:#fff;border:1px solid;border-radius:6px;padding:.3rem .6rem;font-size:.75rem;font-weight:700}.comms-v2-card{cursor:pointer;background:#f8faff;border:1px solid #e0e7ff;border-radius:12px;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:all .15s;display:flex}.comms-v2-card:hover{border-color:var(--color-primary);background:#eff6ff}.comms-v2-icon{background:var(--color-primary);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.comms-v2-info{flex:1}.comms-v2-info strong{color:var(--color-text);margin-bottom:.15rem;font-size:.875rem;display:block}.comms-v2-info p{color:var(--color-text-muted);margin:0;font-size:.75rem}.comms-v2-arrow{color:var(--color-text-muted);flex-shrink:0}@media (width<=768px){.dashboard-stats-overview,.quick-links-v2{grid-template-columns:1fr}.dashboard-page .page-header{flex-direction:column;align-items:stretch;gap:.75rem}.dashboard-page .page-header h1{font-size:1.1rem}.dashboard-page .page-header p{font-size:.75rem}}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dashboard-header h1{color:#1e293b;margin:0;font-size:1.5rem;font-weight:700}.dashboard-header p{color:#94a3b8;margin:.25rem 0 0;font-size:.875rem}.header-badge{color:#7c3aed;white-space:nowrap;background:#ede9fe;border-radius:999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.dev-badge{color:#fff;letter-spacing:.05em;text-transform:uppercase;vertical-align:middle;background:#7c3aed;border-radius:4px;align-items:center;padding:.125rem .375rem;font-size:.625rem;font-weight:700;display:inline-flex}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;display:grid}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex;box-shadow:0 1px 3px #0000000a}.stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.stat-info{flex-direction:column;min-width:0;display:flex}.stat-value{color:#1e293b;font-size:1.25rem;font-weight:700;line-height:1.2}.stat-label{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1rem;display:grid}.dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;box-shadow:0 1px 3px #0000000a}.card-title{color:#1e293b;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:.9375rem;font-weight:600;display:flex}.plan-distribution{flex-direction:column;gap:.5rem;display:flex}.plan-bar-row{align-items:center;gap:.75rem;display:flex}.plan-name{color:#475569;text-transform:capitalize;min-width:100px;font-size:.8rem}.plan-bar-track{background:#f1f5f9;border-radius:4px;flex:1;height:8px;overflow:hidden}.plan-bar-fill{background:linear-gradient(90deg,#3b82f6,#7c3aed);border-radius:4px;height:100%;transition:width .3s}.plan-count{color:#1e293b;text-align:right;min-width:24px;font-size:.8rem;font-weight:600}.activity-chart{min-height:120px}.mini-bars{align-items:flex-end;gap:2px;height:120px;padding-bottom:1.5rem;display:flex;position:relative}.mini-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.mini-bar{background:linear-gradient(#7c3aed,#a78bfa);border-radius:2px 2px 0 0;width:100%;min-height:2px;transition:height .3s}.mini-bar-label{color:#94a3b8;white-space:nowrap;font-size:.5rem;position:absolute;bottom:-1.25rem}.recent-list{flex-direction:column;gap:.5rem;max-height:300px;display:flex;overflow-y:auto}.recent-item{border-radius:8px;align-items:center;gap:.75rem;padding:.5rem;transition:background .15s;display:flex}.recent-item:hover{background:#f8fafc}.recent-avatar{color:#4338ca;background:#e0e7ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:600;display:flex}.recent-info{flex:1;min-width:0}.recent-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;display:block;overflow:hidden}.recent-email{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;display:block;overflow:hidden}.plan-badge{color:#64748b;white-space:nowrap;text-transform:capitalize;background:#f1f5f9;border-radius:4px;padding:.2rem .5rem;font-size:.65rem;font-weight:600}.plan-badge.dev{color:#7c3aed;background:#ede9fe}.health-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;display:grid}.health-item{text-align:center;background:#f8fafc;border-radius:8px;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;display:flex}.health-icon{color:#64748b;margin-bottom:.25rem}.health-label{color:#94a3b8;font-size:.7rem}.health-value{color:#1e293b;font-size:.85rem;font-weight:600}.metrics-list{flex-direction:column;gap:0;display:flex}.metric-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:.625rem 0;display:flex}.metric-row:last-child{border-bottom:none}.metric-label{color:#64748b;font-size:.85rem}.metric-value{color:#1e293b;font-size:.85rem;font-weight:600}.action-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:all .15s;display:inline-flex}.action-btn:hover{color:#3b82f6;background:#eff6ff;border-color:#3b82f6}.action-btn.danger:hover{color:#ef4444;background:#fef2f2;border-color:#ef4444}.confirm-modal-card{text-align:center;max-width:420px!important}.confirm-modal-title{color:var(--color-primary);margin:0 0 .75rem;font-size:1.2rem}.confirm-modal-message{color:#64748b;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.confirm-modal-actions{justify-content:center;gap:1rem;display:flex}.patients-container{flex-direction:column;gap:1.5rem;width:100%;display:flex}.page-header h1{color:var(--color-primary);letter-spacing:-.025em;margin:0;font-size:1.5rem;font-weight:800}.page-header p{color:var(--color-text-muted);margin-top:.15rem;font-size:.875rem;font-weight:500}.search-bar-container{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:1rem 1.5rem}.search-input-wrapper{border:1px solid var(--color-border);background:#f8fafc;border-radius:12px;align-items:center;gap:.75rem;padding:.75rem 1.25rem;transition:all .3s;display:flex}.search-input-wrapper:focus-within{border-color:var(--color-accent);background:#fff;box-shadow:0 0 0 4px #3b82f60d}.search-icon{color:var(--color-text-muted)}.search-input-wrapper input{color:var(--color-primary);background:0 0;border:none;outline:none;flex:1;font-size:.9375rem;font-weight:600}.patients-grid{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;overflow:hidden}.patients-table{border-collapse:collapse;width:100%}.patients-table th{text-align:left;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:1rem 1.5rem;font-size:.7rem;font-weight:800}.patients-table td{color:var(--color-primary-light);border-bottom:1px solid #f1f5f9;padding:1rem 1.5rem;font-size:.875rem}.patient-name-cell{align-items:center;gap:1rem;display:flex}.patient-full-name{color:var(--color-primary);font-size:.9375rem;font-weight:700}.patient-contact-stack{flex-direction:column;gap:.15rem;display:flex}.contact-main{color:var(--color-primary);font-size:.8125rem;font-weight:700}.contact-sub{color:var(--color-text-muted);font-size:.75rem;font-weight:600}.user-avatar{width:36px;height:36px;color:var(--color-accent);background-color:#eff6ff;border-radius:8px;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:flex}.actions-cell{align-items:center;gap:.5rem;display:flex}.action-btn-mini:hover{border-color:var(--color-accent);color:var(--color-accent);background:#f0f7ff}.action-btn-mini.delete:hover{color:#ef4444;background:#fef2f2;border-color:#ef4444}.action-btn-main{padding:.4rem .75rem!important;font-size:.75rem!important;font-weight:700!important}.restore-trigger-btn{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:.5rem;padding:0 1.25rem;font-size:.875rem;font-weight:700;transition:all .2s;display:flex}.restore-trigger-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#f8fafc}.removed-patients-list{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.removed-patient-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.restore-action-btn{border:1px solid var(--color-border);color:#10b981;cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.restore-action-btn:hover{background:#ecfdf5;border-color:#10b981}.modal-card{border-radius:20px!important;max-width:550px!important;padding:2rem!important}.modal-card h2{color:var(--color-primary);margin-bottom:1.5rem;font-size:1.25rem;font-weight:800}.form-row{grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem;display:grid}@media (width<=768px){.patients-table{display:block;overflow-x:auto}.patients-table th,.patients-table td{white-space:nowrap}.page-header{flex-direction:column;align-items:stretch;gap:.75rem}.page-header h1{font-size:1.25rem}.form-row{grid-template-columns:1fr}.search-bar-container{padding:.75rem 1rem}}.carousel-overlay{z-index:10000;background:#000000d9;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.carousel-container{flex-direction:column;align-items:center;max-width:90vw;max-height:95vh;display:flex;position:relative}.carousel-close{color:#fff;cursor:pointer;opacity:.7;background:0 0;border:none;padding:4px;transition:opacity .15s;position:absolute;top:-40px;right:0}.carousel-close:hover{opacity:1}.carousel-counter{color:#ffffffb3;font-size:.85rem;font-weight:700;position:absolute;top:-36px;left:0}.carousel-image-wrapper{justify-content:center;align-items:center;max-width:85vw;max-height:75vh;display:flex}.carousel-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:75vh;box-shadow:0 4px 24px #0006}.carousel-nav{color:#fff;cursor:pointer;opacity:.7;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-nav:hover{opacity:1;background:#ffffff4d}.carousel-prev{left:-60px}.carousel-next{right:-60px}.carousel-thumbnails{gap:.5rem;max-width:85vw;margin-top:1rem;padding:.5rem;display:flex;overflow-x:auto}.carousel-thumb{object-fit:cover;cursor:pointer;opacity:.5;border:2px solid #0000;border-radius:6px;flex-shrink:0;width:48px;height:48px;transition:all .15s}.carousel-thumb:hover{opacity:.8}.carousel-thumb.active{opacity:1;border-color:#fff}@media (width<=768px){.carousel-nav{width:36px;height:36px}.carousel-prev{left:4px}.carousel-next{right:4px}}.clinical-notes-view .section-header-v2{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.clinical-notes-list{flex-direction:column;gap:.75rem;display:flex}.clinical-note-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1rem;transition:box-shadow .15s}.clinical-note-card:hover{box-shadow:0 2px 8px #0000000f}.note-header{justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;display:flex}.note-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.note-type-badge{text-transform:uppercase;color:#2563eb;background:#eff6ff;border-radius:4px;padding:.15rem .5rem;font-size:.65rem;font-weight:700}.note-meta h3{margin:0;font-size:.95rem;font-weight:700}.note-actions{gap:.25rem;display:flex}.icon-btn{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:4px;padding:.3rem;transition:all .15s}.icon-btn:hover{color:#1e293b;background:#f1f5f9}.icon-btn.danger:hover{color:#dc2626;background:#fef2f2}.note-content{color:#475569;white-space:pre-wrap;margin:0 0 .5rem;font-size:.85rem;line-height:1.5}.note-date{color:#94a3b8;align-items:center;gap:.3rem;font-size:.7rem;display:flex}.profile-container{max-width:100%;margin:0;padding:0}.profile-header{background:var(--color-white);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:1.25rem 2rem}.back-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;margin-bottom:1rem;padding:0;font-size:.8125rem;transition:color .2s;display:flex}.back-btn:hover{color:var(--color-primary)}.patient-main-info{align-items:center;gap:1.25rem;margin-bottom:1.5rem;display:flex}.profile-avatar{background-color:var(--color-accent);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:54px;height:54px;font-size:1.25rem;font-weight:700;display:flex}.profile-title h1{color:var(--color-primary);margin:0 0 .25rem;font-size:1.375rem}.info-badges{gap:.5rem;display:flex}.badge{color:var(--color-text-muted);background:#f1f5f9;border-radius:100px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:flex}.profile-actions{gap:.5rem;margin-left:auto;display:flex}.profile-tabs{border-top:1px solid var(--color-border);gap:2rem;padding-top:1rem;display:flex}.profile-tabs button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:.4rem 0;font-size:.875rem;font-weight:600;transition:color .2s;position:relative}.profile-tabs button:hover{color:var(--color-primary)}.profile-tabs button.active{color:var(--color-accent)}.profile-tabs button.active:after{content:"";background-color:var(--color-accent);height:2px;position:absolute;bottom:-1rem;left:0;right:0}.profile-content{padding:0 2rem 2rem}.adherence-view{flex-direction:column;gap:1.5rem;display:flex}.adherence-header-row-advanced{border:1px solid var(--color-border);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.adherence-filters-advanced{flex:1;align-items:center;gap:1rem;display:flex}.filter-group-main{border:1px solid var(--color-border);background:#f8fafc;border-radius:8px;align-items:center;gap:.5rem;padding:.4rem 1rem;display:flex}.filter-group-main select{color:var(--color-primary);background:0 0;border:none;outline:none;font-size:.875rem;font-weight:700}.log-search-box{flex:1;max-width:250px;margin-left:.5rem}.search-input-wrapper.small{border:1px solid var(--color-border);background:#fcfcfd;border-radius:8px;align-items:center;gap:.5rem;width:250px;padding:.4rem 1rem;display:flex}.search-input-wrapper.small input{background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.adherence-header-actions{align-items:center;gap:1rem;display:flex}.items-per-page{color:var(--color-text-muted);align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;display:flex}.items-per-page select{border:1px solid var(--color-border);border-radius:4px;padding:.15rem;font-size:.75rem}.adherence-analytics-grid{grid-template-columns:1.2fr 1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.analytics-card{border:1px solid var(--color-border);text-align:center;box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;min-height:110px;padding:.75rem 1rem;display:flex}.analytics-card.highlight{border-left:6px solid var(--color-accent);text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem}.analytics-card.chart-card{text-align:left;align-items:stretch}.small-chart-container .recharts-surface{padding-bottom:0!important}.analytics-icon{color:var(--color-accent);background:#eff6ff;border-radius:10px;padding:.75rem}.analytics-label{text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.05em;font-size:.6875rem;font-weight:800}.trend-badge{border-radius:100px;padding:.15rem .5rem;font-size:.625rem;font-weight:800}.compliance-row{flex-direction:column;gap:.25rem;display:flex}.comp-item{align-items:center;gap:.4rem;font-size:.9375rem;font-weight:700;display:flex}.clinical-log-card-v2{background:#fff;border:2px solid #0000;border-radius:16px;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.clinical-log-card-v2.on{border-color:var(--color-success)}.clinical-log-card-v2.off{border-color:var(--color-danger)}.clinical-log-card-v2:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.clinical-log-card-v2.on:hover,.clinical-log-card-v2.off:hover{opacity:.9}.log-image-wrapper{background:#f1f5f9;width:100%;height:160px;overflow:hidden}.log-body-v2{padding:1rem}.log-time-v2{color:var(--color-text-muted);background:#f8fafc;border-radius:6px;padding:.25rem .5rem;font-size:.75rem;font-weight:800}.log-body-v2 h3{color:var(--color-primary);margin:0 0 .15rem;font-size:1rem;font-weight:700}.log-date-v2{color:var(--color-accent);text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:700}.log-description-v2{color:#475569;margin:0;font-size:.8125rem;line-height:1.4}.log-footer-v2{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:.75rem;display:flex}.log-btn-v2{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.log-btn-v2.view{color:var(--color-accent);background:#eff6ff;transition:all .2s}.log-btn-v2.view:hover{background:var(--color-accent);color:#fff;transform:scale(1.1)}.log-btn-v2.delete{color:#ef4444;background:#fef2f2}.log-detail-modal{max-width:600px!important}.header-title-with-badge{align-items:center;gap:1rem;display:flex}.log-detail-content{flex-direction:column;gap:1.5rem;margin-top:1rem;display:flex}.zoom-hint{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172ab3;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:700;display:flex;position:absolute;bottom:12px;right:12px}.log-detail-info{flex-direction:column;gap:1.25rem;display:flex}.detail-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.detail-item label{text-transform:uppercase;color:#94a3b8;letter-spacing:.05em;margin-bottom:.25rem;font-size:.65rem;font-weight:900;display:block}.detail-value{color:var(--color-primary);align-items:center;gap:.5rem;margin:0;font-size:1rem;font-weight:700;display:flex}.detail-value.highlighted{color:var(--color-accent);font-size:1.25rem}.detail-description-box{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem;font-size:.9375rem;line-height:1.6}.page-numbers{gap:.4rem;display:flex}.page-btn{color:var(--color-accent);cursor:pointer;background:0 0;border:none;align-items:center;transition:all .2s;display:flex}.section-header-v2{border:1px solid var(--color-border);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.section-header-v2 h2{color:var(--color-primary);margin:0;font-size:1rem;font-weight:800}.diets-view-v2{flex-direction:column;gap:1rem;display:flex}.diets-grid-v2{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;display:grid}.diet-card-v2{border:1px solid var(--color-border);background:#fff;border-radius:16px;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .2s;display:flex;position:relative;overflow:hidden}.diet-card-v2:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000000d}.diet-card-v2.active{border-left:5px solid var(--color-success)}.diet-card-header-v2{justify-content:space-between;align-items:flex-start;display:flex}.diet-main-title h3{color:var(--color-primary);margin:0;font-size:1.125rem;font-weight:800}.active-pill{color:#166534;text-transform:uppercase;background:#dcfce7;border-radius:100px;margin-top:.25rem;padding:.15rem .5rem;font-size:.625rem;font-weight:800;display:inline-block}.diet-actions-v2{gap:.4rem;display:flex}.action-btn-v2{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;padding:.45rem;transition:all .2s;display:flex}.action-btn-v2:hover{color:var(--color-accent);border-color:var(--color-accent);background:#eff6ff}.action-btn-v2.delete:hover{color:#ef4444;background:#fee2e2;border-color:#fecdd3}.diet-objective-v2{color:#475569;background:#f8fafc;border-radius:10px;align-items:center;gap:.5rem;padding:.75rem;font-size:.8125rem;display:flex}.diet-objective-v2 span{flex:1}.diet-summary-grid-v2{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.summary-item{background:#f1f5f9;border-radius:10px;flex-direction:column;gap:.15rem;padding:.75rem;display:flex}.summary-item .label{text-transform:uppercase;color:#94a3b8;letter-spacing:.05em;font-size:.625rem;font-weight:800}.summary-item .value{color:var(--color-primary);font-size:1rem;font-weight:800}.summary-item .value small{color:#64748b;font-size:.75rem;font-weight:600}.summary-item.prot{border-left:3px solid #3b82f6}.summary-item.carb{border-left:3px solid #10b981}.summary-item.fat{border-left:3px solid #f59e0b}.diet-footer-v2{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.75rem;display:flex}.diet-dates-group{flex-direction:column;gap:.2rem;display:flex}.diet-dates-group .date.modified{color:var(--color-accent);opacity:.8}.diet-footer-v2 span{color:#94a3b8;align-items:center;gap:.35rem;font-size:.7rem;font-weight:600;display:flex}.empty-diets-v2{text-align:center;border:1px dashed var(--color-border);color:var(--color-text-muted);background:#fff;border-radius:16px;flex-direction:column;grid-column:1/-1;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.clinical-table-v2{border-collapse:separate;border-spacing:0;width:100%;margin-top:1rem}.clinical-table-v2 th{text-align:left;color:#64748b;text-transform:uppercase;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:1rem;font-size:.75rem;font-weight:800}.clinical-table-v2 td{color:var(--color-primary);vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:1rem;font-size:.875rem}.clinical-table-v2 tr:last-child td{border-bottom:none}.clinical-table-v2 tr:hover td{background-color:#fcfcfd}.history-table-container{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;overflow:hidden}.anthropometry-view-v2{flex-direction:column;gap:1.5rem;display:flex}.big-input{text-align:center;color:var(--color-accent)!important;padding:1rem!important;font-size:1.5rem!important;font-weight:800!important}.form-section-title{text-transform:uppercase;color:var(--color-accent);letter-spacing:.05em;border-bottom:2px solid #eff6ff;margin-bottom:.75rem;padding-bottom:.25rem;font-size:.75rem;font-weight:900}.form-grid-3{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.timeline-list{margin-top:1rem;padding-left:2.5rem;position:relative}.timeline-list:before{content:"";background:#e2e8f0;width:2px;position:absolute;top:0;bottom:0;left:10px}.timeline-item{margin-bottom:1rem;position:relative}.marker-icon{z-index:2;color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:4px;left:-2.35rem;box-shadow:0 0 0 4px #fff}.marker-icon.anthro{background:#3b82f6}.marker-icon.exam{background:#f59e0b}.marker-icon.diet{background:#8b5cf6}.marker-icon.log{background:#10b981}.marker-icon.log.off{background:#ef4444}.timeline-date{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.6875rem;font-weight:800}.timeline-card-compact{border:1px solid var(--color-border);background:#fff;border-radius:12px;padding:.75rem 1rem;transition:all .2s}.timeline-card-compact:hover{border-color:#cbd5e1;transform:translate(4px)}.timeline-card-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.timeline-card-compact h3{color:var(--color-primary);margin:0;font-size:.875rem;font-weight:700}.timeline-time{color:#64748b;align-items:center;gap:.25rem;font-size:.7rem;font-weight:700;display:flex}.timeline-card-compact p{color:#475569;margin:0;font-size:.8125rem;line-height:1.4}.chart-container{border:1px solid var(--color-border);background:#fff;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.data-table th{padding:.75rem;font-size:.7rem}.data-table td{padding:.75rem;font-size:.8125rem}.exams-view{flex-direction:column;gap:1.5rem;display:flex}.exams-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;display:grid}.exam-card{border:1px solid var(--color-border);background:#fff;border-radius:12px;padding:1.25rem}.exam-info h3{font-size:1rem;font-weight:700}.exam-results p,.exam-notes p{font-size:.875rem}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0f172a99;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:20px;width:100%;max-width:500px;max-height:90vh;padding:2rem;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.profile-container .input-field,.modal-overlay .input-field{border:1px solid var(--color-border);width:100%;color:var(--color-primary);background:#f8fafc;border-radius:10px;padding:.6rem .75rem;font-size:.8125rem;font-weight:600;transition:all .2s}.modal-card .input-field{max-width:100%}.form-grid-3 .input-field,.form-row .input-field{max-width:180px!important}.header-actions-group{align-items:center;gap:.75rem;display:flex}.compact-page-select{border:1px solid var(--color-border);color:var(--color-primary);cursor:pointer;background:#fff;border-radius:8px;padding:.35rem .5rem;font-size:.75rem;font-weight:700}.compact-page-select:hover{border-color:var(--color-accent)}.calculation-results-v2{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-top:1.5rem;padding:1rem}.result-header{color:var(--color-accent);text-transform:uppercase;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.8125rem;font-weight:800;display:flex}.results-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.result-item{flex-direction:column;gap:.25rem;display:flex}.result-item .label{color:#94a3b8;text-transform:uppercase;font-size:.625rem;font-weight:800}.result-item .value{color:var(--color-primary);font-size:1.125rem;font-weight:800}.result-item .value.highlighted{color:var(--color-accent)}.protocol-info{color:#94a3b8;align-items:center;gap:.35rem;margin-top:1rem;font-size:.65rem;font-weight:600;display:flex}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.modal-header h2{color:var(--color-primary);margin:0;font-size:1.25rem;font-weight:800}.modal-actions{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:.75rem;margin-top:2rem;padding-top:1.25rem;display:flex}.input-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.input-label{text-transform:uppercase;color:var(--color-text-muted);font-size:.75rem;font-weight:800}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.textarea{border:1px solid var(--color-border);resize:vertical;background:#f8fafc;border-radius:10px;width:100%;padding:.75rem;font-size:.875rem}.adherence-toggle-group{margin-bottom:1.5rem}.toggle-options{gap:.75rem;margin-top:.5rem;display:flex}.toggle-opt{color:var(--color-text-muted);cursor:pointer;background:#fff;border:2px solid #f1f5f9;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.875rem;font-weight:800;transition:all .2s;display:flex}.toggle-opt.active{background:var(--color-success);border-color:var(--color-success);color:#fff}.toggle-opt.active.error{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.photo-actions-v2{gap:.75rem;margin-top:.5rem;display:flex}.action-label{border:1px solid var(--color-border);color:var(--color-accent);cursor:pointer;background:#f8fafc;border-radius:12px;flex-direction:column;align-items:center;gap:.4rem;padding:.75rem;font-size:.75rem;font-weight:700;display:flex}.log-detail-image-container{border:1px solid var(--color-border);cursor:zoom-in;background:#f1f5f9;border-radius:12px;width:100%;height:150px;margin-top:.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.log-search-box{align-items:center;gap:1rem;display:flex}.quick-adherence-filters{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:.4rem;padding:.25rem;display:flex}.filter-btn-mini{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .2s;display:flex}.filter-btn-mini:hover{color:#64748b;background:#fff}.filter-btn-mini.success.active{color:#fff;background:#10b981;box-shadow:0 2px 6px #10b9814d}.filter-btn-mini.danger.active{color:#fff;background:#ef4444;box-shadow:0 2px 6px #ef44444d}.report-dropdown{display:inline-block;position:relative}.report-dropdown-menu{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:240px;box-shadow:var(--shadow-md);z-index:100;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden}.report-dropdown-menu button{width:100%;color:var(--color-text-main);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.8125rem;transition:background .15s;display:flex}.report-dropdown-menu button:hover{background:var(--color-primary-soft,#f1f5f9)}.report-dropdown-menu button svg{color:var(--color-accent);flex-shrink:0}.anthro-thumb{object-fit:cover;cursor:pointer;border:1px solid var(--color-border);border-radius:8px;width:50px;height:50px;transition:transform .2s}.builder-container{background-color:var(--color-background);flex-direction:column;width:100%;height:100vh;display:flex;overflow:hidden}.builder-header-advanced{border-bottom:1px solid var(--color-border);z-index:10;box-shadow:var(--shadow-sm);background:#fff;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.header-section{align-items:center;gap:1.25rem;display:flex}.patient-meta{flex:1;align-items:flex-start;gap:1.5rem;display:flex}.back-btn-circle{width:36px;height:36px;color:var(--color-text-muted);background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;display:flex}.diet-title-input-bold{color:var(--color-primary);background:0 0;border:none;width:300px;font-size:1.125rem;font-weight:800}.meta-row{gap:1rem;margin-top:.15rem;display:flex}.date-input-row{gap:1rem;margin-top:.5rem;display:flex}.goal-input-wrapper,.date-input-wrapper{color:var(--color-text-muted);align-items:center;gap:.4rem;font-size:.75rem;display:flex}.date-input-wrapper .date-label{text-transform:uppercase;color:#94a3b8;font-size:.65rem;font-weight:700}.meta-row input,.date-input-row input{color:var(--color-text-muted);background:0 0;border:none;font-size:.75rem;font-weight:600}.targets-toggle{color:var(--color-primary);cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;transition:all .15s;display:flex}.targets-toggle:hover{background:var(--color-primary);color:#fff}.targets-row{flex-wrap:wrap;gap:.5rem;margin-top:.35rem;display:flex}.target-field{background:#f1f5f9;border-radius:6px;align-items:center;gap:.3rem;padding:.2rem .5rem;display:flex}.target-field label{color:#64748b;text-transform:uppercase;font-size:.65rem;font-weight:700}.target-field input{width:60px;color:var(--color-text);text-align:right;background:0 0;border:none;outline:none;font-size:.75rem;font-weight:600}.nutrition-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:center;margin-left:.5rem;padding:.4rem .8rem;display:flex}.chart-wrapper{align-items:center;gap:.5rem;display:flex}.kcal-total{color:var(--color-primary);font-size:1rem;font-weight:800}.macro-pills{flex-direction:column;gap:.25rem;margin-left:1rem;display:flex}.macro-pill{border-radius:4px;justify-content:space-between;gap:.5rem;width:65px;padding:.15rem .6rem;font-size:.65rem;font-weight:800;display:flex}.macro-pill.prot{color:#1d4ed8;background:#eff6ff}.macro-pill.carb{color:#047857;background:#ecfdf5}.macro-pill.fat{color:#b45309;background:#fffbeb}.status-pill-toggle{cursor:pointer;color:#64748b;text-transform:uppercase;-webkit-user-select:none;user-select:none;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:100px;align-items:center;gap:.5rem;padding:.45rem 1rem;font-size:.75rem;font-weight:800;transition:all .2s;display:flex}.status-pill-toggle.active{color:#166534;background:#dcfce7;border-color:#bbf7d0}.status-pill-toggle:hover{transform:scale(1.02)}.status-pill-toggle.active:hover{background:#bbf7d0}.actions-fixed{align-items:center;gap:1.5rem;display:flex}.main-actions-stack{flex-direction:column;align-items:center;gap:.35rem;display:flex}.save-btn-hero{width:100%;border-radius:10px!important;padding:.5rem 1.75rem!important;font-weight:800!important}.cancel-link-btn{color:#94a3b8;text-transform:uppercase;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.7rem;font-weight:700;transition:color .2s}.cancel-link-btn:hover{color:var(--color-danger)}.builder-workspace{flex:1;display:flex;overflow:hidden}.meals-column{background:#f8fafc;flex:1;padding:1.5rem;overflow-y:auto}.column-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.column-header h2{color:var(--color-primary);font-size:1.125rem;font-weight:800}.meal-card{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;margin-bottom:1.25rem;padding:0;transition:all .2s}.meal-card.selected{border-color:var(--color-accent);border-width:2px}.meal-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;margin:0;padding:1.25rem 1.25rem .5rem;display:flex}.meal-header:hover{background:#f8fafc}.meal-title-row{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.meal-macro-subtot{white-space:nowrap;align-items:center;gap:.6rem;margin-left:auto;padding-left:.75rem;display:flex}.macro-inline{font-size:.7rem;font-weight:700}.macro-inline.kcal{color:var(--color-text-muted);font-size:.8rem}.macro-inline.prot{color:#3b82f6}.macro-inline.carb{color:#10b981}.macro-inline.fat{color:#f59e0b}.meal-time-input-clean{width:50px;min-width:50px;color:var(--color-accent);text-align:center;background:0 0;border:none;padding:0;font-size:1rem;font-weight:800}.meal-time-input-clean:focus{background:#f1f5f9;border-radius:4px;outline:none}.meal-name-input-clean{background:0 0;border:none;flex:1;font-size:1rem;font-weight:700}.meal-time-display{width:50px;min-width:50px;color:var(--color-accent);text-align:center;padding:0;font-size:1rem;font-weight:800}.meal-name-display{color:var(--color-text);flex:1;font-size:1rem;font-weight:700}.delete-meal-btn-v3,.item-remove-v3{color:#ef4444;cursor:pointer;background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.delete-meal-btn-v3:hover,.item-remove-v3:hover{color:#fff;background:#ef4444;border-color:#ef4444}.meal-day-selector{gap:.4rem;margin-bottom:1rem;padding:0 1.25rem;display:flex}.day-toggle{color:var(--color-text-muted);background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.25rem .5rem;font-size:.65rem;font-weight:700}.day-toggle.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.meal-items-tree{flex-direction:column;gap:.5rem;padding:0 1.25rem;display:flex}.meal-item-tree-node{position:relative}.meal-item-tree-node.is-alt{margin-top:.25rem;padding-left:1.5rem}.meal-item-tree-node.is-alt:before{content:"";background:#e2e8f0;width:2px;position:absolute;top:-.5rem;bottom:50%;left:.75rem}.meal-item-tree-node.is-alt:after{content:"";background:#e2e8f0;width:.5rem;height:2px;position:absolute;top:50%;left:.75rem}.item-alternatives-list-v2{flex-direction:column;display:flex;position:relative}.meal-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;padding:.75rem 1rem;display:flex;box-shadow:0 1px 2px #0000000d}.meal-item-tree-node.is-alt .meal-item{background:#f8fafc;border-style:dashed;border-color:#cbd5e1}.item-main{flex:1}.item-name{color:var(--color-primary);font-size:.875rem;font-weight:700}.item-macros{color:var(--color-text-muted);font-size:.75rem;font-weight:500}.item-qty-input{text-align:center;border:1px solid #e2e8f0;border-radius:4px;width:50px;padding:.25rem;font-weight:700}.item-unit{color:var(--color-text-muted);margin-left:.25rem;font-size:.75rem;font-weight:700}.item-controls-v2{align-items:center;gap:.75rem;display:flex}.qty-group{align-items:center;gap:.25rem;display:flex}.actions-stack{flex-direction:column;gap:.25rem;display:flex}.item-sub-btn-v2{color:#7c3aed;cursor:pointer;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.item-sub-btn-v2:hover{color:#fff;background:#7c3aed}.item-sub-btn-v2.active{color:#fff;background:#7c3aed;animation:2s infinite pulse-purple}@keyframes pulse-purple{0%{box-shadow:0 0 #7c3aed66}70%{box-shadow:0 0 0 8px #7c3aed00}to{box-shadow:0 0 #7c3aed00}}.item-remove-v3{color:#ef4444;cursor:pointer;background:#fff1f2;border:1px solid #fecdd3;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.item-remove-v3:hover{color:#fff;background:#ef4444}.add-meal-alt-btn-v3{color:#7c3aed;cursor:pointer;text-transform:uppercase;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:100px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.45rem 1rem;font-size:.75rem;font-weight:800;transition:all .2s;display:flex}.add-meal-alt-btn-v3:hover{color:#fff;background:#7c3aed;transform:scale(1.02)}.add-meal-alt-btn-v3 svg{color:inherit}.search-column{border-left:1px solid var(--color-border);background:#fff;flex-direction:column;width:300px;padding-top:1rem;padding-left:.5rem;display:flex}.search-container{border-bottom:1px solid var(--color-border);padding:.75rem 1.25rem}.search-input-wrapper{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .8rem;display:flex}.search-input-wrapper input{background:0 0;border:none;outline:none;flex:1;font-size:.8rem}.results-list{flex:1;padding:1rem;overflow-y:auto}.results-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.section-title{color:var(--color-text-muted);text-transform:uppercase;margin-bottom:.5rem;padding-left:.25rem;font-size:.7rem;font-weight:800}.smart-sparkle-btn{color:#15803d;cursor:pointer;background:#dcfce7;border:1px solid #bbf7d0;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.smart-sparkle-btn:hover{color:#fff;background:#16a34a;transform:scale(1.05)}.smart-sparkle-btn.active{color:#fff;background:#16a34a}.food-grid{flex-direction:column;gap:.4rem;display:flex}.food-result-card{cursor:pointer;border:1px solid #f1f5f9;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:.5rem .75rem;transition:all .2s;display:flex}.food-result-card:hover{border-color:var(--color-accent);background:#eff6ff}.food-info h4{color:var(--color-primary);margin:0;font-size:.8rem}.food-info p{color:var(--color-text-muted);margin:0;font-size:.7rem}.food-result-card .add-action{font-size:.8rem}.food-result-card.picker-open{background:#f8fafc;border-color:#3b82f6}.portion-picker{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-shrink:0;width:100%;margin-top:.5rem;padding:.75rem}.portion-picker-header{color:#64748b;text-transform:uppercase;margin-bottom:.5rem;font-size:.7rem;font-weight:800}.portion-options{flex-wrap:wrap;gap:.35rem;margin-bottom:.75rem;display:flex}.portion-opt{cursor:pointer;color:#475569;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.75rem;font-weight:600;transition:all .15s;display:flex}.portion-opt:hover{background:#eff6ff;border-color:#93c5fd}.portion-opt.active{color:#1d4ed8;background:#dbeafe;border-color:#3b82f6}.portion-name{font-weight:700}.portion-grams{color:#94a3b8;font-size:.65rem}.portion-qty-row{color:#334155;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.8rem;font-weight:600;display:flex}.portion-qty-input{text-align:center;border:1.5px solid #e2e8f0;border-radius:8px;outline:none;width:80px;padding:.3rem .5rem;font-size:.85rem;font-weight:700}.portion-qty-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.portion-qty-unit{color:#94a3b8;font-size:.75rem;font-weight:600}.portion-picker-actions{justify-content:flex-end;gap:.5rem;display:flex}.portion-cancel{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;transition:all .15s}.portion-cancel:hover{background:#f1f5f9}.portion-confirm{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.75rem;font-weight:700;transition:all .15s;display:flex}.portion-confirm:hover{background:#2563eb}.is-alt-meal{margin-top:.75rem;margin-left:1rem;background:#fcfcfd!important;border-style:dashed dashed dashed solid!important;border-left-width:4px!important;border-left-color:#e2e8f0!important}.meal-alternatives-container{flex-direction:column;display:flex}.meal-footer{margin:0;padding:.5rem 1.5rem 1.5rem}.meal-alt-badge-v2{text-transform:uppercase;color:#7c3aed;white-space:nowrap;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:4px;margin-left:.4rem;padding:.1rem .35rem;font-size:.55rem;font-weight:800;line-height:1.3;display:inline-block}.meal-macro-subtot{color:var(--color-accent);white-space:nowrap;margin-left:.75rem;font-size:.75rem;font-weight:800}.meal-macro-subtot small{color:#94a3b8;font-size:.6rem;font-weight:600}.food-library-container{flex-direction:column;gap:1.5rem;width:100%;display:flex}.page-header{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.page-header h1{color:var(--color-primary);margin:0;font-size:1.25rem;font-weight:800}.library-controls-advanced{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;flex-direction:column;gap:1rem;padding:1rem 1.5rem;display:flex}.search-bar-modern{border:1px solid var(--color-border);background:#f8fafc;border-radius:10px;align-items:center;gap:.75rem;padding:.6rem 1rem;transition:all .3s;display:flex}.search-bar-modern:focus-within{border-color:var(--color-accent);background:#fff;box-shadow:0 0 0 4px #3b82f60d}.search-bar-modern input{color:var(--color-primary);background:0 0;border:none;outline:none;flex:1;font-size:.875rem;font-weight:500}.filter-group-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.filter-left-side{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.advanced-filter-trigger{border:1px solid var(--color-border);color:var(--color-primary);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:.5rem;padding:.35rem .8rem;font-size:.75rem;font-weight:700;transition:all .2s;display:flex;position:relative}.advanced-filter-trigger:hover{border-color:var(--color-accent);color:var(--color-accent)}.advanced-filter-trigger.has-active{border-color:var(--color-accent);background:#eff6ff}.clear-filters-btn-v2{color:#ef4444;cursor:pointer;background:#fee2e2;border:1px solid #fecdd3;border-radius:8px;justify-content:center;align-items:center;padding:.35rem;transition:all .2s;display:flex}.clear-filters-btn-v2:hover{background:#fecdd3;transform:scale(1.05)}.active-dot{background:var(--color-accent);border:2px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;right:-2px}.advanced-filter-modal{max-width:600px!important}.advanced-filters-body{flex-direction:column;gap:1.5rem;padding:.5rem 0;display:flex}.filter-section{flex-direction:column;gap:.75rem;display:flex}.filter-chips-grid{flex-wrap:wrap;gap:.5rem;display:flex}.filter-chip{color:var(--color-text-muted);cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.4rem .75rem;font-size:.75rem;font-weight:600;transition:all .2s}.filter-chip:hover{border-color:var(--color-accent);color:var(--color-accent)}.filter-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.add-portion-btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:.3rem;min-width:40px;padding:.4rem .8rem;font-size:.75rem;font-weight:700;transition:opacity .2s;display:flex}@media (width<=480px){.add-portion-btn .btn-text{display:none}.add-portion-btn{padding:.4rem}.advanced-filter-trigger .btn-text{display:none}.advanced-filter-trigger{padding:.4rem}}@media (width<=768px){.page-header{flex-direction:column;align-items:stretch;gap:.75rem}.page-header h1{font-size:1.1rem}.filter-group-row{flex-direction:column;align-items:stretch}.filter-left-side{flex-wrap:wrap}.food-table-v2{display:block;overflow-x:auto}.food-table-v2 th,.food-table-v2 td{white-space:nowrap}.items-per-page-container{justify-content:flex-start}}.filter-pill-box{gap:.4rem;display:flex}.filter-pill{color:var(--color-text-muted);background:#fff;border:1px solid #e2e8f0;border-radius:100px;padding:.35rem .8rem;font-size:.75rem;font-weight:700;transition:all .2s}.filter-pill.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.items-per-page-container{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;display:flex}.items-per-page-container select{border:1px solid var(--color-border);color:var(--color-primary);background:#fff;border-radius:4px;padding:.2rem .4rem;font-size:.75rem;font-weight:700}.food-table-wrapper-modern{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;overflow:hidden}.food-table-v2{border-collapse:collapse;width:100%}.food-table-v2 th{text-align:left;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:.75rem 1rem;font-size:.65rem;font-weight:800}.food-table-v2 th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.food-table-v2 th.sortable:hover{color:var(--color-accent)}.food-table-v2 td{color:var(--color-primary-light);border-bottom:1px solid #f1f5f9;padding:.5rem 1rem;font-size:.8125rem}.food-name-cell-v2{color:var(--color-primary);align-items:center;gap:.75rem;display:flex}.food-primary-name{font-size:.875rem;font-weight:800}.category-tag{text-transform:uppercase;border-radius:4px;margin-top:.15rem;padding:.1rem .35rem;font-size:.55rem;font-weight:800;display:inline-block}.category-tag.proteínas{color:#1e40af;background:#dbeafe;border:1px solid #bfdbfe}.category-tag.carboidratos{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0}.category-tag.lipídios{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.category-tag.hortaliças{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.category-tag.frutas{color:#9f1239;background:#ffe4e6;border:1px solid #fecdd3}.category-tag.laticínios{color:#5b21b6;background:#ede9fe;border:1px solid #ddd6fe}.category-tag.suplementos{color:#9d174d;background:#fce7f3;border:1px solid #fbcfe8}.category-tag.preparações{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.category-tag.cereais-e-tubérculos{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa}.category-tag.leguminosas{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.category-tag.acompanhamentos{color:#4c1d95;background:#f5f3ff;border:1px solid #ddd6fe}.category-tag.bebidas{color:#155e75;background:#ecfeff;border:1px solid #a5f3fc}.category-tag.doces{color:#9f1239;background:#fff1f2;border:1px solid #fecdd3}.category-tag.lanches{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.category-tag.molhos{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.category-tag.salgados{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.category-tag.sementes{color:#6b21a8;background:#fdf4ff;border:1px solid #e9d5ff}.category-tag.geral{color:#64748b;background:#f8fafc;border:1px solid #f1f5f9}.food-table-v2 tr{position:relative}.row-actions-cell{opacity:0;justify-content:flex-end;gap:.5rem;transition:opacity .2s;display:flex}.food-table-v2 tr:hover .row-actions-cell{opacity:1}.action-btn-mini{border:1px solid var(--color-border);cursor:pointer;color:var(--color-text-muted);background:#fff;border-radius:4px;align-items:center;padding:.25rem;transition:all .2s;display:flex}.action-btn-mini:hover{border-color:var(--color-accent);color:var(--color-accent)}.action-btn-mini.delete:hover{color:#ef4444;border-color:#ef4444}.filter-multiselect-list{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.5rem;max-height:200px;padding:.5rem;display:flex;overflow-y:auto}.filter-multiselect-item{cursor:pointer;color:var(--color-primary);border-radius:6px;align-items:center;gap:.75rem;padding:.4rem .6rem;font-size:.875rem;font-weight:500;transition:background .2s;display:flex}.filter-multiselect-item:hover{background:#f8fafc}.filter-multiselect-item.active{color:var(--color-accent);background:#eff6ff}.filter-checkbox{border:2px solid #cbd5e1;border-radius:4px;justify-content:center;align-items:center;width:16px;height:16px;transition:all .2s;display:flex}.filter-multiselect-item.active .filter-checkbox{background:var(--color-accent);border-color:var(--color-accent)}.filter-checkbox svg{color:#fff;display:none}.filter-multiselect-item.active .filter-checkbox svg{display:block}.empty-state-v2{border:1px dashed var(--color-border);color:var(--color-text-muted);background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.empty-state-v2 h3{color:var(--color-primary);margin:0;font-weight:700}.reset-button-v2{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.6rem 1.2rem;font-size:.875rem;font-weight:700;transition:all .2s;box-shadow:0 2px 4px #0000000d}.reset-button-v2:hover{background:var(--color-accent);transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.reset-button-v2:active{transform:translateY(0)}.food-icon-v2{width:20px;height:20px;color:var(--color-accent);background:#eff6ff;border-radius:4px;justify-content:center;align-items:center;display:flex}.p-val{color:#2563eb;font-weight:700}.c-val{color:#059669;font-weight:700}.f-val{color:#d97706;font-weight:700}.source-badge{text-transform:uppercase;border-radius:4px;padding:.15rem .5rem;font-size:.6rem;font-weight:800}.source-badge.taco{color:#0369a1;background:#e0f2fe}.source-badge.custom{color:#92400e;background:#fef3c7}.portions-stack{flex-wrap:wrap;gap:.25rem;display:flex}.p-pill{color:#475569;background:#f1f5f9;border-radius:4px;padding:.1rem .4rem;font-size:.65rem;font-weight:600}.pagination-bar{border:1px solid var(--color-border);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;padding:.75rem;display:flex}.page-numbers{align-items:center;gap:.4rem;display:flex}.page-num{border:1px solid var(--color-border);cursor:pointer;width:28px;height:28px;color:var(--color-text-muted);background:#fff;border-radius:6px;font-size:.7rem;font-weight:700;transition:all .2s}.page-num.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.page-btn{color:var(--color-accent);cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.page-btn:disabled{color:var(--color-text-muted);cursor:not-allowed}.pagination-dots{color:var(--color-text-muted);font-size:.75rem;font-weight:800}.food-modal-v2{max-width:500px!important}.modal-header-v2{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.close-modal{color:var(--color-text-muted);cursor:pointer}.macros-grid-v2{grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem;display:grid}.modal-actions-v2{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;display:flex}.portions-manager-v2{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:1.5rem;padding:1rem}.portions-list-v2{flex-direction:column;gap:.5rem;margin:.5rem 0 1rem;display:flex}.portion-item-v2{color:var(--color-primary);background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:flex}.remove-portion-btn{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:.2rem;transition:background .2s;display:flex}.remove-portion-btn:hover{background:#fee2e2}.add-portion-row-v2{gap:.5rem;display:flex}.portion-input{border:1px solid #cbd5e1;border-radius:6px;flex:2;padding:.4rem;font-size:.8rem}.portion-grams-input{border:1px solid #cbd5e1;border-radius:6px;flex:1;padding:.4rem;font-size:.8rem}.add-portion-btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.75rem;font-weight:700;transition:opacity .2s;display:flex}.add-portion-btn:hover{opacity:.9}.food-table-v2 tr.row-expanded{background:#f8fafc}.nutrition-detail-row td{border-bottom:2px solid #e2e8f0;padding:0!important}.nutrition-detail-grid{background:#f8fafc;flex-wrap:wrap;gap:1.5rem;padding:.75rem 1.5rem .75rem 4.5rem;display:flex}.nd-item{flex-direction:column;gap:.1rem;min-width:80px;display:flex}.nd-label{color:#94a3b8;text-transform:uppercase;font-size:.6rem;font-weight:800}.nd-value{color:#1e293b;font-size:.85rem;font-weight:700}.action-btn-mini.info{color:var(--color-accent)}.action-btn-mini.info:hover{border-color:var(--color-accent);background:#eff6ff}.patient-log-mobile-container{background:#f0f4f8;flex-direction:column;max-width:500px;min-height:100vh;margin:0 auto;padding:1.5rem;font-family:Inter,sans-serif;display:flex}.mobile-log-header-v2{align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem 0;display:flex}.logo-icon-v2{color:var(--color-accent)}.header-text-v2 h1{color:var(--color-primary);margin:0;font-size:1.5rem;font-weight:800}.header-text-v2 p{color:var(--color-text-muted);margin:0;font-size:.9375rem;font-weight:600}.mobile-log-form-v2{flex-direction:column;gap:1.25rem;display:flex}.mobile-input-card,.compliance-toggle-card,.photo-upload-card{box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.mobile-input-card label,.compliance-toggle-card label,.photo-upload-card label{color:var(--color-primary-light);text-transform:uppercase;letter-spacing:.025em;font-size:.875rem;font-weight:800}.mobile-input-group-v2 input,.mobile-input-group-v2 textarea{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;width:100%;padding:1rem;font-size:1rem;font-weight:500}.comp-opt{color:var(--color-text-muted);cursor:pointer;background:#fff;border:2px solid #f1f5f9;border-radius:16px;flex-direction:column;flex:1;align-items:center;gap:.5rem;padding:1rem;font-weight:800;transition:all .2s;display:flex}.comp-opt span{font-size:.75rem}.comp-opt.on.active{border-color:var(--color-success);color:#166534;background:#f0fdf4}.comp-opt.off.active{border-color:var(--color-danger);color:#9f1239;background:#fff1f2}.action-label{color:var(--color-accent);cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem;font-weight:700;display:flex}.log-detail-image-container{cursor:zoom-in;background:#f1f5f9;border-radius:16px;width:100%;height:200px;margin-top:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.remove-photo{color:#fff;background:#00000080;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:10px;right:10px}.mobile-submit-btn-v2{background:var(--color-accent);color:#fff;border-radius:18px;justify-content:center;align-items:center;gap:.75rem;margin-top:1rem;padding:1.25rem;font-size:1.125rem;font-weight:800;display:flex;box-shadow:0 10px 15px -3px #3b82f666}.success-card{text-align:center;box-shadow:var(--shadow-md);background:#fff;border-radius:32px;flex-direction:column;align-items:center;gap:1.5rem;padding:3rem 2rem;display:flex}.success-icon{color:var(--color-success)}.success-card h1{color:var(--color-primary);margin:0;font-size:1.75rem;font-weight:900}.success-card p{color:var(--color-text-muted);line-height:1.6}.patient-mobile-wrapper{background-color:#0000;max-width:100%;font-family:Inter,sans-serif;overflow-x:hidden}.mobile-dashboard-content{max-width:100%;overflow-x:hidden}.mobile-dashboard-header{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:24px;margin-bottom:2rem;padding:1.5rem 2rem}.mobile-dashboard-header h1{color:#1e293b;letter-spacing:-.025em;margin:0;font-size:1.5rem;font-weight:800}.mobile-dashboard-header p{color:#64748b;margin-top:.25rem;font-size:.875rem}.header-top{justify-content:space-between;align-items:center;display:flex}.edit-btn{color:#3b82f6;cursor:pointer;background:0 0;border:1.5px solid #3b82f6;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:flex}.edit-btn:hover{background:#eff6ff}.user-greeting p{text-transform:uppercase;color:#94a3b8;margin:0;font-size:.8rem;font-weight:600}.user-greeting h1{font-size:1.75rem}.icon-btn.logout{color:#ef4444;cursor:pointer;background:#f1f5f9;border:none;border-radius:12px;padding:.75rem}.macro-card-mobile{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;align-items:center;gap:1.5rem;margin-top:1rem;padding:1.25rem;display:flex}.chart-section{width:100px;height:100px;position:relative}.kcal-display{flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.kcal-display .val{color:#1e293b;font-size:1.25rem;font-weight:800}.kcal-display .lab{text-transform:uppercase;color:#64748b;font-size:.6rem;font-weight:600}.macro-stats-mobile{flex-direction:column;flex:1;gap:.75rem;display:flex}.m-stat{border-bottom:1px solid #e2e8f0;justify-content:space-between;padding-bottom:.25rem;font-size:.8rem;font-weight:600;display:flex}.m-stat span{color:#64748b}.m-stat.prot strong{color:#3b82f6}.m-stat.carb strong{color:#10b981}.m-stat.fat strong{color:#f59e0b}.mobile-dashboard-content{padding:0}.action-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem;display:grid}.action-card-btn{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem;transition:all .2s;display:flex}.action-card-btn.primary{color:#fff;background:#3b82f6;border-color:#3b82f6}.action-card-btn span{font-size:.875rem;font-weight:700}.dashboard-summary-sections{flex-direction:column;gap:.75rem;margin-bottom:2rem;display:flex}.summary-info-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:16px;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:transform .2s;display:flex}.summary-info-card:active{transform:scale(.98)}.card-icon{color:#f59e0b;background:#fef3c7;border-radius:12px;padding:.75rem;display:flex}.card-icon.blue{color:#3b82f6;background:#dbeafe}.card-txt{flex:1}.card-txt h4{color:#94a3b8;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:700}.card-txt p{color:#1e293b;margin:.1rem 0 0;font-size:.9rem;font-weight:700}.text-link-btn{color:#3b82f6;cursor:pointer;background:0 0;border:none;font-size:.85rem;font-weight:700}.mobile-meal-card.short{cursor:pointer;padding:.75rem 1rem}.mobile-meal-card.short .meal-time-box{min-width:50px;padding:.4rem}.meal-plan-section h2,.chart-section-wrapper h3,.measurements-history h3{color:#1e293b;margin-bottom:1rem;font-size:1.1rem;font-weight:800}.mobile-meal-list{flex-direction:column;gap:1rem;display:flex}.mobile-meal-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;align-items:center;gap:1rem;padding:1rem;display:flex}.meal-time-box{color:#3b82f6;background:#f8fafc;border-radius:10px;flex-direction:column;align-items:center;min-width:60px;padding:.5rem;font-size:.75rem;font-weight:800;display:flex}.meal-info{flex:1}.meal-info h3{color:#1e293b;margin:0;font-size:.95rem;font-weight:700}.meal-items-preview{color:#64748b;white-space:nowrap;text-overflow:ellipsis;margin-top:.15rem;font-size:.75rem;overflow:hidden}.progress-summary-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.progress-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:1.25rem}.stat-label{color:#94a3b8;text-transform:uppercase;font-size:.7rem;font-weight:700}.stat-value-row{align-items:baseline;gap:.25rem;margin:.25rem 0;display:flex}.stat-value-row .value{color:#1e293b;font-size:1.5rem;font-weight:800}.stat-value-row .unit{color:#64748b;font-size:.8rem;font-weight:700}.stat-diff{font-size:.7rem;font-weight:700}.stat-diff.good{color:#10b981}.stat-diff.bad{color:#ef4444}.chart-section-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:24px;margin-bottom:2rem;padding:1.25rem}.main-chart-container{margin-top:1rem;margin-left:-20px}.history-list{flex-direction:column;gap:.75rem;display:flex}.history-item{background:#fff;border:1px solid #e2e8f0;border-radius:16px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.h-date{color:#64748b;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;display:flex}.h-values{gap:1rem;display:flex}.h-val{text-align:right}.h-val strong{color:#1e293b;font-size:.95rem}.h-val small{color:#94a3b8;margin-left:.15rem;font-size:.65rem;font-weight:700}.h-arrow{color:#cbd5e1}.diet-meal-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;margin-bottom:1rem;transition:all .3s;overflow:hidden}.diet-meal-alt{margin-left:.75rem;background:#fcfcfd!important;border-style:dashed dashed dashed solid!important;border-left-width:4px!important;border-left-color:#e2e8f0!important}.alt-badge{text-transform:uppercase;color:#7c3aed;vertical-align:middle;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:4px;margin-left:.4rem;padding:.05rem .35rem;font-size:.55rem;font-weight:800;line-height:1.3;display:inline-block}.empty-alt-msg{color:#94a3b8;text-align:center;padding:1rem 0;font-size:.8rem;font-weight:600}.diet-meal-card.open{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f614}.meal-header{cursor:pointer;align-items:center;gap:1rem;padding:1.25rem;display:flex}.meal-time-badge{color:#3b82f6;background:#eff6ff;border-radius:10px;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.75rem;font-weight:800;display:flex}.meal-name-area{flex:1}.meal-name-area h3{color:#1e293b;margin:0;font-size:1rem;font-weight:800}.meal-days{color:#94a3b8;margin-top:.2rem;font-size:.7rem;font-weight:500;display:block}.meal-content{border-top:1px solid #f1f5f9;padding:0 1.25rem 1.25rem}.diet-food-item{border-bottom:1px dashed #e2e8f0;padding:1rem 0}.diet-food-item:last-child{border-bottom:none}.food-main-row{align-items:center;gap:.75rem;display:flex}.food-dot{background:#3b82f6;border-radius:50%;width:6px;height:6px}.food-name{color:#334155;flex:1;font-size:.9rem;font-weight:700}.food-qty{color:#3b82f6;align-items:center;gap:.3rem;font-size:.9rem;font-weight:800;display:flex}.food-qty-grams{color:#94a3b8;font-size:.7rem;font-weight:600;display:none}.diet-food-item:hover .food-qty-grams{display:inline}.alternatives-box{background:#f8fafc;border-radius:12px;margin-top:.75rem;padding:.75rem}.alt-title{color:#94a3b8;text-transform:uppercase;margin-bottom:.4rem;font-size:.65rem;font-weight:800}.diet-meal-alt-card{background:#fafaff;border:1px dashed #c7d2fe;border-radius:12px;margin-top:1rem;padding:.75rem}.alt-header{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.alt-name{color:#4338ca;font-weight:800}.alt-macros{color:#94a3b8;white-space:nowrap;margin-left:auto;font-size:.75rem;font-weight:600}.diet-meal-alt-card .diet-food-item{padding:.5rem 0}.diet-meal-alt-card .diet-food-item:last-child{border-bottom:none}.alt-row{color:#64748b;align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.8rem;font-weight:600;display:flex}.empty-logs-card{text-align:center;background:#fff;border:2px dashed #e2e8f0;border-radius:16px;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;display:flex}.empty-logs-card p{color:#94a3b8;margin:0;font-size:.9rem;font-weight:600}.eating-logs-list{flex-direction:column;gap:.75rem;display:flex}.eating-log-item{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:.85rem 1rem;transition:transform .15s,box-shadow .15s}.eating-log-item:active{transform:scale(.99)}.log-item-main{align-items:center;gap:.85rem;display:flex}.log-item-icon{flex-shrink:0;align-items:center;display:flex}.log-item-info{flex:1;min-width:0}.log-item-title{color:#1e293b;font-size:.9rem;font-weight:700}.log-item-meta{color:#94a3b8;align-items:center;gap:.3rem;margin-top:.15rem;font-size:.7rem;display:flex}.log-item-desc{color:#64748b;white-space:nowrap;text-overflow:ellipsis;margin-top:.3rem;font-size:.8rem;overflow:hidden}.log-item-thumb{flex-shrink:0}.log-item-thumb img{object-fit:cover;border:1px solid #f1f5f9;border-radius:10px;width:44px;height:44px}.log-item-actions{flex-shrink:0;gap:.35rem;margin-left:auto;display:flex}.log-action-btn{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.4rem;transition:all .15s;display:flex}.log-action-btn.edit{color:#3b82f6}.log-action-btn.edit:hover{background:#eff6ff;border-color:#3b82f6}.log-action-btn.delete{color:#ef4444}.log-action-btn.delete:hover{background:#fef2f2;border-color:#ef4444}.compliance-options{gap:.75rem;display:flex}.comp-opt{cursor:pointer;color:#64748b;background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.7rem;font-size:.85rem;font-weight:700;transition:all .15s;display:flex}.comp-opt.on.active{color:#059669;background:#f0fdf4;border-color:#10b981}.comp-opt.off.active{color:#d97706;background:#fffbeb;border-color:#f59e0b}.photo-actions-v2{gap:.75rem;display:flex}.upload-btn-v2{flex:1}.upload-btn-v2 .action-label{cursor:pointer;color:#64748b;border:2px dashed #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;gap:.35rem;padding:.75rem;font-size:.8rem;font-weight:600;transition:all .15s;display:flex}.upload-btn-v2 .action-label:hover{color:#3b82f6;background:#f8fafc;border-color:#3b82f6}.log-detail-image-container{cursor:zoom-in;background:#f1f5f9;border-radius:16px;width:100%;height:200px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.log-detail-image-container img{object-fit:cover;width:100%;height:100%}.log-detail-image-container.zoomed{cursor:zoom-out;height:500px}.log-detail-image-container.zoomed img{object-fit:contain;background:#0f172a}.log-detail-image-container .zoom-hint{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172ab3;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:700;display:flex;position:absolute;bottom:12px;right:12px}.log-detail-image-container .remove-photo{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:flex;position:absolute;top:6px;right:6px}.adherence-filters-bar{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-wrap:wrap;align-items:center;gap:.75rem;width:100%;max-width:100%;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex;overflow:hidden}.filter-group-main{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;align-items:center;gap:.5rem;max-width:200px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:flex}.filter-group-main select{color:#1e293b;cursor:pointer;background:0 0;border:none;outline:none;width:100%;min-width:0;font-size:.8rem;font-weight:700}.date-filter-icon{cursor:pointer}.desktop-date-select{width:150px;display:inline-block;overflow:hidden}.desktop-date-select select{color:#1e293b;cursor:pointer;background:0 0;border:none;outline:none;width:100%;font-size:.8rem;font-weight:700}@media (width<=768px){.desktop-date-select{display:none}.date-filter-icon{display:flex}}.filter-modal-overlay{z-index:2000;background:#0f172a80;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.filter-modal-card{background:#fff;border-radius:20px;width:100%;max-width:360px;overflow:hidden;box-shadow:0 20px 60px #0003}.filter-modal-header{justify-content:space-between;align-items:center;padding:1.25rem 1.25rem 0;display:flex}.filter-modal-header h3{color:var(--color-primary);margin:0;font-size:1rem;font-weight:800}.filter-modal-options{flex-direction:column;gap:.25rem;padding:.75rem;display:flex}.filter-modal-option{text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:all .15s;display:block}.filter-modal-option:hover{background:#f8fafc}.filter-modal-option.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:700}.custom-range-inputs{align-items:center;gap:.5rem;display:flex}.custom-range-inputs input[type=date]{border:1px solid #e2e8f0;border-radius:8px;outline:none;padding:.3rem .5rem;font-size:.75rem}.range-sep{color:#94a3b8;font-size:.7rem;font-weight:700}.log-search-box{flex:1;align-items:center;gap:.4rem;min-width:200px;display:flex}.search-input-wrapper.small{padding:.3rem .6rem}.search-input-wrapper.small input{font-size:.75rem}.quick-adherence-filters{gap:.25rem;display:flex}.filter-btn-mini{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.filter-btn-mini.success:hover{background:#f0fdf4;border-color:#10b981}.filter-btn-mini.success.active{color:#059669;background:#d1fae5;border-color:#10b981}.filter-btn-mini.danger:hover{background:#fffbeb;border-color:#f59e0b}.filter-btn-mini.danger.active{color:#d97706;background:#fef3c7;border-color:#f59e0b}.clear-filters-btn-v2{cursor:pointer;color:#ef4444;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.clear-filters-btn-v2:hover{background:#fef2f2;border-color:#fca5a5}.items-per-page{color:#94a3b8;align-items:center;gap:.35rem;margin-left:auto;font-size:.7rem;font-weight:700;display:flex}.items-per-page select{cursor:pointer;border:1px solid #e2e8f0;border-radius:6px;outline:none;width:50px;padding:.2rem .3rem;font-size:.7rem;font-weight:700}.adherence-analytics-grid{grid-template-columns:1fr 1.5fr 1fr;gap:.75rem;display:grid}.analytics-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;display:flex}.analytics-card.highlight{border-left:6px solid var(--color-accent);background:#fff;border-color:#e2e8f0}.analytics-card.highlight .analytics-label{color:#94a3b8}.analytics-card.highlight .analytics-value{color:#1e293b}.analytics-card.highlight .trend-badge{border:1px solid #e2e8f0}.analytics-icon{color:var(--color-accent);background:#eff6ff;border-radius:10px;padding:.75rem;display:flex}.analytics-data{flex-direction:column;display:flex}.analytics-label{color:#94a3b8;text-transform:uppercase;font-size:.65rem;font-weight:800}.analytics-value-row{align-items:center;gap:.75rem;margin-top:.15rem;display:flex}.analytics-value{color:#1e293b;font-size:1.75rem;font-weight:800}.trend-badge{text-transform:uppercase;border-radius:100px;padding:.15rem .5rem;font-size:.6rem;font-weight:800}.trend-badge.pos{color:#059669;background:#d1fae5}.trend-badge.neg{color:#d97706;background:#fef3c7}.analytics-card.chart-card{justify-content:center}.small-chart-container{width:100%;margin-top:.35rem}.compliance-row{gap:.75rem;margin-top:.4rem;display:flex}.comp-item{color:#475569;align-items:center;gap:.35rem;font-size:.8rem;display:flex}.comp-item.on{color:#059669}.comp-item.off{color:#d97706}.logs-masonry{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;display:grid}.clinical-log-card-v2{background:#fff;border:1px solid #e2e8f0;border-radius:16px;min-width:0;transition:all .2s;overflow:hidden}.clinical-log-card-v2.on{border-left:4px solid #10b981}.clinical-log-card-v2.off{border-left:4px solid #f59e0b}.log-image-wrapper{width:100%;min-width:0;max-height:160px;overflow:hidden}.log-image-wrapper img{object-fit:cover;width:100%;height:160px}.log-body-v2{word-break:break-word;min-width:0;padding:.85rem 1rem}.log-top-meta{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.log-time-v2{color:#94a3b8;align-items:center;gap:.3rem;font-size:.7rem;font-weight:700;display:flex}.log-status-pill-v2{text-transform:uppercase;border-radius:100px;padding:.15rem .5rem;font-size:.6rem;font-weight:800}.log-status-pill-v2.on{color:#059669;background:#d1fae5}.log-status-pill-v2.off{color:#d97706;background:#fef3c7}.log-body-v2 h3{color:#1e293b;word-break:break-word;margin:0;font-size:.95rem;font-weight:800}.log-date-v2{color:#94a3b8;margin:.15rem 0;font-size:.7rem;font-weight:600}.log-description-v2{color:#64748b;word-break:break-word;margin:.35rem 0 0;font-size:.8rem;line-height:1.4}.log-footer-v2{justify-content:flex-end;gap:.35rem;margin-top:.75rem;display:flex}.log-btn-v2{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .15s;display:flex}.log-btn-v2.edit{color:#3b82f6}.log-btn-v2.edit:hover{background:#eff6ff;border-color:#3b82f6}.log-btn-v2.delete{color:#ef4444}.log-btn-v2.delete:hover{background:#fef2f2;border-color:#ef4444}.log-btn-v2.view{color:#64748b}.log-btn-v2.view:hover{background:#f8fafc;border-color:#64748b}.empty-message-v2{text-align:center;color:#94a3b8;flex-direction:column;grid-column:1/-1;align-items:center;gap:.75rem;padding:3rem;display:flex}.empty-message-v2 p{margin:0;font-size:.9rem;font-weight:600}.pagination-bar{justify-content:center;align-items:center;gap:.5rem;margin-top:1.5rem;display:flex}.page-btn{cursor:pointer;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.page-btn:hover:not(:disabled){color:#3b82f6;background:#eff6ff;border-color:#3b82f6}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-numbers{flex-shrink:1;gap:.25rem;min-width:0;display:flex;overflow-x:auto}.pagination-dots{color:#94a3b8;letter-spacing:.1em;justify-content:center;align-items:center;width:28px;font-weight:700;display:inline-flex}.page-num{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;width:32px;height:32px;font-size:.8rem;font-weight:700;transition:all .15s}.page-num:hover{color:#3b82f6;border-color:#3b82f6}.page-num.active{color:#fff;background:#3b82f6;border-color:#3b82f6}.dashboard-adherence-strip{grid-template-columns:1fr 1.5fr;gap:1rem;margin-bottom:2rem;display:grid}.dash-adherence-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1rem 1.25rem}.dash-adherence-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.dash-adherence-header h3{color:#94a3b8;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.dash-adherence-header .dash-pct{color:#059669;font-size:1.25rem;font-weight:800}.dash-adherence-header .dash-pct.warn{color:#f59e0b}.dash-bar-chart{margin-top:.25rem}.dash-recent-logs{flex-direction:column;gap:.5rem;display:flex}.dash-log-row{cursor:pointer;border:1px solid #f1f5f9;border-radius:10px;align-items:center;gap:.6rem;padding:.5rem .6rem;transition:all .15s;display:flex}.dash-log-row:hover{background:#f8fafc;border-color:#e2e8f0}.dash-log-status{flex-shrink:0}.dash-log-info{flex:1;min-width:0}.dash-log-name{color:#1e293b;font-size:.8rem;font-weight:700}.dash-log-meta{color:#94a3b8;align-items:center;gap:.4rem;margin-top:.05rem;font-size:.65rem;display:flex}.dash-view-all{text-align:center;margin-top:.5rem}.dash-meal-actions{gap:.75rem;margin-bottom:1.5rem;display:flex}.dash-action-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:.6rem;padding:.9rem;font-size:.85rem;font-weight:700;transition:all .2s;display:flex}.dash-action-btn:hover{color:#3b82f6;background:#eff6ff;border-color:#3b82f6}.dash-action-btn.primary{color:#fff;background:#3b82f6;border-color:#3b82f6}.dash-action-btn.primary:hover{background:#2563eb}.info-boards-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem;display:grid}.info-board{cursor:default;background:#fff;border:1px solid #e2e8f0;border-radius:14px;align-items:center;gap:.85rem;padding:1rem 1.25rem;transition:all .15s;display:flex}.info-board.hoverable:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f60f}.info-board-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.info-board-content{flex:1}.info-board-content h4{color:#94a3b8;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.info-board-content p{color:#1e293b;margin:.1rem 0 0;font-size:.85rem;font-weight:700}.info-board-badge{text-transform:uppercase;color:#94a3b8;background:#f1f5f9;border-radius:100px;margin-top:.25rem;padding:.15rem .5rem;font-size:.6rem;font-weight:800;display:inline-block}.info-board-badge.active{color:#3b82f6;background:#dbeafe}.icon-add-btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:.4rem;height:40px;padding:0 .6rem;font-size:.85rem;font-weight:700;transition:all .15s;display:flex}.icon-add-btn:hover{opacity:.9;transform:scale(1.05)}.btn-label-desktop{display:none}@media (width>=769px){.icon-add-btn{padding:0 1rem}.btn-label-desktop{display:inline}}.records-section-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.records-section-header h3{color:#94a3b8;text-transform:uppercase;flex:1;margin:0;font-size:.75rem;font-weight:800}.records-add-btn{cursor:pointer;color:#3b82f6;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.records-add-btn:hover{background:#eff6ff;border-color:#3b82f6}.records-view-btn{cursor:pointer;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.records-view-btn:hover{color:#3b82f6;background:#f8fafc;border-color:#3b82f6}.dash-top-row{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}@media (width>=1024px){.dash-top-row{flex-direction:row;align-items:stretch}.dash-top-row>.dash-summary-grid{flex:1;min-width:0}.dash-top-row>.dash-adherence-card{flex-shrink:0;width:320px}}.dash-summary-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.dash-stat-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;align-items:center;gap:.75rem;padding:.9rem 1rem;transition:all .15s;display:flex}.dash-stat-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f60f}.dash-stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.dash-stat-info h4{color:#94a3b8;text-transform:uppercase;margin:0;font-size:.65rem;font-weight:800}.dash-stat-info p{color:#1e293b;margin:.1rem 0 0;font-size:.95rem;font-weight:800}.anthro-chart-container{background:#fff;border:1px solid #e2e8f0;border-radius:20px;margin-bottom:1.5rem;padding:1.25rem}.anthro-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:1.5rem;overflow:hidden}.anthro-table{border-collapse:collapse;width:100%}.anthro-table th{color:#94a3b8;text-transform:uppercase;text-align:left;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.65rem .75rem;font-size:.65rem;font-weight:800}.anthro-table td{color:#1e293b;border-bottom:1px solid #f1f5f9;padding:.6rem .75rem;font-size:.8rem;font-weight:600}.anthro-table tr:last-child td{border-bottom:none}.progress-layout{flex-direction:column;gap:1.5rem;margin-bottom:1.5rem;display:flex}@media (width>=1024px){.progress-layout{flex-direction:row;align-items:stretch}.progress-layout>.progress-summary-grid{flex-shrink:0;width:280px;margin-bottom:0}.progress-layout>.anthro-chart-container{flex:1;min-width:0;margin-bottom:0}}.anthro-controls{background:#fafafa;border-bottom:1px solid #e2e8f0;justify-content:flex-end;padding:.75rem 1rem;display:flex}.anthro-image-cell{text-align:center;min-width:60px}.anthro-thumb{object-fit:cover;cursor:pointer;vertical-align:middle;border:1px solid #e2e8f0;border-radius:8px;width:50px;height:50px;transition:transform .2s}.anthro-thumb:hover{transform:scale(1.15);box-shadow:0 2px 8px #00000026}.anthro-image-gallery{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.anthro-image-gallery-item{display:inline-block;position:relative}.anthro-image-remove{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;line-height:1;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 1px 3px #0000004d}.anthro-image-remove:hover{background:#dc2625}.diet-meals-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=768px){.diet-meals-grid{grid-template-columns:1fr 1fr}}.meal-macro-summary{flex-shrink:0;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;display:flex}.mm-cal{color:#3b82f6;font-size:.85rem}.mm-lab{color:#94a3b8;font-size:.65rem}.mm-sep{color:#e2e8f0}.mm-prot{color:#3b82f6}.mm-fat{color:#f59e0b}@media (width<=768px){.dash-summary-grid,.dashboard-adherence-strip,.adherence-analytics-grid,.logs-masonry{grid-template-columns:1fr}.adherence-filters-bar{flex-flow:wrap;gap:.4rem}.filter-group-main{gap:.25rem;padding:.3rem .5rem}.log-search-box{flex:1;min-width:0}.search-input-wrapper.small{padding:.25rem .5rem}.search-input-wrapper.small input{width:80px;font-size:.7rem}.items-per-page{margin-left:auto}.items-per-page span{display:none}.custom-range-inputs{order:-1;width:100%}.custom-range-inputs input[type=date]{flex:1;min-width:0}.pagination-bar{flex-wrap:wrap;gap:.25rem}.page-numbers{overflow-x:auto}.page-num{width:28px;height:28px;font-size:.7rem}.page-btn{width:28px;height:28px}}@media (width<=480px){.pagination-bar{flex-wrap:wrap;gap:.25rem}.page-numbers{overflow-x:auto}}@media (width>=1024px){.mobile-dashboard-content{width:100%}}.info-board-goal-tag{color:#92400e;background:#fef3c7;border-radius:4px;padding:.1rem .35rem;font-size:.65rem;font-weight:600;line-height:1.3;display:inline-block}.appointment-card{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:12px;margin-bottom:.5rem;padding:.75rem 1rem;transition:box-shadow .15s}.appointment-card:hover{box-shadow:0 2px 8px #0000000f}.appointment-card.upcoming{border-left:3px solid #3b82f6}.appointment-card.completed{opacity:.75}.appointment-card.cancelled{opacity:.55}.appointment-card-header{align-items:center;gap:.5rem;display:flex}.appointment-card-date{color:var(--color-text);align-items:center;gap:.35rem;margin-right:auto;font-size:.85rem;font-weight:600;display:flex}.appointment-card-date svg{color:var(--color-text-muted);flex-shrink:0}.appointment-type-badge{color:#fff;white-space:nowrap;border-radius:6px;padding:.15rem .45rem;font-size:.7rem;font-weight:600}.appointment-status-badge{white-space:nowrap;border-radius:4px;padding:.15rem .4rem;font-size:.65rem;font-weight:700}.appointment-card-prof{color:var(--color-text-muted);align-items:center;gap:.35rem;margin-top:.3rem;font-size:.8rem;display:flex}.appointment-card-prof svg{color:var(--color-text-muted);flex-shrink:0}.appointment-card-details{border-top:1px solid var(--color-border);margin-top:.75rem;padding-top:.75rem}.appointment-detail-row{margin-bottom:.5rem}.appointment-detail-row strong{color:var(--color-text);align-items:center;gap:.3rem;margin-bottom:.25rem;font-size:.8rem;display:flex}.appointment-detail-row p{color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.4}.appointment-goals-list{flex-wrap:wrap;gap:.3rem;display:flex}.appointment-goal-item{color:#92400e;background:#fef3c7;border-radius:6px;padding:.2rem .5rem;font-size:.75rem;font-weight:500;line-height:1.3;display:inline-block}.patient-page-loading{text-align:center;color:var(--color-text-muted);padding:3rem 1rem;font-weight:600}.appointment-online-badge{color:#6366f1;white-space:nowrap;background:#eef2ff;border-radius:4px;align-items:center;gap:.2rem;padding:.1rem .35rem;font-size:.6rem;font-weight:700;line-height:1.3;text-decoration:none;display:inline-flex}.appointment-online-badge.clickable{cursor:pointer;transition:all .15s}.appointment-online-badge.clickable:hover{color:#fff;background:#6366f1}.appointment-meeting-link{color:#3b82f6;word-break:break-all;margin-top:.15rem;font-size:.8rem;text-decoration:underline;display:inline-block}.appointment-meeting-link:hover{color:#2563eb}.agenda-page-container{flex-direction:column;gap:1.5rem;width:100%;display:flex}.agenda-page-container .page-header{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.agenda-page-container .page-header h1{color:var(--color-primary);margin:0;font-size:1.25rem;font-weight:800}.agenda-page-container .page-header p{color:var(--color-text-muted);margin:.15rem 0 0;font-size:.825rem;font-weight:500}.agenda-controls{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1.5rem;display:flex}.agenda-nav{align-items:center;gap:.35rem;display:flex}.date-nav-btn{border:1px solid var(--color-border);cursor:pointer;color:var(--color-text);background:0 0;border-radius:8px;align-items:center;padding:.4rem .6rem;font-size:.8rem;font-weight:600;transition:all .15s;display:flex}.date-nav-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-primary);color:var(--color-primary)}.date-nav-btn.today-btn{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.date-nav-btn.today-btn:hover{opacity:.85}.agenda-nav-label{color:var(--color-primary);white-space:nowrap;margin-left:.5rem;font-size:1rem;font-weight:700}.google-sync-indicator{color:#4285f4;white-space:nowrap;background:#e8f0fe;border-radius:4px;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.65rem;font-weight:700;line-height:1.3;display:inline-flex}.google-sync-indicator:before{content:"";background:#34a853;border-radius:50%;width:6px;height:6px;display:inline-block}.agenda-view-tabs{background:#f1f5f9;border-radius:8px;gap:2px;padding:2px;display:flex}.view-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.3rem;padding:.35rem .6rem;font-size:.75rem;font-weight:600;transition:all .15s;display:flex}.view-tab.active{color:var(--color-primary);background:#fff;box-shadow:0 1px 3px #00000014}.agenda-list{flex-direction:column;gap:.5rem;display:flex}.agenda-loading{text-align:center;color:var(--color-text-muted);border:1px solid var(--color-border);background:#fff;border-radius:12px;padding:3rem;font-weight:600}.agenda-empty{text-align:center;border:1px solid var(--color-border);background:#fff;border-radius:12px;padding:3rem 1.5rem}.agenda-empty p{color:var(--color-text-muted);margin:.75rem 0 1rem;font-weight:500}.agenda-item{border:1px solid var(--color-border);background:#fff;border-radius:12px;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;transition:box-shadow .15s;display:flex}.agenda-item:hover{box-shadow:0 2px 8px #0000000f}.agenda-item.status-completed{opacity:.7;background:#f8fafc}.agenda-item.status-cancelled{opacity:.55;background:#fef2f2}.agenda-item-time{flex-direction:column;align-items:center;gap:.25rem;min-width:55px;padding-top:.15rem;display:flex}.agenda-time-text{color:var(--color-primary);font-size:1rem;font-weight:700;line-height:1}.agenda-item-body{flex:1;min-width:0}.agenda-item-row{color:var(--color-text);align-items:center;gap:.4rem;margin-bottom:.25rem;font-size:.85rem;display:flex}.agenda-item-row svg{color:var(--color-text-muted);flex-shrink:0}.agenda-patient-name{color:var(--color-text);cursor:pointer;font-weight:600;transition:color .15s}.agenda-patient-name:hover{color:var(--color-primary)}.agenda-type-badge{color:#fff;border-radius:6px;padding:.15rem .45rem;font-size:.7rem;font-weight:600;display:inline-block}.agenda-status-label{border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.agenda-status-label.completed{color:#166534;background:#dcfce7}.agenda-status-label.cancelled{color:#991b1b;background:#fee2e2}.agenda-status-label.scheduled{color:#1e40af;background:#dbeafe}.agenda-notes{color:var(--color-text-muted);font-size:.8rem}.agenda-goals{align-items:flex-start}.agenda-goals-list{flex-wrap:wrap;gap:.25rem;display:flex}.agenda-goal-tag{color:#92400e;background:#fef3c7;border-radius:4px;padding:.15rem .4rem;font-size:.7rem;font-weight:500;line-height:1.3;display:inline-block}.agenda-item-actions{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.agenda-action-btn{border:1px solid var(--color-border);cursor:pointer;color:var(--color-text-muted);background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:.4rem;transition:all .15s;display:flex}.agenda-action-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-bg-secondary)}.agenda-action-btn.complete:hover{color:#10b981;background:#ecfdf5;border-color:#10b981}.agenda-action-btn.cancel:hover,.agenda-action-btn.delete:hover{color:#ef4444;background:#fef2f2;border-color:#ef4444}.week-view{grid-template-columns:repeat(7,1fr);gap:.5rem;display:grid}.week-day-col{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;min-height:140px;padding:.5rem;transition:all .15s;display:flex}.week-day-col:hover{box-shadow:0 2px 8px #0000000f}.week-day-col.active{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.week-day-col.today{background:#f8faff}.week-day-header{text-align:center;border-bottom:1px solid #f1f5f9;margin-bottom:.5rem;padding-bottom:.4rem}.week-day-name{color:var(--color-text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600;display:block}.week-day-num{color:var(--color-text);margin-top:.1rem;font-size:1.1rem;font-weight:800;display:block}.week-day-num.today{background:var(--color-primary);color:#fff;border-radius:50%;width:28px;height:28px;margin:.1rem auto 0;line-height:28px}.week-day-body{flex-direction:column;flex:1;gap:.2rem;display:flex}.week-day-empty{color:#e2e8f0;text-align:center;margin-top:auto;font-size:.75rem}.week-apt-chip{cursor:pointer;background:#eff6ff;border-left:3px solid #3b82f6;border-radius:4px;align-items:center;gap:.25rem;padding:.2rem .35rem;font-size:.65rem;transition:background .1s;display:flex;overflow:hidden}.week-apt-chip:hover{background:#dbeafe}.week-apt-chip.completed{opacity:.6;background:#f1f5f9}.week-apt-chip.cancelled{opacity:.5;background:#fef2f2}.week-apt-time{color:var(--color-primary);flex-shrink:0;font-weight:700}.week-apt-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.week-apt-more{color:var(--color-text-muted);text-align:center;padding:.1rem;font-size:.65rem;font-weight:600}.month-view{padding:0}.month-grid-header{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px;display:grid}.month-header-cell{text-align:center;color:var(--color-text-muted);text-transform:uppercase;padding:.4rem 0;font-size:.75rem;font-weight:700}.month-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.month-cell{cursor:pointer;background:#fff;border:1px solid #f1f5f9;min-height:80px;padding:.3rem;transition:all .1s}.month-cell:hover{background:#f8faff}.month-cell.active{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.month-cell.today{background:#eff6ff}.month-cell.empty{cursor:default;background:0 0}.month-cell-num{color:var(--color-text);text-align:center;border-radius:50%;width:24px;height:24px;margin-bottom:.2rem;font-size:.8rem;font-weight:700;line-height:24px;display:inline-block}.month-cell.today .month-cell-num{background:var(--color-primary);color:#fff}.month-cell-apts{flex-direction:column;gap:2px;display:flex}.month-apt-dot{background:#eff6ff;border-left:3px solid #3b82f6;border-radius:2px;height:4px}.month-apt-dot.completed{opacity:.5;background:#f1f5f9}.month-apt-dot.cancelled{opacity:.35;background:#fef2f2}.month-apt-count{color:var(--color-text-muted);text-align:center;font-size:.6rem;font-weight:700}.week-day-col,.month-cell{position:relative}.day-popup{z-index:200;border:1px solid var(--color-border);background:#fff;border-radius:10px;min-width:220px;max-width:280px;padding:.6rem 0;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000024}.month-cell .day-popup,.month-cell:nth-child(-n+7) .day-popup{top:calc(100% + 4px);bottom:auto}.day-popup-header{color:var(--color-primary);border-bottom:1px solid #f1f5f9;margin-bottom:.3rem;padding:0 .75rem .4rem;font-size:.8rem;font-weight:700}.day-popup-item{cursor:pointer;align-items:center;gap:.4rem;padding:.3rem .75rem;transition:background .1s;display:flex}.day-popup-item:hover{background:#f8faff}.day-popup-time{color:var(--color-primary);flex-shrink:0;font-size:.75rem;font-weight:700}.day-popup-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.75rem;font-weight:500;overflow:hidden}.day-popup-type{color:#fff;border-radius:4px;flex-shrink:0;padding:.1rem .35rem;font-size:.6rem;font-weight:600}.google-sync-badge{color:#fff;background:#4285f4;border-radius:4px;align-items:center;gap:.25rem;padding:.15rem .45rem;font-size:.65rem;font-weight:700;line-height:1.3;display:inline-flex}.conflict-warning-block{padding:1.5rem}.conflict-warning-header{color:#92400e;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.95rem;display:flex}.conflict-warning-block>p{color:var(--color-text-muted);margin-bottom:.75rem;font-size:.85rem}.conflict-list{margin:0 0 1rem;padding:0;list-style:none}.conflict-list li{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.85rem;display:flex}.conflict-list li strong{color:var(--color-text);font-weight:600}.conflict-list li span{color:var(--color-text-muted)}.conflict-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.agenda-modal{width:100%;max-width:520px}.agenda-modal .form-row{grid-template-columns:1fr 1fr;align-items:start;gap:1rem;display:grid}.agenda-modal .form-group{flex-direction:column;gap:.35rem;margin-bottom:.75rem;display:flex}.agenda-modal input[type=time]{padding:.5rem .6rem;font-family:inherit;font-size:.9rem}.agenda-modal .modal-actions{margin-top:1rem}@media (width<=768px){.agenda-controls{flex-direction:column;align-items:stretch}.agenda-view-tabs{align-self:flex-start}.week-view{grid-template-columns:repeat(7,1fr);overflow-x:auto}.month-cell{min-height:60px}.agenda-modal .form-row{grid-template-columns:1fr}}@media (width<=640px){.agenda-item{flex-direction:column;gap:.5rem}.agenda-item-time{flex-direction:row;gap:.5rem;min-width:auto}.agenda-item-actions{align-self:flex-end}}@media (pointer:coarse){.day-popup{display:none!important}}.agenda-online-badge{color:#6366f1;background:#eef2ff;border-radius:4px;align-items:center;gap:.25rem;padding:.1rem .35rem;font-size:.65rem;font-weight:600;line-height:1.3;text-decoration:none;display:inline-flex}.agenda-online-badge.clickable{cursor:pointer;transition:all .15s}.agenda-online-badge.clickable:hover{color:#fff;background:#6366f1}.toggle-label{color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:flex}.toggle-label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary)}.toggle-label svg{color:#6366f1}.toggle-hint{color:var(--color-text-muted);margin-top:.15rem;font-size:.75rem;font-weight:500}.chat-page{border:1px solid var(--color-border);height:calc(100vh - 140px);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;gap:0;display:flex;overflow:hidden}.chat-sidebar{border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;width:280px;transition:width .25s;display:flex}.chat-sidebar-collapsed{align-items:center;width:64px}.chat-sidebar-collapsed .collapsed-header{cursor:pointer;justify-content:center;width:100%;padding:1rem 0}.chat-sidebar-collapsed .collapsed-conv{border-radius:0;flex-direction:column;gap:.35rem;padding:.5rem 0}.chat-sidebar-collapsed .chat-conv-info{align-items:center;min-width:0;max-width:80px;display:flex}.chat-sidebar-collapsed .chat-conv-name{text-align:center;white-space:normal;overflow-wrap:break-word;word-break:break-word;max-width:80px;font-size:.6rem;line-height:1.2}.chat-sidebar-header{color:var(--color-primary);border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:700;display:flex}.chat-sidebar-list{flex:1;padding:.5rem;overflow-y:auto}.chat-sidebar-empty{height:200px;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex}.chat-sidebar-empty p{margin:0;font-size:.85rem}.chat-conv-item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:.75rem;width:100%;padding:.75rem;transition:background .15s;display:flex}.chat-conv-item:hover{background:var(--color-surface-hover)}.chat-conv-item.active{background:var(--color-primary-soft)}.chat-conv-avatar{background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-conv-item.active .chat-conv-avatar{background:var(--color-primary);color:#fff}.chat-conv-info{flex-direction:column;flex:1;gap:.15rem;min-width:100px;display:flex}.chat-conv-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.chat-conv-preview{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.chat-conv-badge{background:var(--color-danger);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:700;display:flex}.chat-window{flex-direction:column;flex:1;min-height:0;display:flex}.chat-window-empty{color:var(--color-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;display:flex}.chat-window-empty p{margin:0;font-size:.9rem}.chat-window-header{border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:.75rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:700;display:flex}.chat-window-avatar{background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-window-messages{flex-direction:column;flex:1;gap:.5rem;min-height:0;padding:1rem 1.25rem;display:flex;overflow-y:auto}.chat-window-empty-msg{text-align:center;color:var(--color-text-muted);padding:2rem 0;font-size:.85rem}.chat-window-empty-msg p{margin:0}.chat-bubble{border-radius:14px;max-width:70%;padding:.6rem .9rem;font-size:.85rem;line-height:1.4;position:relative}.chat-bubble.mine{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.chat-bubble.theirs{background:var(--color-surface);border-bottom-left-radius:4px;align-self:flex-start}.chat-bubble-text{white-space:pre-wrap;word-break:break-word}.chat-bubble-time{opacity:.7;justify-content:flex-end;align-items:center;gap:.25rem;margin-top:.25rem;font-size:.65rem;display:flex}.chat-bubble.mine .chat-bubble-time{color:#fffc}.chat-bubble.theirs .chat-bubble-time{color:var(--color-text-muted)}.chat-bubble-read{font-size:.6rem}.chat-window-input{border-top:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.chat-window-input input{border:1px solid var(--color-border);border-radius:24px;outline:none;flex:1;padding:.6rem 1rem;font-size:.85rem;transition:border-color .15s}.chat-window-input input:focus{border-color:var(--color-primary)}.chat-send-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:opacity .15s;display:flex}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-send-btn:not(:disabled):hover{opacity:.9}@media (width<=768px){.chat-page{flex-direction:column;height:auto;min-height:calc(100vh - 140px)}.chat-sidebar{border-right:none;border-bottom:1px solid var(--color-border);width:100%;max-height:200px}.chat-sidebar-collapsed{border-bottom:1px solid var(--color-border);flex-direction:row;width:100%;max-height:none}.chat-window{min-height:400px}.chat-bubble{max-width:90%}}.landing-page{--lp-primary:#0f172a;--lp-accent:#3b82f6;--lp-accent-hover:#2563eb;--lp-text:#1e293b;--lp-text-muted:#64748b;--lp-bg:#fff;--lp-surface:#f8fafc;--lp-border:#e2e8f0;--lp-green:#059669;--lp-amber:#d97706;color:var(--lp-text);font-family:Inter,system-ui,-apple-system,sans-serif;overflow-x:hidden}.lp-navbar{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--lp-border);background:#ffffffd9;position:fixed;top:0;left:0;right:0}.lp-nav-inner{justify-content:space-between;align-items:center;max-width:1280px;margin:0 auto;padding:.75rem 2rem;display:flex}.lp-logo{align-items:center;gap:.6rem;display:flex}.lp-logo-icon{background:var(--lp-accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;font-weight:800;display:flex}.lp-logo-text{color:var(--lp-primary);font-size:1.25rem;font-weight:800}.text-accent{color:var(--lp-accent)}.lp-nav-links{align-items:center;gap:.5rem;display:flex}.lp-nav-links button{color:var(--lp-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s}.lp-nav-links button:hover{color:var(--lp-text);background:var(--lp-surface)}.lp-nav-btn{margin-left:.5rem;color:var(--lp-accent)!important}.lp-cta-btn{background:var(--lp-accent)!important;color:#fff!important;padding:.5rem 1.25rem!important}.lp-cta-btn:hover{background:var(--lp-accent-hover)!important}.lp-mobile-toggle{color:var(--lp-primary);cursor:pointer;background:0 0;border:none;display:none}.lp-hero{padding:7rem 2rem 5rem;position:relative;overflow:hidden}.lp-hero-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.gradient-sphere{filter:blur(80px);opacity:.15;border-radius:50%;position:absolute}.sphere-1{background:var(--lp-accent);width:600px;height:600px;top:-200px;right:-100px}.sphere-2{background:#8b5cf6;width:400px;height:400px;bottom:-100px;left:-100px}.lp-hero-content{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;max-width:1280px;margin:0 auto;display:grid;position:relative}.lp-hero-text{max-width:600px}.lp-badge{color:var(--lp-accent);text-transform:uppercase;letter-spacing:.1em;background:#eff6ff;border:1px solid #dbeafe;border-radius:100px;margin-bottom:1rem;padding:.35rem .9rem;font-size:.7rem;font-weight:700;display:inline-block}.lp-hero-text h1{color:var(--lp-primary);letter-spacing:-.02em;margin:0 0 1rem;font-size:3rem;font-weight:800;line-height:1.15}.lp-hero-text p{color:var(--lp-text-muted);max-width:500px;margin:0 0 2rem;font-size:1.125rem;line-height:1.7}.lp-hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.lp-primary-btn{background:var(--lp-accent);color:#fff;cursor:pointer;border:none;border-radius:12px;align-items:center;gap:.5rem;padding:.85rem 2rem;font-size:1rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 14px #3b82f64d}.lp-primary-btn:hover{background:var(--lp-accent-hover);transform:translateY(-2px);box-shadow:0 8px 25px #3b82f659}.lp-secondary-btn{color:var(--lp-text);border:1.5px solid var(--lp-border);cursor:pointer;background:0 0;border-radius:12px;padding:.85rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.lp-secondary-btn:hover{border-color:var(--lp-accent);color:var(--lp-accent)}.lp-hero-visual{justify-content:center;display:flex}.lp-mockup-card{border:1px solid var(--lp-border);background:#fff;border-radius:20px;width:100%;max-width:480px;overflow:hidden;box-shadow:0 25px 80px #0000001a,0 4px 12px #0000000d}.mockup-header{background:var(--lp-surface);border-bottom:1px solid var(--lp-border);gap:6px;padding:1rem 1.25rem;display:flex}.mockup-dot{background:#e2e8f0;border-radius:50%;width:10px;height:10px}.mockup-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.mockup-stat{flex-direction:column;gap:.4rem;display:flex}.mockup-bar{background:#e2e8f0;border-radius:4px;height:8px}.mockup-bar.short{background:#dbeafe}.mockup-row{align-items:center;gap:.75rem;display:flex}.mockup-avatar{background:#e2e8f0;border-radius:50%;flex-shrink:0;width:32px;height:32px}.mockup-line{background:#f1f5f9;border-radius:4px;height:8px}.mockup-chart{align-items:flex-end;gap:.5rem;padding-top:.5rem;display:flex}.mockup-chart-bar{background:linear-gradient(to top, #dbeafe, var(--lp-accent));opacity:.3;border-radius:4px 4px 0 0;flex:1}.mockup-chart-bar:nth-child(2){opacity:.5}.mockup-chart-bar:nth-child(4){opacity:.7}.lp-features,.lp-how-it-works,.lp-pricing,.lp-vision,.lp-cta{text-align:center;max-width:1280px;margin:0 auto;padding:2.5rem 2rem}#features,#plans{scroll-margin-top:80px}.lp-features h2,.lp-how-it-works h2,.lp-pricing h2{color:var(--lp-primary);letter-spacing:-.02em;max-width:600px;margin:0 auto .75rem;font-size:2.25rem;font-weight:800}.lp-section-sub{color:var(--lp-text-muted);max-width:550px;margin:0 auto 3rem;font-size:1.05rem;line-height:1.6}.lp-features-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.lp-feature-card{border:1px solid var(--lp-border);text-align:left;background:#fff;border-radius:16px;padding:2rem;transition:all .3s}.lp-feature-card:hover{border-color:var(--lp-accent);transform:translateY(-4px);box-shadow:0 12px 40px #0000000f}.lp-feature-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1.25rem;display:flex}.lp-feature-card h3{color:var(--lp-primary);margin:0 0 .5rem;font-size:1.1rem;font-weight:700}.lp-feature-card p{color:var(--lp-text-muted);margin:0;font-size:.875rem;line-height:1.6}.lp-how-it-works{background:var(--lp-surface);border-radius:0}.lp-how-it-works h2{max-width:500px}.lp-steps{justify-content:center;align-items:center;gap:1rem;margin-top:3rem;display:flex}.lp-step{text-align:center;max-width:260px}.lp-step-num{background:var(--lp-accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 1rem;font-size:1.25rem;font-weight:800;display:flex}.lp-step h3{color:var(--lp-primary);margin:0 0 .5rem;font-size:1.05rem;font-weight:700}.lp-step p{color:var(--lp-text-muted);margin:0;font-size:.85rem;line-height:1.5}.lp-step-connector{color:var(--lp-accent);opacity:.4}.lp-stats-bar{background:var(--lp-primary);color:#fff;justify-content:center;gap:4rem;padding:3rem 2rem;display:flex}.lp-stats-bar div{text-align:center}.lp-stats-bar strong{font-size:1.5rem;font-weight:800;display:block}.lp-stats-bar span{opacity:.7;font-size:.8rem;font-weight:500}.lp-vision h2{color:var(--lp-primary);letter-spacing:-.02em;max-width:600px;margin:0 auto .75rem;font-size:2.25rem;font-weight:800}.lp-vision-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin:3rem 0;display:grid}.lp-vision-card{border:1px solid var(--lp-border);text-align:left;background:#fff;border-radius:16px;padding:2rem 1.5rem;transition:all .3s}.lp-vision-card:hover{border-color:var(--lp-accent);transform:translateY(-4px);box-shadow:0 12px 40px #0000000f}.lp-vision-icon{width:48px;height:48px;color:var(--lp-accent);background:#eff6ff;border-radius:12px;justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.lp-vision-card h3{color:var(--lp-primary);margin:0 0 .5rem;font-size:1rem;font-weight:700}.lp-vision-card p{color:var(--lp-text-muted);margin:0;font-size:.85rem;line-height:1.6}.lp-vision-roadmap{background:var(--lp-surface);border:1px solid var(--lp-border);text-align:left;border-radius:16px;max-width:600px;margin:0 auto;padding:2rem}.lp-roadmap-header{color:var(--lp-primary);border-bottom:1px solid var(--lp-border);align-items:center;gap:.6rem;margin-bottom:1.25rem;padding-bottom:.75rem;font-size:.9rem;font-weight:700;display:flex}.lp-roadmap-header svg{color:var(--lp-accent)}.lp-roadmap-items{flex-direction:column;gap:.85rem;display:flex}.lp-roadmap-item{color:var(--lp-text);align-items:center;gap:.75rem;font-size:.875rem;font-weight:500;display:flex}.roadmap-dot{background:var(--lp-accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.lp-pricing-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;display:grid}.lp-pricing-card{border:1px solid var(--lp-border);text-align:left;background:#fff;border-radius:20px;padding:2.5rem 2rem;transition:all .3s;position:relative}.lp-pricing-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000000f}.lp-pricing-card.featured{border:2px solid var(--lp-accent);transform:scale(1.05);box-shadow:0 8px 30px #3b82f61a}.lp-pricing-card.featured:hover{transform:scale(1.05)translateY(-4px)}.lp-featured-tag{background:var(--lp-accent);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:100px;padding:.3rem 1rem;font-size:.65rem;font-weight:800;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.lp-plan-desc{color:var(--lp-text-muted);margin:-1rem 0 1.5rem;font-size:.85rem;line-height:1.4}.lp-pricing-card h3{color:var(--lp-primary);margin:0 0 1rem;font-size:1.1rem;font-weight:700}.lp-price{color:var(--lp-primary);margin-bottom:1.5rem;font-size:2.5rem;font-weight:800}.lp-currency{vertical-align:super;font-size:1rem}.lp-cents{vertical-align:super;font-size:1.2rem}.lp-period{color:var(--lp-text-muted);font-size:.9rem;font-weight:500}.lp-pricing-card ul{flex-direction:column;gap:.75rem;margin:0 0 2rem;padding:0;list-style:none;display:flex}.lp-pricing-card li{color:var(--lp-text);align-items:center;gap:.6rem;font-size:.875rem;font-weight:500;display:flex}.lp-pricing-card li svg{color:var(--lp-green);flex-shrink:0}.lp-pricing-card li.disabled,.lp-pricing-card li.disabled svg{color:#cbd5e1}.lp-plan-btn{border:1.5px solid var(--lp-border);width:100%;color:var(--lp-text);cursor:pointer;background:0 0;border-radius:12px;padding:.75rem;font-size:.9rem;font-weight:700;transition:all .2s}.lp-plan-btn:hover{border-color:var(--lp-accent);color:var(--lp-accent)}.featured-btn{background:var(--lp-accent)!important;color:#fff!important;border-color:var(--lp-accent)!important}.featured-btn:hover{background:var(--lp-accent-hover)!important}.lp-cta-card{background:linear-gradient(135deg, var(--lp-accent) 0%, #2563eb 100%);text-align:center;color:#fff;border-radius:24px;max-width:720px;margin:0 auto;padding:4rem 3rem}.lp-cta-card h2{color:#fff;margin:0 0 .75rem;font-size:2rem;font-weight:800}.lp-cta-card p{opacity:.9;margin:0 0 2rem;font-size:1.05rem}.lp-cta-card .lp-primary-btn{color:var(--lp-accent);background:#fff;margin:0 auto;box-shadow:0 4px 20px #00000026}.lp-cta-card .lp-primary-btn:hover{background:#f8fafc;box-shadow:0 8px 30px #0003}.lp-footer{background:var(--lp-primary);color:#fff}.lp-footer-inner{grid-template-columns:2fr 3fr;gap:4rem;max-width:1280px;margin:0 auto;padding:4rem 2rem;display:grid}.lp-footer-brand .lp-logo-text{color:#fff}.lp-footer-brand p{opacity:.6;max-width:360px;margin-top:1rem;font-size:.85rem;line-height:1.6}.lp-footer-links{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.lp-footer-links h4{text-transform:uppercase;letter-spacing:.05em;opacity:.5;margin:0 0 1rem;font-size:.8rem;font-weight:700}.lp-footer-links button,.lp-footer-links span{color:#ffffffb3;cursor:pointer;text-align:left;background:0 0;border:none;padding:.25rem 0;font-size:.875rem;transition:color .2s;display:block}.lp-footer-links button:hover{color:#fff}.lp-footer-bottom{text-align:center;border-top:1px solid #ffffff1a;padding:1.5rem 2rem}.lp-footer-bottom p{opacity:.4;margin:0;font-size:.8rem}@media (width<=1024px){.lp-hero-content{grid-template-columns:1fr;gap:3rem}.lp-hero-text{text-align:center;max-width:100%}.lp-hero-text p{max-width:100%}.lp-hero-actions{justify-content:center}.lp-hero-text h1{font-size:2.5rem}.lp-hero-visual{display:none}.lp-features-grid,.lp-vision-grid{grid-template-columns:repeat(2,1fr)}.lp-pricing-grid{grid-template-columns:1fr;max-width:420px;margin-left:auto;margin-right:auto}.lp-pricing-card.featured{transform:none}.lp-pricing-card.featured:hover{transform:translateY(-4px)}}@media (width<=768px){.lp-nav-links{border-bottom:1px solid var(--lp-border);background:#fff;flex-direction:column;padding:1rem;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 10px 30px #0000001a}.lp-nav-links.open{display:flex}.lp-mobile-toggle{display:block}.lp-nav-btn{margin-left:0}.lp-cta-btn{text-align:center;width:100%}.lp-hero-text h1{font-size:2rem}.lp-features-grid,.lp-vision-grid{grid-template-columns:1fr}.lp-steps{flex-direction:column}.lp-step-connector{transform:rotate(90deg)}.lp-stats-bar{flex-wrap:wrap;gap:2rem}.lp-footer-inner{grid-template-columns:1fr;gap:2rem}.lp-footer-links{grid-template-columns:1fr 1fr}.lp-cta-card{padding:3rem 2rem}.lp-cta-card h2{font-size:1.5rem}}.sub-page{max-width:960px;margin:0 auto;padding:2rem}.sub-loading{color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:60vh;display:flex}.spin{animation:1s linear infinite spin}.sub-back{color:#3b82f6;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;margin-bottom:1rem;padding:0;font-size:.875rem;font-weight:600;display:flex}.sub-back:hover{color:#2563eb}.sub-header h1{color:#0f172a;margin:0 0 1.5rem;font-size:1.5rem;font-weight:800}.sub-error{color:#dc2626;background:#fef2f2;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.sub-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.sub-status-banner{border-radius:12px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem;font-size:.9rem;font-weight:500;display:flex}.sub-status-trial{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.sub-status-expired{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.sub-status-active{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;flex-wrap:wrap}.sub-status-active .sub-pending-info{color:#92400e;background:#fffbeb;border-radius:6px;width:100%;margin-top:.25rem;padding:.4rem .75rem;font-size:.8rem}.sub-status-cancelled{color:#475569;background:#f8fafc;border:1px solid #e2e8f0}.sub-trial-info{background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;margin-bottom:2rem;padding:1rem 1.25rem}.sub-trial-info p{color:#0369a1;margin:0;font-size:.875rem}.sub-plans{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.sub-plan-card{text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:2rem;transition:all .2s;position:relative}.sub-plan-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000000f}.sub-plan-card.featured{border:2px solid #3b82f6;box-shadow:0 8px 30px #3b82f61a}.sub-plan-card.current{background:#f0fdf4;border-color:#059669}.sub-featured-tag{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#3b82f6;border-radius:100px;padding:.3rem 1rem;font-size:.65rem;font-weight:800;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.sub-plan-card h3{color:#0f172a;margin:0 0 1rem;font-size:1.1rem;font-weight:700}.sub-price{color:#0f172a;margin-bottom:.5rem;font-size:1.5rem;font-weight:800}.sub-period{color:#64748b;font-size:.85rem;font-weight:500}.sub-description{color:#64748b;margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.sub-plan-card ul{flex-direction:column;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.sub-plan-card li{color:#1e293b;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.sub-plan-card li svg{color:#059669;flex-shrink:0}.sub-features-include{margin-bottom:.5rem!important}.sub-na-label{color:#ef4444;letter-spacing:.05em;text-transform:uppercase;margin:.5rem 0 .25rem;font-size:.7rem;font-weight:700}.sub-features-missing li{color:#94a3b8!important;font-size:.8rem!important}.sub-features-missing li svg{color:#cbd5e1!important}.sub-btn{color:#1e293b;cursor:pointer;background:0 0;border:1.5px solid #e2e8f0;border-radius:12px;width:100%;padding:.75rem;font-size:.9rem;font-weight:700;transition:all .2s}.sub-btn:hover:not(:disabled){color:#3b82f6;border-color:#3b82f6}.sub-btn:disabled{opacity:.5;cursor:not-allowed}.sub-btn-primary{color:#fff!important;background:#3b82f6!important;border-color:#3b82f6!important}.sub-btn-primary:hover:not(:disabled){background:#2563eb!important}.sub-btn-current{opacity:.8;color:#fff!important;background:#059669!important;border-color:#059669!important}.sub-btn-change{color:#3b82f6!important;border-color:#3b82f6!important}.sub-btn-change:hover:not(:disabled){background:#eff6ff!important}.sub-cancel-area{text-align:center;border-top:1px solid #e2e8f0;padding-top:1rem}.sub-cancel-btn{color:#dc2626;cursor:pointer;opacity:.7;background:0 0;border:none;font-size:.8rem;font-weight:600;transition:opacity .2s}.sub-cancel-btn:hover{opacity:1}.sub-result-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:20px;max-width:480px;margin:4rem auto;padding:3rem 2rem}.sub-result-icon{margin-bottom:1.5rem}.sub-result-icon.success svg{color:#059669}.sub-result-icon.pending svg{color:#f59e0b}.sub-result-icon.failure svg{color:#dc2626}.sub-result-card h2{color:#0f172a;margin:0 0 .75rem;font-size:1.5rem;font-weight:800}.sub-result-card p{color:#64748b;margin:0 0 .5rem;font-size:.9rem;line-height:1.6}.sub-result-id{word-break:break-all;font-family:monospace;color:#94a3b8!important;font-size:.75rem!important}.sub-result-redirect{color:#94a3b8!important;margin-top:1.5rem!important;font-size:.8rem!important}@media (width<=768px){.sub-plans{grid-template-columns:1fr}}@media (width>=769px) and (width<=1024px){.sub-plans{grid-template-columns:1fr;max-width:420px;margin-left:auto;margin-right:auto}}.audit-log-viewer{max-width:900px}.audit-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.audit-title{align-items:center;gap:.5rem;display:flex}.audit-title h2{margin:0}.audit-status{text-transform:uppercase;border-radius:4px;padding:.15rem .5rem;font-size:.65rem;font-weight:700}.audit-status.on{color:#16a34a;background:#dcfce7}.audit-status.off{color:#dc2626;background:#fef2f2}.audit-actions{gap:.5rem;display:flex}.audit-disabled-notice{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem;display:flex}.audit-disabled-notice code{background:#fef3c7;border-radius:3px;padding:.1rem .3rem}.audit-filters{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;padding:.75rem;display:flex}.filter-group{align-items:center;gap:.4rem;display:flex}.filter-group label{color:#64748b;font-size:.75rem;font-weight:600}.filter-group input,.filter-group select{border:1px solid #e2e8f0;border-radius:4px;outline:none;padding:.3rem .5rem;font-size:.8rem}.filter-group input:focus,.filter-group select:focus{border-color:#3b82f6}.audit-log-list{flex-direction:column;gap:.25rem;display:flex}.audit-empty{text-align:center;color:#94a3b8;padding:2rem}.audit-log-entry{background:#fff;border:1px solid #f1f5f9;border-radius:8px;align-items:flex-start;gap:.75rem;padding:.6rem .75rem;transition:border-color .15s;display:flex}.audit-log-entry:hover{border-color:#e2e8f0}.entry-icon{background:#f8fafc;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.entry-content{flex:1;min-width:0}.entry-main{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.entry-action{font-size:.85rem;font-weight:700}.entry-entity{color:#334155;font-size:.85rem}.entry-id{color:#94a3b8;font-family:monospace;font-size:.75rem}.entry-meta{color:#94a3b8;align-items:center;gap:.5rem;margin-top:.15rem;font-size:.7rem;display:flex}.entry-ip{font-family:monospace}.entry-duration{color:#3b82f6}.audit-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1rem;display:flex}.page-info{color:#64748b;font-size:.8rem}.audit-config-info{color:#94a3b8;justify-content:center;gap:1.5rem;margin-top:1rem;font-size:.7rem;display:flex}.competition-status-badge{text-transform:uppercase;letter-spacing:.02em;border-radius:20px;align-items:center;gap:4px;padding:2px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.competition-status-badge.active{color:#065f46;background:#d1fae5}.competition-status-badge.upcoming{color:#1e40af;background:#dbeafe}.competition-status-badge.completed{color:#374151;background:#e5e7eb}.competitions-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem;margin-top:1.25rem;display:grid}.competition-card{background:var(--color-white,#fff);border:1px solid var(--color-border,#e2e8f0);cursor:pointer;border-radius:16px;flex-direction:column;gap:.75rem;padding:1.5rem;transition:all .2s;display:flex}.competition-card:hover{border-color:var(--color-accent,#3b82f6);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f61f}.competition-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.competition-card-title{color:var(--color-text,#1e293b);font-size:1rem;font-weight:700;line-height:1.3}.competition-card-goal{color:var(--color-text-muted,#64748b);font-size:.8rem;line-height:1.4}.competition-card-meta{color:var(--color-text-muted,#64748b);align-items:center;gap:1rem;font-size:.78rem;display:flex}.competition-card-meta span{align-items:center;gap:4px;display:flex}.competition-trophy-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.competition-trophy-icon.gold{color:#d97706;background:#fef3c7}.competition-trophy-icon.silver{color:#64748b;background:#f1f5f9}.competition-trophy-icon.bronze{color:#c2410c;background:#fed7aa}.competition-trophy-icon.default{color:#7c3aed;background:#ede9fe}.leaderboard{flex-direction:column;gap:0;display:flex}.leaderboard-header{color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--color-border,#e2e8f0);grid-template-columns:60px 1fr 100px 1fr;padding:.6rem 1rem;font-size:.72rem;font-weight:700;display:grid}.leaderboard-row{border-bottom:1px solid var(--color-border,#f1f5f9);grid-template-columns:60px 1fr 100px 1fr;align-items:center;padding:.75rem 1rem;transition:background .15s;display:grid}.leaderboard-row:hover{background:#f8fafc}.leaderboard-row.highlighted{background:#eff6ff}.rank-badge{border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:800;display:flex}.rank-badge.rank-1{color:#d97706;background:#fef3c7}.rank-badge.rank-2{color:#475569;background:#f1f5f9}.rank-badge.rank-3{color:#c2410c;background:#fed7aa}.rank-badge.rank-other{color:#94a3b8;background:#f8fafc}.leaderboard-patient-name{color:var(--color-text,#1e293b);font-size:.875rem;font-weight:600}.leaderboard-points{color:var(--color-accent,#3b82f6);font-size:.875rem;font-weight:700}.leaderboard-detail{color:var(--color-text-muted,#64748b);font-size:.78rem}.competition-detail-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.competition-detail-info{flex-direction:column;gap:.35rem;display:flex}.competition-detail-title{color:var(--color-text,#1e293b);font-size:1.5rem;font-weight:800}.competition-detail-desc{color:var(--color-text-muted,#64748b);font-size:.9rem;line-height:1.5}.competition-detail-dates{color:var(--color-text-muted,#64748b);gap:1.5rem;margin-top:.5rem;font-size:.82rem;display:flex}.competition-detail-dates span{align-items:center;gap:4px;display:flex}.competition-goal-box{background:linear-gradient(135deg,#eff6ff 0%,#ede9fe 100%);border-radius:12px;margin-bottom:1.25rem;padding:1rem 1.25rem}.competition-goal-box .goal-label{text-transform:uppercase;color:var(--color-text-muted,#64748b);letter-spacing:.04em;margin-bottom:.25rem;font-size:.72rem;font-weight:700}.competition-goal-box .goal-text{color:var(--color-text,#1e293b);font-size:.95rem;font-weight:600}.competition-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0f172a99;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.competition-modal{background:#fff;border-radius:20px;width:100%;max-width:520px;max-height:90vh;padding:2rem;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.competition-modal h2{margin-bottom:1.25rem;font-size:1.25rem;font-weight:700}.competition-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.patient-checkbox-list{border:1px solid var(--color-border,#e2e8f0);border-radius:10px;flex-direction:column;gap:.5rem;max-height:200px;padding:.5rem;display:flex;overflow-y:auto}.patient-checkbox-item{cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .5rem;font-size:.85rem;transition:background .15s;display:flex}.patient-checkbox-item:hover{background:#f8fafc}.patient-checkbox-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent,#3b82f6)}.competition-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.competition-empty-icon{color:#d97706;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.competition-empty h3{color:var(--color-text,#1e293b);font-size:1.1rem;font-weight:700}.competition-empty p{color:var(--color-text-muted,#64748b);max-width:320px;font-size:.85rem}.my-position-card{background:linear-gradient(135deg,#eff6ff 0%,#ede9fe 100%);border-radius:16px;align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.my-position-rank{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.5rem;font-weight:800;display:flex}.my-position-rank.rank-1{color:#d97706;background:#fef3c7}.my-position-rank.rank-2{color:#475569;background:#e2e8f0}.my-position-rank.rank-3{color:#c2410c;background:#fed7aa}.my-position-rank.rank-other{color:#64748b;background:#fff;border:2px solid #e2e8f0}.my-position-info{flex-direction:column;gap:.15rem;display:flex}.my-position-info .position-label{text-transform:uppercase;color:var(--color-text-muted,#64748b);letter-spacing:.04em;font-size:.72rem;font-weight:700}.my-position-info .position-points{color:var(--color-accent,#3b82f6);font-size:1.5rem;font-weight:800}.my-position-info .position-detail{color:var(--color-text-muted,#64748b);font-size:.82rem}.competition-actions{flex-wrap:wrap;gap:.5rem;display:flex}.btn-competition{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:.5rem 1rem;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-competition.primary{background:var(--color-accent,#3b82f6);color:#fff}.btn-competition.primary:hover{background:#2563eb}.btn-competition.danger{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.btn-competition.danger:hover{background:#fee2e2}.btn-competition.secondary{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.btn-competition.secondary:hover{background:#e2e8f0}.competition-timeline-card{background:var(--color-white,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;margin-bottom:1.25rem;padding:1.25rem}.timeline-bar{background:#e2e8f0;border-radius:4px;width:100%;height:8px;position:relative;overflow:visible}.timeline-fill{background:linear-gradient(90deg,#3b82f6 0%,#8b5cf6 100%);border-radius:4px;height:100%;transition:width .5s}.timeline-marker{z-index:1;position:absolute;top:50%;transform:translate(-50%,-50%)}.timeline-marker-dot{background:#3b82f6;border:3px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 4px #00000026}.progress-ring{align-items:center;gap:.75rem;display:flex}.progress-ring-bar{background:#e2e8f0;border-radius:3px;width:100%;height:6px;overflow:hidden}.progress-ring-fill{border-radius:3px;height:100%;transition:width .5s}@media (width<=768px){.competitions-grid,.competition-form-row{grid-template-columns:1fr}.leaderboard-header,.leaderboard-row{grid-template-columns:50px 1fr 70px}.leaderboard-header>:last-child,.leaderboard-row>:last-child{display:none}.competition-detail-header{flex-direction:column}.my-position-card{text-align:center;flex-direction:column}}
