/* Acceso previo: el contenido de la cocina nunca se muestra sin sesión. */
body.auth-pending>.sidebar,body.auth-pending>.workspace,body.auth-pending>#dialog{display:none}
#access-screen[hidden],.auth-ready>#access-screen{display:none!important}
#access-screen{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;background:#fafbf6}
.access-art{background:#e3ecd7;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:70px;color:#2d6041}
.access-art::before,.access-art::after{content:"";position:absolute;width:400px;height:400px;border:1px solid #b9cda3;border-radius:50%;transform:rotate(-25deg)}
.access-art::before{width:560px;height:560px}.access-art::after{width:680px;height:680px;border-style:dashed;opacity:.5}
.access-art>span{font-size:170px;position:relative;z-index:1;line-height:1.1;transform:rotate(-15deg)}
.access-art p{position:relative;z-index:1;text-align:center;font:600 29px/1.5 'Manrope',sans-serif;letter-spacing:-1px;max-width:400px}
.access-card{width:min(460px,100%);padding:60px 40px;align-self:center;justify-self:center;z-index:1}
.access-card .brand{font-size:40px;letter-spacing:-2px;margin-bottom:50px}.access-card .eyebrow{font-size:9px;margin-bottom:15px}
.access-card h1{font-size:32px;line-height:1.3;margin:0 0 15px}.access-card .sub{font-size:14px;margin-bottom:30px}
.access-card form>label{font-weight:600}.password-field{position:relative;display:flex;align-items:center;gap:0;margin:8px 0 15px}
.password-field input{width:100%;min-width:0;padding:15px 78px 15px 15px;margin:0;border-radius:10px;background:white}
.password-field button{position:absolute;right:7px;border:0;background:transparent;color:var(--green);padding:10px 7px;font-size:11px;font-weight:700}
.remember-row{display:flex;align-items:center;gap:10px;font-weight:400!important;font-size:12px;color:#70806d;margin:17px 0 23px}
.remember-row input{flex-shrink:0;margin:0!important;width:18px;height:18px;accent-color:var(--green)}
.access-submit{width:100%;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;border-radius:10px;font-size:14px}
.access-error{font-size:12px;line-height:1.6;color:#a34435;margin:12px 0}.access-error:empty{display:none}.access-foot{font-size:11px;color:#8c9985;margin-top:32px}
.mobile-nav,.day-picker,.meal-more{display:none}.meal-menu-sheet{display:grid;gap:12px}.meal-menu-sheet .button{text-align:left;padding:15px}
.purchase-progress{background:#eaf0df;border-radius:12px;padding:17px 20px;margin:0 0 24px;font-size:12px;color:#65765a}
.purchase-progress strong{font-size:20px;color:var(--green)}.purchase-progress span{float:right;font-weight:700;color:var(--green)}
.purchase-progress progress{appearance:none;-webkit-appearance:none;width:100%;height:6px;border:0;border-radius:10px;overflow:hidden;background:#d6e0cc;margin-top:12px}
.purchase-progress progress::-webkit-progress-bar{background:#d6e0cc}.purchase-progress progress::-webkit-progress-value{background:#62864a;border-radius:10px}.purchase-progress progress::-moz-progress-bar{background:#62864a}
@media(max-width:760px){
 #access-screen{grid-template-columns:1fr;align-content:start;min-height:100dvh;background:radial-gradient(ellipse at 90% 0,#e0ebd4,transparent 65%),#fafbf6}
 .access-art{display:none}.access-card{padding:45px 28px;width:min(460px,100%)}.access-card .brand{margin-bottom:67px;font-size:38px}.access-card h1{font-size:30px;max-width:285px}.access-card .sub{font-size:13px;margin-bottom:35px}.access-foot{margin-top:35px}
 .auth-ready .sidebar{display:none}.auth-ready .workspace{margin:0;padding-bottom:90px}.auth-ready header{background:#fff;border-bottom:1px solid #e7ebdf;padding:15px 20px;gap:10px;align-items:center}
 #breadcrumb{font-size:10px;color:#829077;line-height:1.7}#breadcrumb::before{content:"rama.";display:block;font:800 25px 'Manrope',sans-serif;color:var(--green);letter-spacing:-1.6px}
 .header-right{display:grid;grid-template-columns:auto auto;gap:5px 8px;max-width:75%}.header-right .local-badge{grid-column:1/-1;grid-row:2;text-align:right;font-size:9px}
 #cloud-connect{font-size:0;padding:9px 10px;border-radius:9px}#cloud-connect::after{content:"Tu cocina";font-size:10px}#import{font-size:0;padding:9px 10px;border-radius:9px;background:var(--green);color:#fff;border-color:var(--green)}#import::after{content:"↥ Importar";font-size:10px}
 main{padding:26px 20px}h1{font-size:27px;line-height:1.3}.title-row{margin-bottom:20px;gap:14px}.title-row .sub{font-size:12px}.title-row .date-pill{width:100%;justify-content:space-between;background:transparent;padding:6px 2px;border:0;border-bottom:1px solid var(--line);border-radius:0;font-size:12px}
 .hero{display:none}.section-bar{margin:20px 0 12px}.section-bar h2{font-size:19px}main:has(.calendar)>.title-row .eyebrow{display:none}
 .day-picker{position:sticky;top:0;z-index:2;background:var(--bg);display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding:10px 0 16px;margin-bottom:5px}
 .day-picker button{background:#fff;border:1px solid #e4e9dd;border-radius:13px;padding:11px 0 12px;color:#7c8a74;display:flex;flex-direction:column;gap:7px;align-items:center;font-size:9px;text-transform:uppercase;line-height:1}
 .day-picker strong{font-size:18px;font-weight:500;color:var(--ink)}.day-picker button[aria-pressed=true]{background:var(--green);color:#d7e7ce;border-color:var(--green);box-shadow:0 5px 12px #245b4320}.day-picker button[aria-pressed=true] strong{color:#fff}
 .calendar{display:block}.calendar-day{display:none}.calendar-day.selected-day{display:block}.calendar-day .day-header{display:none}.meal{min-height:0;border-radius:16px;margin-bottom:19px;box-shadow:0 4px 15px #253d2d04}.meal img{height:180px;width:100%;object-fit:cover}.meal-body{padding:19px}.meal-label{font-size:10px;margin-bottom:12px}.meal h3{font-size:19px;line-height:1.4;min-height:0;margin:0 0 12px}.meal-meta{font-size:11px;line-height:1.8}.chip{font-size:10px;padding:6px 9px;border-radius:6px}.meal-actions{align-items:center;margin-top:15px;padding-top:11px}.meal-actions .meal-edit{display:none}.meal-actions .meal-more{display:block;font-size:23px;border:1px solid var(--line);border-radius:9px;padding:0;width:38px;height:34px;line-height:1}.meal-actions button[data-action=confirm]{background:#edf2e6;color:var(--green);padding:10px 13px;border-radius:8px;font-size:11px;font-weight:700;min-height:36px}.bottom-note{padding:14px;font-size:10px;line-height:1.8}
 .mobile-nav{position:fixed;inset:auto 0 0;z-index:4;display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:0;padding:8px 9px calc(9px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e4e9dd;box-shadow:0 -8px 25px #243f2d05;overflow:visible}
 .mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px 0;border-radius:10px;min-width:0;border:0;background:transparent;color:#85917e;font-size:9px;font-weight:500;line-height:1.2}.mobile-nav button span{font-size:21px;line-height:1}.mobile-nav button.active{background:#edf3e5;color:var(--green);font-weight:700}
 .shop-row{grid-template-columns:30px minmax(0,1fr) auto;gap:9px;padding:17px 0}.shop-row input[type=checkbox]{width:24px;height:24px}.item-name{font-weight:500}.shop-row small{font-size:10px;line-height:1.8}.shop-quantity{font-size:13px}.shop-row .text-button{font-size:10px;padding:5px 0}.shopping-layout{display:flex;flex-direction:column;gap:0}.shopping-layout aside{order:2}.shopping-layout .panel{padding:20px 17px}.shopping-layout aside .panel{font-size:11px}.purchase-progress{padding:16px 18px;margin-bottom:20px}.cards{gap:17px}.recipe-card{border-radius:16px}.recipe-card img{height:190px}.panel{border-radius:14px}.lot-numbers{justify-content:space-between}.modal-head h2{font-size:19px;line-height:1.4}dialog{max-height:90dvh}.modal-image{height:190px}.modal-body{padding:22px}.nutrition{flex-wrap:wrap}.nutrition div{min-width:25%}footer{padding:12px 20px;font-size:9px}#toast{bottom:90px;font-size:12px;width:max-content;max-width:90vw}
}

@media(max-width:760px){.calendar-day .empty{min-height:130px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1.8}.lot-tools summary{cursor:pointer}}
