:root{--color-primary:#d4a574;--color-primary-light:#e8c9a8;--color-primary-dark:#b8895c;--color-primary-strong:#9a6a42;--brand-soft:#f5ece2;--color-secondary:#736b64;--color-secondary-light:#736b64;--color-secondary-dark:#4a4440;--color-accent:#e8c9a8;--color-accent-light:#f5ece2;--color-accent-dark:#b8895c;--ink-900:#2f2a26;--ink-700:#4a4440;--ink-500:#736b64;--ink-400:#736b64;--line-strong:#d9d0c6;--line-soft:#f6f0ea;--bg:#fbf8f5;--color-dark:var(--ink-900);--color-gray-800:var(--ink-700);--color-gray-600:var(--ink-500);--color-gray-500:var(--ink-500);--color-gray-400:var(--ink-400);--color-gray-200:var(--line-strong);--color-gray-100:#ebe3da;--color-light:#f6f0ea;--color-background:var(--bg);--color-white:#fff;--color-success:#46714f;--success-soft:#f6f0ea;--color-warning:#5a3e2b;--warning-soft:#f5ece2;--color-error:#a8483f;--danger-soft:#f5ece2;--color-info:#4f6a86;--info-soft:#f6f0ea;--shadow-sm:0 1px 2px #2f2a260a;--shadow-md:0 2px 6px #2f2a260f;--shadow-lg:0 8px 20px #2f2a2614;--shadow-xl:0 16px 32px #2f2a261a;--font-display:"Nunito",sans-serif;--font-body:"Nunito",-apple-system,BlinkMacSystemFont,sans-serif;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:0.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-xl:2rem;--radius-full:9999px;--ink:var(--ink-900);--ink-2:var(--ink-700);--ink-3:var(--ink-500);--line:#ebe3da;--wash:#f6f0ea;--brand-ink:#5a3e2b;--shadow-card:0 1px 2px #2f2a260a;--radius-card:16px;--radius-ctl:10px;--spacing-4xl:6rem;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:300ms cubic-bezier(0.4,0,0.2,1);--transition-slow:500ms cubic-bezier(0.4,0,0.2,1)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px;scroll-behavior:smooth}body{-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fbf8f5;background:var(--color-background);color:#4a4440;color:var(--ink-700);font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:1rem;line-height:1.6}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{color:#2f2a26;color:var(--ink-900);font-family:Nunito,sans-serif;font-family:var(--font-display);font-weight:600;line-height:1.25;margin-bottom:1rem;margin-bottom:var(--spacing-md)}h1{font-size:1.75rem;letter-spacing:-.01em}h1,h2{font-weight:600}h2{font-size:1.25rem}h3,h4{font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-weight:600}h3{font-size:1.0625rem}h4{font-size:1rem}p{margin-bottom:1rem;margin-bottom:var(--spacing-md)}a{color:#9a6a42;color:var(--color-primary-strong);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1);transition:color var(--transition-fast)}a:hover{color:#b8895c;color:var(--color-primary-dark)}button{border:none;cursor:pointer;font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-weight:500}.btn,button{transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.btn{align-items:center;border-radius:10px;border-radius:var(--radius-ctl);box-shadow:none;display:inline-flex;font-size:.9375rem;font-weight:600;gap:.5rem;gap:var(--spacing-sm);justify-content:center;padding:.75rem 1.25rem}.btn:active{transform:translateY(1px)}.btn-primary{background:#9a6a42;background:var(--color-primary-strong);color:#fff}.btn-primary:hover{filter:brightness(.92)}.btn-secondary{background:#736b64;background:var(--color-secondary);color:#fff}.btn-secondary:hover{background:#4a4440;background:var(--color-secondary-dark);box-shadow:0 2px 6px #2f2a260f;box-shadow:var(--shadow-md)}.btn-outline{background:#0000;border:2px solid #d4a574;border:2px solid var(--color-primary);color:#d4a574;color:var(--color-primary)}.btn-outline:hover{background:#d4a574;background:var(--color-primary);color:#fff}input,select,textarea{background:#fff;background:var(--color-white);border:1px solid #ebe3da;border:1px solid var(--line);border-radius:10px;border-radius:var(--radius-ctl);color:#2f2a26;color:var(--color-dark);font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:1rem;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast);width:100%}input:focus,select:focus,textarea:focus{border-color:#d4a574;border-color:var(--color-primary);box-shadow:0 0 0 3px #d4a5741a;outline:none}input::placeholder,textarea::placeholder{color:#736b64;color:var(--color-gray-400)}label{color:#4a4440;color:var(--ink-2);display:block;font-size:.8125rem;font-weight:600;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.card{background:#fff;background:var(--color-white);border:1px solid #ebe3da;border:1px solid var(--line);border-radius:16px;border-radius:var(--radius-card);box-shadow:0 1px 2px #2f2a260a;box-shadow:var(--shadow-card);padding:1.5rem;padding:var(--spacing-lg)}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.fade-in{animation:fadeIn ease-out .3s cubic-bezier(.4,0,.2,1);animation:fadeIn var(--transition-base) ease-out}.slide-in-right{animation:slideInRight ease-out .3s cubic-bezier(.4,0,.2,1);animation:slideInRight var(--transition-base) ease-out}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-corner,::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#0000002e;background-clip:padding-box;border:3px solid #0000;border-radius:9999px;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background-color:#00000052}body.dark-mode ::-webkit-scrollbar-thumb{background-color:#fff3}body.dark-mode ::-webkit-scrollbar-thumb:hover{background-color:#ffffff57}.text-center{text-align:center}.text-right{text-align:right}.mt-sm{margin-top:.5rem;margin-top:var(--spacing-sm)}.mt-md{margin-top:1rem;margin-top:var(--spacing-md)}.mt-lg{margin-top:1.5rem;margin-top:var(--spacing-lg)}.mt-xl{margin-top:2rem;margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:2rem;margin-bottom:var(--spacing-xl)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:.5rem;gap:var(--spacing-sm)}.gap-md{gap:1rem;gap:var(--spacing-md)}.gap-lg{gap:1.5rem;gap:var(--spacing-lg)}.w-full{width:100%}@media (max-width:768px){html{font-size:14px}h1{font-size:2rem}h2{font-size:1.75rem}.card{padding:1.5rem;padding:var(--spacing-lg)}input,select,textarea{font-size:16px}.btn,.nav-item,button{min-height:44px}table{display:block;overflow-x:auto;width:100%}.main-content,.sidebar,table{-webkit-overflow-scrolling:touch}}@media (max-width:480px){h1{font-size:1.65rem}h2{font-size:1.4rem}}@media (hover:none){.action-card:hover,.card:hover,.nav-item:hover,.patient-card:hover,.patient-item:hover,.stat-card:hover{transform:none}}body.dark-mode{--ink-900:#f5f5f7;--ink-700:#d1d1d6;--ink-500:#a1a1a6;--ink-400:#6e6e73;--line:#3a3a3c;--line-strong:#48484a;--line-soft:#2f2f31;--wash:#353538;--bg:#1c1c1e;--brand-soft:#33302d;--brand-ink:#e8c9a8;--success-soft:#22332a;--warning-soft:#3a3020;--danger-soft:#3a2624;--info-soft:#232f3c;--color-success:#8fcf9c;--color-warning:#e8bf72;--color-error:#f0998f;--color-info:#a9c2de;--ink:var(--ink-900);--ink-2:var(--ink-700);--ink-3:var(--ink-500);--color-dark:var(--ink-900);--color-gray-800:var(--ink-700);--color-gray-600:var(--ink-500);--color-gray-500:var(--ink-500);--color-gray-400:var(--ink-400);--color-gray-200:var(--line-strong);--color-gray-100:var(--line);--color-light:#2c2c2e;--color-background:var(--bg);--color-white:#2c2c2e;--shadow-card:0 1px 0 #ffffff0a inset,0 1px 3px #0006;color-scheme:dark}:root:has(body.dark-mode){color-scheme:dark}body.dark-mode{background:#fbf8f5;background:var(--color-background);color:#2f2a26;color:var(--color-dark)}body.dark-mode .card{background:#2c2c2e;border-color:#ebe3da;border-color:var(--line)}body.dark-mode input,body.dark-mode select,body.dark-mode textarea{background:#1c1c1e!important;border-color:#d9d0c6!important;border-color:var(--line-strong)!important;color:#2f2a26!important;color:var(--ink-900)!important}body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:#736b64;color:var(--ink-400)}body.dark-mode input:focus,body.dark-mode select:focus,body.dark-mode textarea:focus{border-color:#d4a574!important;border-color:var(--color-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,#d4a574 28%,#0000);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 28%,#0000)}body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5{color:#2f2a26!important;color:var(--color-dark)!important}@keyframes toastIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.skeleton{animation:loading 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ebe3da 25%,#d9d0c6 50%,#ebe3da 75%);background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-200) 50%,var(--color-gray-100) 75%);background-size:200% 100%}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.toast{animation:slideInRight ease-out .3s cubic-bezier(.4,0,.2,1);animation:slideInRight var(--transition-base) ease-out;border-radius:1rem;border-radius:var(--radius-md);box-shadow:0 8px 20px #2f2a2614;box-shadow:var(--shadow-lg);max-width:400px;padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg);position:fixed;right:20px;top:20px;z-index:9999}.toast-success{background:#46714f;background:var(--color-success);color:#fff}.toast-error{background:#a8483f;background:var(--color-error);color:#fff}.toast-info{background:#4f6a86;background:var(--color-info);color:#fff}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}[style*="background: rgb(212, 165, 116)"][style*=" color: rgb(255, 255, 255)"], [style*="gradient("][style*="(135deg, rgb(212, 165, 116)"][style*=" color: rgb(255, 255, 255)"], [style^="background: rgb(212, 165, 116)"][style*="color: rgb(255, 255, 255)"]{background:#9a6a42!important;background:var(--color-primary-strong)!important}@media screen{body.dark-mode [style*="background-color: rgb(255, 255, 255)"], body.dark-mode [style*="background: rgb(255, 255, 255)"]{background:#2c2c2e!important}body.dark-mode [style*="border-color: rgb(255, 255, 255)"], body.dark-mode [style*="dashed rgb(255, 255, 255)"], body.dark-mode [style*="dotted rgb(255, 255, 255)"], body.dark-mode [style*="solid rgb(255, 255, 255)"]{border-color:#3a3a3c!important}body.dark-mode [style*="background-color: rgb(251, 248, 245)"], body.dark-mode [style*="background: rgb(251, 248, 245)"]{background:#2c2c2e!important}body.dark-mode [style*="border-color: rgb(251, 248, 245)"], body.dark-mode [style*="dashed rgb(251, 248, 245)"], body.dark-mode [style*="dotted rgb(251, 248, 245)"], body.dark-mode [style*="solid rgb(251, 248, 245)"]{border-color:#3a3a3c!important}body.dark-mode [style*="background-color: rgb(246, 240, 234)"], body.dark-mode [style*="background: rgb(246, 240, 234)"]{background:#353538!important}body.dark-mode [style*="border-color: rgb(246, 240, 234)"], body.dark-mode [style*="dashed rgb(246, 240, 234)"], body.dark-mode [style*="dotted rgb(246, 240, 234)"], body.dark-mode [style*="solid rgb(246, 240, 234)"]{border-color:#3a3a3c!important}body.dark-mode [style*="background-color: rgb(235, 227, 218)"], body.dark-mode [style*="background: rgb(235, 227, 218)"]{background:#3a3a3c!important}body.dark-mode [style*=" color: rgb(235, 227, 218)"], body.dark-mode [style^="color: rgb(235, 227, 218)"]{color:#5a5a5e!important}body.dark-mode [style*="border-color: rgb(235, 227, 218)"], body.dark-mode [style*="dashed rgb(235, 227, 218)"], body.dark-mode [style*="dotted rgb(235, 227, 218)"], body.dark-mode [style*="solid rgb(235, 227, 218)"]{border-color:#3a3a3c!important}body.dark-mode [style*="background-color: rgb(217, 208, 198)"], body.dark-mode [style*="background: rgb(217, 208, 198)"]{background:#48484a!important}body.dark-mode [style*=" color: rgb(217, 208, 198)"], body.dark-mode [style^="color: rgb(217, 208, 198)"]{color:#8e8e93!important}body.dark-mode [style*="border-color: rgb(217, 208, 198)"], body.dark-mode [style*="dashed rgb(217, 208, 198)"], body.dark-mode [style*="dotted rgb(217, 208, 198)"], body.dark-mode [style*="solid rgb(217, 208, 198)"]{border-color:#48484a!important}body.dark-mode [style*="background-color: rgb(163, 155, 147)"], body.dark-mode [style*="background: rgb(163, 155, 147)"]{background:#5a5a5e!important}body.dark-mode [style*=" color: rgb(163, 155, 147)"], body.dark-mode [style^="color: rgb(163, 155, 147)"]{color:#98989d!important}body.dark-mode [style*="border-color: rgb(163, 155, 147)"], body.dark-mode [style*="dashed rgb(163, 155, 147)"], body.dark-mode [style*="dotted rgb(163, 155, 147)"], body.dark-mode [style*="solid rgb(163, 155, 147)"]{border-color:#5a5a5e!important}body.dark-mode [style*="background-color: rgb(115, 107, 100)"], body.dark-mode [style*="background: rgb(115, 107, 100)"]{background:#636366!important}body.dark-mode [style*=" color: rgb(115, 107, 100)"], body.dark-mode [style^="color: rgb(115, 107, 100)"]{color:#a1a1a6!important}body.dark-mode [style*="border-color: rgb(115, 107, 100)"], body.dark-mode [style*="dashed rgb(115, 107, 100)"], body.dark-mode [style*="dotted rgb(115, 107, 100)"], body.dark-mode [style*="solid rgb(115, 107, 100)"]{border-color:#636366!important}body.dark-mode [style*="background-color: rgb(74, 68, 64)"], body.dark-mode [style*="background: rgb(74, 68, 64)"]{background:#48484a!important}body.dark-mode [style*=" color: rgb(74, 68, 64)"], body.dark-mode [style^="color: rgb(74, 68, 64)"]{color:#d1d1d6!important}body.dark-mode [style*="border-color: rgb(74, 68, 64)"], body.dark-mode [style*="dashed rgb(74, 68, 64)"], body.dark-mode [style*="dotted rgb(74, 68, 64)"], body.dark-mode [style*="solid rgb(74, 68, 64)"]{border-color:#5a5a5e!important}body.dark-mode [style*="background-color: rgb(47, 42, 38)"], body.dark-mode [style*="background: rgb(47, 42, 38)"]{background:#3a3a3c!important}body.dark-mode [style*=" color: rgb(47, 42, 38)"], body.dark-mode [style^="color: rgb(47, 42, 38)"]{color:#f5f5f7!important}body.dark-mode [style*="border-color: rgb(47, 42, 38)"], body.dark-mode [style*="dashed rgb(47, 42, 38)"], body.dark-mode [style*="dotted rgb(47, 42, 38)"], body.dark-mode [style*="solid rgb(47, 42, 38)"]{border-color:#5a5a5e!important}body.dark-mode [style*="background-color: rgb(245, 236, 226)"], body.dark-mode [style*="background: rgb(245, 236, 226)"]{background:#33302d!important}body.dark-mode [style*="border-color: rgb(245, 236, 226)"], body.dark-mode [style*="dashed rgb(245, 236, 226)"], body.dark-mode [style*="dotted rgb(245, 236, 226)"], body.dark-mode [style*="solid rgb(245, 236, 226)"]{border-color:#45403b!important}body.dark-mode [style*="background-color: rgb(232, 201, 168)"], body.dark-mode [style*="background: rgb(232, 201, 168)"]{background:#5a4632!important}body.dark-mode [style*=" color: rgb(232, 201, 168)"], body.dark-mode [style^="color: rgb(232, 201, 168)"]{color:#e8c9a8!important}body.dark-mode [style*="border-color: rgb(232, 201, 168)"], body.dark-mode [style*="dashed rgb(232, 201, 168)"], body.dark-mode [style*="dotted rgb(232, 201, 168)"], body.dark-mode [style*="solid rgb(232, 201, 168)"]{border-color:#6b5440!important}body.dark-mode [style*=" color: rgb(184, 137, 92)"], body.dark-mode [style^="color: rgb(184, 137, 92)"]{color:#d9b48c!important}body.dark-mode [style*=" color: rgb(154, 106, 66)"], body.dark-mode [style^="color: rgb(154, 106, 66)"]{color:#d4a574!important}body.dark-mode [style*="background-color: rgb(90, 62, 43)"], body.dark-mode [style*="background: rgb(90, 62, 43)"]{background:#4a3a2c!important}body.dark-mode [style*=" color: rgb(90, 62, 43)"], body.dark-mode [style^="color: rgb(90, 62, 43)"]{color:#e8c9a8!important}body.dark-mode [style*="border-color: rgb(90, 62, 43)"], body.dark-mode [style*="dashed rgb(90, 62, 43)"], body.dark-mode [style*="dotted rgb(90, 62, 43)"], body.dark-mode [style*="solid rgb(90, 62, 43)"]{border-color:#6b5440!important}body.dark-mode [style*="background-color: rgb(237, 244, 238)"], body.dark-mode [style*="background: rgb(237, 244, 238)"]{background:#22332a!important}body.dark-mode [style*="border-color: rgb(237, 244, 238)"], body.dark-mode [style*="dashed rgb(237, 244, 238)"], body.dark-mode [style*="dotted rgb(237, 244, 238)"], body.dark-mode [style*="solid rgb(237, 244, 238)"]{border-color:#2e4535!important}body.dark-mode [style*="background-color: rgb(185, 210, 189)"], body.dark-mode [style*="background: rgb(185, 210, 189)"]{background:#2e4535!important}body.dark-mode [style*=" color: rgb(185, 210, 189)"], body.dark-mode [style^="color: rgb(185, 210, 189)"]{color:#9fcfaa!important}body.dark-mode [style*="border-color: rgb(185, 210, 189)"], body.dark-mode [style*="dashed rgb(185, 210, 189)"], body.dark-mode [style*="dotted rgb(185, 210, 189)"], body.dark-mode [style*="solid rgb(185, 210, 189)"]{border-color:#3c5a44!important}body.dark-mode [style*=" color: rgb(111, 154, 119)"], body.dark-mode [style^="color: rgb(111, 154, 119)"]{color:#8cc39a!important}body.dark-mode [style*=" color: rgb(70, 113, 79)"], body.dark-mode [style^="color: rgb(70, 113, 79)"]{color:#8fcf9c!important}body.dark-mode [style*="background-color: rgb(47, 82, 54)"], body.dark-mode [style*="background: rgb(47, 82, 54)"]{background:#2e4535!important}body.dark-mode [style*=" color: rgb(47, 82, 54)"], body.dark-mode [style^="color: rgb(47, 82, 54)"]{color:#a8dbb3!important}body.dark-mode [style*="border-color: rgb(47, 82, 54)"], body.dark-mode [style*="dashed rgb(47, 82, 54)"], body.dark-mode [style*="dotted rgb(47, 82, 54)"], body.dark-mode [style*="solid rgb(47, 82, 54)"]{border-color:#3c5a44!important}body.dark-mode [style*="background-color: rgb(248, 235, 233)"], body.dark-mode [style*="background: rgb(248, 235, 233)"]{background:#3a2624!important}body.dark-mode [style*="border-color: rgb(248, 235, 233)"], body.dark-mode [style*="dashed rgb(248, 235, 233)"], body.dark-mode [style*="dotted rgb(248, 235, 233)"], body.dark-mode [style*="solid rgb(248, 235, 233)"]{border-color:#4d302d!important}body.dark-mode [style*="background-color: rgb(227, 179, 173)"], body.dark-mode [style*="background: rgb(227, 179, 173)"]{background:#4d302d!important}body.dark-mode [style*=" color: rgb(227, 179, 173)"], body.dark-mode [style^="color: rgb(227, 179, 173)"]{color:#f0a49b!important}body.dark-mode [style*="border-color: rgb(227, 179, 173)"], body.dark-mode [style*="dashed rgb(227, 179, 173)"], body.dark-mode [style*="dotted rgb(227, 179, 173)"], body.dark-mode [style*="solid rgb(227, 179, 173)"]{border-color:#6a3b36!important}body.dark-mode [style*=" color: rgb(196, 106, 96)"], body.dark-mode [style^="color: rgb(196, 106, 96)"]{color:#e88c82!important}body.dark-mode [style*=" color: rgb(168, 72, 63)"], body.dark-mode [style^="color: rgb(168, 72, 63)"]{color:#f0998f!important}body.dark-mode [style*="background-color: rgb(122, 46, 39)"], body.dark-mode [style*="background: rgb(122, 46, 39)"]{background:#4d302d!important}body.dark-mode [style*=" color: rgb(122, 46, 39)"], body.dark-mode [style^="color: rgb(122, 46, 39)"]{color:#f5b0a8!important}body.dark-mode [style*="border-color: rgb(122, 46, 39)"], body.dark-mode [style*="dashed rgb(122, 46, 39)"], body.dark-mode [style*="dotted rgb(122, 46, 39)"], body.dark-mode [style*="solid rgb(122, 46, 39)"]{border-color:#6a3b36!important}body.dark-mode [style*="background-color: rgb(248, 241, 226)"], body.dark-mode [style*="background: rgb(248, 241, 226)"]{background:#3a3020!important}body.dark-mode [style*="border-color: rgb(248, 241, 226)"], body.dark-mode [style*="dashed rgb(248, 241, 226)"], body.dark-mode [style*="dotted rgb(248, 241, 226)"], body.dark-mode [style*="solid rgb(248, 241, 226)"]{border-color:#4d3f26!important}body.dark-mode [style*="background-color: rgb(227, 196, 138)"], body.dark-mode [style*="background: rgb(227, 196, 138)"]{background:#4d3f26!important}body.dark-mode [style*=" color: rgb(227, 196, 138)"], body.dark-mode [style^="color: rgb(227, 196, 138)"]{color:#ecc77d!important}body.dark-mode [style*="border-color: rgb(227, 196, 138)"], body.dark-mode [style*="dashed rgb(227, 196, 138)"], body.dark-mode [style*="dotted rgb(227, 196, 138)"], body.dark-mode [style*="solid rgb(227, 196, 138)"]{border-color:#6b5630!important}body.dark-mode [style*=" color: rgb(196, 147, 63)"], body.dark-mode [style^="color: rgb(196, 147, 63)"]{color:#e3b766!important}body.dark-mode [style*=" color: rgb(138, 95, 26)"], body.dark-mode [style^="color: rgb(138, 95, 26)"]{color:#e8bf72!important}body.dark-mode [style*="background-color: rgb(94, 64, 18)"], body.dark-mode [style*="background: rgb(94, 64, 18)"]{background:#4d3f26!important}body.dark-mode [style*=" color: rgb(94, 64, 18)"], body.dark-mode [style^="color: rgb(94, 64, 18)"]{color:#f0cf8e!important}body.dark-mode [style*="border-color: rgb(94, 64, 18)"], body.dark-mode [style*="dashed rgb(94, 64, 18)"], body.dark-mode [style*="dotted rgb(94, 64, 18)"], body.dark-mode [style*="solid rgb(94, 64, 18)"]{border-color:#6b5630!important}body.dark-mode [style*="background-color: rgb(237, 241, 246)"], body.dark-mode [style*="background: rgb(237, 241, 246)"]{background:#232f3c!important}body.dark-mode [style*="border-color: rgb(237, 241, 246)"], body.dark-mode [style*="dashed rgb(237, 241, 246)"], body.dark-mode [style*="dotted rgb(237, 241, 246)"], body.dark-mode [style*="solid rgb(237, 241, 246)"]{border-color:#2f3e50!important}body.dark-mode [style*="background-color: rgb(184, 199, 216)"], body.dark-mode [style*="background: rgb(184, 199, 216)"]{background:#2f3e50!important}body.dark-mode [style*=" color: rgb(184, 199, 216)"], body.dark-mode [style^="color: rgb(184, 199, 216)"]{color:#a6c3e6!important}body.dark-mode [style*="border-color: rgb(184, 199, 216)"], body.dark-mode [style*="dashed rgb(184, 199, 216)"], body.dark-mode [style*="dotted rgb(184, 199, 216)"], body.dark-mode [style*="solid rgb(184, 199, 216)"]{border-color:#3d5068!important}body.dark-mode [style*=" color: rgb(113, 137, 166)"], body.dark-mode [style^="color: rgb(113, 137, 166)"]{color:#9db8d6!important}body.dark-mode [style*=" color: rgb(79, 106, 134)"], body.dark-mode [style^="color: rgb(79, 106, 134)"]{color:#a9c2de!important}body.dark-mode [style*="background-color: rgb(52, 73, 94)"], body.dark-mode [style*="background: rgb(52, 73, 94)"]{background:#2f3e50!important}body.dark-mode [style*=" color: rgb(52, 73, 94)"], body.dark-mode [style^="color: rgb(52, 73, 94)"]{color:#bed2e8!important}body.dark-mode [style*="border-color: rgb(52, 73, 94)"], body.dark-mode [style*="dashed rgb(52, 73, 94)"], body.dark-mode [style*="dotted rgb(52, 73, 94)"], body.dark-mode [style*="solid rgb(52, 73, 94)"]{border-color:#3d5068!important}body.dark-mode [style*="gradient("][style*="(rgb(251, 248, 245)"], body.dark-mode [style*="gradient("][style*="(rgb(255, 255, 255)"], body.dark-mode [style*="gradient("][style*=", rgb(251, 248, 245)"], body.dark-mode [style*="gradient("][style*=", rgb(255, 255, 255)"]{background:#2c2c2e!important}body.dark-mode [style*="gradient("][style*="(rgb(246, 240, 234)"], body.dark-mode [style*="gradient("][style*=", rgb(246, 240, 234)"]{background:#353538!important}body.dark-mode [style*="gradient("][style*="(rgb(235, 227, 218)"], body.dark-mode [style*="gradient("][style*=", rgb(235, 227, 218)"]{background:#3a3a3c!important}body.dark-mode [style*="gradient("][style*="(rgb(237, 244, 238)"], body.dark-mode [style*="gradient("][style*=", rgb(237, 244, 238)"]{background:#22332a!important}body.dark-mode [style*="gradient("][style*="(rgb(248, 235, 233)"], body.dark-mode [style*="gradient("][style*=", rgb(248, 235, 233)"]{background:#3a2624!important}body.dark-mode [style*="gradient("][style*="(rgb(248, 241, 226)"], body.dark-mode [style*="gradient("][style*=", rgb(248, 241, 226)"]{background:#3a3020!important}body.dark-mode [style*="gradient("][style*="(rgb(237, 241, 246)"], body.dark-mode [style*="gradient("][style*=", rgb(237, 241, 246)"]{background:#232f3c!important}body.dark-mode [style*="gradient("][style*="(rgb(245, 236, 226)"], body.dark-mode [style*="gradient("][style*=", rgb(245, 236, 226)"]{background:#33302d!important}body.dark-mode [style*="background-color: rgba(255, 255, 255"], body.dark-mode [style*="background: rgba(255, 255, 255"]{background:#2c2c2ed9!important}}body.dark-mode .recharts-cartesian-grid line{stroke:#3a3a3c!important}body.dark-mode .recharts-cartesian-axis-line,body.dark-mode .recharts-cartesian-axis-tick-line{stroke:#48484a!important}body.dark-mode .recharts-cartesian-axis-tick-value,body.dark-mode .recharts-text{fill:#98989d!important}body.dark-mode .recharts-legend-item-text{color:#d1d1d6!important}body.dark-mode .recharts-default-tooltip{background:#2c2c2e!important;border-color:#3a3a3c!important;color:#f5f5f7!important}.app{background:linear-gradient(135deg,#fbf8f5,#fbf8f5 50%,#f6f0ea);background:linear-gradient(135deg,var(--app-bg,#fbf8f5) 0,var(--app-bg,#fbf8f5) 50%,var(--app-bg-2,#f6f0ea) 100%);display:grid;grid-template-columns:280px 1fr;min-height:100vh}body.dark-mode .app{background:#1c1c1e}.sidebar{background:linear-gradient(180deg,#fff,#fff);border-right:1px solid #d4a57426;box-shadow:4px 0 12px #2c2c2c0a;display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:2rem 0;position:sticky;top:0}body.dark-mode .sidebar{-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);background:#2c2c2eb8;border-right-color:#ffffff14;box-shadow:none}.sidebar-header{margin-bottom:2.5rem;padding:0 2rem}.logo{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.logo-icon{filter:drop-shadow(2px 2px 4px rgba(212,165,116,.3));font-size:2rem}.logo-text{color:var(--color-primary);font-family:var(--font-display);font-size:1.75rem;font-weight:600;margin:0}.sidebar-identity{background:color-mix(in srgb,var(--color-primary) 14%,#0000)}.user-greeting{color:var(--color-gray-600);font-size:.95rem;font-weight:500;margin:0;padding-left:.25rem}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:.5rem;padding:0 1rem}.nav-item{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--color-gray-600);cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:1rem;padding:1rem 1.25rem;text-align:left;transition:all var(--transition-base);width:100%}body.dark-mode .nav-item{color:var(--ink-700)}body.dark-mode .nav-item:hover{background:#ffffff0f;color:var(--ink-900)}body.dark-mode .sidebar-footer{border-top-color:#ffffff14}body.dark-mode .copyright,body.dark-mode .version-text{color:var(--ink-500)}body.dark-mode .user-greeting{color:var(--ink-900)}body.dark-mode .main-content{background:#0000}.nav-item:hover{background:var(--wash);color:var(--ink-900)}.nav-item.active{background:color-mix(in srgb,var(--color-primary) 16%,#fff);box-shadow:none;color:var(--color-primary-strong);font-weight:600}body.dark-mode .nav-item.active{background:#ffffff1a;color:var(--ink-900)}body.dark-mode .nav-item.active .nav-icon{color:var(--color-primary)}.nav-item:focus{outline:none}.nav-item:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:2px}.nav-icon{align-items:center;display:flex;font-size:1.5rem;justify-content:center;transition:all var(--transition-base);width:32px}.nav-text{flex:1 1}.sidebar-footer{border-top:1px solid #d4a57426;margin-top:1rem;padding:1.5rem 2rem;text-align:center}.version-text{font-size:.85rem;font-weight:500;margin:0 0 .25rem}.copyright,.version-text{color:var(--color-gray-400)}.copyright{font-size:.75rem;margin:0}.main-content{animation:fadeIn .4s ease-out;min-width:0;overflow-y:auto;padding:2.5rem 3rem}.mobile-header,.sidebar-close-btn,.sidebar-overlay{display:none}.hamburger-btn{background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:5px;height:44px;justify-content:center;padding:0 10px;width:44px}.hamburger-btn span{background:var(--color-primary-strong);border-radius:2px;display:block;height:2.5px;transition:all var(--transition-fast);width:22px}.loading-container{align-items:center;background:linear-gradient(135deg,#fbf8f5,#fbf8f5 50%,#f6f0ea);background:linear-gradient(135deg,var(--app-bg,#fbf8f5) 0,var(--app-bg,#fbf8f5) 50%,var(--app-bg-2,#f6f0ea) 100%);display:flex;justify-content:center;min-height:100vh}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:1.5rem}.spinner{animation:spin 1s linear infinite;border:4px solid #e8b4a84d;border-radius:50%;border-top:4px solid var(--color-primary);height:60px;width:60px}@keyframes spin{to{transform:rotate(1turn)}}.loading-text{color:var(--color-dark);font-family:var(--font-display);font-size:1.1rem;font-weight:500}@media (max-width:1024px){.app{grid-template-columns:240px 1fr}.main-content{padding:2rem}}@media (max-width:768px){.app{grid-template-columns:1fr}.mobile-header{align-items:center;background:var(--color-white);border-bottom:1px solid #d4a5742e;box-shadow:0 2px 8px #2c2c2c0d;display:flex;gap:.5rem;height:56px;padding:env(safe-area-inset-top,0) .5rem 0;position:sticky;top:0;z-index:900}body.dark-mode .mobile-header{-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);background:#2c2c2ecc;border-bottom-color:#ffffff14}.mobile-header-title{color:var(--color-primary-dark);flex:1 1;font-family:var(--font-display);font-size:1.15rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-header-logo{flex-shrink:0;height:34px;max-width:110px;object-fit:contain}.mobile-header-brand{flex-shrink:0;font-size:1.6rem;padding-right:.5rem}.sidebar{height:100vh;height:100dvh;left:-300px;max-width:85vw;padding-top:calc(2rem + env(safe-area-inset-top, 0));position:fixed;top:0;transition:left var(--transition-base);width:280px;z-index:1100}.sidebar.open{box-shadow:8px 0 32px #2c2c2c40;left:0}.sidebar-overlay{animation:fadeIn .25s ease-out;background:#1c161280;display:block;inset:0;position:fixed;z-index:1050}.sidebar-close-btn{background:#d4a5741f;border:none;border-radius:50%;color:var(--color-primary-dark);cursor:pointer;display:block;font-size:1.1rem;height:40px;position:absolute;right:.75rem;top:calc(.75rem + env(safe-area-inset-top, 0));width:40px;z-index:2}.main-content{padding:1.25rem 1rem calc(1.25rem + env(safe-area-inset-bottom, 0))}}@media (max-width:480px){.main-content{padding:1rem .75rem}.mobile-header-title{font-size:1.05rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-container{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.login-background{background:var(--color-background);inset:0;position:absolute;z-index:0}.blob{animation:float 30s ease-in-out infinite;border-radius:50%;filter:blur(80px);opacity:.08;position:absolute}.blob-1{animation-delay:0s;background:var(--color-primary);height:500px;left:-200px;top:-200px;width:500px}.blob-2{animation-delay:7s;background:var(--color-accent);bottom:-150px;height:400px;right:-150px;width:400px}.blob-3{animation-delay:14s;background:var(--color-secondary);height:350px;left:50%;top:50%;transform:translate(-50%,-50%);width:350px}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.login-card{animation:slideUp .6s ease-out;background:var(--color-white);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:0 1px 2px #2c2c2c0a,0 24px 48px -24px #5a3e2b2e;max-width:440px;padding:3rem;position:relative;width:100%;z-index:1}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{margin-bottom:2.5rem;text-align:center}.login-logo{align-items:center;display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.login-logo-icon{filter:drop-shadow(3px 3px 6px rgba(212,165,116,.3));font-size:3rem}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.login-logo-text{color:var(--brand-ink);font-family:var(--font-display);font-size:2.5rem;font-weight:500;letter-spacing:-.01em;margin:0}.login-subtitle{color:var(--ink-2);font-size:.9375rem;font-weight:400;margin:0}.login-form{margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--ink-2);display:block;font-size:.8125rem;font-weight:600;margin-bottom:.5rem}.form-group input{background:var(--color-white);border:1px solid var(--line);border-radius:var(--radius-ctl);font-size:1rem;padding:.875rem 1.25rem;transition:all var(--transition-fast);width:100%}.form-group input:focus{background:var(--color-white);border-color:var(--color-primary);box-shadow:0 0 0 3px #d4a5742e;outline:none}.form-group input:disabled{cursor:not-allowed;opacity:.6}.login-button{align-items:center;background:var(--color-primary-strong);border:none;border-radius:var(--radius-ctl);box-shadow:none;color:#fff;cursor:pointer;display:flex;font-size:.9375rem;font-weight:600;gap:.75rem;justify-content:center;padding:1rem;transition:all var(--transition-base);width:100%}.login-button:hover:not(:disabled){filter:brightness(.92)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.7}.button-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.button-arrow{font-size:1.25rem;transition:transform var(--transition-fast)}.login-button:hover .button-arrow{transform:translateX(4px)}.login-error{align-items:center;background:#d685851a;border:1px solid var(--color-error);border-radius:var(--radius-ctl);color:var(--color-error);display:flex;font-weight:500;gap:.75rem;margin-bottom:1.5rem;padding:1rem}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.error-icon{font-size:1.25rem}.login-footer{border-top:1px solid var(--line);padding-top:1.5rem}.login-hint{background:var(--wash);border-radius:var(--radius-ctl);color:var(--ink-2);font-size:.9rem;line-height:1.6;margin:0;padding:1rem}.login-hint strong{color:var(--color-dark)}.login-container{flex-direction:column;gap:2rem}.login-credits{position:relative;text-align:center;z-index:1}.login-credits p{color:var(--ink-3);font-size:.875rem;margin:0}@media (max-width:640px){.login-card{padding:2rem 1.5rem}.login-logo-text{font-size:2rem}.login-logo-icon{font-size:2.5rem}}.patient-list-container{margin:0 auto;max-width:1240px}.list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:3rem}.list-header h1{font-size:2.125rem;margin-bottom:.5rem}.subtitle{color:var(--ink-2);font-size:1rem;margin:0}.search-bar{margin-bottom:2.5rem;position:relative}.search-icon{font-size:1.25rem;left:1.25rem;position:absolute;top:50%;transform:translateY(-50%)}.search-bar input{border:1px solid var(--line);border-radius:var(--radius-ctl);font-size:1rem;padding:.875rem 1rem .875rem 3.25rem;transition:all var(--transition-fast);width:100%}.search-bar input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #d4a5742e}.patients-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.patient-card{background:var(--color-white);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);cursor:pointer;padding:1.5rem;transition:border-color var(--transition-base),background var(--transition-base)}.patient-card:hover{background:var(--wash);border-color:var(--color-primary)}.patient-header{align-items:center;display:flex;gap:1rem;margin-bottom:1.25rem}.patient-avatar-large{align-items:center;background:var(--color-primary-light);border-radius:50%;color:var(--brand-ink);display:flex;font-size:1.125rem;font-weight:600;height:48px;justify-content:center;width:48px}.patient-basic-info h3{font-size:1.0625rem;margin:0 0 .25rem}.patient-basic-info p{color:var(--ink-2);font-size:.875rem;margin:0}.patient-objective{margin-bottom:1rem}.objective-badge{background:var(--wash);border-radius:var(--radius-full);color:var(--brand-ink);display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.patient-stats{grid-gap:1rem;border-bottom:1px solid var(--line);border-top:1px solid var(--line);display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1rem;padding:1rem 0}.stat-item{align-items:center;display:flex;flex-direction:column;text-align:center}.stat-label{color:var(--ink-3);font-size:.6875rem;font-weight:600;letter-spacing:.06em;margin-bottom:.25rem;text-transform:uppercase}.stat-value{color:var(--ink);font-size:1rem;font-weight:600}.card-footer{text-align:center}.view-details{align-items:center;color:var(--color-primary-dark);display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;transition:all var(--transition-fast)}.patient-card:hover .view-details{gap:.75rem}.empty-state{background:var(--color-white);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:4rem 2rem;text-align:center}.empty-icon{display:block;font-size:4rem;margin-bottom:1.5rem;opacity:.5}.empty-state h3{font-size:1.5rem;margin-bottom:.75rem}.empty-state p{color:var(--ink-2);margin-bottom:1.5rem}.loading{color:var(--ink-2);font-size:1.2rem;padding:4rem;text-align:center}@media (max-width:768px){.list-header{align-items:flex-start;flex-direction:column;gap:1rem}.patients-grid{grid-template-columns:1fr}}.pa-page{--pa-surface:var(--color-white,#fff)}.pa-root{--pa-prot:#7189a6;--pa-carb:#b9d2bd;--pa-fat:#e8c9a8;--pa-surface:var(--color-white,#fff)}body.dark-mode .pa-root{--pa-prot:#9db8d6;--pa-carb:#9fcfaa;--pa-fat:#e8c9a8}.pa-topbar{-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);background:var(--bg);background:color-mix(in srgb,var(--bg) 88%,#0000);border-bottom:1px solid var(--line);margin:-2rem -2rem 1.5rem;padding:.85rem 2rem;position:sticky;top:0;z-index:30}.pa-topbar-in{align-items:center;display:flex;gap:1rem}.pa-back{background:var(--wash);border:0;border-radius:10px;border-radius:var(--radius-ctl,10px);color:var(--ink-2);cursor:pointer;display:inline-grid;flex-shrink:0;height:34px;place-items:center;transition:background .15s;width:34px}.pa-back:hover{background:var(--line)}.pa-title{align-items:center;color:var(--ink);display:flex;font-size:1.15rem;font-weight:700;gap:.5rem;margin:0;white-space:nowrap}.pa-title svg{color:var(--color-primary-dark)}.pa-top-actions{display:flex;gap:.5rem;margin-left:auto}.pa-btn{align-items:center;border:0;border-radius:10px;border-radius:var(--radius-ctl,10px);cursor:pointer;display:inline-flex;font:600 .88rem var(--font-body);gap:.4rem;height:38px;padding:0 1rem;transition:background .15s,transform .1s;white-space:nowrap}.pa-btn:active{transform:translateY(1px)}.pa-btn:disabled{cursor:default;opacity:.55}.pa-btn-primary{background:var(--color-primary-dark);color:#fff}.pa-btn-primary:hover{background:var(--color-primary-strong)}.pa-btn-ghost{background:var(--wash);color:var(--ink-2)}.pa-btn-ghost:hover{background:var(--line)}.pa-btn-sm{font-size:.82rem;height:32px;padding:0 .75rem}.pa-back:focus-visible,.pa-btn:focus-visible,.pa-meal-head:focus-visible,.pa-picker-clear:focus-visible,.pa-seg button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.pa-picker{flex:1 1;max-width:420px;position:relative}.pa-picker-box{align-items:center;background:var(--pa-surface);border:1.5px solid var(--line-strong);border-radius:10px;border-radius:var(--radius-ctl,10px);cursor:text;display:flex;gap:.6rem;height:40px;padding:0 .6rem 0 .75rem;transition:border-color .15s,box-shadow .15s}.pa-picker-box:hover{border-color:var(--color-primary-light)}.pa-picker-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,#0000)}.pa-picker-box svg{color:var(--ink-3);flex-shrink:0}
/* !important só para vencer o reset global de inputs do dark-mode */.pa-picker-input{background:#0000!important;border:0!important;box-shadow:none!important;color:var(--ink)!important;flex:1 1;font:500 .92rem var(--font-body);height:100%;min-width:0;outline:0;padding:0!important}.pa-picker-input::placeholder{color:var(--ink-400)}body.dark-mode .pa-picker-box{background:#1c1c1e}body.dark-mode .pa-picker-input{background:#0000!important;border:0!important;color:var(--ink)!important;padding:0!important}.pa-kbd{border:1px solid var(--line-strong);border-radius:5px;color:var(--ink-3);font:600 11px var(--font-body);padding:1px 6px}.pa-picker-clear{background:#0000;border:0;border-radius:6px;color:var(--ink-3);cursor:pointer;display:grid;height:24px;place-items:center;width:24px}.pa-picker-clear:hover{background:var(--wash);color:var(--ink)}.pa-picker-menu{background:var(--pa-surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);left:0;list-style:none;margin:0;max-height:320px;overflow-y:auto;padding:6px;position:absolute;right:0;top:46px;z-index:40}.pa-picker-opt{align-items:center;border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font-size:.9rem;gap:.6rem;padding:.5rem .6rem}.pa-picker-opt[aria-selected=true]{background:var(--wash)}.pa-picker-opt small{color:var(--ink-3);font-size:.78rem;margin-left:auto}.pa-picker-empty{color:var(--ink-3);font-size:.86rem;padding:.75rem}.pa-avatar{background:var(--brand-soft);border-radius:50%;color:var(--brand-ink);display:grid;flex-shrink:0;font:800 .72rem var(--font-body);height:26px;place-items:center;width:26px}.pa-avatar-lg{font-size:.95rem;height:44px;width:44px}.pa-card{background:var(--pa-surface);border:1px solid var(--line);border-radius:16px;border-radius:var(--radius-card,16px);box-shadow:var(--shadow-card)}.pa-fade{animation:pa-fade .22s ease-out}@keyframes pa-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.pa-empty{margin-bottom:1.25rem;padding:3.5rem 2rem;text-align:center}.pa-empty-ico{background:var(--brand-soft);border-radius:14px;color:var(--brand-ink);display:grid;height:52px;margin:0 auto 1rem;place-items:center;width:52px}.pa-empty h3{color:var(--ink);font-size:1.1rem;font-weight:800;margin:0 0 .35rem}.pa-empty p{text-wrap:pretty;color:var(--ink-3);margin:0 auto 1.25rem;max-width:440px}.pa-empty-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.pa-hint{color:var(--ink-3);font-size:.84rem}.pa-ctx{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.pa-ctx-name{color:var(--ink);font-size:1.5rem;font-weight:800;letter-spacing:-.01em;line-height:1.2}.pa-ctx-meta{color:var(--ink-3);font-size:.86rem}.pa-seg{background:var(--wash);border-radius:12px;display:flex;gap:4px;margin-left:auto;padding:4px}.pa-seg button{align-items:flex-start;background:none;border:0;border-radius:9px;color:var(--ink-3);cursor:pointer;display:flex;flex-direction:column;line-height:1.25;font:600 .84rem var(--font-body);padding:.45rem .8rem;transition:background .15s,color .15s}.pa-seg button small{font-size:.72rem;font-weight:500}.pa-seg button[aria-selected=true]{background:var(--pa-surface);box-shadow:var(--shadow-card);color:var(--ink)}.pa-seg button:hover:not([aria-selected=true]){color:var(--ink)}.pa-seg .pa-seg-all{align-items:center;flex-direction:row;gap:.3rem}.pa-summary{display:grid;grid-template-columns:1.15fr 1fr;margin-bottom:1.25rem;overflow:hidden}.pa-sum-left{border-right:1px solid var(--line)}.pa-sum-left,.pa-sum-right{min-width:0;padding:1.5rem 1.75rem}.pa-sum-right{align-items:center;display:flex;gap:1.5rem}.pa-plan-head{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:.4rem}.pa-plan-name{color:var(--ink);flex:1 1;font-size:1.05rem;font-weight:700;min-width:0;overflow-wrap:anywhere}.pa-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}.pa-chip{align-items:center;background:var(--wash);border-radius:999px;color:var(--ink-2);display:inline-flex;font:700 .72rem var(--font-body);gap:.3rem;padding:3px 9px}.pa-chip-ok{background:#edf4ee;background:var(--success-soft,#edf4ee);color:var(--color-success)}body:not(.dark-mode) .pa-chip-ok{background:#edf4ee}.pa-chip-ai{background:var(--info-soft);color:var(--pa-prot)}body:not(.dark-mode) .pa-chip-ai{background:#edf1f6}.pa-kcal{align-items:baseline;display:flex;gap:.5rem}.pa-kcal b{font-feature-settings:"tnum";color:var(--ink);font-size:3.25rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.03em;line-height:1}.pa-kcal span{color:var(--ink-3);font-weight:600}.pa-kcal-missing{color:var(--ink-3);font-size:.9rem}.pa-facts{border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:1.75rem;margin-top:1.25rem;padding-top:1rem}.pa-fact-l{color:var(--ink-3);font:700 .68rem var(--font-body);letter-spacing:.07em;margin-bottom:2px;text-transform:uppercase}.pa-fact-v{align-items:center;color:var(--ink);display:flex;font-size:.95rem;font-weight:700;gap:.35rem}.pa-fact-v svg{color:var(--ink-3)}.pa-donut{flex-shrink:0;height:148px;position:relative;width:148px}.pa-donut-c{display:grid;inset:0;line-height:1.1;place-items:center;pointer-events:none;position:absolute;text-align:center}.pa-donut-c b{font-feature-settings:"tnum";color:var(--ink);font-size:1.05rem;font-variant-numeric:tabular-nums;font-weight:800}.pa-donut-c small{color:var(--ink-3);display:block;font-size:.7rem;font-weight:600}.pa-macros{display:flex;flex:1 1;flex-direction:column;gap:.85rem;min-width:0}.pa-mac{grid-gap:.6rem;align-items:center;display:grid;gap:.6rem;grid-template-columns:10px 1fr auto}.pa-dot{border-radius:3px;height:10px;width:10px}.pa-mac-n{color:var(--ink-2);font-size:.88rem;font-weight:600}.pa-mac-g{font-feature-settings:"tnum";color:var(--ink);font-variant-numeric:tabular-nums;font-weight:800}.pa-mac-g small{color:var(--ink-3);font-weight:600;margin-left:.35rem}.pa-ph{text-wrap:pretty;align-items:center;border:1.5px dashed var(--line-strong);border-radius:12px;color:var(--ink-3);display:flex;font-size:.84rem;gap:.5rem;padding:1rem}.pa-ph svg{flex-shrink:0}.pa-sec-h{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin:0 0 .75rem}.pa-sec-h h2{color:var(--ink);font-size:1rem;font-weight:700;margin:0}.pa-sec-meta{color:var(--ink-3);font-size:.82rem}.pa-meals{margin-bottom:1.25rem;padding:.4rem 0}.pa-meal{border-top:1px solid var(--line)}.pa-meal:first-child{border-top:0}.pa-meal-head{grid-gap:1rem;align-items:center;background:none;border:0;color:inherit;cursor:pointer;display:grid;font:inherit;gap:1rem;grid-template-columns:64px 30px minmax(150px,200px) 1fr 150px;padding:.9rem 1.5rem;text-align:left;transition:background .12s;width:100%}.pa-meal-head:hover{background:var(--bg)}.pa-m-time{font-feature-settings:"tnum";color:var(--ink-2);font-size:.92rem;font-variant-numeric:tabular-nums;font-weight:800}.pa-m-time-empty{color:var(--ink-3);font-weight:600}.pa-m-ico{background:var(--brand-soft);border-radius:9px;color:var(--brand-ink);display:grid;height:30px;place-items:center;width:30px}.pa-m-name{color:var(--ink);font-size:.93rem;font-weight:700;min-width:0;overflow-wrap:anywhere}.pa-m-name small{color:var(--ink-3);display:block;font-size:.76rem;font-weight:500}.pa-m-foods{display:flex;flex-wrap:wrap;gap:.35rem;min-width:0}.pa-food{background:var(--wash);border-radius:999px;color:var(--ink-2);font-size:.8rem;max-width:100%;overflow:hidden;padding:2px 9px;text-overflow:ellipsis;white-space:nowrap}.pa-food i{color:var(--ink-3);font-style:normal}.pa-food-more{background:none;border:1px dashed var(--line-strong);color:var(--ink-3)}.pa-m-kcal{text-align:right}.pa-m-kcal b{font-feature-settings:"tnum";color:var(--ink);font-variant-numeric:tabular-nums;font-weight:800}.pa-m-kcal small{color:var(--ink-3);font-size:.76rem;font-weight:600}.pa-bar{background:var(--line);border-radius:3px;display:flex;height:5px;margin-top:5px;overflow:hidden}.pa-meal-detail{padding:0 1.5rem .9rem calc(3.5rem + 94px)}.pa-meal-detail table{border-collapse:collapse;font-size:.84rem;width:100%}.pa-meal-detail td{border-top:1px solid var(--line);color:var(--ink-2);padding:.35rem .25rem}.pa-meal-detail td.pa-num{font-feature-settings:"tnum";color:var(--ink-3);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.pa-meal-obs{color:var(--ink-3);font-size:.8rem;margin-top:.5rem}.pa-two{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:1fr 1fr;margin-bottom:1.25rem}.pa-list{padding:1rem 1.5rem}.pa-li{align-items:center;border-top:1px solid var(--line);color:var(--ink-2);display:flex;font-size:.88rem;gap:.75rem;padding:.6rem 0}.pa-cmp-sub+.pa-li,.pa-sec-h+.pa-li{border-top:0}.pa-li b{font-feature-settings:"tnum";color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.pa-li-grow{flex:1 1;min-width:0}.pa-cmp-sub,.pa-li-sub{color:var(--ink-3)}.pa-cmp-sub{font-size:.76rem;margin:-.4rem 0 .4rem}.pa-delta{font-feature-settings:"tnum";align-items:center;color:var(--ink-3);display:inline-flex;font-variant-numeric:tabular-nums;font-weight:800;gap:.2rem;justify-content:flex-end;min-width:84px}.pa-skel{animation:pa-pulse 1.3s ease-in-out infinite;background:var(--wash);border-radius:8px}@keyframes pa-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.pa-fade,.pa-skel{animation:none}.pa-root *,.pa-topbar *{transition:none!important}}@media (max-width:820px){.pa-topbar{margin:-2rem -2rem 1rem;padding:.7rem 1rem}.pa-topbar-in{flex-wrap:wrap}.pa-picker{flex-basis:100%;max-width:none;order:3}.pa-kbd{display:none}.pa-summary,.pa-two{grid-template-columns:1fr}.pa-sum-left{border-bottom:1px solid var(--line);border-right:0;padding:1.25rem}.pa-sum-right{flex-wrap:wrap;justify-content:center;padding:1.25rem}.pa-seg{margin-left:0;overflow-x:auto;width:100%}.pa-meal-head{gap:.75rem;grid-template-columns:30px 1fr auto;padding:.85rem 1rem}.pa-m-time{display:none}.pa-m-foods{grid-column:1/-1;order:5}.pa-meal-detail{overflow-x:auto;padding:0 1rem .85rem}.pa-kcal b{font-size:2.6rem}}@media (max-width:768px){.app:has(.pa-page){grid-template-rows:auto 1fr}.pa-page{padding:0!important}.pa-topbar{background:var(--bg);margin:0 0 1rem;padding:.7rem 0;position:relative;top:auto}.pa-topbar-in{gap:.6rem}.pa-title{font-size:1rem;min-width:0;white-space:normal}.pa-back{height:38px;width:30px}.pa-top-actions .pa-btn{font-size:.8rem;padding:0 .65rem}.pa-picker{min-width:0}.pa-picker-menu{max-height:min(320px,45dvh)}}.bf{--bf-surface:var(--color-white);--bf-bg:var(--color-background);--bf-ink:var(--color-dark);--bf-muted:var(--color-gray-600);--bf-line:var(--color-gray-100);--bf-brand:var(--color-primary-strong);color:var(--bf-ink);font-family:var(--font-body);margin:0 auto;max-width:1480px}.bf button,.bf input,.bf textarea{background:var(--bf-surface);border:1px solid var(--bf-line);border-radius:9px;color:var(--bf-ink);font:inherit}.bf button{align-items:center;cursor:pointer;display:inline-flex;font-size:.83rem;font-weight:600;gap:7px;padding:9px 13px}.bf button:hover{background:var(--color-light)}.bf button:disabled{cursor:default;opacity:.55}.bf button:focus-visible,.bf input:focus-visible,.bf textarea:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.bf h1,.bf h2,.bf h3,.bf p{margin:0}.bf h1{align-items:center;display:flex;font-size:1.7rem;gap:10px}.bf h2{font-size:1.1rem}.bf h3{font-size:.85rem;margin-bottom:12px}.bf p,.bf small{line-height:1.6}.bf small{color:var(--bf-muted)}.bf .bf-back{background:none;border:0;margin-bottom:18px;padding-left:0}.bf-heading{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:24px}.bf-heading p{color:var(--bf-muted);margin-top:5px}.bf-owner{font-size:.9rem;text-align:right}.bf-owner small{display:block;font-size:.72rem}.bf-tabs{border-bottom:1px solid var(--bf-line);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:14px}.bf-tabs button[aria-pressed=true]{background:var(--brand-soft);border-color:var(--color-primary);color:var(--brand-ink)}.bf-workspace{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) 370px}.bf-editor,.bf-map,.bf-panel{background:var(--bf-surface);border:1px solid var(--bf-line);border-radius:16px}.bf-map{padding:20px}.bf-map-head{border-bottom:1px solid var(--bf-line);margin-bottom:20px;padding-bottom:20px}.bf-map-head label{align-items:center;color:var(--bf-muted);display:flex;font-size:.75rem;gap:8px;margin-top:8px}.bf-entry{background:var(--color-light);border:1px solid var(--bf-line);border-radius:24px;font-size:.85rem;font-weight:600;margin:auto;max-width:340px;padding:10px 16px;text-align:center}.bf-line{background:var(--bf-line);height:24px;margin:auto;width:1px}.bf-route{color:var(--bf-muted);font-size:.72rem;padding-bottom:12px;text-align:center}.bf-gate{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.bf-gate small{display:block;margin-bottom:8px;text-align:center}.bf .bf-node{align-items:stretch;display:flex;flex-direction:column;gap:3px;margin-bottom:10px;padding:11px 12px;text-align:left;width:100%}.bf-node small{color:var(--bf-muted);font-size:.65rem;margin:0;text-align:left}.bf-node[aria-pressed=true]{background:var(--brand-soft);border-color:var(--bf-brand);box-shadow:inset 3px 0 var(--bf-brand)}.bf-node.customized small{color:var(--bf-brand)}.bf-node.dim{opacity:.55}.bf-branches{grid-gap:14px;border-top:1px solid var(--bf-line);display:grid;gap:14px;grid-template-columns:1.15fr 1fr 1fr;padding-top:20px}.bf-gate-note{background:var(--brand-soft);border-radius:8px;color:var(--brand-ink);font-size:.7rem;margin:0 0 12px!important;padding:9px}.bf-more{border-top:1px solid var(--bf-line);margin-top:16px;padding-top:16px}.bf summary{cursor:pointer;font-size:.85rem;font-weight:600;margin-bottom:12px}.bf-extras{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.bf-extras .bf-node{margin:0}.bf-editor{overflow:hidden;position:sticky;top:16px}.bf-editor header{border-bottom:1px solid var(--bf-line);display:flex;gap:10px;padding:20px}.bf-editor header small{font-size:.65rem;letter-spacing:.06em;text-transform:uppercase}.bf-editor header h2{margin:5px 0}.bf-editor header p{color:var(--bf-muted);font-size:.8rem}.bf-editor-body{padding:20px}.bf-label{display:flex;font-size:.78rem;justify-content:space-between;margin-bottom:8px}.bf-label span{color:var(--bf-muted)}.bf textarea{background:var(--bf-bg);font-size:.85rem;line-height:1.6;min-height:190px;padding:12px;resize:vertical;width:100%}.bf-tokens{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.bf .bf-tokens button{background:var(--color-light);font-size:.67rem;padding:4px 7px}.bf-help{color:var(--bf-muted);font-size:.75rem;margin:12px 0!important}.bf-fixed{background:var(--color-light);border-radius:9px;font-size:.75rem;margin:12px 0;padding:12px;white-space:pre-line}.bf-fixed small{display:block}.bf-preview-label{color:var(--bf-muted);font-size:.63rem;letter-spacing:.08em;margin:22px 0 8px!important;text-transform:uppercase}.bf-chat{background:var(--color-light);border-radius:12px;padding:14px}.bf-chat>small{font-size:.72rem}.bf-bubble{background:var(--bf-surface);border:1px solid var(--bf-line);border-radius:0 12px 12px;font-size:.8rem;margin-top:12px;overflow-wrap:anywhere;padding:12px;white-space:pre-wrap}.bf-editor footer{border-top:1px solid var(--bf-line);display:flex;gap:8px;justify-content:space-between;padding:16px}.bf .bf-primary{background:var(--bf-brand);border-color:var(--bf-brand);color:#fff}body.dark-mode .bf .bf-primary{color:#2f2a26}.bf .bf-primary:hover{background:var(--bf-brand);filter:brightness(.95)}.bf-alert,.bf-info,.bf-toast{border:1px solid var(--bf-line);border-radius:10px;font-size:.85rem;margin-bottom:16px;padding:12px 16px}.bf-alert,.bf-error{color:var(--color-error)!important}.bf-info{background:var(--brand-soft);color:var(--brand-ink)}.bf-toast{align-items:center;color:var(--color-success);display:flex;gap:8px}.bf .bf-close{display:none}.bf-panel{padding:24px}.bf-panel>p{color:var(--bf-muted);margin:8px 0 16px}.bf-review{border-bottom:1px solid var(--bf-line);display:flex;font-size:.85rem;gap:20px;justify-content:space-between;padding:20px 0}.bf-review small{display:block}.bf-review-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;max-width:440px}.bf-empty{padding:30px 0}.bf-channel{max-width:640px}.bf-channel label{display:block;font-size:.85rem;margin:18px 0}.bf-channel input{display:block;margin-top:7px;padding:11px;width:100%}@media(max-width:1150px){.bf-workspace{gap:16px;grid-template-columns:minmax(0,1fr) 320px}.bf-map{padding:14px}.bf-branches{gap:8px}.bf-branches .bf-node{font-size:.72rem;padding:10px}.bf-review{flex-direction:column}.bf-review-actions{justify-content:flex-start;max-width:none}}@media(max-width:800px){.bf-heading,.bf-owner{display:block}.bf-owner{margin-top:12px;text-align:left}.bf-workspace{display:block}.bf-branches{grid-template-columns:1fr}.bf-branches .bf-node{font-size:.85rem}.bf-editor{display:none}.bf-editor.open{box-shadow:0 0 0 30px #0008;display:block;inset:12px;overflow:auto;position:fixed;z-index:1000}.bf-editor header{justify-content:space-between}.bf .bf-close{align-self:start;display:inline-flex}.bf-extras{grid-template-columns:1fr}.bf-review-actions{align-items:stretch}.bf-review-actions button{white-space:normal}.bf-panel{padding:16px}}
/*# sourceMappingURL=main.d898391d.css.map*/