footer{background:linear-gradient(135deg,#1a2e40,#2a4a66);color:#fff;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding:0;width:100vw}.footer-container{padding:2rem 1rem 1rem;width:100%}.footer-main{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:minmax(240px,1.7fr) minmax(180px,1fr) minmax(180px,1fr);margin-bottom:2rem}.footer-brand,.footer-section{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;padding:1rem 1.05rem}.footer-brand h3{color:#4caf50;font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.footer-brand .tagline{color:#b8d4e3;font-size:1rem;font-style:italic;margin:0 0 .75rem}.footer-brand .description{font-size:.9rem;line-height:1.5}.footer-section h4{border-bottom:2px solid #4caf50;color:#fff;display:inline-block;font-family:Poppins,sans-serif;font-size:1rem;margin:0 0 .8rem;padding-bottom:.5rem}.footer-list{list-style:none;margin:0;padding:0}.footer-list li{margin-bottom:.5rem}.footer-list-nav{grid-column-gap:.9rem;grid-row-gap:.5rem;column-gap:.9rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:.5rem}.footer-list-nav li{margin-bottom:0}.footer-section a{align-items:center;color:#94b8cc;display:inline-flex;font-size:.85rem;text-decoration:none;transition:all .2s ease}.footer-section a:hover{color:#94b8cc;transform:none}.footer-cta{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-bottom:1.5rem}.contact-section,.newsletter-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;padding:1.5rem}.newsletter-section h4{color:#fff;font-family:Poppins,sans-serif;font-size:1.1rem;margin:0 0 .5rem}.contact-section p,.newsletter-section p{color:#b8d4e3;font-size:.9rem;margin:0 0 1rem}.newsletter-form{display:flex;gap:.75rem;max-width:100%}.newsletter-form input{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border:2px solid #fff3;border-radius:8px;color:#fff;flex:1 1;font-family:Roboto,sans-serif;font-size:16px;min-width:0;padding:.75rem 1rem}.newsletter-form input:focus{background:#ffffff26;border-color:#4caf50;outline:none}.newsletter-form button{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Roboto,sans-serif;font-size:15px;font-weight:500;padding:.75rem 1.25rem;transition:all .2s ease;white-space:nowrap}.newsletter-form button:hover{background:#45a049;transform:translateY(-1px)}.newsletter-form button:disabled{cursor:not-allowed;opacity:.7;transform:none}.newsletter-form input:disabled{opacity:.7}.newsletter-section .newsletter-message{color:#cfe4f1;font-size:.85rem;margin:.75rem 0 0}.newsletter-section .newsletter-message.success{color:#9be7b0}.newsletter-section .newsletter-message.error{color:#ffb4b4}.contact-section h4{color:#fff;font-family:Poppins,sans-serif;font-size:1.1rem;margin:0 0 .5rem}.contact-form{grid-gap:.9rem;display:grid;gap:.9rem}.contact-row{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.contact-field{grid-gap:.35rem;display:grid;gap:.35rem}.contact-label{color:#d9e7f2;font-size:.85rem;font-weight:600}.contact-form input,.contact-form select,.contact-form textarea{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border:2px solid #fff3;border-radius:8px;color:#fff;font-family:Roboto,sans-serif;font-size:16px;min-width:0;padding:.75rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.contact-form textarea{min-height:120px;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{background:#ffffff26;border-color:#4caf50;box-shadow:0 0 0 3px #4caf5033;outline:none}.contact-form input.is-invalid,.contact-form select.is-invalid,.contact-form textarea.is-invalid{border-color:#ffb4b4;box-shadow:0 0 0 3px #ffb4b440}.contact-form button{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Roboto,sans-serif;font-size:15px;font-weight:500;justify-self:start;padding:.75rem 1.25rem;transition:all .2s ease;white-space:nowrap}.contact-form button:hover{background:#45a049;transform:translateY(-1px)}.contact-form button:disabled{cursor:not-allowed;opacity:.7;transform:none}.contact-form input:disabled,.contact-form select:disabled,.contact-form textarea:disabled{opacity:.7}.contact-hint{color:#b8d4e3;font-size:.8rem}.contact-error{color:#ffb4b4;font-size:.8rem}.contact-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.contact-note{color:#b8d4e3;font-size:.8rem}.contact-message{color:#cfe4f1;font-size:.85rem;margin:.75rem 0 0}.contact-message.success{color:#9be7b0}.contact-message.error{color:#ffb4b4}.footer-separator{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);height:1px;margin:1.5rem 0}.footer-brand{align-items:flex-start;display:flex;flex-direction:column;gap:.55rem;justify-content:flex-start}.footer-logo-link{align-items:center;display:flex;justify-content:flex-start;line-height:1;min-width:210px;text-decoration:none}.footer-logo-link,.footer-logo-svg{height:56px;margin:0;max-width:100%;overflow:hidden;padding:0;width:210px}.footer-logo-svg{color:#fff;display:block;flex:0 0 auto;font-size:.85rem;font-style:normal!important;max-height:56px;opacity:.9;transition:color .25s ease}.footer-brand .description{color:#94b8cc;font-family:Roboto,sans-serif;font-size:.88rem;line-height:1.6;margin:0}.footer-legal{grid-gap:1.5rem;align-items:center;display:grid;gap:1.5rem;grid-template-columns:1fr auto 1fr;padding-top:1rem}.footer-copyright p{color:#94b8cc;font-size:.85rem;margin:0 0 .25rem}.footer-copyright p:last-child{margin:0}.footer-copyright strong{color:#4caf50}.footer-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.footer-link-button,.footer-links a{color:#94b8cc;font-size:.8rem;text-decoration:none;transition:color .2s ease;white-space:nowrap}.footer-link-button{background:#0000;border:none;cursor:pointer;font-family:inherit;padding:0}.footer-link-button:hover,.footer-links a:hover{color:#94b8cc}.footer-social{align-items:flex-end;flex-direction:column}.footer-social,.social-icons{display:flex;gap:.75rem}.social-icon{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:50%;display:flex;height:32px;justify-content:center;text-decoration:none;transition:all .2s ease;width:32px}.social-icon,.social-icon:hover{background:#ffffff1a;color:#94b8cc}.social-icon:hover{transform:none}.social-icon svg{height:16px;width:16px}.version{color:#6b91a8;font-family:Roboto Mono,monospace;font-size:.75rem}@media (max-width:968px){.footer-main{gap:1.5rem!important;grid-template-columns:1fr 1fr!important}.footer-legal{gap:1rem!important;grid-template-columns:1fr!important;text-align:center!important}.footer-copyright{margin-bottom:1rem!important;text-align:center!important}.footer-links{justify-content:center!important;margin-bottom:1rem!important}.footer-social{align-items:center!important}}@media (max-width:640px){.footer-main{gap:1.5rem!important;grid-template-columns:1fr!important}.footer-list-nav{grid-template-columns:1fr}.newsletter-form{flex-direction:column!important;gap:.75rem!important}.contact-row{grid-template-columns:1fr!important}.contact-form button{justify-self:stretch;width:100%}.contact-actions{width:100%}.footer-links{align-items:center!important;flex-direction:column!important;gap:.75rem!important}}@media (max-width:480px){.footer-container{padding:1.5rem .75rem 1rem!important}.footer-main h4{font-size:.95rem!important}.footer-main li a{font-size:.8rem!important}.footer-main p{font-size:.85rem!important}}@media (max-width:360px){.footer-container{padding:1.1rem .55rem .85rem!important}.footer-cta,.footer-main{gap:.8rem!important}.footer-brand,.footer-section{border-radius:10px;padding:.8rem .75rem!important}.contact-section,.newsletter-section{padding:.95rem .75rem!important}}.nutri-score{border-radius:5px;box-shadow:0 1px 4px #00000012;color:#fff;display:inline-block;font-size:.85rem;font-weight:700;letter-spacing:1px;margin:2px 0;padding:2px 7px}.nutri-a{background:#3ec300}.nutri-b{background:#86d219}.nutri-c{background:#ffd600;color:#222}.nutri-d{background:#ff9800}.nutri-e{background:#e53935}.demo-mode [draggable=true],.demo-mode button,.demo-mode input[type=checkbox],.demo-mode select{cursor:default;pointer-events:none}.demo-mode .meal-table-row{cursor:default}.demo-mode .meal-actions button,.demo-mode .meal-table-toolbar-actions button{cursor:default!important;pointer-events:none!important}.virtual-cursor{height:24px;pointer-events:none;position:fixed;transition:transform .15s ease-out;width:24px;z-index:10000}.virtual-cursor:before{border-bottom:16px solid #333;border-left:8px solid #0000;border-right:8px solid #0000;content:"";height:0;position:absolute;transform:rotate(-30deg);width:0}.toast-message{align-items:center;background:#fff;border-left:6px solid #4caf50;border-left:6px solid var(--vert-vitalite);border-radius:12px;box-shadow:0 6px 18px #1a2e401a;color:#1a2e40;color:var(--bleu-mineral);display:flex;font-family:Roboto,sans-serif;font-size:.95rem;font-weight:600;gap:.6rem;left:50%;min-width:220px;opacity:0;padding:.85rem 1.5rem;pointer-events:none;position:fixed;text-align:center;top:1.25rem;transform:translateX(-50%) translateY(-12px);transition:opacity .35s ease,transform .35s ease;z-index:900}.toast-message.error{color:#e53935;color:var(--rouge-alerte)}.toast-message.info{color:#1a2e40;color:var(--bleu-mineral)}.toast-message.show{opacity:1;transform:translateX(-50%) translateY(0)}.toast-message svg{fill:currentColor;flex-shrink:0;height:18px;opacity:.9;width:18px}:root{--bleu-mineral:#1a2e40;--vert-vitalite:#4caf50;--gris-clair:#f8f9fa;--gris-fonce:#333;--rouge-alerte:#e53935;--jaune-energie:#ffc107;--shadow-sm:0 1px 3px #0000001f;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 10px 15px #0000001a}*,.journal-container *{box-sizing:border-box}.journal-container{color:#333;color:var(--gris-fonce);font-family:Roboto,sans-serif;font-size:16px;line-height:1.5;margin:0 auto;max-width:1200px;padding:.5rem;position:relative}.journal-container .empty-state{background:#fff;border-radius:8px;box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);margin-bottom:1rem;padding:1rem;text-align:center}.journal-container .empty-icon{margin-bottom:.5rem;opacity:.6}.journal-container .empty-icon svg{fill:#1a2e40;fill:var(--bleu-mineral)}.journal-container .empty-state h3{color:#1a2e40;color:var(--bleu-mineral);font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.journal-container .empty-state p{color:#666;font-size:.9rem;margin:0 0 .75rem}.journal-container .add-first-meal{background:#4caf50;background:var(--vert-vitalite);border:none;border-radius:6px;box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);color:#fff;font-size:15px;font-weight:600;min-height:40px;padding:.625rem 1rem}.journal-container .day-header{align-items:center;background:linear-gradient(135deg,#1a2e40,#2c5282);background:linear-gradient(135deg,var(--bleu-mineral) 0,#2c5282 100%);border-radius:12px;box-shadow:0 6px 20px #1a2e4026;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;overflow:visible;padding:1rem;position:relative}.journal-container .day-header:before{background:linear-gradient(45deg,#ffffff1a 25%,#0000 0),linear-gradient(-45deg,#ffffff1a 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ffffff1a 0),linear-gradient(-45deg,#0000 75%,#ffffff1a 0);background-position:0 0,0 7.5px,7.5px -7.5px,-7.5px 0;background-size:15px 15px;bottom:0;content:"";left:0;opacity:.2;pointer-events:none;position:absolute;right:0;top:0}.journal-container .day-header-title{color:#fff;font-family:Poppins,sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:.5px;line-height:1.2;margin:0;position:relative;text-align:center;text-shadow:0 2px 4px #0000004d;z-index:1}.journal-container .day-header-nav{background:#ffffff14;border:1px solid #ffffff38;border-radius:12px;padding:.34rem}.journal-container .day-header-actions,.journal-container .day-header-nav{align-items:center;display:flex;gap:.5rem;justify-content:flex-start;position:relative;width:auto;z-index:1}.journal-container .day-header-actions{flex-wrap:wrap}.journal-container .day-header-action-btn{align-items:center;background:#ffffff29;border:1px solid #ffffff59;border-radius:8px;box-shadow:0 2px 8px #0a14232e;color:#fff;cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:700;gap:.42rem;justify-content:center;letter-spacing:.02em;min-height:34px;padding:.45rem .75rem;transition:opacity .2s ease}.journal-container .day-header-action-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.modal-export-period-form{display:flex;flex-direction:column;gap:.75rem}.modal-export-period-presets{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.modal-export-period-presets button{background:#f8fafc;border:1px solid #d5dde6;border-radius:8px;color:#1a2e40;cursor:pointer;font-size:.82rem;font-weight:700;min-height:36px}.modal-export-period-field{display:flex;flex-direction:column;gap:.35rem}.modal-export-period-field span{color:#334155;font-size:.82rem;font-weight:600}.modal-export-period-field .date-picker-trigger,.modal-export-period-field .date-picker-wrapper{width:100%}.modal-export-period-field .date-picker-trigger{border-radius:8px;box-shadow:none;min-height:40px}.modal-export-period-error{color:#b91c1c;font-size:.82rem;font-weight:600;margin:0}.journal-container .day-header-nav .day-nav-btn{align-items:center;background:#ffffff2e;border:1px solid #ffffff4d;border-radius:10px;box-shadow:0 4px 10px #0a142329;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.25rem;font-weight:700;height:46px;justify-content:center;width:46px}.journal-container .date-picker-wrapper{flex:0 0 auto;max-width:160px;min-width:150px;position:relative;width:160px}.journal-container .date-picker-trigger{align-items:center;background:#ffffffeb;border:1px solid #ffffff73;border-radius:10px;box-shadow:0 6px 14px #0a142333;color:#10293a;display:flex;font-family:Roboto,sans-serif;font-size:.95rem;font-weight:600;gap:.45rem;justify-content:flex-start;min-height:36px;padding:.3rem .34rem .3rem .45rem;width:100%}.journal-container .date-picker-inline-input{font-feature-settings:"tnum";-webkit-appearance:none;appearance:none;background:#0000;background-image:none;border:none;color:#10293a;flex:0 0 auto;font-family:inherit;font-size:.95rem;font-variant-numeric:tabular-nums;font-weight:700;max-width:96px;min-height:30px;min-width:88px;padding:0 .1rem;width:96px}.journal-container .date-picker-inline-input::-webkit-calendar-picker-indicator{-webkit-appearance:none;display:none;margin:0;opacity:0;pointer-events:none;width:0}.journal-container .date-picker-inline-input::-webkit-clear-button,.journal-container .date-picker-inline-input::-webkit-inner-spin-button{display:none}.journal-container .date-picker-inline-input:focus{outline:none}.journal-container .date-picker-open-btn{align-items:center;background:#f4f8fc;border:1px solid #d2deea;border-radius:8px;color:#1e3a52;cursor:pointer;display:inline-flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.journal-container .date-picker-trigger-icon{flex-shrink:0;font-size:.9rem;opacity:.72}.journal-container .date-picker-trigger:focus{background:#fff;border-color:#9fd7a2;box-shadow:0 0 0 3px #9fd7a240;outline:none}.date-picker-popover{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff!important;border:1px solid #d7e1ec;border-radius:12px;box-shadow:0 16px 36px #0f172a38;filter:none;isolation:isolate;left:50%;max-height:calc(100vh - 1rem);mix-blend-mode:normal;opacity:1!important;overflow-y:auto;padding:.75rem;pointer-events:auto;position:fixed;top:1rem;transform:translateX(-50%);width:min(340px,calc(100vw - 1rem));z-index:2147483647}.date-picker-backdrop{background:#0f172a33;border:none;cursor:default;inset:0;margin:0;opacity:1;padding:0;position:fixed;z-index:2147483646}.date-picker-popover .date-picker-popover-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.55rem}.date-picker-popover .date-picker-popover-header strong{color:#0f2b40;font-size:.95rem;font-weight:700}.date-picker-popover .date-picker-month-btn{background:#f8fbff;border:1px solid #d7e1ec;border-radius:8px;color:#1f3b52;cursor:pointer;font-size:1.35rem;font-weight:700;height:42px;width:42px}.date-picker-popover .date-picker-weekdays{grid-gap:.25rem;display:grid;gap:.25rem;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:.32rem}.date-picker-popover .date-picker-weekdays span{color:#64748b;font-size:.72rem;font-weight:700;text-align:center;text-transform:uppercase}.date-picker-popover .date-picker-grid{grid-gap:.25rem;display:grid;gap:.25rem;grid-template-columns:repeat(7,minmax(0,1fr))}.date-picker-popover .date-picker-day-btn{background:#fff;border:1px solid #0000;border-radius:8px;color:#1f2937;cursor:pointer;font-size:.84rem;font-weight:600;min-height:34px}.date-picker-popover .date-picker-day-btn.is-outside{color:#9aa5b1}.date-picker-popover .date-picker-day-btn.is-today{border-color:#4caf50;color:#2f8f40}.date-picker-popover .date-picker-day-btn.is-selected{background:#0f67ce;border-color:#0d55ab;box-shadow:0 4px 10px #0f67ce3d;color:#fff}.date-picker-popover .date-picker-day-btn.is-disabled{box-shadow:none;cursor:not-allowed;opacity:.35}.date-picker-popover .date-picker-day-btn:focus{box-shadow:0 0 0 2px #4caf5033;outline:none}.date-picker-popover .date-picker-popover-footer{grid-gap:.4rem;border-top:1px solid #e8eef5;display:grid;gap:.4rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.62rem;padding-top:.58rem}.date-picker-popover .date-picker-popover-footer button{background:#f8fbff;border:1px solid #d5deea;border-radius:8px;color:#1f3b52;cursor:pointer;font-size:.78rem;font-weight:700;min-height:34px}.date-picker-popover .date-picker-close-row{margin-top:.48rem}.date-picker-popover .date-picker-close-row button{background:#f8fbff;border:1px solid #d5deea;border-radius:8px;color:#1f3b52;cursor:pointer;font-size:.8rem;font-weight:700;min-height:36px;width:100%}@media (max-width:1024px){.journal-container .date-picker-inline-input{font-size:16px}.date-picker-popover{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff!important;border:1px solid #d7e1ec;border-radius:12px;filter:none;height:auto;left:50%;max-height:calc(100dvh - env(safe-area-inset-top, 0px) - .8rem);max-width:calc(100vw - .8rem);mix-blend-mode:normal;opacity:1!important;overflow-y:auto;overscroll-behavior:contain;padding:.5rem;position:fixed;right:auto;top:calc(env(safe-area-inset-top, 0px) + .4rem);transform:translateX(-50%);width:min(340px,calc(100vw - .8rem));z-index:2147483647}.date-picker-backdrop{display:block}.date-picker-popover .date-picker-popover-header{margin-bottom:.35rem}.date-picker-popover .date-picker-weekdays{gap:.18rem;margin-bottom:.24rem}.date-picker-popover .date-picker-grid{gap:.18rem}.date-picker-popover .date-picker-popover-footer{gap:.3rem;margin-top:.38rem;padding-top:.36rem}.date-picker-popover .date-picker-close-row{margin-top:.32rem}}@media (max-width:576px){.journal-container .day-header{align-items:stretch}.journal-container .day-header-nav{flex-wrap:nowrap;gap:.35rem;justify-content:center;max-width:none;padding:.34rem;width:100%}.journal-container .day-header-nav .day-nav-btn{border-radius:10px;font-size:1rem;height:34px;width:34px}.journal-container .date-picker-wrapper{flex:1 1 auto;max-width:none;min-width:0;width:auto}.journal-container .date-picker-trigger{font-size:.9rem;justify-content:space-between;min-height:34px;padding:.28rem .3rem .28rem .4rem;width:100%}.journal-container .date-picker-inline-input{flex:1 1 auto;font-size:16px;max-width:none;min-height:30px;min-width:0;width:100%}.journal-container .date-picker-open-btn{height:30px;width:30px}.journal-container .day-header-actions{flex-wrap:nowrap;justify-content:center;width:100%}.journal-container .day-header-action-btn{font-size:.72rem;min-height:30px;padding:.32rem .5rem}.journal-container .date-picker-day-btn{font-size:.9rem;min-height:40px}.journal-container .date-picker-popover-footer button{font-size:.82rem;min-height:38px}}.journal-container .copy-options-section{background:#fff;border:1px solid #d8e3ec;border-radius:12px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);margin-bottom:1rem;padding:.95rem;position:relative}.journal-container .copy-main-btn{align-items:flex-start;background:linear-gradient(140deg,#1a2e40,#254a67);background:linear-gradient(140deg,var(--bleu-mineral),#254a67);border:1px solid #ffffff26;border-radius:12px;box-shadow:0 8px 18px #1a2e4038;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-family:Roboto,sans-serif;font-size:1rem;font-weight:600;gap:.32rem;min-height:92px;padding:1rem 1.1rem;transition:opacity .2s ease;width:100%}.journal-container .copy-main-btn:focus-visible{outline:3px solid #4caf5073;outline-offset:2px}.journal-container .copy-main-btn:active:not(:disabled){opacity:.92}.journal-container .copy-main-btn-label{font-size:1.06rem;font-weight:700;line-height:1.22}.journal-container .copy-main-btn-subtitle{color:#ffffffdb;font-size:.9rem;font-weight:500;line-height:1.3}.journal-container .copy-main-btn-cta{align-self:flex-end;background:#ffffff29;border:1px solid #ffffff85;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.2px;line-height:1.2;margin-top:.42rem;padding:.22rem .58rem}.journal-container .copy-main-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.65}.journal-container .copy-helper-text{background:#f3f7fb;border:1px solid #d7e2ec;border-radius:8px;color:#4b6074;font-size:.9rem;font-weight:500;line-height:1.45;margin:.65rem 0 0;padding:.68rem .74rem}.copy-center-overlay{background:#0f172a80;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:1700}.copy-center-drawer{animation:copyDrawerEnter .24s ease-out;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:-14px 0 38px #0f172a2e;display:flex;flex-direction:column;height:100vh;width:min(560px,100vw)}.copy-center-header{align-items:flex-start;background:linear-gradient(45deg,#ffffff14 25%,#0000 0),linear-gradient(-45deg,#ffffff14 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ffffff14 0),linear-gradient(-45deg,#0000 75%,#ffffff14 0),linear-gradient(130deg,#264d77,#1a2e40 58%,#173650);background:linear-gradient(45deg,#ffffff14 25%,#0000 25%),linear-gradient(-45deg,#ffffff14 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ffffff14 75%),linear-gradient(-45deg,#0000 75%,#ffffff14 75%),linear-gradient(130deg,#264d77 0,var(--bleu-mineral) 58%,#173650 100%);background-position:0 0,0 6px,6px -6px,-6px 0,0 0;background-size:12px 12px,12px 12px,12px 12px,12px 12px,auto;border-bottom:1px solid #e2e8f0;color:#fff;display:flex;gap:1rem;justify-content:space-between;padding:1.15rem 1.25rem}.copy-center-header h3{font-size:1.08rem;font-weight:700;letter-spacing:.01em;margin:0}.copy-center-header p{align-items:center;display:inline-flex;font-size:.95rem;font-weight:700;gap:.35rem;margin:.25rem 0 0;opacity:.95}.copy-center-close-btn{align-items:center;background:#ffffff2e;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;height:34px;justify-content:center;width:34px}.copy-center-close-btn:disabled{cursor:not-allowed;opacity:.45}.copy-center-body{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1rem 1.25rem 1.2rem}.copy-center-mode-grid{grid-gap:.55rem;display:grid;gap:.55rem;grid-template-columns:repeat(3,minmax(0,1fr))}.copy-center-mode-btn{grid-gap:.2rem;align-content:center;background:#fff;border:1px solid #dbe2ea;border-radius:12px;color:#1a2e40;cursor:pointer;display:grid;gap:.2rem;min-height:74px;padding:.7rem .72rem;text-align:left;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.copy-center-mode-btn.active,.copy-center-mode-btn:hover:not(:disabled){background:linear-gradient(180deg,#effdf3,#e7f8ec);border-color:#4caf50;box-shadow:inset 0 0 0 1px #4caf503d,0 8px 18px #4caf501f}.copy-center-mode-btn:disabled{cursor:not-allowed;opacity:.6}.copy-center-mode-title{font-size:.86rem;font-weight:800;line-height:1.15}.copy-center-mode-subtitle{color:#64748b;font-size:.72rem;font-weight:700;line-height:1.25}.copy-center-mode-btn.active .copy-center-mode-subtitle{color:#2f7c42}.copy-center-date-hint{color:#64748b;font-size:.8rem;line-height:1.4;margin:-.15rem 0 0}.copy-center-form-grid{grid-gap:.75rem;display:grid;gap:.75rem}.copy-center-field{grid-gap:.35rem;display:grid;gap:.35rem}.copy-center-field .date-picker-wrapper{width:100%}.copy-center-field .date-picker-trigger{align-items:center;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #d4dbe4;border-radius:10px;display:flex;min-height:42px;padding:.12rem .18rem .12rem .72rem;width:100%}.copy-center-field .date-picker-trigger:focus-within{border-color:#4caf50;box-shadow:0 0 0 3px #4caf5024}.copy-center-field .date-picker-inline-input{background:#0000;border:none;border-radius:0;color:#0f172a;flex:1 1;font-size:.9rem;min-height:auto;min-width:0;padding:0;width:auto}.copy-center-field .date-picker-inline-input:focus{box-shadow:none;outline:none}.copy-center-field .date-picker-open-btn{align-items:center;background:linear-gradient(140deg,#1a2e4014,#4caf5024);border:none;border-radius:8px;color:#1a2e40;display:inline-flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.copy-center-field .date-picker-inline-input:disabled,.copy-center-field .date-picker-open-btn:disabled{cursor:not-allowed;opacity:.65}.copy-center-field span{color:#1a2e40;font-size:.8rem;font-weight:700}.copy-center-field input,.copy-center-field select{background:#fff;border:1px solid #d4dbe4;border-radius:10px;color:#0f172a;font-size:.9rem;min-height:42px;padding:.62rem .72rem;width:100%}.copy-center-field input[type=date]{appearance:none;-webkit-appearance:none;background:linear-gradient(180deg,#fff,#f8fbff);color-scheme:light;padding-right:2.1rem}.copy-center-field input[type=date]::-webkit-calendar-picker-indicator{background:linear-gradient(140deg,#1a2e4014,#4caf5024);border-radius:8px;cursor:pointer;opacity:.9;padding:.22rem}.copy-center-field input[type=date]::-webkit-datetime-edit-text{color:#667a8d}.copy-center-field input:focus,.copy-center-field select:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf5024;outline:none}.copy-center-preview{background:#f3f8ff;border:1px solid #dbe8f8;border-radius:10px;padding:.75rem .8rem}.copy-center-preview strong{color:#1a2e40;display:block;font-size:.82rem}.copy-center-preview p{color:#334155;font-size:.84rem;margin:.25rem 0 0}.copy-center-preview.copy-center-preview-flow{background:linear-gradient(180deg,#f2f8ff,#edf5ff);border-color:#c8dffb}.copy-center-preview.copy-center-preview-flow p{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem}.copy-center-preview-arrow{color:#567089;font-size:.78rem;transform:rotate(-90deg)}.copy-center-summary{grid-gap:.45rem;background:radial-gradient(circle at top left,#4caf5024,#0000 34%),linear-gradient(180deg,#f2f8ff,#edf5ff);border:1px solid #c8dffb;border-radius:14px;display:grid;gap:.45rem;padding:.82rem .9rem}.copy-center-summary-label{background:#1a2e4014;border-radius:999px;color:#1a2e40;display:inline-flex;font-size:.72rem;font-weight:800;letter-spacing:.03em;padding:.18rem .48rem;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.copy-center-summary-flow{align-items:center;color:#142f45;display:flex;flex-wrap:wrap;font-size:.9rem;font-weight:800;gap:.45rem}.copy-center-summary-arrow{color:#567089;flex-shrink:0;font-size:.78rem;transform:rotate(-90deg)}.copy-center-summary p{color:#475569;font-size:.84rem;font-weight:650;line-height:1.45;margin:0}.copy-center-footer{background:#fff;border-top:1px solid #e2e8f0;display:flex;gap:.65rem;padding:.9rem 1.25rem 1rem}.copy-center-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:700;min-height:42px}.copy-center-btn.secondary{background:#e2e8f0;color:#1f2937}.copy-center-btn.primary{background:linear-gradient(135deg,#4caf50,#2f8f40);color:#fff}.copy-center-btn:disabled{cursor:not-allowed;opacity:.6}@keyframes copyDrawerEnter{0%{transform:translateX(100%)}to{transform:translateX(0)}}.journal-container .copy-dropdown-menu{animation:slideDown .2s ease;background:#fff;border-radius:10px;box-shadow:0 8px 24px #1a2e4026;left:0;margin-top:.5rem;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.journal-container .copy-menu-section-title{background:#f8fafc;border-bottom:1px solid #edf2f7;color:#64748b;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:.55rem 1rem;text-transform:uppercase}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.journal-container .copy-menu-item{background:#fff;border:none;border-bottom:1px solid #f1f5f9;color:#1a2e40;color:var(--bleu-mineral);cursor:pointer;font-family:Roboto,sans-serif;font-size:.9rem;font-weight:500;padding:1rem;text-align:left;width:100%}.journal-container .copy-menu-item:disabled{cursor:not-allowed;opacity:.6}.journal-container .copy-menu-item:last-child{border-bottom:none}.journal-container .copy-menu-item:active{background:#e8f5e9}.journal-container .copy-menu-item-detailed{display:flex;flex-direction:column;gap:.2rem}.journal-container .copy-menu-title{color:#1a2e40;font-size:.86rem;font-weight:700}.journal-container .copy-menu-description{color:#64748b;font-size:.78rem;line-height:1.35}.journal-container .meal-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);margin-bottom:1rem;overflow:hidden;padding:0}.journal-container .meal-section.pending-sync{border:1px dashed #f59e0ba6;box-shadow:0 8px 20px #f59e0b29}.journal-container .meal-header{align-items:stretch;background:linear-gradient(130deg,#264d77,#1a2e40 58%,#173650);background:linear-gradient(130deg,#264d77 0,var(--bleu-mineral) 58%,#173650 100%);color:#fff;display:flex;flex-direction:column;gap:.7rem;overflow:hidden;padding:.9rem 1rem;position:relative}.journal-container .meal-header:before{background:linear-gradient(45deg,#ffffff1a 25%,#0000 0),linear-gradient(-45deg,#ffffff1a 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ffffff1a 0),linear-gradient(-45deg,#0000 75%,#ffffff1a 0);background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px;bottom:0;content:"";left:0;opacity:.2;pointer-events:none;position:absolute;right:0;top:0}.journal-container .meal-title-section{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;position:relative;width:100%;z-index:1}.journal-container .meal-time{font-feature-settings:"tnum";align-items:center;background:#ffffff1a;border:1px solid #ffffff4d;border-radius:999px;color:#ffffffeb;display:inline-flex;flex:0 0 auto;font-size:.76rem;font-variant-numeric:tabular-nums;font-weight:600;gap:.35rem;justify-content:center;line-height:1.2;min-height:28px;padding:.3rem .55rem;white-space:nowrap}.journal-container button.meal-time{-webkit-appearance:none;appearance:none;cursor:pointer;font-family:inherit;transition:background .15s ease,border-color .15s ease}.journal-container button.meal-time:hover{background:#fff3;border-color:#ffffff94}.journal-container .meal-time-cancel:focus-visible,.journal-container .meal-time-input:focus-visible,.journal-container .meal-time-save:focus-visible,.journal-container button.meal-time:focus-visible{outline:2px solid #fff;outline-offset:2px}.journal-container .meal-time svg{flex:0 0 auto;font-size:.72rem}.journal-container .meal-time .meal-time-edit-icon{font-size:.62rem;margin-left:.1rem;opacity:.7}.journal-container .meal-time-editor{align-items:center;display:inline-flex;flex:0 0 auto;gap:.28rem;position:relative;z-index:2}.journal-container .meal-time-input{background:#ffffff29;border:1px solid #ffffff6b;border-radius:8px;color:#fff;color-scheme:dark;font:600 .84rem Roboto,sans-serif;height:32px;min-width:0;padding:.25rem .42rem;width:112px}.journal-container .meal-time-cancel,.journal-container .meal-time-save{background:#ffffff24;border:1px solid #fff6;border-radius:8px;color:#fff;cursor:pointer;display:inline-grid;flex:0 0 auto;height:32px;place-items:center;width:32px}.journal-container .meal-time-cancel:hover,.journal-container .meal-time-save:hover{background:#ffffff40}.journal-container .meal-time-cancel:disabled,.journal-container .meal-time-save:disabled{cursor:wait;opacity:.6}.journal-container .meal-title-drag-handle{align-items:center;color:#ffffffd1;cursor:grab;display:inline-flex;flex-shrink:0;height:18px;justify-content:center;touch-action:none;-webkit-user-select:none;user-select:none;width:18px}.journal-container .meal-title-drag-handle svg{height:13px;width:13px}.journal-container .meal-pending-badge{align-items:center;background:#fff3;border:1px solid #ffffff73;border-radius:999px;color:#fff5df;display:inline-flex;font-size:.7rem;font-weight:700;justify-content:center;letter-spacing:.01em;padding:.22rem .55rem;white-space:nowrap}.journal-container .meal-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;position:relative;width:100%;z-index:1}.journal-container .meal-actions-toggle{align-items:center;background:#ffffff29;border:1px solid #fff6;border-radius:999px;color:#f8fafc;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:700;gap:.35rem;justify-content:center;min-height:32px;padding:.32rem .75rem;transition:background .2s ease,border-color .2s ease,color .2s ease;z-index:2}.journal-container .meal-actions-toggle.active{background:#4caf5047;border-color:#b0ffc0d9}.journal-container .meal-actions-toggle svg{transition:transform .2s ease}.journal-container .meal-actions-toggle.active svg{transform:rotate(180deg)}.journal-container .meal-actions-panel{background:#f8fafcf2;border-bottom:1px solid #e2e8f0;border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0;display:none;gap:.4rem;padding:.65rem .9rem .75rem}.journal-container .meal-actions-panel.open{display:flex;flex-wrap:wrap}.journal-container .meal-cancel-btn-text,.journal-container .meal-copy-btn-text,.journal-container .meal-delete-btn-text,.journal-container .meal-rename-btn-text{-webkit-tap-highlight-color:transparent;align-items:center;background:#ffffff29;border:1px solid #ffffff73;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:600;gap:.35rem;justify-content:center;min-height:34px;padding:.35rem .8rem;pointer-events:auto;position:relative;touch-action:manipulation;transition:background-color .2s ease,border-color .2s ease,color .2s ease;z-index:2}.journal-container .meal-rename-btn-text:active,.journal-container .meal-rename-btn-text:focus,.journal-container .meal-rename-btn-text:focus-visible,.journal-container .meal-rename-btn-text:hover{background:#4caf503d!important;border-color:#b0ffc0e6!important}.journal-container .meal-copy-btn-text:active,.journal-container .meal-copy-btn-text:focus,.journal-container .meal-copy-btn-text:focus-visible,.journal-container .meal-copy-btn-text:hover{background:#0f5fb642!important;border-color:#c2ddfff0!important}.journal-container .meal-cancel-btn-text:active,.journal-container .meal-cancel-btn-text:focus,.journal-container .meal-cancel-btn-text:focus-visible,.journal-container .meal-cancel-btn-text:hover{background:#ffffff42!important}.journal-container .meal-delete-btn-text:active,.journal-container .meal-delete-btn-text:focus,.journal-container .meal-delete-btn-text:focus-visible,.journal-container .meal-delete-btn-text:hover{background:#e5393547!important;border-color:#ffd6d6e6!important}.journal-container .meal-table-section{background:#fff;border:1px solid #d6e0ea;box-shadow:0 8px 20px #1a2e4014}.journal-container .meal-table-toolbar{align-items:center;background:linear-gradient(45deg,#ffffff14 25%,#0000 0),linear-gradient(-45deg,#ffffff14 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ffffff14 0),linear-gradient(-45deg,#0000 75%,#ffffff14 0),linear-gradient(130deg,#264d77,#1a2e40 58%,#173650);background:linear-gradient(45deg,#ffffff14 25%,#0000 25%),linear-gradient(-45deg,#ffffff14 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ffffff14 75%),linear-gradient(-45deg,#0000 75%,#ffffff14 75%),linear-gradient(130deg,#264d77 0,var(--bleu-mineral) 58%,#173650 100%);background-position:0 0,0 6px,6px -6px,-6px 0,0 0;background-size:12px 12px,12px 12px,12px 12px,12px 12px,auto;border-bottom:1px solid #ffffff29;color:#fff;display:flex;gap:.7rem;justify-content:space-between;padding:.78rem .95rem}.journal-container .meal-table-toolbar .meal-title-section{justify-content:flex-start}.journal-container .meal-table-toolbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem}.journal-container .meal-table-selection-toolbar{align-items:center;background:linear-gradient(180deg,#f8fbff,#f2f7fd);border:1px solid #d3deea;border-radius:10px;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:space-between;margin:.44rem .6rem .12rem;padding:.42rem .56rem}.journal-container .meal-table-selection-count{color:#2f4e6a;font-size:.76rem;font-weight:700;letter-spacing:.01em}.journal-container .meal-table-selection-actions{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.3rem}.journal-container .meal-table-selection-move-group{align-items:center;display:inline-flex;gap:.28rem}.journal-container .meal-table-selection-btn{align-items:center;background:#fff;border:1px solid #c8d8e8;border-radius:8px;color:#17466a;cursor:pointer;display:inline-flex;font-size:.7rem;font-weight:700;gap:.24rem;min-height:28px;padding:.2rem .5rem}.journal-container .meal-table-selection-btn:hover{background:#f5f9fd;border-color:#a9c0d6}.journal-container .meal-table-selection-btn:disabled{cursor:not-allowed;opacity:.45}.journal-container .meal-table-selection-btn.subtle{color:#5d7489}.journal-container .meal-table-selection-btn.danger{background:#fff7f7;border-color:#b91c1c47;color:#b91c1c}.journal-container .meal-table-selection-btn.danger:hover{background:#ffeaea;border-color:#b91c1c6b}.journal-container .meal-table-selection-select{background:#fff;border:1px solid #c8d8e8;border-radius:8px;color:#17466a;font-size:.68rem;font-weight:600;max-width:190px;min-height:28px;padding:.18rem .46rem}.journal-container .meal-table-selection-select:disabled{opacity:.55}.journal-container .meal-table-title-input{max-width:320px;min-width:210px}.journal-container .meal-table-wrapper{background:linear-gradient(180deg,#f8fbff,#f5f8fc);overflow-x:auto;padding:.55rem .6rem .7rem}.journal-container .meal-table{border-collapse:initial;border-spacing:0 .42rem;color:#1f3346;font-size:.97rem;min-width:900px;width:100%}.journal-container .meal-table thead th{background:#0000;border:none;color:#3f5870;font-size:.8rem;font-weight:800;letter-spacing:.03em;line-height:1.2;padding:.1rem .55rem .25rem;text-align:center;text-transform:none;text-transform:uppercase}.journal-container .meal-table thead th span{font-size:.72rem;font-weight:600;opacity:.8}.journal-container .meal-table thead th.food-col{color:#1a2e40;font-size:.96rem;letter-spacing:0;min-width:340px;text-align:left;text-transform:none}.journal-container .meal-table thead th.action-col{width:52px}.journal-container .meal-table td{background:#fff;border:1px solid #dce6f0;border-left:none;border-right:none;padding:.5rem .58rem;text-align:center;vertical-align:middle}.journal-container .meal-table tbody tr td:first-child{border-bottom-left-radius:9px;border-left:1px solid #dce6f0;border-top-left-radius:9px}.journal-container .meal-table tbody tr td:last-child{border-bottom-right-radius:9px;border-right:1px solid #dce6f0;border-top-right-radius:9px}.journal-container .meal-table tbody tr:nth-child(2n) td{background:#fbfdff}.journal-container .meal-table tbody tr.meal-table-row:hover td{background:#f1f7fd}.journal-container .meal-table-row{transition:opacity .18s ease}.journal-container .meal-table-row.clickable td{cursor:pointer}.journal-container .meal-table-row[draggable=true] td{cursor:grab}.journal-container .meal-table-row.dragging td{cursor:grabbing;opacity:.58}.journal-container .meal-table-row.over td{background:#e9f6ee!important;border-bottom-color:#dce6f0;border-top-color:#dce6f0}.journal-container .meal-table-row.over td:first-child{border-left-color:#dce6f0}.journal-container .meal-table-row.over td:last-child{border-right-color:#dce6f0}.journal-container .meal-table-row.selected td{background:#edf5fd!important;border-bottom-color:#b9d1e7;border-top-color:#b9d1e7}.journal-container .meal-table-row.details-open td:first-child{border-bottom-left-radius:0}.journal-container .meal-table-row.details-open td:last-child{border-bottom-right-radius:0}.journal-container .meal-table .food-name-cell{text-align:left}.journal-container .meal-table .food-name-main{color:#1a2e40;font-size:.97rem;font-weight:700;line-height:1.3}.journal-container .meal-table .food-name-content{align-items:flex-start;display:flex;flex-direction:column;min-width:0}.journal-container .meal-table .food-name-sub{font-feature-settings:"tnum";align-items:center;color:#5f7286;display:inline-flex;flex-wrap:wrap;font-size:.76rem;font-variant-numeric:tabular-nums;font-weight:600;gap:.28rem;line-height:1.1;margin-top:.14rem}.journal-container .meal-table .food-row-hint{align-items:center;background:#f6f9fd;border:1px solid #d4e0ec;border-radius:999px;color:#35506a;cursor:pointer;display:inline-flex;font-size:.73rem;font-weight:700;gap:.34rem;letter-spacing:.01em;line-height:1.2;margin-top:.68rem;padding:.16rem .55rem;transition:border-color .2s ease,background .2s ease,color .2s ease;width:-webkit-fit-content;width:fit-content}.journal-container .meal-table .food-row-hint:hover{background:#eef4fa;border-color:#b8cce0}.journal-container .meal-table .food-row-hint:focus-visible{box-shadow:0 0 0 2px #367ec133;outline:none}.journal-container .meal-table .food-row-hint svg{height:10px;transition:transform .2s ease;width:10px}.journal-container .meal-table .food-row-hint.open{background:#eff9f1;border-color:#bfe0c8;color:#2f7d45}.journal-container .meal-table .food-row-hint.open svg{transform:rotate(180deg)}.journal-container .meal-table .food-name-with-image{align-items:center;display:flex;gap:.6rem}.journal-container .meal-table .meal-table-select-toggle{align-items:center;cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;margin:0}.journal-container .meal-table .meal-table-select-toggle input[type=checkbox]{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #9fb6cc;border-radius:5px;box-shadow:0 1px 2px #0f172a14;cursor:pointer;display:grid;height:16px;place-content:center;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease;width:16px}.journal-container .meal-table .meal-table-select-toggle input[type=checkbox]:before{background:#fff;-webkit-clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%);content:"";height:9px;transform:scale(0);transform-origin:center;transition:transform .12s ease-in-out;width:9px}.journal-container .meal-table .meal-table-select-toggle input[type=checkbox]:checked{background:#1f6fb2;border-color:#1f6fb2}.journal-container .meal-table .meal-table-select-toggle input[type=checkbox]:checked:before{transform:scale(1)}.journal-container .meal-table .meal-table-select-toggle input[type=checkbox]:focus-visible{box-shadow:0 0 0 2px #1f6fb23d;outline:none}.journal-container .meal-table .meal-table-drag-handle{align-items:center;color:#8da0b3;display:inline-flex;flex-shrink:0;justify-content:center;touch-action:none;-webkit-user-select:none;user-select:none;width:16px}.journal-container .meal-table .meal-table-image-btn{background:#0000;border:none;border-radius:10px;cursor:pointer;flex-shrink:0;height:42px;margin:0;overflow:hidden;padding:0;width:42px}.journal-container .meal-table .meal-table-food-image{border:1px solid #d8e3ef;border-radius:10px;display:block;height:42px;object-fit:cover;width:42px}.journal-container .meal-table .meal-table-food-image.placeholder{align-items:center;background:#e8eef5;border:1px solid #d8e3ef;border-radius:10px;color:#5c6f82;display:inline-flex;flex-shrink:0;font-weight:700;height:42px;justify-content:center;width:42px}.journal-container .meal-table-empty td{color:#5f7388;font-weight:600;padding:.85rem;text-align:center}.journal-container .meal-table-empty-state{align-items:center;background:#f4f8fc;border:1px solid #d8e3ee;border-radius:999px;color:#567189;display:inline-flex;font-size:.9rem;gap:.42rem;line-height:1.1;padding:.28rem .62rem}.journal-container .meal-table-empty-state svg{color:#6e89a0;height:12px;width:12px}.journal-container .meal-table-actions-cell{width:240px}.journal-container .meal-table-actions{align-items:center;display:flex;flex-wrap:nowrap;gap:.28rem;justify-content:flex-start}.journal-container .meal-table-actions .food-mobile-action-btn{border-radius:7px;font-size:.66rem;gap:.18rem;min-height:26px;padding:.12rem .34rem;white-space:nowrap}.journal-container .meal-table-actions .food-mobile-action-btn svg{height:9px;width:9px}.journal-container .meal-table-details-row td{background:linear-gradient(180deg,#f8fbff,#f2f7fc);border:1px solid #dce6f0;border-radius:0 0 10px 10px;border-top:none;padding:.7rem .8rem .9rem;text-align:left}.journal-container .meal-table-details-content{display:flex;flex-direction:column;gap:.78rem}.journal-container .meal-table-details-macros{display:flex;flex-direction:column;gap:.62rem}.journal-container .meal-table-note{background:#fff;border:1px solid #dce6f0;border-radius:10px;padding:.6rem .75rem}.journal-container .meal-table-note-label{align-items:center;color:#5f7286;display:inline-flex;font-size:.8rem;font-weight:700;gap:.4rem;letter-spacing:.02em;text-transform:uppercase}.journal-container .meal-table-note-label svg{color:#f1b900}.journal-container .meal-table-note p{color:#33475b;font-size:.9rem;line-height:1.48;margin:.42rem 0 0;white-space:pre-wrap;word-break:break-word}.journal-container .meal-table tfoot td{background:#f4f8fc;border:1px solid #ccddec;border-left:none;border-right:none;color:#1c415f;font-weight:700}.journal-container .meal-table tfoot td:first-child{border-bottom-left-radius:9px;border-left:1px solid #ccddec;border-top-left-radius:9px}.journal-container .meal-table tfoot td:last-child{border-bottom-right-radius:9px;border-right:1px solid #ccddec;border-top-right-radius:9px}.journal-container .meal-table-total-row .meal-table-links-cell{text-align:left;white-space:normal}.journal-container .meal-table-total-row .meal-table-total-title-cell{text-align:left;white-space:nowrap}.journal-container .meal-table-total-row .meal-table-total-title{color:#57708a;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.journal-container .meal-table-total-row .meal-total-pill{align-items:baseline;background:#fff;border:1px solid #d3dfe9;border-radius:999px;color:#173b56;display:inline-flex;font-size:.86rem;font-weight:800;gap:.2rem;letter-spacing:0;line-height:1;min-width:0;padding:.12rem .4rem}.journal-container .meal-table-total-row .meal-total-pill-calories{background:#e539351f;border-color:#e539353d;color:#ab2d2b}.journal-container .meal-table-total-row .meal-total-pill-carbs,.journal-container .meal-table-total-row .meal-total-pill-fat,.journal-container .meal-table-total-row .meal-total-pill-proteins,.journal-container .meal-table-total-row .meal-total-pill-sodium,.journal-container .meal-table-total-row .meal-total-pill-sugars{color:#1f3f5a}.journal-container .meal-table-total-row .meal-total-value{color:inherit;font-size:.88rem;font-weight:800}.journal-container .meal-table-total-row .meal-total-unit{color:#5e7488;font-size:.64rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.journal-container .meal-table tfoot .meal-table-total-row td{border-bottom:1px solid #ccddec}.journal-container .meal-table tfoot .meal-table-total-row td:first-child{border-bottom-left-radius:9px}.journal-container .meal-table tfoot .meal-table-total-row td:last-child{border-bottom-right-radius:9px}.journal-container .meal-table-footer-actions{margin-top:.48rem;padding:.18rem .06rem 0}.journal-container .meal-table-footer-actions .meal-table-link-group{justify-content:flex-start}.journal-container .meal-table-link-group{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.45rem}.journal-container .meal-table-link{background:#fff;border:1px solid #c8d9ea;border-radius:999px;color:#17466a;cursor:pointer;font-size:.8rem;font-weight:700;line-height:1.2;padding:.24rem .66rem;text-decoration:none}.journal-container .meal-table-link.meal-table-link-pill.search{background:#f3fbf5;border-color:#b9d8c0;color:#22663f}.journal-container .meal-table-link:hover{background:#f5f9fd;border-color:#a9c0d6;color:#113a59;text-decoration:none}.journal-container .meal-table-link.meal-table-link-pill.search:hover{background:#ebf8ef;border-color:#9ec6a8;color:#1a5734}.journal-container .meal-table-link:disabled{background:#f2f5f8;cursor:not-allowed;opacity:.45}.journal-container .meal-table-link-sep{color:#7f91a5;font-weight:600;margin:0 .55rem}.journal-container .editable-title{background:#ffffff24;border:none;border-radius:8px;color:#fff;flex:1 1;font-family:Roboto,sans-serif;font-size:1rem;font-weight:700;min-width:100px;padding:.52rem .62rem;position:relative;text-align:left;width:100%;z-index:1}.journal-container .editable-title:focus{background:#ffffff3d;box-shadow:0 0 0 2px #ffffff73;outline:none}.journal-container .editable-title[readonly]{cursor:default}.journal-container .editable-title::placeholder{color:#ffffffb3}.journal-container .meal-total-macros-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.journal-container .meal-total-macro-chip{background:#fff;border:1px solid #d9e4ef;border-radius:10px;display:flex;flex-direction:column;gap:.12rem;min-width:0;padding:.42rem .5rem}.journal-container .meal-total-macro-chip.proteins{background:#0f5fc614;border-color:#0f5fc657}.journal-container .meal-total-macro-chip.carbs{background:#d69e2e1c;border-color:#d69e2e66}.journal-container .meal-total-macro-chip.fat{background:#4caf501a;border-color:#4caf505c}.journal-container .meal-total-macro-label{color:#5f7286;font-size:.67rem;font-weight:700;letter-spacing:.04em;line-height:1.2;text-transform:uppercase}.journal-container .meal-total-macro-value{font-feature-settings:"tnum";color:#1a2e40;font-size:.98rem;font-variant-numeric:tabular-nums;font-weight:800;line-height:1.1}.journal-container .meal-summary-toggle{--np-hover-bg:#0000!important;--np-hover-color:var(--vert-vitalite)!important;--np-hover-border:#0000!important;--np-hover-shadow:none!important;--np-hover-opacity:1!important;--np-hover-filter:none!important;--np-hover-transform:none!important;background:#0000;border:none;border-radius:4px;box-shadow:none;color:#1f3b52;cursor:pointer;display:none;font-size:.84rem;font-weight:600;gap:.38rem;min-height:0;padding:.45rem 0;transition:all .2s ease;&:hover{background:#0000;color:#4caf50;color:var(--vert-vitalite);text-decoration:underline}svg{height:18px;overflow:visible;transition:transform .2s ease;width:18px}}.journal-container .meal-summary-toggle.active svg{transform:rotate(180deg)}.journal-container .meal-summary-toggle.active{color:#4caf50;color:var(--vert-vitalite)}@media (max-width:1024px){.journal-container .meal-summary-toggle{align-items:center;display:inline-flex;justify-content:center}}.journal-container .foods-list{padding:.875rem}.journal-container .food-entry{background:#fff;border:1px solid #e1e5e9;border-radius:8px;cursor:grab;margin-bottom:.625rem;padding:.875rem;transition:border-color .18s ease,box-shadow .18s ease,opacity .18s ease}.journal-container .food-entry.dragging{cursor:grabbing;opacity:.65}.journal-container .food-entry.over{background:#e9f6ee;border-color:#e1e5e9;box-shadow:none}.journal-container .food-entry-header{align-items:flex-start;display:flex;gap:.625rem;justify-content:space-between;margin-bottom:.625rem}.journal-container .food-entry-header.mobile-compact{align-items:stretch;display:flex;flex-direction:column;gap:.35rem;margin-bottom:.45rem}.journal-container .food-mobile-row{grid-gap:.45rem;display:grid;gap:.45rem;grid-template-columns:1fr;min-width:0;width:100%}.journal-container .food-mobile-main{grid-gap:.55rem;align-items:start;display:grid;gap:.55rem;grid-template-columns:36px minmax(0,1fr)}.journal-container .food-mobile-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-start;min-width:0;overflow:visible;row-gap:.3rem}.journal-container .food-mobile-image-button{-webkit-appearance:none;appearance:none;background:#0000;border:0;border-radius:8px;cursor:pointer;line-height:0;margin:0;padding:0}.journal-container .food-mobile-image-button:focus-visible{outline:2px solid #1a2e4059;outline-offset:2px}.journal-container .food-mobile-name-wrap{display:flex;flex-direction:column;gap:.18rem;min-width:0}.journal-container .food-mobile-image{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;height:36px;object-fit:cover;width:36px}.journal-container .food-mobile-image.placeholder{align-items:center;background:#e8eef5;color:#4b5563;display:inline-flex;font-size:.8rem;font-weight:700;justify-content:center}.journal-container .food-mobile-name{color:#1a2e40;color:var(--bleu-mineral);display:block;font-size:.98rem;font-weight:600;line-height:1.25;min-width:0;overflow:visible;white-space:normal;word-break:break-word}.journal-container .food-mobile-quantity-inline{align-items:center;color:#5f7286;display:inline-flex;flex-wrap:wrap;font-size:.84rem;font-weight:600;gap:.28rem;line-height:1.1}.journal-container .food-added-inline{font-feature-settings:"tnum";color:#71869a;font-size:.78rem;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:.01em}.journal-container .food-mobile-calories{align-items:center;background:#e539351f;border-radius:999px;color:#e53935;color:var(--rouge-alerte);display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:700;gap:.2rem;padding:.2rem .45rem}.journal-container .food-mobile-calories .calories-amount,.journal-container .food-mobile-calories .calories-text{font-size:.94rem;line-height:1}.journal-container .food-mobile-time{background:#eef3f8;border:1px solid #d8e3ed;border-radius:999px;color:#4f6478;flex-shrink:0;font-size:.92rem;font-weight:700;letter-spacing:.01em;line-height:1;padding:.2rem .45rem}.journal-container .food-ingredients-toggle.compact{border-radius:8px;flex:0 0 auto;font-size:.8rem;gap:.2rem;margin:0;min-width:90px;padding:.3rem .56rem;white-space:nowrap;width:auto}.journal-container .food-mobile-actions{align-items:center;display:flex;gap:.7rem;justify-content:flex-start;margin-bottom:.1rem;margin-top:.55rem;padding:.1rem 0;width:100%}.journal-container .food-mobile-main-actions{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.28rem;margin-left:auto}.journal-container .food-mobile-action-btn{align-items:center;background:#fff;border:1px solid #d4e0ec;border-radius:8px;color:#1f3b52;display:inline-flex;font-size:.78rem;font-weight:700;gap:.28rem;justify-content:center;line-height:1;min-height:32px;min-width:90px;padding:.22rem .56rem}.journal-container .food-mobile-action-btn:disabled{cursor:not-allowed}.journal-container .food-mobile-action-btn svg{height:11px;width:11px}.journal-container .food-mobile-action-btn.note{background:#fff9ea;border-color:#f0cd72e6;color:#9a7400}.journal-container .food-mobile-action-btn.edit{background:#eef8f1;border-color:#4caf506b;color:#20703a}.journal-container .food-mobile-action-btn.delete{background:#fff3f2;border-color:#e5393552;color:#b42318}.journal-container .food-mobile-action-btn.favorite{background:#fff;border-color:#d4e0ec;color:#1f3b52}.journal-container .food-mobile-action-btn.favorite.active{background:#eef3f7;border-color:#1f3b5214;box-shadow:none;color:#1f3b52}.journal-container .meal-table-empty .no-food-message.meal-table-empty-shared{background:#0000;border:none;margin:0 auto;max-width:360px;padding:.45rem .5rem}.journal-container .food-macros-section-title{color:#5f7286;font-size:.72rem;font-weight:700;letter-spacing:.04em;margin-bottom:.1rem;margin-top:.15rem;text-transform:uppercase}@media (max-width:480px){.journal-container .mobile-diary-meal .meal-title-section{flex-wrap:wrap}.journal-container .food-mobile-actions{gap:.55rem}.journal-container .food-mobile-meta{gap:.24rem}.journal-container .food-mobile-calories{padding:.18rem .4rem}.journal-container .food-mobile-calories .calories-amount,.journal-container .food-mobile-calories .calories-text{font-size:.88rem}.journal-container .food-added-inline{font-size:.74rem}.journal-container .food-ingredients-toggle.compact{font-size:.76rem;padding:.24rem .5rem}}@media (max-width:1024px){.journal-container{padding-bottom:96px}.journal-container .add-food-options{grid-gap:.5rem;border-radius:0 0 10px 10px;border-top:1px solid #e2e8f0;display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.65rem .7rem}.journal-container .add-food-btn{border-radius:10px;border-style:solid;font-size:.8rem;font-weight:700;min-height:40px;padding:.42rem .5rem}.journal-container .meal-header{gap:.45rem;padding:.65rem .75rem}.journal-container .meal-title-section{flex-wrap:nowrap;justify-content:space-between}.journal-container .meal-time{font-size:.7rem;gap:.28rem;min-height:26px;padding:.25rem .42rem}.journal-container .meal-title-drag-handle{color:#ffffffbd;height:16px;width:16px}.journal-container .meal-title-drag-handle svg{height:11px;width:11px}.journal-container .editable-title{font-size:.95rem;padding:.4rem .5rem}.journal-container .meal-actions{display:none}.journal-container .meal-actions-panel .meal-cancel-btn-text,.journal-container .meal-actions-panel .meal-copy-btn-text,.journal-container .meal-actions-panel .meal-delete-btn-text,.journal-container .meal-actions-panel .meal-rename-btn-text{background:#fff;border:1px solid #d3deea;color:#1a2e40;color:var(--bleu-mineral)}.journal-container .meal-actions-panel .meal-delete-btn-text{border-color:#b91c1c40;color:#b91c1c}.journal-container .meal-nutrition-summary{background:#f7fafc;border-top:1px solid #e2e8f0;padding:.62rem .75rem}.journal-container .meal-summary-icon{display:none}.journal-container .meal-summary-header{flex-wrap:nowrap;gap:.35rem;margin-bottom:0}.journal-container .meal-summary-toggle{background:#fff;border:1px solid #d6e0ea;border-radius:999px;color:#1f3b52;font-size:.76rem;padding:.24rem .56rem}.journal-container .meal-summary-toggle:hover{text-decoration:none}}@media (max-width:480px){.journal-container .food-mobile-image{height:34px;width:34px}.journal-container .food-mobile-main{grid-template-columns:34px minmax(0,1fr)}.journal-container .food-mobile-name{font-size:.92rem}.journal-container .food-ingredients-toggle.compact{font-size:.72rem;padding:.3rem .45rem}}.journal-container .food-info{flex:1 1;min-width:0}.journal-container .food-name{word-wrap:break-word;color:#1a2e40;color:var(--bleu-mineral);font-family:Roboto,sans-serif;font-size:1rem;font-weight:600;line-height:1.3;margin:0 0 .25rem}.journal-container .food-quantity{font-feature-settings:"tnum";align-items:center;color:#666;display:inline-flex;flex-wrap:wrap;font-size:.86rem;font-variant-numeric:tabular-nums;font-weight:500;gap:.28rem;margin:0}.journal-container .food-meta-row{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.3rem}.food-image-lightbox{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:radial-gradient(circle at top,#1d314685,#070e17e6);display:flex;inset:0;justify-content:center;padding:.6rem;position:fixed;z-index:2300}.food-image-lightbox-panel{background:linear-gradient(180deg,#f7fbfff5,#eaf3fcf5);border:1px solid #ffffff2e;border-radius:20px;box-shadow:0 26px 52px #0000007a;display:flex;flex-direction:column;gap:.48rem;max-height:min(94vh,1100px);padding:.55rem;position:relative;width:min(96vw,1080px)}.food-image-lightbox-media{align-items:center;background:#fff;border:1px solid #d9e3ef;border-radius:16px;display:flex;flex:1 1;justify-content:center;min-height:0;overflow:hidden;padding:.2rem}.food-image-lightbox-img{background:#fff;border:0;border-radius:12px;box-shadow:0 14px 30px #0000003d;height:auto;max-height:min(86vh,980px);max-width:100%;object-fit:contain;width:auto}.food-image-lightbox-caption{color:#1a2e40;font-size:.98rem;font-weight:700;padding:0 .35rem .2rem;text-align:center;word-break:break-word}.food-image-lightbox-close{align-items:center;background:#0f172adb;border:none;border-radius:999px;box-shadow:0 8px 20px #00000059;color:#fff;cursor:pointer;display:inline-flex;height:34px;justify-content:center;position:absolute;right:8px;top:8px;transition:background .2s ease,transform .2s ease;width:34px;z-index:2}.food-image-lightbox-close:hover{background:#0f172a;transform:scale(1.05)}.food-image-lightbox-close svg{height:14px;width:14px}@media (max-width:1024px){.food-image-lightbox{padding:.3rem}.food-image-lightbox-panel{border-radius:14px;max-height:94vh;padding:.35rem;width:min(98vw,98vw)}.food-image-lightbox-media{border-radius:12px;padding:.14rem}.food-image-lightbox-img{border-radius:10px;max-height:82vh}.food-image-lightbox-caption{font-size:.9rem;padding:0 .2rem .1rem}}.journal-container .food-calories{align-items:baseline;display:flex;gap:.25rem}.journal-container .calories-amount{color:#e53935;color:var(--rouge-alerte);font-size:1rem;font-weight:700}.journal-container .calories-text{color:#666;font-size:.75rem;font-weight:500}.journal-container .no-food-message{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;color:#666;padding:1rem .75rem;text-align:center}.journal-container .no-food-icon{margin-bottom:.5rem;opacity:.6}.friend-view .no-food-message{padding:1rem .75rem}.friend-view .no-food-message p{margin:0!important}.journal-container .no-food-icon svg{fill:#1a2e40;fill:var(--bleu-mineral)}.journal-container .no-food-message p{font-size:.98rem;font-weight:500;margin:0}.journal-container .btn-sm{font-size:14px;min-height:36px;padding:.5rem .875rem}.journal-container .add-food-options{background:#fff;border-radius:0 0 12px 12px;border-top:1px solid #e1e5e9;display:flex;flex-direction:column;gap:.625rem;margin:0;padding:.875rem}.journal-container .add-food-btn{align-items:center;background:#fff;border:2px dashed #cbd5e1;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:.5rem;justify-content:center;min-height:36px;padding:.625rem;width:100%}.journal-container .add-food-btn:disabled,.journal-container .btn-outline:disabled{cursor:not-allowed;opacity:.55}.journal-container .search-btn{border-color:#4caf50;border-color:var(--vert-vitalite);color:#4caf50;color:var(--vert-vitalite)}.journal-container .search-btn svg{fill:currentColor}.journal-container .manual-btn{border-color:#1a2e40;border-color:var(--bleu-mineral);color:#1a2e40;color:var(--bleu-mineral)}.journal-container .manual-btn svg{fill:currentColor}.journal-container .nutrition-detail-btn{align-items:center;background:none;border:none;border-radius:4px;color:#1a2e40;color:var(--bleu-mineral);cursor:pointer;display:flex;font-size:.8rem;gap:.25rem;justify-content:center;padding:.5rem 0;width:100%}.journal-container .nutrition-details{background:#f8f9fa;background:var(--gris-clair);border:1px solid #e1e5e9;border-radius:6px;margin-top:.625rem;padding:.875rem;width:100%}.journal-container .nutrition-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr}.journal-container .nutrition-item{align-items:center;background:#fff;border:1px solid #e1e5e9;border-radius:4px;display:flex;justify-content:space-between;padding:.5rem}.journal-container .nutrition-label{color:#333;color:var(--gris-fonce);flex:1 1;font-size:.8rem;font-weight:500}.journal-container .nutrition-value{color:#1a2e40;color:var(--bleu-mineral);font-size:.8rem;font-weight:600;text-align:right}.journal-container .quantity-section{background:#f0f9ff;border:1px solid #4caf50;border:1px solid var(--vert-vitalite);border-radius:6px;margin-top:.5rem;padding:.75rem}.journal-container .quantity-title{color:#1a2e40;color:var(--bleu-mineral);font-size:.875rem;font-weight:600;margin-bottom:.5rem}.journal-container .quantity-input-group{align-items:center;display:flex;gap:.5rem}.journal-container .quantity-input{border:1px solid #e1e5e9;border-radius:4px;font-size:16px;padding:.5rem;text-align:center;width:80px}.journal-container .quantity-unit{color:#666;font-size:.875rem;font-weight:500}.journal-container .quantity-help{color:#666;font-size:.75rem;font-style:italic;margin-top:.25rem}.journal-container .btn{align-items:center;border:none;border-radius:6px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);cursor:pointer;display:inline-flex;font-family:Roboto,sans-serif;font-size:15px;font-weight:500;gap:.5rem;justify-content:center;min-height:40px;padding:.625rem 1rem;text-align:center}.journal-container .btn-primary{background:#4caf50;background:var(--vert-vitalite);color:#fff}.journal-container .btn-secondary{background:#1a2e40;background:var(--bleu-mineral);color:#fff}.journal-container .btn-danger{background:#e53935;background:var(--rouge-alerte);color:#fff}.journal-container .btn-outline{background-color:initial;border:2px solid #4caf50;border:2px solid var(--vert-vitalite);color:#4caf50;color:var(--vert-vitalite)}.journal-container .btn-icon{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:flex;justify-content:center;min-height:32px;min-width:32px;padding:6px}.journal-container .add-meal-btn{background:#4caf50;background:var(--vert-vitalite);border:none;border-radius:8px;box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:block;font-family:Roboto,sans-serif;font-size:1rem;font-weight:600;margin:1rem auto;max-width:250px;min-height:44px;padding:.875rem 1.5rem;width:100%}.fusion-summary-content{background:#fff;border-radius:0 0 12px 12px;display:flex;flex-direction:column;gap:2rem}.chart-center-section{align-items:center;background:linear-gradient(135deg,#f8fafb,#fff);border:2px solid #e1e8ed;border-radius:16px;box-shadow:0 4px 12px #1a2e4014;display:flex;justify-content:center;padding:1rem}.visual-chart-container{margin:0 auto;max-width:340px;position:relative;width:100%}.visual-chart-container svg{-webkit-tap-highlight-color:transparent;display:block;width:100%}.summary-chart-slice{-webkit-tap-highlight-color:transparent;cursor:pointer}.summary-chart-slice:focus,.summary-chart-slice:focus-visible{outline:none}.chart-legend{grid-gap:.55rem;display:grid;gap:.55rem;margin-top:1rem}.chart-legend-item{grid-gap:.65rem;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:grid;gap:.65rem;grid-template-columns:auto 1fr auto;padding:.55rem .7rem}.chart-legend-swatch{border-radius:999px;box-shadow:0 0 0 2px #ffffffe6;height:12px;width:12px}.chart-legend-main{display:flex;flex-direction:column;gap:.08rem;min-width:0}.chart-legend-label{color:#1a2e40;font-size:.86rem;font-weight:700;line-height:1.2}.chart-legend-meta{color:#64748b;font-size:.75rem;line-height:1.3}.chart-legend-share{color:#1a2e40;font-family:Roboto Mono,monospace;font-size:.8rem;font-weight:700;white-space:nowrap}.chart-legend-share.muted{color:#94a3b8}.chart-hover-tooltip{background:#f8fbff;border:1px solid #dbeafe;border-radius:10px;box-shadow:0 4px 10px #1a2e401a;padding:.55rem .7rem;pointer-events:none;z-index:4}.chart-hover-tooltip.floating{max-width:220px;min-width:180px;position:absolute;transform:translate(-50%,-125%)}.chart-hover-tooltip-title{color:#1a2e40;font-size:.82rem;font-weight:700;line-height:1.2}.chart-hover-tooltip-meta{color:#334155;font-size:.76rem;margin-top:.12rem}.chart-hover-tooltip-share{color:#64748b;font-size:.72rem;margin-top:.1rem}.empty-chart{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:2rem}.macros-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}.macro-card-fusion{background:linear-gradient(135deg,#fff,#f8fafb);border:2px solid #e1e8ed;border-radius:12px;box-shadow:0 2px 8px #1a2e400f;overflow:hidden;padding:1.25rem;position:relative}.macro-card-header{align-items:center;border-bottom:2px solid #e1e8ed;display:flex;margin-bottom:1rem;padding-bottom:.75rem}.macro-title{color:#1a2e40;color:var(--bleu-mineral);font-family:Poppins,Roboto,sans-serif;font-size:1.05rem;font-weight:700;letter-spacing:.3px}.macro-values-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));margin-bottom:.75rem}.value-block{display:flex;flex-direction:column;gap:.25rem}.value-label{color:#64748b;font-family:Roboto,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.value-number{align-items:baseline;color:#1a2e40;color:var(--bleu-mineral);display:flex;font-family:Roboto Mono,monospace;font-size:1.3rem;font-weight:800;gap:.25rem;line-height:1.2}.value-number.secondary{color:#64748b;font-size:1.1rem;font-weight:600}.value-number.positive{color:#4caf50;color:var(--vert-vitalite)}.value-number.negative{color:#e53935;color:var(--rouge-alerte)}.value-unit{color:#94a3b8;font-size:.7rem;font-weight:500;margin-left:.15rem}.progress-bar-container{background:#e2e8f0;border-radius:3px;box-shadow:inset 0 1px 2px #0000001a;height:6px;overflow:hidden;width:100%}.progress-bar-fill{border-radius:3px;box-shadow:0 0 8px #4caf5066;height:100%;overflow:hidden;position:relative;transition:width .4s cubic-bezier(.4,0,.2,1)}.progress-bar-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@media (min-width:480px){.macros-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.fusion-summary-content{align-items:flex-start;flex-direction:row}.chart-center-section{flex-shrink:0;width:360px}.macros-grid{flex:1 1;grid-template-columns:1fr}.macro-values-row{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.macros-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.fusion-summary-content{gap:1.5rem}.chart-center-section{padding:.75rem}.visual-chart-container{max-width:100%}.macro-card-fusion{padding:1rem}.macro-title{font-size:.95rem}.value-number{font-size:1.1rem}.value-number.secondary{font-size:.95rem}.macro-values-row{gap:.75rem;grid-template-columns:repeat(3,1fr)}}@media (max-width:400px){.macro-values-row{gap:.5rem;grid-template-columns:1fr}.value-block{align-items:baseline;flex-direction:row;justify-content:space-between}.value-label{font-size:.7rem}.value-number{font-size:1rem}}.journal-container .form-input{background:#fff;border:1px solid #e1e5e9;border-radius:6px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);color:#333;color:var(--gris-fonce);font-family:Roboto,sans-serif;font-size:16px;min-height:44px;width:100%}.journal-container .form-input:focus{border-color:#4caf50;border-color:var(--vert-vitalite);box-shadow:0 0 0 3px #4caf501a;outline:none}.journal-container .add-food-inline-form{animation:fadeInUp .4s ease;background:#fff;border-radius:10px;box-shadow:0 4px 16px #4caf5014,0 1.5px 8px #1a2e400d;margin-bottom:1.25rem;overflow-y:auto;padding:1.2rem 1rem;position:relative}.journal-container .add-food-inline-form.show{animation:fadeInUp .4s ease}.journal-container .add-food-inline-form .add-food-form-title{background:none;border-radius:0;color:#1a2e40;color:var(--bleu-mineral);font-family:Roboto,sans-serif;font-size:.92rem;font-weight:700}.journal-container .add-food-inline-form .add-food-form{margin-bottom:1.25rem;padding-bottom:.7rem}.journal-container .add-food-inline-form .add-food-form:last-of-type{border-bottom:none}.journal-container .add-food-inline-form .form-grid,.journal-container .add-food-inline-form .form-row{position:relative}.form-input{background:#fff;border:1.5px solid #e2e8f0;border-radius:7px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);color:#333;color:var(--gris-fonce);font-family:Roboto,sans-serif;font-size:1rem;min-height:44px;outline:none;padding:1rem}.form-input:focus{background:#fafffb;border-color:#4caf50;border-color:var(--vert-vitalite);box-shadow:0 0 0 3px #4caf501f}.journal-container .add-food-inline-form .form-input::placeholder{color:#b4bfcf;opacity:1}.journal-container .add-food-inline-form .form-input:focus::placeholder{opacity:.55}.journal-container .add-food-inline-form .form-actions{align-items:center;border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;margin-top:1.2rem;padding-top:.7rem}.journal-container .add-food-inline-form .form-actions .btn-danger{margin-right:auto}.journal-container .add-food-inline-form .form-actions .btn-primary,.journal-container .add-food-inline-form .form-actions .btn-success{margin-left:auto}.journal-container .add-food-inline-form .btn{border-radius:7px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);font-family:Roboto,sans-serif;font-size:1rem;font-weight:600;min-width:130px}.journal-container .add-food-inline-form .btn.btn-primary{background:#4caf50;background:var(--vert-vitalite);color:#fff}.journal-container .add-food-inline-form .btn.btn-danger{background:#e53935;background:var(--rouge-alerte);color:#fff}@media (max-width:576px){.journal-container .add-food-inline-form{border-radius:0;box-shadow:0 2px 8px #4caf5014;margin-bottom:.75rem;padding:.8rem .4rem}.journal-container .add-food-inline-form .form-grid{grid-template-columns:1fr}.journal-container .add-food-inline-form .form-actions{flex-direction:column;gap:.5rem;padding-top:.5rem}}.form-actions{display:flex;gap:.625rem;justify-content:end;margin-top:1rem}.form-actions .btn{margin:0!important}.add-food-form{margin-bottom:1rem;padding:1rem}.add-food-form:first-of-type{background:#fff;border-radius:10px;inset:0;z-index:9999}.journal-container .add-food-form:last-of-type{border-bottom:none}.journal-container .add-food-form-title{color:#1a2e40;color:var(--bleu-mineral);font-family:Roboto,sans-serif;font-size:.875rem;font-weight:600;margin-bottom:.625rem;padding-bottom:.25rem}.journal-container .form-row{display:flex;flex-wrap:wrap;gap:.625rem}.journal-container .form-grid{grid-gap:.625rem;display:grid;gap:.625rem;grid-template-columns:1fr}.journal-container .form-actions{border-top:1px solid #e1e5e9;display:flex;flex-direction:row;gap:.625rem;justify-content:flex-end;margin-top:1rem;padding-top:.625rem}.journal-container .drop-zone{border:2px dashed #0000;border-radius:4px;margin:.25rem 0;min-height:12px}.journal-container .drop-zone.drag-over{background:#4caf501a;border-color:#4caf50;border-color:var(--vert-vitalite)}.journal-container .modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;opacity:1;overflow-y:auto;padding:1rem;position:fixed;right:0;top:0;visibility:visible;z-index:1000}.journal-container .modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 15px #0000001a;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;padding:1rem}.journal-container .modal-title{word-wrap:break-word;color:#1a2e40;color:var(--bleu-mineral);font-family:Roboto,sans-serif;font-size:1rem;font-weight:700;line-height:1.3;margin-bottom:1rem;text-align:center}.journal-container .modal-actions{display:flex;flex-direction:row;gap:.625rem;justify-content:flex-end;margin-top:1rem}.meal-selector-modal{animation:slideUpFadeIn .3s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:16px;box-shadow:0 20px 60px #1a2e4033,0 8px 20px #00000026;max-height:70vh;max-width:90vw;overflow:hidden;padding:0;width:100%}@keyframes slideUpFadeIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.meal-selector-list{display:flex;flex-direction:column;gap:0;max-height:60vh;overflow-y:auto;padding:.5rem;scroll-behavior:smooth}.meal-selector-list::-webkit-scrollbar{width:10px}.meal-selector-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px;margin:.5rem 0}.meal-selector-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#4caf50,#45a049);background:linear-gradient(180deg,var(--vert-vitalite),#45a049);border:2px solid #f1f5f9;border-radius:10px}.meal-selector-item{align-items:center;background:linear-gradient(135deg,#fff,#fafbfc);border:2px solid #0000;border-radius:12px;cursor:pointer;display:flex;flex-direction:row;margin-bottom:.5rem;overflow:hidden;padding:1rem 1.25rem;position:relative}.meal-selector-item:active{transform:translateY(0) scale(.99)}.meal-selector-content{display:flex;flex:1 1;flex-direction:column;gap:.35rem;min-width:0}.meal-selector-name{word-wrap:break-word;color:#1a2e40;color:var(--bleu-mineral);font-family:Poppins,Roboto,sans-serif;font-size:1rem;font-weight:700;letter-spacing:-.02em;line-height:1.3;margin:0}.meal-selector-details{align-items:center;color:#64748b;display:flex;flex-wrap:wrap;font-size:.85rem;font-weight:500;gap:.5rem}.meal-selector-details:before{background:#4caf50;background:var(--vert-vitalite);border-radius:50%;content:"";display:inline-block;height:4px;opacity:.6;width:4px}.meal-selector-item .calories-badge{background:linear-gradient(135deg,#e53935,#ef5350);background:linear-gradient(135deg,var(--rouge-alerte),#ef5350);border-radius:20px;box-shadow:0 2px 8px #e539354d;color:#fff;flex-shrink:0;font-size:.8rem;font-weight:700;padding:.35rem .75rem;white-space:nowrap}.meal-selector-list:empty:after{color:#94a3b8;content:"Aucun repas disponible";display:block;font-size:.95rem;font-weight:500;padding:3rem 1rem;text-align:center}@media (max-width:576px){.meal-selector-modal{border-radius:16px 16px 0 0;max-height:80vh}.meal-selector-item{padding:.875rem 1rem}.meal-selector-name{font-size:.95rem}.meal-selector-details{font-size:.8rem}}@media (min-width:577px){.meal-selector-modal{max-width:500px}}.journal-container .meal-checkbox,.journal-container .meal-radio{accent-color:#4caf50;accent-color:var(--vert-vitalite);cursor:pointer;flex-shrink:0;height:18px;width:18px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (min-width:480px){.journal-container{padding:.75rem}.journal-container .copy-buttons-grid{grid-template-columns:repeat(2,1fr)}.macros-container .page-title{font-size:1.8rem}.macros-container .grid-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (min-width:576px){.journal-container{padding:1rem}.journal-container .day-header{flex-direction:row;gap:1rem;padding:1.25rem;text-align:left}.journal-container .day-header-title{flex:1 1;font-size:1.3rem}.journal-container .day-header-nav{gap:.75rem}.journal-container .day-header-actions{justify-content:flex-end;margin-top:.2rem;width:100%}.journal-container .day-header-action-btn{font-size:.8rem;min-height:36px;padding:.5rem .85rem}.journal-container .day-header-nav .day-nav-btn{font-size:1.3rem;height:48px;width:48px}.journal-container .date-picker-wrapper{max-width:160px}.journal-container .copy-buttons-grid{grid-template-columns:repeat(3,1fr)}.journal-container .copy-section-title{font-size:1rem}.journal-container .form-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.journal-container .main-nutrients{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.journal-container .additional-nutrients-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.journal-container .btn{min-width:100px}.journal-container .form-actions{flex-direction:row;justify-content:flex-end}.journal-container .macro-breakdown{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.journal-container .food-macros{justify-content:flex-start}.journal-container .macro-pill{flex:0 1 auto}.journal-container .modal-content{padding:1.5rem}.journal-container .nutrition-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.macros-container .page-header{padding:1.25rem}.macros-container .page-title{font-size:2rem}.macros-container .grid-2{grid-template-columns:1fr}.macros-container .grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.macros-container .macro-card{padding:1.4rem 1rem}.macros-container .macro-number{font-size:2.2rem}.macros-container .nav-tab{min-width:120px;padding:.875rem 1.25rem}.macros-container .tab-content{padding:1.25rem}}@media (min-width:768px){.journal-container .day-header-nav{gap:1.25rem}.journal-container .day-header-actions{justify-content:flex-end}.journal-container .meal-header{align-items:center;flex-direction:row;gap:.9rem;justify-content:space-between;padding:1rem 1.1rem}.journal-container .meal-title-section{flex:1 1;justify-content:flex-start;min-width:0}.journal-container .meal-actions{justify-content:flex-end;width:auto}.journal-container .meal-summary-header{justify-content:space-between}.journal-container .add-food-options{flex-direction:row}.journal-container .add-food-btn{flex:1 1}.journal-container .additional-nutrient-item{align-items:center;flex-direction:row;justify-content:space-between}.journal-container .additional-nutrient-item .nutrient-goal,.journal-container .additional-nutrient-item .nutrient-label,.journal-container .additional-nutrient-item .nutrient-value{text-align:left}.journal-container .mini-progress-bar{margin-left:.5rem;margin-top:0;width:50px}.journal-container .main-nutrients{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.journal-container .editable-title{text-align:left}.journal-container .modal-content{padding:1.75rem}.macros-container .page-header{padding:1.5rem}.macros-container .page-title{font-size:2.2rem}.macros-container .grid-2{grid-template-columns:1fr 1fr}.macros-container .grid-3{grid-template-columns:repeat(3,1fr)}.macros-container .macro-card{padding:1.5rem 1rem}.macros-container .macro-number{font-size:2.4rem}.macros-container .nav-tabs{justify-content:center;margin:1.5rem 0}.macros-container .nav-tab{padding:.875rem 1.5rem}.macros-container .card,.macros-container .tab-content{padding:1.5rem}.macros-container .card-header{font-size:1.2rem}}@media (min-width:1024px){.journal-container .day-header-title{font-size:1.5rem}.journal-container .meal-section,.journal-container .summary-wrapper{margin-bottom:1.25rem}.journal-container .main-nutrients{grid-template-columns:repeat(4,1fr)}.macros-container{padding:1.5rem}.macros-container .page-header{margin-bottom:2rem;padding:2rem}.macros-container .page-title{font-size:2.5rem}.macros-container .card{margin-bottom:1.5rem;padding:2rem}.macros-container .card-header{font-size:1.3rem}.macros-container .macro-card{padding:1.7rem 1rem}.macros-container .macro-number{font-size:2.5rem}.macros-container .nav-tabs{margin:2rem 0}.macros-container .tab-content{padding:2rem}}@media (max-width:360px){.journal-container{padding:.25rem}.journal-container .day-header-title{font-size:1rem}.journal-container .date-picker-wrapper{max-width:none;min-width:0}.journal-container .date-picker-trigger{font-size:12px;min-height:36px;padding:.4rem .55rem}.journal-container .copy-btn{font-size:12px;padding:.625rem .25rem}.journal-container .modal-content{padding:.75rem}.journal-container .modal-title{font-size:.9rem}.macros-container{padding:.25rem}.macros-container .page-title{font-size:1.4rem}.macros-container .page-subtitle{font-size:.85rem}.macros-container .macro-number{font-size:1.6rem}.macros-container .macro-label{font-size:.8rem}.macros-container .macro-percentage{font-size:.75rem}.macros-container .nav-tab{font-size:14px;padding:.625rem .75rem}}.journal-container .meal-section.dragging{border:2px dashed #4caf50;border:2px dashed var(--vert-vitalite);opacity:.5;transform:scale(1.02)}.journal-container .meal-section.over{background-color:#4caf501a;border:2px dashed #4caf50;border:2px dashed var(--vert-vitalite)}.touch-drag-preview{filter:drop-shadow(0 10px 22px rgba(15,23,42,.26));left:0;opacity:.98;pointer-events:none;position:fixed;top:0;will-change:transform;z-index:9999}.touch-drag-preview .touch-drag-preview-content{background:#0000;margin:0;max-width:none;min-height:0;padding:0}.touch-drag-preview .touch-drag-preview-table{border-collapse:initial;border-spacing:0;table-layout:fixed;width:100%}body.touch-drag-active,body.touch-drag-active *{-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important}@media (hover:none) and (pointer:coarse){.journal-container .meal-section.over{background-color:#4caf5024;box-shadow:0 0 0 3px #4caf503d}.journal-container .food-entry.over,.journal-container .meal-table-row.over td{box-shadow:none}}.journal-container .meal-selector-item.selected{background:#4caf50;background:var(--vert-vitalite)}.journal-container .meal-selector-item .btn,.journal-container .meal-selector-item .btn-icon{position:relative;z-index:1}.food-actions{display:flex;flex-wrap:wrap;gap:.5rem}.food-ingredients-block{background:#0000;border:none;margin-top:.625rem;padding:0}.food-ingredients-preview{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.55rem}.food-ingredients-toggle{align-items:center;background:none;border:none;border-radius:4px;color:#1a2e40;color:var(--bleu-mineral);cursor:pointer;display:inline-flex;font-size:.84rem;font-weight:700;gap:.38rem;justify-content:center;padding:.42rem 0;transition:color .2s ease;width:100%}.food-ingredients-toggle:hover{color:#4caf50;color:var(--vert-vitalite)}.food-ingredients-toggle svg{height:18px;overflow:visible;transition:transform .2s ease;width:18px}.food-ingredients-toggle.active svg{transform:rotate(180deg)}.food-ingredients-toggle.active{color:#4caf50;color:var(--vert-vitalite);margin-bottom:.15rem}.food-ingredients{background:#f8f9fa;background:var(--gris-clair);border:1px solid #e1e5e9;border-radius:6px;display:block;margin-top:0;padding:.7rem}.food-ingredients-title{color:#5f7286;font-size:.78rem;font-weight:700;letter-spacing:.04em;margin-bottom:.5rem;min-width:0;text-transform:uppercase;width:100%}.food-ingredients-list{grid-gap:.5rem;display:grid;flex:1 1 auto;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));width:100%}.food-ingredient-chip{align-items:center;background:#fff;border:1px solid #e1e5e9;border-radius:4px;color:#1f3346;display:flex;font-size:.8rem;font-weight:600;line-height:1.25;min-height:38px;min-width:0;padding:.5rem;word-break:break-word}.food-ingredient-chip--muted{background:#f8fafc;color:#7b8794}.btn.cancel-btn{background:#e53935;background:var(--rouge-alerte);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1rem}.journal-container .meal-selector-item.selected{background-color:#4caf50;background-color:var(--vert-vitalite);border-color:#4caf50;border-color:var(--vert-vitalite);box-shadow:0 4px 6px #00000012;box-shadow:var(--shadow-md);color:#fff}.journal-container .meal-selector-item.selected .meal-selector-details,.journal-container .meal-selector-item.selected .meal-selector-name{color:#fff}.nutrition-details-container{margin-top:1rem;overflow:hidden;transition:max-height .35s ease,opacity .25s ease}.nutrition-details-container.collapsed{max-height:0;opacity:0}.nutrition-details-container.expanded{max-height:1200px;opacity:1}.toggle-nutrition-btn{align-items:center;background:#4caf50;background:var(--vert-vitalite);border:none;border-radius:12px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:.3rem;margin-top:.5rem;padding:.5rem 1rem}.toggle-nutrition-btn:active{transform:translateY(0)}.toggle-nutrition-btn svg{transition:transform .25s ease}.toggle-nutrition-btn.active svg{transform:rotate(180deg)}.button-bar,.modal-footer,.popup-actions{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-top:1rem;padding-top:.75rem}.button-bar .btn-danger,.form-actions .btn-danger,.modal-footer .btn-danger,.popup-actions .btn-danger{margin-right:auto}.button-bar .btn-primary,.button-bar .btn-success,.form-actions .btn-primary,.form-actions .btn-success,.modal-footer .btn-primary,.modal-footer .btn-success,.popup-actions .btn-primary,.popup-actions .btn-success{margin-left:auto}@media (max-width:576px){.button-bar,.form-actions,.modal-footer,.popup-actions{align-items:stretch;flex-direction:column-reverse}.button-bar .btn,.form-actions .btn,.modal-footer .btn,.popup-actions .btn{text-align:center}}.btn{border-radius:8px;font-family:Roboto,sans-serif;font-weight:600;min-height:42px;padding:.6rem 1.2rem}.btn:active{box-shadow:0 1px 3px #0000000d;transform:translateY(0)}.copy-btn svg,.journal-container .copy-btn svg{fill:currentColor;stroke:none;height:16px;width:16px}.food-form-improved{background:#f6f8fb;border-radius:14px;box-shadow:inset 0 0 0 1px #1a2e400f;display:flex;flex-direction:column;gap:.9rem;padding:1rem 1.1rem}.food-form-improved .form-row{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr))}.food-form-improved .form-group{display:flex;flex:1 1;flex-direction:column}.food-form-improved .form-hint{color:#6c757d;display:block;font-size:.8rem;margin-top:.25rem}.food-form-improved label{color:#333;color:var(--gris-fonce);font-size:.92rem;font-weight:600;margin-bottom:.35rem}.food-form-improved input,.food-form-improved select{background:#fff;outline:none}.food-form-improved .food-form-readonly,.food-form-improved input,.food-form-improved select{border:1px solid #d8e1ec;border-radius:10px;color:#333;color:var(--gris-fonce);font-size:.95rem;padding:.7rem .85rem}.food-form-improved .food-form-readonly{background:#f2f6fb}.food-form-improved input:focus,.food-form-improved select:focus{border-color:#4caf50;border-color:var(--vert-vitalite);box-shadow:0 0 0 3px #4caf501f}.food-form-improved h4{color:#1a2e40;font-family:Poppins,sans-serif;font-size:.9rem;margin:.6rem 0 .4rem}.food-form-textarea{background:#fff;border:1px solid #d8e1ec;border-radius:10px;font-family:Roboto,sans-serif;font-size:.95rem;min-height:90px;padding:.7rem .85rem;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.food-form-textarea:focus{border-color:#4caf50;border-color:var(--vert-vitalite);box-shadow:0 0 0 3px #4caf501f;outline:none}@media (max-width:640px){.food-form-improved{gap:.75rem;padding:.85rem .9rem}.food-form-improved .edit-food-row,.food-form-improved .form-row{gap:.65rem;grid-template-columns:1fr}.food-form-improved label{font-size:.9rem}.food-form-improved .food-form-readonly,.food-form-improved input,.food-form-improved select{font-size:16px;min-height:44px}.food-form-textarea{font-size:16px;min-height:80px}}.food-form-improved .form-actions{display:flex;justify-content:flex-end}.food-form-improved .btn{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.6rem 1.2rem}.food-form-improved .btn-primary{background-color:#1a2e40;background-color:var(--bleu-mineral);color:#fff}.journal-container .meal-nutrition-summary{background:#f8f9fa;background:var(--gris-clair);margin:0;padding:.875rem}.journal-container .meal-summary-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.journal-container .meal-summary-icon{align-items:center;color:#1a2e40;color:var(--bleu-mineral);display:flex;gap:.5rem}.journal-container .meal-summary-icon svg{fill:#4caf50;fill:var(--vert-vitalite);flex-shrink:0}.journal-container .summary-title{font-size:.875rem;font-weight:600}.journal-container .total-calories{align-items:baseline;display:flex;flex-shrink:0;gap:.25rem}.journal-container .calories-number{color:#e53935;color:var(--rouge-alerte);font-size:1.25rem;font-weight:800}.journal-container .calories-unit{color:#666;font-size:.75rem;font-weight:500}.journal-container .macro-breakdown{grid-gap:.625rem;display:grid;gap:.625rem;grid-template-columns:1fr}.journal-container .macro-item{align-items:center;background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);display:flex;gap:.625rem;padding:.625rem}.journal-container .macro-bar{background:#e2e8f0;border-radius:2.5px;flex:1 1;height:5px;overflow:hidden}.journal-container .macro-fill{border-radius:2.5px;height:100%;transition:width .3s ease}.journal-container .protein-fill{background:#1a2e40;background:var(--bleu-mineral)}.journal-container .carb-fill{background:#ffc107;background:var(--jaune-energie)}.journal-container .fat-fill{background:#4caf50;background:var(--vert-vitalite)}.journal-container .macro-info{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;min-width:60px}.journal-container .macro-label{color:#666;font-size:.75rem;font-weight:500}.journal-container .macro-value{color:#1a2e40;color:var(--bleu-mineral);font-size:.875rem;font-weight:700}@media (min-width:576px){.journal-container .macro-breakdown{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width:1024px){.journal-container{padding:.35rem}.journal-container .day-header{border-radius:10px;gap:.45rem;margin-bottom:.55rem;padding:.65rem}.journal-container .day-header-title{font-size:.98rem;line-height:1.15}.journal-container .day-header-nav{border-radius:10px;gap:.3rem;padding:.2rem}.journal-container .day-header-nav .day-nav-btn{border-radius:9px;font-size:1.2rem;height:44px;width:44px}.journal-container .date-picker-trigger{border-radius:9px;gap:.3rem;min-height:40px;padding:.3rem .32rem .3rem .45rem}.journal-container .date-picker-inline-input{min-height:32px;padding:0}.journal-container .date-picker-open-btn{height:32px;width:32px}.journal-container .day-header-actions{gap:.35rem}.journal-container .day-header-action-btn{font-size:.74rem;min-height:32px;padding:.36rem .58rem}.journal-container .copy-options-section{border-radius:10px;margin-bottom:.55rem;padding:.65rem}.journal-container .copy-main-btn{border-radius:10px;gap:.2rem;min-height:74px;padding:.75rem .8rem}.journal-container .copy-main-btn-label{font-size:.95rem}.journal-container .copy-main-btn-subtitle{font-size:.82rem}.journal-container .copy-main-btn-cta{font-size:.74rem;margin-top:.2rem;padding:.18rem .45rem}.journal-container .copy-helper-text{font-size:.8rem;line-height:1.35;margin:.45rem 0 0;padding:.52rem .58rem}.journal-container .meal-section{border-radius:10px;margin-bottom:.65rem}.journal-container .drop-zone{min-height:8px}.journal-container .add-meal-btn{margin:.6rem auto;padding:.72rem 1rem}}.journal-container .day-header{align-items:center!important;background:linear-gradient(135deg,#1a2e40,#2c5282)!important;background:linear-gradient(135deg,var(--bleu-mineral) 0,#2c5282 100%)!important;border-radius:12px!important;display:flex!important;flex-direction:row!important;gap:1rem!important;margin-bottom:1rem!important;padding:1.25rem!important;text-align:left!important}.journal-container .day-header-title{flex:0 0 auto!important;font-size:1.3rem!important;font-weight:700!important;letter-spacing:.5px!important;line-height:1.2!important;text-align:left!important}.journal-container .day-header-nav{background:#ffffff14!important;border:1px solid #ffffff38!important;border-radius:12px!important;gap:.42rem!important;padding:.34rem!important;width:auto!important}.journal-container .day-header-nav .day-nav-btn{border-radius:10px!important;font-size:1.3rem!important;height:48px!important;width:48px!important}.journal-container .date-picker-wrapper{flex:0 0 auto!important;max-width:138px!important;min-width:132px!important;width:138px!important}.journal-container .date-picker-trigger{border-radius:9px!important;font-size:.88rem!important;gap:.18rem!important;min-height:36px!important;padding:.26rem .12rem .26rem .36rem!important}.journal-container .date-picker-inline-input{font-size:.86rem!important;max-width:78px!important;min-width:74px!important;width:78px!important}.journal-container .date-picker-open-btn{border-radius:8px!important;height:28px!important;margin-left:auto!important;margin-right:0!important;width:28px!important}.journal-container .day-header-actions{gap:.5rem!important;justify-content:flex-end!important;margin-left:auto!important;margin-top:0!important;width:auto!important}.journal-container .day-header-action-btn{border-radius:8px!important;flex:0 0 auto!important;font-size:.8rem!important;font-weight:700!important;min-height:36px!important;padding:.5rem .85rem!important;width:auto!important}@media (max-width:1024px){.journal-container .day-header{align-items:stretch!important;border-radius:10px!important;flex-direction:column!important;gap:.45rem!important;margin-bottom:.55rem!important;padding:.65rem!important;text-align:center!important}.journal-container .day-header-title{flex:0 0 auto!important;font-size:.98rem!important;line-height:1.15!important;text-align:center!important}.journal-container .day-header-nav{border-radius:10px!important;gap:.3rem!important;justify-content:space-between!important;padding:.2rem!important;width:100%!important}.journal-container .day-header-nav .day-nav-btn{border-radius:9px!important;font-size:1.2rem!important;height:44px!important;width:44px!important}.journal-container .date-picker-wrapper{flex:1 1 auto!important;max-width:none!important;min-width:0!important;width:auto!important}.journal-container .date-picker-trigger{border-radius:9px!important;gap:.3rem!important;min-height:40px!important;padding:.3rem .32rem .3rem .45rem!important}.journal-container .date-picker-inline-input{flex:1 1 auto!important;max-width:none!important;min-height:32px!important;min-width:0!important;padding:0!important;width:100%!important}.journal-container .date-picker-open-btn{height:32px!important;margin-left:auto!important;margin-right:0!important;width:32px!important}.journal-container .day-header-actions{grid-gap:.35rem!important;display:grid!important;gap:.35rem!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}.journal-container .day-header-action-btn{font-size:.74rem!important;min-height:32px!important;padding:.36rem .58rem!important;width:100%!important}.journal-container .day-header-action-btn:nth-child(3){grid-column:1/-1!important}}@media (max-width:520px){.journal-container .day-header-nav .day-nav-btn{border-radius:10px!important;font-size:1rem!important;height:34px!important;width:34px!important}.journal-container .date-picker-open-btn{height:30px!important;margin-left:auto!important;margin-right:0!important;width:30px!important}}@media (max-width:576px){.journal-container .copy-helper-text{display:none}.date-picker-popover{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff!important;filter:none;left:.25rem;max-height:calc(100dvh - env(safe-area-inset-top, 0px) - .5rem);mix-blend-mode:normal;opacity:1!important;padding:.4rem;right:.25rem;top:calc(env(safe-area-inset-top, 0px) + .25rem);z-index:2147483647}.date-picker-popover .date-picker-day-btn{font-size:.82rem;min-height:34px}.date-picker-popover .date-picker-close-row button,.date-picker-popover .date-picker-popover-footer button{font-size:.75rem;min-height:34px}}@media (max-width:1024px){.journal-container .meal-table-section{border-radius:12px;overflow:hidden}.journal-container .meal-table-toolbar{grid-gap:.48rem;align-items:stretch;display:grid;gap:.48rem;grid-template-columns:minmax(0,1fr);padding:.62rem .68rem}.journal-container .meal-table-toolbar .meal-title-section{gap:.4rem;min-width:0}.journal-container .meal-table-title-input{font-size:.95rem;min-width:0;width:100%}.journal-container .meal-table-toolbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.32rem;justify-content:flex-start}.journal-container .meal-table-toolbar-actions button{font-size:.72rem;line-height:1;min-height:30px;padding:.28rem .5rem}.journal-container .meal-table-selection-toolbar{gap:.42rem;margin:.38rem .44rem .1rem;padding:.34rem .44rem}.journal-container .meal-table-selection-count{font-size:.68rem}.journal-container .meal-table-selection-btn{font-size:.64rem;gap:.16rem;min-height:26px;padding:.16rem .42rem}.journal-container .meal-table-selection-move-group{gap:.2rem}.journal-container .meal-table-selection-select{font-size:.62rem;max-width:150px;min-height:26px;padding:.14rem .36rem}.journal-container .meal-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:.44rem .44rem .58rem}.journal-container .meal-table{font-size:.83rem;min-width:850px}.journal-container .meal-table thead th{font-size:.7rem;letter-spacing:.03em;padding:.5rem .34rem}.journal-container .meal-table td{font-size:.82rem;padding:.46rem .34rem}.journal-container .meal-table .food-name-main{font-size:.84rem;line-height:1.24;overflow-wrap:anywhere}.journal-container .meal-table .food-name-sub{font-size:.74rem;gap:.28rem}.journal-container .meal-table .food-row-hint{font-size:.66rem;gap:.22rem;margin-top:.26rem}.journal-container .meal-table .meal-table-food-image,.journal-container .meal-table .meal-table-food-image.placeholder,.journal-container .meal-table .meal-table-image-btn{height:32px;width:32px}.journal-container .meal-table .meal-table-drag-handle{height:16px;margin-right:.2rem;width:16px}.journal-container .meal-table .meal-table-select-toggle input[type=checkbox]{height:14px;width:14px}.journal-container .meal-table-actions{gap:.26rem}.journal-container .meal-table-actions .food-mobile-action-btn{font-size:.62rem;gap:.12rem;min-height:24px;padding:.1rem .3rem}.journal-container .meal-table-actions .food-mobile-action-btn svg{height:8px;width:8px}.journal-container .meal-table-link-group{flex-wrap:nowrap;gap:.34rem;overflow-x:auto;padding-bottom:.08rem}.journal-container .meal-table-link{font-size:.72rem;min-height:30px;padding:.28rem .5rem;white-space:nowrap}.journal-container .meal-table-empty-state{font-size:.82rem;padding:.22rem .5rem}}@media (max-width:560px){.journal-container .meal-table-toolbar{gap:.4rem;padding:.56rem .58rem}.journal-container .meal-table-toolbar-actions{gap:.26rem}.journal-container .meal-table-toolbar-actions button{font-size:.68rem;padding:.24rem .44rem}.journal-container .meal-table-wrapper{padding:.4rem .36rem .52rem}.journal-container .meal-table{min-width:820px}}@media (max-width:576px){.copy-center-drawer{border-left:none;width:100vw}.copy-center-header{padding:.9rem .95rem}.copy-center-header h3{font-size:1rem}.copy-center-header p{font-size:.88rem}.copy-center-body{gap:.74rem;padding:.72rem .95rem .98rem}.copy-center-mode-grid{gap:.42rem;grid-template-columns:1fr}.copy-center-mode-btn{min-height:auto;padding:.62rem .7rem}.copy-center-summary{padding:.72rem .78rem}.copy-center-footer{padding:.62rem .95rem calc(.62rem + env(safe-area-inset-bottom, 0px))}}@media (max-width:1024px){.journal-container.mobile-journal-mode{background:#f8f9fa;background:var(--gris-clair);padding:.44rem .44rem 5.75rem}.journal-container.mobile-journal-mode .day-header{background:linear-gradient(135deg,#1a2e40,#2c5282)!important;background:linear-gradient(135deg,var(--bleu-mineral) 0,#2c5282 100%)!important;border:none!important;box-shadow:0 6px 20px #1a2e4026!important;overflow:visible!important}.journal-container.mobile-journal-mode .day-header:before{display:block!important;opacity:.2}.journal-container.mobile-journal-mode .day-header-title{color:#fff!important;text-shadow:0 2px 4px #00000047!important}.journal-container.mobile-journal-mode .day-header-nav{background:#ffffff14!important;border-color:#ffffff38!important}.journal-container.mobile-journal-mode .day-header-nav .day-nav-btn{background:#ffffff2e!important;border-color:#ffffff4d!important;box-shadow:0 4px 10px #0a142329!important;color:#fff!important}.journal-container.mobile-journal-mode .date-picker-trigger{background:#ffffffeb!important;border-color:#ffffff73!important;box-shadow:0 6px 14px #0a142333!important;color:#10293a!important}.journal-container.mobile-journal-mode .day-header-actions-toggle{align-items:center;background:#ffffff29;border:1px solid #ffffff61;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:.76rem;font-weight:700;gap:.35rem;justify-content:center;letter-spacing:.03em;min-height:34px;width:100%}.journal-container.mobile-journal-mode .day-header-actions-toggle svg{transition:transform .2s ease}.journal-container.mobile-journal-mode .day-header-actions-toggle.active{background:#4caf503d;border-color:#b0ffc0e0}.journal-container.mobile-journal-mode .day-header-actions-toggle.active svg{transform:rotate(180deg)}.journal-container.mobile-journal-mode .day-header-actions{display:none!important;gap:.35rem!important;grid-template-columns:1fr!important;width:100%!important}.journal-container.mobile-journal-mode .day-header-actions.open{display:grid!important}.journal-container.mobile-journal-mode .day-header-action-btn{background:#ffffff29!important;border-color:#ffffff59!important;border-radius:8px!important;box-shadow:0 2px 8px #0a14232e!important;color:#fff!important;min-height:34px!important;width:100%!important}.journal-container.mobile-journal-mode .mobile-calorie-overview-card{background:#fff;border:1px solid #cfdeec;border-radius:12px;box-shadow:0 6px 16px #1a2e4014;margin:0 0 .62rem;overflow:hidden;padding:0}.journal-container.mobile-journal-mode .mobile-calorie-overview-head{align-items:center;background:linear-gradient(45deg,#ffffff1a 25%,#0000 0),linear-gradient(-45deg,#ffffff1a 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ffffff1a 0),linear-gradient(-45deg,#0000 75%,#ffffff1a 0),linear-gradient(130deg,#264d77,#1a2e40 58%,#173650);background:linear-gradient(45deg,#ffffff1a 25%,#0000 25%),linear-gradient(-45deg,#ffffff1a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ffffff1a 75%),linear-gradient(-45deg,#0000 75%,#ffffff1a 75%),linear-gradient(130deg,#264d77 0,var(--bleu-mineral) 58%,#173650 100%);background-position:0 0,0 6px,6px -6px,-6px 0,0 0;background-size:12px 12px,12px 12px,12px 12px,12px 12px,auto;border-bottom:1px solid #ffffff2e;display:flex;gap:.4rem;justify-content:space-between;margin-bottom:0;padding:.58rem .76rem}.journal-container.mobile-journal-mode .mobile-calorie-overview-head h3{color:#fff;font-family:Poppins,Roboto,sans-serif;font-size:.9rem;font-weight:700;letter-spacing:.01em;margin:0}.journal-container.mobile-journal-mode .mobile-calorie-goal-hint{background:#ffffff2e;border:1px solid #ffffff5c;border-radius:999px;color:#fff;font-size:.67rem;font-weight:700;letter-spacing:.04em;padding:.18rem .46rem;text-transform:uppercase}.journal-container.mobile-journal-mode .mobile-calorie-overview-math{grid-gap:.22rem;align-items:center;background:linear-gradient(180deg,#fff,#f8fbff);display:grid;gap:.22rem;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);padding:.66rem .74rem .72rem}.journal-container.mobile-journal-mode .mobile-calorie-metric{align-items:center;display:flex;flex-direction:column;gap:.08rem;min-width:0}.journal-container.mobile-journal-mode .metric-value{color:#13344e;font-size:1.02rem;font-weight:800;line-height:1}.journal-container.mobile-journal-mode .metric-label{color:#6e8195;font-size:.66rem;font-weight:700;letter-spacing:.045em;line-height:1.2;text-align:center;text-transform:uppercase}.journal-container.mobile-journal-mode .metric-operator{align-self:center;color:#8fa0b1;font-size:.98rem;font-weight:700;line-height:1}.journal-container.mobile-journal-mode .metric-result .metric-value{color:#0f5fc6}.journal-container.mobile-journal-mode .metric-result.negative .metric-value{color:#b42318}.journal-container.mobile-journal-mode .journal-meals-list{display:flex;flex-direction:column;gap:.56rem}.journal-container.mobile-journal-mode .drop-zone{display:none}.journal-container.mobile-journal-mode .mobile-diary-meal{background:#fff;border:1px solid #d6e0ea;border-radius:12px;box-shadow:0 8px 20px #1a2e4014;margin-bottom:0}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-header{background:linear-gradient(130deg,#264d77,#1a2e40 58%,#173650);background:linear-gradient(130deg,#264d77 0,var(--bleu-mineral) 58%,#173650 100%);border-bottom:1px solid #ffffff24;color:#fff;gap:.5rem;padding:.68rem .8rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-header:before{display:block}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-title-drag-handle{color:#ffffffd1}.journal-container.mobile-journal-mode .mobile-diary-meal .editable-title{background:#ffffff24;border-radius:8px;color:#fff;font-size:.96rem;font-weight:700;padding:.42rem .52rem}.journal-container.mobile-journal-mode .mobile-diary-meal .editable-title:focus{background:#ffffff3d;box-shadow:0 0 0 2px #ffffff6b}.journal-container.mobile-journal-mode .mobile-diary-meal .editable-title::placeholder{color:#ffffffbd}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-actions-toggle{background:#ffffff29;border-color:#fff6;border-radius:999px;color:#f8fafc;font-size:.74rem;min-height:30px;padding:.26rem .66rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-mobile-header-tools{align-items:center;display:inline-flex;gap:.36rem;margin-left:auto}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-mobile-sort-controls{align-items:center;display:inline-flex;gap:.22rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-mobile-sort-btn{align-items:center;background:#ffffff24;border:1px solid #ffffff61;border-radius:8px;color:#f8fafc;cursor:pointer;display:inline-flex;height:28px;justify-content:center;min-height:28px;min-width:28px;width:28px}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-mobile-sort-btn svg{height:11px;width:11px}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-mobile-sort-btn:disabled{cursor:not-allowed;opacity:.45}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-actions-toggle.active{background:#4caf5047;border-color:#b0ffc0d9;color:#fff}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-actions-panel{background:#f8fafcf2;border:0;border-bottom:1px solid #e2e8f0;padding:.44rem .7rem .64rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-actions-panel .meal-cancel-btn-text,.journal-container.mobile-journal-mode .mobile-diary-meal .meal-actions-panel .meal-copy-btn-text,.journal-container.mobile-journal-mode .mobile-diary-meal .meal-actions-panel .meal-delete-btn-text,.journal-container.mobile-journal-mode .mobile-diary-meal .meal-actions-panel .meal-rename-btn-text{border-color:#d3deea;border-radius:999px;font-size:.72rem;min-height:30px;padding:.24rem .62rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-nutrition-summary{background:#f8f9fa;background:var(--gris-clair);border-top:1px solid #e2e8f0;padding:.56rem .8rem .62rem}.journal-container.mobile-journal-mode .mobile-diary-meal .summary-title{color:#36506a;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-summary-header{margin-bottom:.34rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-total-macros-grid{gap:.34rem;margin-top:.18rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-total-macro-chip{border-radius:8px;padding:.34rem .42rem}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-total-macro-label{font-size:.6rem;letter-spacing:.045em}.journal-container.mobile-journal-mode .mobile-diary-meal .meal-total-macro-value{font-size:.86rem}.journal-container.mobile-journal-mode .mobile-diary-meal .total-calories{gap:.24rem;margin-left:auto}.journal-container.mobile-journal-mode .mobile-diary-meal .calories-number{color:#e53935;color:var(--rouge-alerte);font-size:1.12rem;font-weight:800}.journal-container.mobile-journal-mode .mobile-diary-meal .calories-unit{color:#55687b;font-size:.71rem;letter-spacing:.04em;text-transform:uppercase}.journal-container.mobile-journal-mode .mobile-diary-meal .macro-breakdown{gap:.42rem;margin-top:.46rem}.journal-container.mobile-journal-mode .mobile-diary-meal .macro-item{border:1px solid #dbe5ef;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);padding:.44rem .52rem}.journal-container.mobile-journal-mode .mobile-diary-meal .foods-list{background:#fff;padding:.44rem .5rem .22rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry{background:#fff;border:1px solid #dce6f0;border-radius:10px;box-shadow:0 1px 3px #0000001f;box-shadow:var(--shadow-sm);margin:0 0 .5rem;padding:.66rem .72rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry:last-child{margin-bottom:0}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-entry-header.mobile-compact{gap:.44rem;margin-bottom:.22rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-row{align-items:start;gap:.58rem;grid-template-columns:minmax(0,1fr) auto}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-main{gap:.54rem;grid-template-columns:34px minmax(0,1fr)}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-image,.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-image.placeholder{border:1px solid #d8e3ef;border-radius:8px;height:34px;width:34px}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-name{color:#1a2e40;color:var(--bleu-mineral);font-size:.98rem;font-weight:700;line-height:1.24}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-quantity-inline{color:#5f7286;font-size:.82rem;font-weight:600}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-added-inline{color:#667d92;font-size:.76rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-meta{align-items:flex-end;flex-direction:column;gap:.24rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-calories{background:#e539351f;border-radius:999px;color:#e53935;color:var(--rouge-alerte);gap:.2rem;padding:.2rem .45rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-calories .calories-amount,.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-calories .calories-text{font-size:.92rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-ingredients-toggle.compact{background:#f6f9fd;border:1px solid #d4e0ec;border-radius:999px;color:#35506a;font-size:.8rem;font-weight:700;letter-spacing:.01em;min-height:34px;min-width:90px;padding:.3rem .58rem;text-transform:none}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-actions{align-items:center;gap:.45rem;justify-content:flex-start;margin-bottom:.32rem;margin-top:.5rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-sort-controls{align-items:center;display:inline-flex;flex-shrink:0;gap:.26rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-sort-btn{align-items:center;background:#f6f9fd;border:1px solid #d4e0ec;border-radius:8px;color:#35506a;cursor:pointer;display:inline-flex;height:28px;justify-content:center;min-height:28px;min-width:28px;width:28px}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-sort-btn svg{height:11px;width:11px}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-sort-btn:disabled{cursor:not-allowed;opacity:.45}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-main-actions{gap:.24rem;margin-left:auto}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-macros-section-title{margin-bottom:.18rem;margin-top:.34rem}.journal-container.mobile-journal-mode .mobile-diary-food-entry .food-mobile-action-btn{border-radius:8px;font-size:.78rem;min-height:32px;padding:.18rem .52rem}.journal-container.mobile-journal-mode .mobile-diary-add-food-options{grid-gap:.4rem;background:#fff;border-top:1px solid #e2e8f0;display:grid;gap:.4rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.54rem .66rem .64rem}.journal-container.mobile-journal-mode .mobile-diary-add-food-options .add-food-btn{background:#fff;border:1px solid #c8d9ea;border-radius:10px;box-shadow:none;color:#17466a;font-size:.8rem;font-weight:700;gap:.32rem;line-height:1.2;min-height:40px;padding:.42rem .5rem;text-align:center;white-space:nowrap}.journal-container.mobile-journal-mode .mobile-diary-add-food-options .add-food-btn.search-btn{background:#eef8f1;border-color:#b9d8c0;color:#22663f}.journal-container.mobile-journal-mode .mobile-diary-add-food-options .add-food-btn.manual-btn{background:#f3f8ff;border-color:#bcd4eb;color:#174d79}.journal-container.mobile-journal-mode .add-meal-btn{border-radius:12px;box-shadow:0 8px 20px #0f5fc638;font-size:.88rem;font-weight:700;letter-spacing:.02em;margin:.72rem auto .85rem;min-height:44px;width:100%}}@media (max-width:420px){.journal-container.mobile-journal-mode .mobile-calorie-overview-math{gap:.12rem}.journal-container.mobile-journal-mode .metric-value{font-size:.94rem}.journal-container.mobile-journal-mode .metric-label{font-size:.61rem;letter-spacing:.035em}.journal-container.mobile-journal-mode .metric-operator{font-size:.9rem}}.journal-container .mobile-calorie-overview-card{background:#fff;border:1px solid #cfdeec;border-radius:12px;box-shadow:0 6px 16px #1a2e4014;margin:0 0 .95rem;overflow:hidden}.journal-container .mobile-calorie-overview-head{align-items:center;background:linear-gradient(45deg,#ffffff1a 25%,#0000 0),linear-gradient(-45deg,#ffffff1a 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ffffff1a 0),linear-gradient(-45deg,#0000 75%,#ffffff1a 0),linear-gradient(130deg,#264d77,#1a2e40 58%,#173650);background:linear-gradient(45deg,#ffffff1a 25%,#0000 25%),linear-gradient(-45deg,#ffffff1a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ffffff1a 75%),linear-gradient(-45deg,#0000 75%,#ffffff1a 75%),linear-gradient(130deg,#264d77 0,var(--bleu-mineral) 58%,#173650 100%);background-position:0 0,0 6px,6px -6px,-6px 0,0 0;background-size:12px 12px,12px 12px,12px 12px,12px 12px,auto;border-bottom:1px solid #ffffff2e;display:flex;gap:.4rem;justify-content:space-between;margin-bottom:0;padding:.68rem .86rem}.journal-container .mobile-calorie-overview-head h3{color:#fff;font-family:Poppins,Roboto,sans-serif;font-size:.96rem;font-weight:700;letter-spacing:.01em;margin:0}.journal-container .mobile-calorie-goal-hint{background:#ffffff2e;border:1px solid #ffffff5c;border-radius:999px;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.04em;padding:.2rem .5rem;text-transform:uppercase}.journal-container .mobile-calorie-overview-math{grid-gap:.34rem;align-items:center;background:linear-gradient(180deg,#fff,#f8fbff);display:grid;gap:.34rem;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);padding:.74rem .82rem .78rem}.journal-container .mobile-calorie-metric{align-items:center;display:flex;flex-direction:column;gap:.08rem;min-width:0}.journal-container .metric-value{color:#13344e;font-size:1.08rem;font-weight:800;line-height:1}.journal-container .metric-label{color:#6e8195;font-size:.67rem;font-weight:700;letter-spacing:.045em;line-height:1.2;text-align:center;text-transform:uppercase}.journal-container .metric-operator{align-self:center;color:#8fa0b1;font-size:1rem;font-weight:700;line-height:1}.journal-container .metric-result .metric-value{color:#0f5fc6}.journal-container .metric-result.negative .metric-value{color:#b42318}@media (min-width:1025px){.journal-container .meal-table thead th.action-col{min-width:96px!important;text-align:center!important;width:96px!important}.journal-container .meal-table-actions-cell{min-width:96px!important;width:96px!important}.journal-container .meal-table-actions{align-items:stretch!important;display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;gap:.2rem!important;justify-content:flex-start!important}.journal-container .meal-table-actions .food-mobile-action-btn{font-size:.62rem!important;justify-content:center!important;min-height:24px!important;padding:.12rem .28rem!important;white-space:nowrap!important;width:100%!important}}
/*# sourceMappingURL=main.22476633.css.map*/