:root,[data-theme=emerald],[data-theme=light]{--font-heading:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--bg-main:#f8fafc;--bg-sidebar:#fff;--bg-card:#fff;--bg-card-hover:#f1f5f9;--bg-input:#f8fafc;--bg-modal:#fff;--border-subtle:#e2e8f0;--border-card:#e2e8f0;--border-active:#059669;--text-main:#0f172a;--text-muted:#475569;--text-dim:#94a3b8;--primary:#059669;--primary-hover:#047857;--primary-glow:#05966929;--primary-gradient:linear-gradient(135deg, #059669 0%, #047857 100%);--theme-color:#059669;--accent-emerald:#059669;--accent-amber:#d97706;--accent-amber-bg:#fef3c7;--accent-blue:#2563eb;--accent-purple:#7c3aed;--accent-rose:#ef4444;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-card:0 1px 3px 0 #0000000d, 0 1px 2px 0 #00000008;--shadow-lg:0 10px 25px -5px #00000014, 0 8px 10px -6px #0000000a;--shadow-glow:0 4px 14px 0 #05966938}[data-theme=amber]{--font-heading:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--bg-main:#f8fafc;--bg-sidebar:#fff;--bg-card:#fff;--bg-card-hover:#fef3c7;--bg-input:#f8fafc;--bg-modal:#fff;--border-subtle:#e2e8f0;--border-card:#e2e8f0;--border-active:#d97706;--text-main:#0f172a;--text-muted:#475569;--text-dim:#94a3b8;--primary:#d97706;--primary-hover:#b45309;--primary-glow:#d9770629;--primary-gradient:linear-gradient(135deg, #d97706 0%, #b45309 100%);--theme-color:#d97706;--shadow-card:0 1px 3px 0 #0000000d;--shadow-lg:0 10px 25px -5px #00000014;--shadow-glow:0 4px 14px 0 #d9770638}[data-theme=sapphire]{--bg-main:#070e1b;--bg-sidebar:#0b162b;--bg-card:#0f1e3a;--bg-card-hover:#14274c;--bg-input:#152b53;--bg-modal:#0d1a33;--border-subtle:#ffffff14;--border-active:#0ea5e973;--border-card:#ffffff17;--text-main:#f0f9ff;--text-muted:#7dd3fc;--text-dim:#38bdf8;--primary:#0ea5e9;--primary-hover:#0284c7;--primary-glow:#0ea5e940;--primary-gradient:linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);--theme-color:#0ea5e9;--shadow-glow:0 0 24px -2px #0ea5e940}[data-theme=ruby]{--bg-main:#14090d;--bg-sidebar:#1d0e14;--bg-card:#27141c;--bg-card-hover:#341b25;--bg-input:#381c28;--bg-modal:#221017;--border-subtle:#ffffff14;--border-active:#f43f5e73;--border-card:#ffffff17;--text-main:#fff1f2;--text-muted:#fda4af;--text-dim:#fb7185;--primary:#f43f5e;--primary-hover:#e11d48;--primary-glow:#f43f5e40;--primary-gradient:linear-gradient(135deg, #f43f5e 0%, #e11d48 100%);--theme-color:#f43f5e;--shadow-glow:0 0 24px -2px #f43f5e40}[data-theme=amethyst]{--bg-main:#0f0a17;--bg-sidebar:#160e23;--bg-card:#1f1432;--bg-card-hover:#2a1b44;--bg-input:#2e1d4b;--bg-modal:#1a102b;--border-subtle:#ffffff14;--border-active:#a855f773;--border-card:#ffffff17;--text-main:#faf5ff;--text-muted:#d8b4fe;--text-dim:#c084fc;--primary:#a855f7;--primary-hover:#9333ea;--primary-glow:#a855f740;--primary-gradient:linear-gradient(135deg, #a855f7 0%, #9333ea 100%);--theme-color:#a855f7;--shadow-glow:0 0 24px -2px #a855f740}[data-theme=light]{--bg-main:#f8fafc;--bg-sidebar:#fff;--bg-card:#fff;--bg-card-hover:#f1f5f9;--bg-input:#f8fafc;--bg-modal:#fff;--border-subtle:#00000014;--border-active:#ea580c80;--border-card:#00000014;--text-main:#0f172a;--text-muted:#475569;--text-dim:#94a3b8;--primary:#ea580c;--primary-hover:#c2410c;--primary-glow:#ea580c33;--primary-gradient:linear-gradient(135deg, #ea580c 0%, #c2410c 100%);--theme-color:#ea580c;--shadow-card:0 4px 20px -2px #0000000f;--shadow-lg:0 12px 36px -4px #0000001f;--shadow-glow:0 0 24px -2px #ea580c2e}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{flex-direction:column;flex:1;align-items:stretch;width:100%;min-height:100vh;margin:0;padding:0;display:flex}body{font-family:var(--font-body);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.5;transition:background-color .25s,color .25s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-main);font-weight:700}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border-card);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1)}input,textarea,select{background-color:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-main);border-radius:var(--radius-sm);outline:none;padding:10px 14px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background-color .25s,color .25s}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}input::placeholder,textarea::placeholder{color:var(--text-dim)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px var(--primary-glow)}50%{box-shadow:0 0 25px var(--primary-glow)}}.animate-fade-in{animation:.2s ease-out fadeIn}.badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:9999px;justify-content:center;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-success{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.badge-warning{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.badge-danger{color:#dc2626;background:#fee2e2;border:1px solid #fecaca}.badge-info{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.glass-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);backdrop-filter:blur(12px);transition:background-color .25s,border-color .25s}.sidebar-backdrop{backdrop-filter:blur(4px);z-index:998;opacity:0;pointer-events:none;background-color:#000000a6;transition:opacity .3s;position:fixed;inset:0}.sidebar-backdrop.active{opacity:1;pointer-events:auto}.sidebar-container{background-color:var(--bg-sidebar);border-right:1px solid var(--border-subtle);z-index:40;-webkit-user-select:none;user-select:none;flex-direction:column;width:260px;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s;display:flex;position:sticky;top:0}@media (width<=1023px){.sidebar-container{z-index:999;width:290px;max-width:85vw;box-shadow:none;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-container.open{transform:translate(0);box-shadow:8px 0 36px #00000073}}.navbar-hamburger{border-radius:var(--radius-sm);background:var(--bg-main);border:1px solid var(--border-subtle);width:38px;height:38px;color:var(--text-main);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:none}@media (width<=1023px){.navbar-hamburger{display:flex}}.view-container{flex-direction:column;gap:24px;padding:32px;display:flex}@media (width<=768px){.view-container{gap:16px;padding:16px 12px}.navbar-header-title{font-size:1.05rem!important}.navbar-header-subtitle,.navbar-desktop-badges,.navbar-desktop-text{display:none!important}}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.modal-overlay-responsive{backdrop-filter:blur(6px);z-index:99999;background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-dialog-responsive{background:var(--bg-modal);border:1px solid var(--border-card);border-radius:var(--radius-xl);width:100%;max-width:850px;max-height:92vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.modal-header-responsive{padding:20px 28px}.modal-body-responsive{gap:24px;padding:24px 28px}.modal-footer-responsive{padding-top:20px}.plato-form-grid-row1{grid-template-columns:2fr 1fr 1fr;gap:20px;display:grid}.plato-form-grid-row2{grid-template-columns:1.5fr 1fr .8fr;gap:20px;display:grid}.plato-form-photo-container{align-items:center;gap:20px;display:flex}.plato-form-allergens-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;display:grid}.familia-form-grid-row1{grid-template-columns:2fr 1fr;gap:16px;display:grid}.familia-form-grid-row2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=768px){.modal-overlay-responsive{padding:8px!important}.modal-dialog-responsive{border-radius:16px!important;width:100%!important;max-width:100%!important;max-height:95vh!important;margin:0!important}.modal-header-responsive{padding:16px 14px!important}.modal-header-responsive h3{font-size:1.1rem!important}.modal-body-responsive{gap:16px!important;padding:16px 14px!important}.modal-footer-responsive{flex-wrap:wrap!important;gap:10px!important;padding-top:14px!important}.modal-footer-responsive button{flex:calc(50% - 6px)!important;padding:12px 14px!important;font-size:.84rem!important}.plato-form-grid-row1{grid-template-columns:1fr 1fr!important;gap:12px!important;display:grid!important}.plato-form-grid-row1>:first-child{grid-column:1/-1!important}.plato-form-grid-row2{grid-template-columns:1fr 1fr!important;gap:12px!important;display:grid!important}.plato-form-grid-row2>:first-child{grid-column:1/-1!important}.plato-form-photo-container{flex-flow:wrap!important;align-items:center!important;gap:14px!important}.plato-form-allergens-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))!important;gap:6px!important}.familia-form-grid-row1{grid-template-columns:1fr!important;gap:12px!important}.familia-form-grid-row2{grid-template-columns:1fr 1fr!important;gap:12px!important}}@media print{@page{size:A4 portrait;margin:0}html,body{color:#000!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important}#root,#root>div,#root>div>div,main,.view-container{float:none!important;background:#fff!important;flex:none!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}header,aside,.no-print,.navbar-hamburger,.sidebar-backdrop,.sidebar-container,nav{display:none!important}}