:root{--bg:oklch(87.5% .018 77);--surface:oklch(95.2% .01 85);--surface-2:oklch(83.5% .022 75);--surface-3:oklch(80.5% .024 74);--fg:oklch(24.5% .018 45);--muted:oklch(42% .02 55);--border:oklch(76.5% .022 72);--border-strong:oklch(68.5% .024 70);--accent:oklch(45.5% .135 27);--accent-strong:oklch(38.5% .115 27);--on-accent:oklch(98.5% .005 85);--accent-soft:color-mix(in oklch, var(--accent) 9%, var(--surface));--success:oklch(50.5% .085 148);--success-soft:color-mix(in oklch, var(--success) 10%, var(--surface));--warning:oklch(63% .11 70);--danger:var(--accent);--danger-soft:color-mix(in oklch, var(--accent) 9%, var(--surface));--font-display:"Instrument Serif", "Iowan Old Style", "Charter", Georgia, "Times New Roman", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-h1:clamp(46px, 6.2vw, 96px);--fs-h2:clamp(34px, 4.2vw, 64px);--fs-h3:21px;--fs-lead:19px;--fs-body:16px;--fs-meta:12px;--gap-xs:8px;--gap-sm:12px;--gap-md:20px;--gap-lg:32px;--gap-xl:56px;--gap-2xl:96px;--container:1480px;--gutter:32px;--radius-sm:6px;--radius:10px;--radius-lg:16px;--shadow-sm:0 1px 2px oklch(20% .02 45/.05);--shadow-md:0 18px 40px -24px oklch(20% .02 45/.28);--shadow-lg:0 40px 80px -40px oklch(20% .02 45/.35);--transition:.18s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:radial-gradient(900px 520px at 88% 2%, color-mix(in oklch, var(--accent) 8%, transparent), transparent 70%), linear-gradient(180deg, var(--bg) 0%, color-mix(in oklch, var(--surface-2) 55%, var(--bg)) 100%);color:var(--fg);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100vh;margin:0;line-height:1.55}#root{min-height:100vh}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}p{text-wrap:pretty}h1,h2,h3,h4{text-wrap:balance}::selection{background:color-mix(in oklch, var(--accent) 22%, transparent);color:var(--fg)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid var(--bg);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.site-header{z-index:50;background:var(--bg);border-bottom:1px solid var(--border);transition:box-shadow var(--transition);position:sticky;top:0}.site-header.is-scrolled{box-shadow:0 12px 28px -24px oklch(20% .02 45/.45)}.site-header-inner{justify-content:space-between;align-items:center;gap:var(--gap-md);min-height:72px;display:flex}.brand{text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:inline-flex}.brand-mark{width:34px;height:34px;color:var(--accent);flex-shrink:0}.brand-text{flex-direction:column;gap:1px;display:flex}.brand-name{font-family:var(--font-display);letter-spacing:-.01em;font-size:22px;line-height:1}.brand-sub{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:9px}.site-nav{align-items:center;gap:28px;display:flex}.site-nav button{color:var(--muted);transition:color var(--transition);background:0 0;border:0;padding:6px 0;font-size:13.5px;font-weight:500}.site-nav button:hover{color:var(--fg)}.site-actions{align-items:center;gap:18px;display:flex}.link-quiet{color:var(--muted);transition:color var(--transition);background:0 0;border:0;padding:0;font-size:13px;font-weight:500}.link-quiet:hover{color:var(--fg)}.nav-toggle{border:1px solid var(--border-strong);border-radius:var(--radius-sm);letter-spacing:.02em;background:0 0;align-items:center;gap:8px;padding:9px 12px;font-size:12.5px;font-weight:600;display:none}.nav-toggle:hover{border-color:var(--fg);background:var(--surface)}.nav-cta,.nav-logout{display:none}.btn{border-radius:var(--radius-sm);min-height:44px;font-family:var(--font-body);letter-spacing:-.005em;white-space:nowrap;transition:background var(--transition), border-color var(--transition), color var(--transition), transform 50ms ease, box-shadow var(--transition);border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:0 20px;font-size:14px;font-weight:600;line-height:1;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 10px 24px -14px oklch(35% .1 27/.55)}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-primary:disabled{background:color-mix(in oklch, var(--accent) 55%, var(--bg));cursor:not-allowed;box-shadow:none;border-color:#0000}.btn-outline{border-color:var(--border-strong);color:var(--fg);background:0 0}.btn-outline:hover{background:var(--surface-2);border-color:var(--fg)}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000;padding-inline:12px}.btn-ghost:hover{background:var(--surface-2);color:var(--fg)}.btn-block{width:100%}.btn-sm{min-height:38px;padding-inline:14px;font-size:13px}.text-link{min-height:44px;color:var(--fg);transition:color var(--transition);background:0 0;border:0;align-items:center;gap:8px;padding:6px 0;font-size:14px;font-weight:600;display:inline-flex}.text-link:hover{color:var(--accent-strong)}.text-link svg{transition:transform var(--transition)}.text-link:hover svg{transform:translate(3px)}.text-link-down:hover svg{transform:translateY(3px)}.btn-row{align-items:center;gap:var(--gap-md);flex-wrap:wrap;display:flex}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 18px;font-size:11px;font-weight:500}.hero-title,.section-title,.auth-title,.dash-title,.modal-title{font-family:var(--font-display);letter-spacing:-.018em;margin:0;font-weight:400}.hero-title{font-size:var(--fs-h1);max-width:13ch;line-height:.98}.hero-title em,.section-title em,.auth-title em{color:var(--accent-strong);font-style:italic}.lead{font-size:var(--fs-lead);color:var(--muted);max-width:54ch;margin:0;line-height:1.55}.section{padding-block:clamp(72px,8vw,128px)}.section-tinted{background:color-mix(in oklch, var(--surface-2) 55%, var(--bg));border-block:1px solid var(--border)}.section-head{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:44px;display:flex}.section-head>div{max-width:56ch}.section-head .eyebrow{margin-bottom:14px}.section-head .section-copy{max-width:34ch;margin:0}.section-title{font-size:var(--fs-h2);margin-bottom:18px;line-height:1.04}.section-copy{color:var(--muted);max-width:48ch;margin:0;font-size:16px}.landing{animation:.5s both fade-in}.hero{padding-block:clamp(44px,5.4vw,76px) clamp(48px,5.4vw,72px)}@media (width>=961px){.hero{background-image:linear-gradient(90deg, var(--bg) 0%, var(--bg) 55%, color-mix(in oklch, var(--bg) 70%, transparent) 68%, transparent 82%), url(/corporate_dining_hero_bg-1024.webp);background-position:50%,100%;background-size:auto,cover;align-items:stretch;min-height:min(100svh - 122px,1000px);padding-block:clamp(28px,3vw,56px);display:flex;position:relative;overflow:hidden}.hero>.container{flex:1}.hero .hero-grid{align-items:stretch}.hero-copy{align-self:center}.hero-visual{flex-direction:column;align-self:stretch;display:flex}.hero .hero-media{background:0 0;border:0;height:100%}.hero .hero-media picture{display:none}}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(40px,6vw,80px);display:grid}.hero-copy{animation:.6s cubic-bezier(.16,1,.3,1) both fade-up}.hero-copy .lead{max-width:46ch;margin-top:24px}.hero-copy .hero-actions{margin-top:32px}.hero-actions{align-items:center;gap:var(--gap-md);flex-wrap:wrap;display:flex}.hero-proof{border-top:1px solid var(--border);grid-template-columns:repeat(3,auto);justify-content:start;gap:0;margin-top:36px;padding-top:22px;display:grid}.proof-item{padding-right:26px}.proof-item+.proof-item{border-left:1px solid var(--border);padding-left:26px}.proof-item strong{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--fg);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600;display:block}.proof-item span{letter-spacing:.01em;color:var(--muted);margin-top:3px;font-size:11.5px;display:block}.hero-visual{margin:0;animation:.7s cubic-bezier(.16,1,.3,1) 80ms both fade-up;position:relative}.hero-media{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);position:relative}.hero-media picture{border-radius:calc(var(--radius) - 1px);display:block;overflow:hidden}.hero-img{aspect-ratio:4/5;object-fit:cover;background:var(--surface-2);width:100%;height:auto}.hero-stamp{text-align:center;width:96px;height:96px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:color-mix(in oklch, var(--bg) 94%, transparent);border:1px solid var(--accent);box-shadow:var(--shadow-md);border-radius:50%;place-items:center;font-size:8.5px;line-height:1.35;display:grid;position:absolute;bottom:64px;right:-16px;transform:rotate(-8deg)}.hero-card{background:color-mix(in oklch, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(12px);border:1px solid color-mix(in oklch, var(--surface) 60%, transparent);border-radius:var(--radius-sm);flex-direction:column;gap:2px;min-width:190px;padding:14px 16px;display:flex;position:absolute;bottom:20px;left:20px;box-shadow:0 18px 40px -24px oklch(20% .02 45/.5)}.hero-card .eyebrow{color:var(--muted);margin:0 0 4px;font-size:9.5px}.hero-card strong{font-family:var(--font-display);font-size:26px;font-weight:400;line-height:1.1}.hero-card-detail{color:var(--muted);font-size:12px}.hero-card-meta{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:9.5px}.hero-card-link{border:0;border-top:1px solid var(--border);width:100%;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);transition:color var(--transition);background:0 0;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding:9px 0 0;font-size:9.5px;display:flex}.hero-card-link:hover{color:var(--accent-strong)}.hero-tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--on-accent);background:color-mix(in oklch, var(--fg) 82%, transparent);border-radius:4px;padding:6px 10px;font-size:10px;position:absolute;top:20px;right:20px}.service-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(4,1fr);gap:0;display:grid}.service-strip span{text-align:center;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:16px 20px;font-size:10.5px}.service-strip span+span{border-left:1px solid var(--border)}.split-head{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(40px,6vw,88px);display:grid}.section-intro{position:sticky;top:108px}.standard-list{border-top:1px solid var(--fg);margin:0;padding:0;list-style:none}.standard-list li{border-bottom:1px solid var(--border);grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:20px;padding:28px 0;display:grid}.std-num{font-family:var(--font-mono);color:var(--muted);padding-top:4px;font-size:12px}.standard-list h3{letter-spacing:-.01em;margin:0 0 8px;font-size:19px;font-weight:600}.standard-list p{color:var(--muted);max-width:46ch;margin:0;font-size:14.5px}.std-tag,.tag{border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:5px 10px;font-size:10px;display:inline-flex}.stats-band{background:var(--fg);color:var(--bg);padding-block:clamp(56px,7vw,80px)}.stats-band .eyebrow{color:color-mix(in oklch, var(--bg) 62%, transparent);margin-bottom:10px}.stats-head{justify-content:space-between;align-items:flex-end;gap:var(--gap-lg);margin-bottom:44px;display:flex}.stats-note{max-width:40ch;color:color-mix(in oklch, var(--bg) 58%, transparent);text-align:right;margin:0;font-size:13px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.stat-item{border-left:1px solid color-mix(in oklch, var(--bg) 16%, transparent);padding:0 28px}.stat-item:first-child{border-left:0;padding-left:0}.stat-value{font-family:var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(44px,5vw,64px);font-weight:400;line-height:1;display:block}.stat-label{color:color-mix(in oklch, var(--bg) 62%, transparent);max-width:22ch;margin-top:10px;font-size:12.5px;line-height:1.5;display:block}.stats-sectors{border-top:1px solid color-mix(in oklch, var(--bg) 16%, transparent);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:color-mix(in oklch, var(--bg) 62%, transparent);margin:32px 0 0;padding-top:20px;font-size:10.5px}.format-grid{grid-template-columns:1fr 1fr;display:grid}.format{border-top:1px solid var(--border);transition:background var(--transition);flex-direction:column;padding:0;display:flex}.format:hover{background:color-mix(in oklch, var(--surface) 60%, transparent)}.format:nth-child(2n){border-left:1px solid var(--border);padding:0}.format-media{aspect-ratio:3/2;background:var(--surface-2);border-bottom:1px solid var(--border);margin:0;overflow:hidden}.format-media img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.16,1,.3,1)}.format:hover .format-media img{transform:scale(1.04)}.format-body{flex-direction:column;flex:1;padding:26px 30px 28px;display:flex}.format-top{justify-content:space-between;align-items:center;gap:var(--gap-md);margin-bottom:22px;display:flex}.format-top .num{font-family:var(--font-mono);color:var(--muted);font-size:11px}.format h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 10px;font-size:30px;font-weight:400;line-height:1.1}.format p{color:var(--muted);max-width:44ch;margin:0;font-size:14.5px}.format-meta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:auto;padding-top:16px;font-size:10px}.portal-section{background:var(--surface-2);border-block:1px solid var(--border);position:relative;overflow:hidden}.portal-section:before{content:"";background-image:linear-gradient(90deg, var(--surface-2) 38%, color-mix(in oklch, var(--surface-2) 70%, transparent) 62%, transparent 88%), url(/generated/mesa-peruana.webp);pointer-events:none;background-position:50%,50%;background-size:100% 100%,cover;position:absolute;inset:0}.portal-grid{z-index:1;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:clamp(40px,6vw,80px);display:grid;position:relative}.portal-copy .section-title{margin-bottom:20px}.portal-copy .lead{margin-bottom:28px}.portal-points{flex-direction:column;gap:12px;margin:0 0 32px;padding:0;list-style:none;display:flex}.portal-points li{color:var(--fg);align-items:flex-start;gap:10px;font-size:14.5px;display:flex}.portal-points svg{color:var(--success);flex-shrink:0;margin-top:3px}.menu-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:26px}.menu-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:18px;display:flex}.menu-card-head .eyebrow{color:var(--muted);margin:0;font-size:10px}.menu-card-head .tag{border-color:var(--accent-soft);color:var(--accent);background:var(--accent-soft);border-color:#0000}.menu-card-title{font-family:var(--font-display);letter-spacing:-.01em;margin:18px 0 6px;font-size:28px;font-weight:400}.menu-list{flex-direction:column;display:flex}.menu-list .menu-row{border-bottom:1px solid var(--border);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;display:grid}.menu-list .menu-row:last-child{border-bottom:0}.menu-day{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.menu-list strong{font-size:14px;font-weight:600;line-height:1.3;display:block}.menu-list small{color:var(--muted);margin-top:2px;font-size:11.5px;display:block}.menu-kcal{font-family:var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.menu-card-foot{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding-top:16px;font-size:12px;display:flex}.cta-band{background:var(--fg);color:var(--bg);padding-block:clamp(56px,7vw,88px);position:relative;overflow:hidden}.cta-band:before{content:"";pointer-events:none;background-image:linear-gradient(90deg,#281e19f7 0%,#281e19e0 48%,#281e19a8 100%),url(/generated/fondo-cocina.webp);background-position:50%;background-size:cover;position:absolute;inset:0}.cta-inner{z-index:1;grid-template-columns:minmax(0,1.15fr) auto;align-items:end;gap:clamp(32px,5vw,72px);display:grid;position:relative}.cta-band .eyebrow{color:color-mix(in oklch, var(--accent) 45%, var(--bg))}.cta-inner .section-title{color:var(--bg);margin-bottom:10px}.cta-inner .section-copy{max-width:44ch;color:color-mix(in oklch, var(--bg) 72%, transparent)}.cta-actions{flex-direction:column;flex-shrink:0;align-items:flex-start;gap:12px;padding-bottom:6px;display:flex}.cta-band .text-link{color:var(--bg);border-color:color-mix(in oklch, var(--bg) 35%, transparent)}.cta-band .text-link:hover{color:var(--surface);border-color:var(--surface)}.site-footer{background:color-mix(in oklch, var(--surface-2) 70%, var(--bg));border-top:1px solid var(--border);padding-block:56px 36px}.footer-grid{gap:var(--gap-lg);border-bottom:1px solid var(--border);grid-template-columns:1.4fr 1fr 1fr 1fr;padding-bottom:44px;display:grid}.footer-brand p{max-width:30ch;color:var(--muted);margin:16px 0 0;font-size:13px}.footer-col h4{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-size:10px;font-weight:500}.footer-col ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.footer-col button,.footer-col a{color:var(--fg);text-align:left;transition:color var(--transition);background:0 0;border:0;padding:0;font-size:13px}.footer-col button:hover,.footer-col a:hover{color:var(--accent-strong)}.footer-legal{justify-content:space-between;align-items:center;gap:var(--gap-md);font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);padding-top:26px;font-size:10.5px;display:flex}.auth{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:calc(100vh - 72px);animation:.4s both fade-in;display:grid}.auth-form-panel{justify-content:center;align-items:center;padding:56px 40px;display:flex}.auth-form-inner{width:100%;max-width:400px;animation:.5s cubic-bezier(.16,1,.3,1) both fade-up}.auth-title{margin-bottom:16px;font-size:clamp(38px,4.4vw,54px);line-height:1.02}.auth-lead{color:var(--muted);max-width:40ch;margin:0 0 30px;font-size:15px}.auth-form{flex-direction:column;gap:18px;display:flex}.field{flex-direction:column;gap:7px;display:flex}.field label{color:var(--fg);letter-spacing:.01em;font-size:12px;font-weight:600}.input{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-height:46px;color:var(--fg);transition:border-color var(--transition), box-shadow var(--transition);padding:10px 14px;font-size:14.5px}.input::placeholder{color:color-mix(in oklch, var(--muted) 78%, transparent)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklch, var(--accent) 16%, transparent);outline:none}.input:focus-visible{outline:none}.password-wrap{position:relative}.password-wrap .input{padding-right:50px}.icon-btn{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--muted);transition:color var(--transition), background var(--transition);background:0 0;border:0;place-items:center;display:inline-grid}.icon-btn:hover{color:var(--fg);background:var(--surface-2)}.password-toggle{width:44px;height:44px;position:absolute;top:1px;right:1px}.auth-switch{color:var(--muted);margin:22px 0 0;font-size:13px}.auth-switch button{color:var(--accent-strong);text-underline-offset:3px;background:0 0;border:0;padding:4px 0;font-size:13px;font-weight:600;text-decoration:underline}.auth-back{min-height:44px;color:var(--muted);transition:color var(--transition);background:0 0;border:0;align-items:center;gap:6px;margin-top:26px;padding:0;font-size:13px;display:inline-flex}.auth-back:hover{color:var(--fg)}.auth-visual{background:var(--fg);position:relative;overflow:hidden}.auth-visual picture{width:100%;height:100%;display:block}.auth-visual-img{object-fit:cover;opacity:.9;width:100%;height:100%}.auth-visual:after{content:"";background:linear-gradient(#0000 0%,oklch(20% .02 45/.18) 45%,oklch(20% .02 45/.82) 100%);position:absolute;inset:0}.auth-visual-overlay{z-index:1;color:var(--on-accent);position:absolute;bottom:44px;left:44px;right:44px}.auth-visual-overlay .eyebrow{color:color-mix(in oklch, var(--on-accent) 72%, transparent);margin-bottom:14px}.auth-quote{font-family:var(--font-display);letter-spacing:-.02em;max-width:14ch;margin:0 0 24px;font-size:clamp(34px,3.6vw,46px);font-weight:400;line-height:1.04}.auth-points{border-top:1px solid color-mix(in oklch, var(--on-accent) 24%, transparent);color:color-mix(in oklch, var(--on-accent) 84%, transparent);flex-direction:column;gap:10px;margin:0;padding:22px 0 0;font-size:13px;list-style:none;display:flex}.auth-points li{align-items:center;gap:10px;display:flex}.auth-points svg{color:color-mix(in oklch, var(--on-accent) 72%, transparent);flex-shrink:0}.alert{border-radius:var(--radius-sm);align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.alert svg{flex-shrink:0;margin-top:1px}.alert-success{background:var(--success-soft);border:1px solid color-mix(in oklch, var(--success) 26%, transparent);color:color-mix(in oklch, var(--success) 70%, var(--fg))}.alert-error{background:var(--danger-soft);border:1px solid color-mix(in oklch, var(--accent) 26%, transparent);color:var(--accent-strong)}.alert-info{background:var(--surface-2);border:1px solid var(--border);color:var(--fg)}.toast{z-index:120;max-width:360px;box-shadow:var(--shadow-md);margin:0;animation:.3s both fade-up;position:fixed;bottom:24px;right:24px}.app-shell{background:var(--bg);grid-template-columns:252px minmax(0,1fr);min-height:100vh;animation:.35s both fade-in;display:grid}.app-sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:28px;height:100vh;padding:26px 20px 20px;display:flex;position:sticky;top:0}.sidebar-brand{text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0 4px;display:inline-flex}.sidebar-brand .brand-mark{width:30px;height:30px}.sidebar-brand .brand-name{font-size:20px}.sidebar-brand .brand-sub{font-size:8px}.side-nav{flex-direction:column;gap:2px;display:flex}.side-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;padding:0 12px;font-size:9.5px}.side-link{border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--muted);text-align:left;transition:background var(--transition), color var(--transition);background:0 0;border:0;align-items:center;gap:11px;padding:0 12px;font-size:13.5px;font-weight:500;display:flex}.side-link svg{flex-shrink:0}.side-link:hover{background:var(--surface-2);color:var(--fg)}.side-link-active{background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.side-link-active:hover{background:var(--accent-soft);color:var(--accent-strong)}.side-external{border-top:1px solid var(--border);flex-direction:column;gap:2px;padding-top:22px;display:flex}.side-external .side-link{font-size:13px}.side-external .side-link svg:last-child{opacity:.6;margin-left:auto}.side-user{border-top:1px solid var(--border);align-items:center;gap:10px;margin-top:auto;padding-top:18px;display:flex}.avatar{background:var(--surface-2);border:1px solid var(--border);width:36px;height:36px;font-family:var(--font-mono);color:var(--accent-strong);border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:600;display:grid}.side-user-meta{flex:1;min-width:0}.side-user-meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;display:block;overflow:hidden}.side-user-meta span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;display:block;overflow:hidden}.side-logout{width:36px;height:36px}.app-main{flex-direction:column;min-width:0;display:flex}.app-topbar{z-index:30;justify-content:space-between;align-items:center;gap:var(--gap-md);background:color-mix(in oklch, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);min-height:72px;padding:12px 40px;display:flex;position:sticky;top:0}.crumb{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:9.5px;display:block}.topbar-date{text-transform:capitalize;margin-top:2px;font-size:13.5px;font-weight:600;display:block}.topbar-actions{align-items:center;gap:10px;display:flex}.app-content{width:100%;max-width:1360px;padding:40px clamp(24px,3.4vw,48px) 64px}.dash-head{justify-content:space-between;align-items:flex-end;gap:var(--gap-lg);margin-bottom:32px;display:flex}.dash-head .eyebrow{margin-bottom:12px}.dash-title{font-size:clamp(40px,4.6vw,56px);line-height:1}.dash-sub{color:var(--muted);max-width:52ch;margin:12px 0 0;font-size:14.5px}.dash-status{border:1px solid var(--border);background:var(--surface);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:7px 12px;font-size:10px;display:inline-flex}.status-dot{background:var(--success);border-radius:50%;width:6px;height:6px;animation:2.6s ease-in-out infinite pulse-dot}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 20px 18px}.kpi-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:9.5px;display:block}.kpi-value{font-family:var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:12px 0 6px;font-size:46px;font-weight:400;line-height:.95;display:block}.kpi-value-sm{font-size:30px;line-height:1.1}.kpi-note{color:var(--muted);font-size:11.5px;display:block}.dash-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;margin-bottom:18px;display:grid}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;padding:22px}.panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:4px;padding-bottom:16px;display:flex}.panel-title{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:600}.panel-sub{color:var(--muted);margin:3px 0 0;font-size:11.5px}.panel-action{color:var(--accent-strong);white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:6px 0;font-size:12px;font-weight:600;display:inline-flex}.panel-action:hover{text-underline-offset:3px;text-decoration:underline}.service-list{flex-direction:column;display:flex}.service-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;padding:14px 0;display:grid}.service-row:last-child{border-bottom:0;padding-bottom:0}.service-row-main{align-items:center;gap:10px;min-width:0;display:flex}.service-row-main strong{font-size:13.5px;font-weight:600}.service-meta{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10px}.service-count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.service-count small{color:var(--muted);margin-left:3px;font-size:10px;font-weight:400}.bar-track{background:var(--surface-2);border-radius:999px;grid-column:1/-1;height:3px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .5s cubic-bezier(.16,1,.3,1)}.chart{grid-template-columns:repeat(7,1fr);align-items:end;gap:8px;height:150px;padding-top:14px;display:grid}.chart-col{flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.chart-value{font-family:var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;min-height:11px;font-size:9.5px}.chart-track{flex:1;justify-content:center;align-items:flex-end;width:100%;display:flex}.chart-bar{background:var(--accent);border-radius:3px 3px 0 0;width:min(26px,70%);min-height:3px;transition:height .5s cubic-bezier(.16,1,.3,1)}.chart-col-current .chart-bar{background:var(--accent)}.chart-col:not(.chart-col-current) .chart-bar{background:var(--border-strong)}.chart-bar-empty{background:0 0}.chart-label{font-family:var(--font-mono);text-transform:uppercase;color:var(--muted);font-size:9.5px}.chart-empty{color:var(--muted);margin:14px 0 0;font-size:11.5px}.dash-grid-2{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:12.5px}.data-table th{text-align:left;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px;font-size:9.5px;font-weight:500}.data-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 10px}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:color-mix(in oklch, var(--surface-2) 55%, transparent)}.data-table .num-col{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.meal-badge{background:var(--surface-2);color:var(--fg);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:10.5px;font-weight:500;display:inline-flex}.meal-badge:before{content:"";background:var(--muted);border-radius:50%;width:5px;height:5px}.meal-badge.desayuno:before{background:var(--warning)}.meal-badge.almuerzo:before{background:var(--accent)}.meal-badge.cena:before{background:var(--success)}.meal-badge.refrigerio:before{background:var(--muted)}.icon-btn-danger{color:var(--muted)}.icon-btn-danger:hover{color:var(--accent-strong);background:var(--danger-soft)}.icon-btn-danger.confirming{color:var(--on-accent);background:var(--accent)}.icon-btn-danger.confirming:hover{color:var(--on-accent);background:var(--accent-strong)}.data-table .icon-btn{width:30px;height:30px}.menu-list-dash{flex-direction:column;display:flex}.menu-list-dash .menu-row{border-bottom:1px solid var(--border);grid-template-columns:34px minmax(0,1fr);align-items:baseline;gap:10px;padding:11px 0;display:grid}.menu-list-dash .menu-row:last-child{border-bottom:0}.menu-list-dash strong{font-size:13px;font-weight:600;line-height:1.35;display:block}.menu-list-dash small{color:var(--muted);margin-top:2px;font-size:10.5px;display:block}.panel-note{color:var(--muted);margin:14px 0 0;font-size:10.5px}.docs-panel{padding:0;overflow:hidden}.docs-head{justify-content:space-between;align-items:center;gap:var(--gap-md);border-bottom:1px solid var(--border);padding:20px 22px;display:flex}.docs-head-left{min-width:0}.docs-tools{align-items:center;gap:10px;display:flex}.docs-search{width:min(260px,40vw);position:relative}.search-input{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-height:38px;transition:border-color var(--transition), box-shadow var(--transition);padding:8px 12px 8px 34px;font-size:12.5px}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklch, var(--accent) 14%, transparent);outline:none}.search-icon{color:var(--muted);pointer-events:none;position:absolute;top:11px;left:11px}.tree{max-height:360px;padding:12px 14px 18px;overflow-y:auto}.docs-panel-full .tree{max-height:540px}.tree-row{border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition);justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.tree-row:hover{background:var(--surface-2)}.tree-info{align-items:center;gap:10px;min-width:0;font-size:12.5px;font-weight:500;display:flex}.tree-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tree-meta{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;align-items:center;gap:2px;font-size:9.5px;display:inline-flex}.tree-icon{flex-shrink:0;width:17px;height:17px}.tree-icon.folder{color:var(--warning)}.tree-icon.file-pdf{color:var(--accent)}.tree-icon.file-excel{color:var(--success)}.tree-icon.file-word{color:oklch(52% .07 250)}.tree-chevron{color:var(--muted);transition:transform var(--transition)}.tree-chevron.expanded{color:var(--fg);transform:rotate(90deg)}.tree-sub{border-left:1px solid var(--border);margin-left:16px;padding-left:14px}.sync-line{justify-content:space-between;align-items:center;gap:var(--gap-md);border-top:1px solid var(--border);color:var(--muted);padding:14px 22px;font-size:11px;display:flex}.sync-state{align-items:center;gap:7px;display:inline-flex}.sync-state .status-dot{animation:none}.sync-state.offline .status-dot{background:var(--warning)}.empty-state{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:8px;padding:34px 20px;display:flex}.empty-state svg{color:var(--border-strong);margin-bottom:4px}.empty-state strong{color:var(--fg);font-size:13.5px;font-weight:600}.empty-state p{max-width:34ch;margin:0;font-size:12px}.empty-state .btn{margin-top:8px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);background:oklch(20% .02 45/.55);justify-content:center;align-items:center;padding:24px;animation:.2s both fade-in;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:560px;max-height:calc(100vh - 48px);box-shadow:var(--shadow-lg);animation:.28s cubic-bezier(.16,1,.3,1) both fade-up;overflow-y:auto}.modal-head{justify-content:space-between;align-items:flex-start;gap:var(--gap-md);padding:26px 28px 0;display:flex}.modal-head .eyebrow{margin-bottom:8px}.modal-title{font-size:32px;line-height:1.05}.modal-body{padding:24px 28px 28px}.modal-close{width:40px;height:40px;margin:-6px -8px 0 0}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid .field-span{grid-column:1/-1}.form-grid textarea.input{resize:vertical;min-height:88px;line-height:1.5}.form-actions{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:10px;margin-top:24px;padding-top:20px;display:flex}.spin{animation:1s linear infinite spin}@media (width<=1180px){:root{--gutter:26px}.app-shell{grid-template-columns:228px minmax(0,1fr)}.app-content{padding-inline:28px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-grid,.dash-grid-2{grid-template-columns:minmax(0,1fr)}}@media (width<=960px){.site-nav{display:none}.nav-toggle{display:inline-flex}.site-header.is-open .site-header-inner{flex-wrap:wrap}.site-header.is-open .brand{order:1}.site-header.is-open .site-actions{order:2;margin-left:auto}.site-header.is-open .site-nav{border-top:1px solid var(--border);flex-direction:column;order:3;align-items:stretch;gap:0;width:100%;margin:0;padding:6px 0 14px;display:flex}.site-header.is-open .site-nav button{text-align:left;border-bottom:1px solid var(--border);padding:12px 2px;font-size:15px}.site-header.is-open .site-nav button:last-child{border-bottom:0}.site-header.is-open .site-nav .nav-cta{border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent);justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:12px 14px;font-weight:600;display:inline-flex}.site-header.is-open .site-nav .nav-logout{border:0;border-top:1px solid var(--border);color:var(--accent);text-align:left;background:0 0;align-items:center;margin-top:10px;padding:12px 2px 0;font-size:14px;display:inline-flex}.hero-grid{grid-template-columns:1fr;gap:44px}.hero-copy{max-width:620px}.hero-title{max-width:15ch}.hero-visual{max-width:620px}.hero-img{aspect-ratio:16/11}.hero-stamp{width:84px;height:84px;bottom:76px;right:14px}.service-strip{grid-template-columns:1fr 1fr}.service-strip span{padding:14px 16px}.service-strip span:nth-child(3){border-left:0}.service-strip span:nth-child(n+3){border-top:1px solid var(--border)}.section-head{flex-direction:column;align-items:flex-start;gap:14px}.section-head .section-copy{max-width:46ch}.split-head,.portal-grid{grid-template-columns:1fr;gap:40px}.portal-section:before{background-image:linear-gradient(180deg, var(--surface-2) 0%, var(--surface-2) 46%, transparent 82%), url(/generated/mesa-peruana.webp);background-size:100% 100%,cover}.section-intro{position:static}.stats-grid{grid-template-columns:1fr 1fr;row-gap:32px}.stat-item:nth-child(3){border-left:0;padding-left:0}.format-grid{grid-template-columns:1fr}.format,.format:nth-child(2n){border-left:0;padding:0}.format-body{padding:22px 0 24px}.format-media{aspect-ratio:16/9}.auth{grid-template-columns:1fr}.auth-visual{display:none}.auth-form-panel{padding:56px 26px 72px}.cta-inner{grid-template-columns:1fr;align-items:start}.footer-grid{grid-template-columns:1fr 1fr;row-gap:32px}.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid var(--border);flex-flow:wrap;align-items:center;gap:12px 20px;height:auto;padding:14px 20px;position:static}.sidebar-brand{padding:0}.side-nav{flex-flow:wrap;gap:4px}.side-label{display:none}.side-external{border-top:0;flex-flow:wrap;gap:4px;margin-left:auto;padding-top:0}.side-external .side-label{display:none}.side-user{border-top:0;border-left:1px solid var(--border);margin-top:0;padding-top:0;padding-left:14px}.side-user-meta{display:none}.app-topbar{padding:14px 24px;position:static}.app-content{padding-top:28px}}@media (width<=680px){.site-header-inner{gap:12px}.site-actions{gap:10px}.brand-sub{letter-spacing:.1em;font-size:8px}.site-actions .link-quiet,.site-actions .btn{display:none}.hero{padding-top:32px}.hero-copy{display:contents}.hero-copy>.eyebrow{order:1}.hero-copy>.hero-title{order:2}.hero-copy>.lead{order:3}.hero-copy>.hero-actions{order:4}.hero-visual{order:5;margin-top:28px}.hero-img{aspect-ratio:4/3;object-position:center 58%}.hero-copy>.hero-proof{order:6}.hero-grid{gap:0}.hero-title{max-width:100%;font-size:clamp(42px,11.5vw,54px)}.hero-copy .lead{font-size:17px}.hero-proof{grid-template-columns:1fr}.proof-item{padding:12px 0}.proof-item+.proof-item{border-left:0;border-top:1px solid var(--border);padding-left:0}.hero-stamp{display:none}.hero-card{min-width:0;padding:12px 14px;bottom:12px;left:12px}.hero-card strong{font-size:21px}.service-strip{grid-template-columns:1fr 1fr}.service-strip span{text-align:left;padding:12px 10px}.standard-list li{grid-template-columns:32px minmax(0,1fr);gap:10px 14px;padding:22px 0}.std-tag{grid-column:2;justify-self:start}.stats-head{flex-direction:column;align-items:flex-start;gap:10px}.stats-note{text-align:left}.stats-grid{grid-template-columns:1fr 1fr}.stat-item{padding:0 18px}.stat-item:nth-child(odd){border-left:0;padding-left:0}.cta-inner{padding-top:34px}.cta-band:before{background-image:linear-gradient(#281e19e6,#281e19f0),url(/generated/fondo-cocina.webp)}.footer-grid{grid-template-columns:1fr}.footer-legal{flex-direction:column;align-items:flex-start;gap:8px}.dash-head{flex-direction:column;align-items:flex-start;gap:16px}.kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.kpi{padding:16px}.kpi-value{font-size:38px}.app-topbar{flex-direction:column;align-items:flex-start;gap:10px}.topbar-actions{justify-content:space-between;width:100%}.topbar-actions .btn-primary{flex:1}.docs-head{flex-direction:column;align-items:flex-start}.docs-tools,.docs-search{width:100%}.form-grid{grid-template-columns:1fr}.modal-head{padding:22px 20px 0}.modal-body{padding:20px}.toast{max-width:none;bottom:16px;left:16px;right:16px}}@media (width<=440px){.kpi-grid,.stats-grid{grid-template-columns:1fr}.stat-item,.stat-item:nth-child(odd){border-left:0;padding:0}.stat-item+.stat-item{border-top:1px solid color-mix(in oklch, var(--bg) 16%, transparent);padding-top:20px}.side-external{border-top:1px solid var(--border);width:100%;margin-left:0;padding-top:10px}.side-external .side-link{flex:auto}.side-user{border-top:1px solid var(--border);border-left:0;width:100%;padding-top:10px;padding-left:0}.auth-form-panel{padding-inline:20px}}@media (width>=961px) and (height<=780px){.hero{padding-block:24px}.hero-title{font-size:clamp(44px,5.2vw,64px)}.hero-copy .lead{margin-top:18px;font-size:17px}.hero-copy .hero-actions{margin-top:24px}.hero-proof{margin-top:26px;padding-top:16px}.hero .hero-img{min-height:420px}}.att-band{margin-bottom:18px}.att-band-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.att-band-item{border-radius:var(--radius-sm);background:var(--surface-2);align-items:baseline;gap:8px;padding:10px 12px;display:flex}.att-band-item strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.att-band-item span:last-child{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:9.5px}.att-dot{background:var(--border-strong);border-radius:50%;flex-shrink:0;align-self:center;width:6px;height:6px}.att-presente .att-dot{background:var(--success)}.att-tarde .att-dot{background:var(--warning)}.att-permiso .att-dot{background:var(--accent-strong)}.att-falta .att-dot{background:var(--danger)}.att-toolbar{align-items:flex-end;margin:16px 0 6px}.att-list{flex-direction:column;display:flex}.att-row{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.att-row:last-child{border-bottom:0}.att-avatar{background:var(--surface-2);border:1px solid var(--border);width:32px;height:32px;font-family:var(--font-mono);color:var(--muted);transition:background var(--transition), color var(--transition), border-color var(--transition);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.att-avatar-sm{width:28px;height:28px;font-size:11px}.att-avatar.att-presente{background:var(--success-soft);border-color:color-mix(in oklch, var(--success) 35%, transparent);color:var(--success)}.att-avatar.att-tarde{background:color-mix(in oklch, var(--warning) 14%, var(--surface));border-color:color-mix(in oklch, var(--warning) 40%, transparent);color:color-mix(in oklch, var(--warning) 68%, var(--fg))}.att-avatar.att-permiso,.att-avatar.att-falta{background:var(--accent-soft);border-color:color-mix(in oklch, var(--accent) 32%, transparent);color:var(--accent-strong)}.att-info{min-width:0}.att-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;display:block;overflow:hidden}.att-info span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.att-options{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.att-chip{border:1px solid var(--border);font-family:var(--font-body);color:var(--muted);white-space:nowrap;cursor:pointer;transition:background var(--transition), color var(--transition), border-color var(--transition);background:0 0;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:500}.att-chip:hover{border-color:var(--border-strong);color:var(--fg)}.att-chip-active{color:var(--on-accent);border-color:#0000}.att-chip-active.att-presente{background:var(--success)}.att-chip-active.att-tarde{background:var(--warning);color:var(--fg)}.att-chip-active.att-permiso{background:var(--accent-strong)}.att-chip-active.att-falta{background:var(--accent)}.roster-form{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;padding:16px 0;display:flex}.roster-form .btn{align-self:flex-start}.roster-list{flex-direction:column;display:flex}.roster-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 0;display:flex}.roster-row:last-child{border-bottom:0}.roster-row .att-info{flex:1}.roster-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.roster-actions .btn-sm{padding:5px 9px;font-size:11.5px}.roster-row-inactive{opacity:.55}@media (width<=1080px){.att-band-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.att-row{grid-template-columns:auto minmax(0,1fr);row-gap:10px}.att-options{grid-column:1/-1;justify-content:flex-start}.att-band-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.user-meta{color:var(--muted);margin-top:2px;font-size:10.5px;display:block}.input-sm{border-radius:var(--radius-sm);max-width:280px;padding:6px 10px;font-size:12px}.meal-badge.att-presente:before{background:var(--success)}.meal-badge.att-tarde:before{background:var(--warning)}.meal-badge.att-permiso:before{background:var(--accent-strong)}.meal-badge.att-falta:before{background:var(--danger)}.meal-badge.att-none:before{background:var(--border-strong)}.app-loading{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex}.worker-clock{margin-top:18px}.worker-clock-time{font-family:var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:68px;line-height:1;display:block}.worker-clock-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:9.5px;display:block}.worker-kpis{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0 0}.worker-ficha{align-items:center;gap:12px;padding:18px 0 6px;display:flex}@media (width<=720px){.worker-kpis{grid-template-columns:1fr}.worker-clock-time{font-size:52px}}.side-badge{background:var(--accent);min-width:18px;height:18px;color:var(--on-accent);font-family:var(--font-mono);border-radius:999px;place-items:center;margin-left:auto;padding:0 5px;font-size:10px;font-weight:600;display:inline-grid}.msg-form{flex-direction:column;gap:12px;padding-top:16px;display:flex}.msg-form .btn{align-self:flex-start}.msg-list{flex-direction:column;gap:10px;padding-top:14px;display:flex}.msg-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color var(--transition), background var(--transition);padding:14px 16px}.msg-card.msg-unread{border-left:3px solid var(--accent);background:var(--accent-soft)}.msg-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.msg-title{letter-spacing:-.01em;margin:0;font-size:13.5px;font-weight:600}.msg-meta{color:var(--muted);margin:3px 0 0;font-size:10.5px}.msg-body{white-space:pre-wrap;margin:10px 0 0;font-size:13px;line-height:1.55}.msg-new{background:var(--accent);color:var(--on-accent);border-color:#0000}.msg-card .panel-action{margin-top:10px;padding:0}@media (width<=720px){.msg-head{flex-direction:column}}
