@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}:root{--color-primary:#e85d04;--color-primary-hover:#d45303;--color-primary-light:#fff4ed;--color-secondary:#1a1a2e;--color-secondary-light:#2d2d44;--color-accent:#f48c06;--color-success:#059669;--color-success-light:#ecfdf5;--color-warning:#d97706;--color-warning-light:#fffbeb;--color-danger:#dc2626;--color-danger-light:#fef2f2;--color-bg:#fafaf9;--color-surface:#ffffff;--color-border:#e7e5e4;--color-text:#1c1917;--color-text-muted:#78716c;--color-text-inverse:#fafaf9;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 2px rgba(28,25,23,0.06);--shadow-md:0 4px 12px rgba(28,25,23,0.08);--shadow-lg:0 12px 32px rgba(28,25,23,0.12);--font-sans:var(--font-inter),"Inter",system-ui,-apple-system,sans-serif;--font-serif:var(--font-sans);--sidebar-width:260px;--sidebar-collapsed-width:72px;--header-height:64px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:17px}body,html{max-width:100vw;overflow-x:hidden;font-family:var(--font-sans);font-size:1rem;line-height:1.6;color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.25rem}.container--wide{max-width:1400px}.heading-serif{font-family:var(--font-sans);font-weight:700;line-height:1.25;letter-spacing:-.02em}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.9375rem}.text-lg{font-size:1.1875rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:var(--radius-sm);border:1px solid transparent;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background-color:#d94800!important;border-color:#d94800!important;color:#ffffff!important;font-weight:700!important}.btn--primary:hover{background-color:#bf3e00!important;border-color:#bf3e00!important}.btn--secondary{background:var(--color-secondary);color:var(--color-text-inverse)}.btn--secondary:hover:not(:disabled){background:var(--color-secondary-light)}.btn--outline{background:transparent;border-color:var(--color-border);color:var(--color-text)}.btn--outline:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn--ghost{background:transparent;color:var(--color-text-muted)}.btn--ghost:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.btn--danger{background:var(--color-danger);color:white}.btn--sm{padding:.375rem .75rem;font-size:.8125rem}.btn--lg{padding:.875rem 1.75rem;font-size:1rem}.btn--block{width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem;box-shadow:var(--shadow-sm)}.card--elevated{box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.badge--success{background:var(--color-success-light);color:var(--color-success)}.badge--warning{background-color:#78350f!important;color:#fef3c7!important;font-weight:700!important}.badge--danger{background:var(--color-danger-light);color:var(--color-danger)}.badge--neutral{background:var(--color-bg);color:var(--color-text-muted)}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-label{font-size:.875rem;font-weight:600;color:var(--color-text)}.form-input,.form-select,.form-textarea{padding:.625rem .875rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-gap:1rem;gap:1rem}.form-row--2{grid-template-columns:repeat(2,1fr)}@media (max-width:640px){.form-row--2{grid-template-columns:1fr}}.grid{display:grid;grid-gap:1rem;gap:1rem}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid--3,.grid--4{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}}@media (max-width:768px){.public-header__inner{padding:0 .5rem}.public-header__logo{font-size:1.125rem}.public-header__actions .btn{padding:.5rem .875rem;font-size:.875rem}.public-nav{display:none}}.public-header__inner{display:flex;align-items:center;justify-content:space-between;height:100%}.public-header__logo{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.25rem}.public-header__logo-icon{width:36px;height:36px;background:var(--color-primary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:white;font-size:1.125rem}.public-nav{display:flex;align-items:center;gap:.25rem}.public-nav__link{padding:.5rem .875rem;border-radius:var(--radius-sm);font-weight:500;font-size:.9375rem;color:var(--color-text-muted);transition:all .15s ease}.public-nav__link--active,.public-nav__link:hover{color:var(--color-text);background:var(--color-bg)}.public-header__actions{display:flex;align-items:center;gap:.5rem}.public-footer{background:var(--color-secondary);color:var(--color-text-inverse);padding:3rem 0 2rem;margin-top:auto}.public-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:2rem;gap:2rem;margin-bottom:2rem}.public-footer__brand p{color:rgba(250,250,249,.7);margin-top:.75rem;max-width:280px}.public-footer__col h4{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;opacity:.7}.public-footer__col a{display:block;color:rgba(250,250,249,.85);padding:.25rem 0;font-size:.9375rem}.public-footer__col a:hover{color:white}.public-footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;text-align:center;font-size:.875rem;opacity:.6}@media (max-width:768px){.public-footer__grid{grid-template-columns:1fr!important;gap:1.5rem;text-align:center}.public-footer__brand p{margin:.75rem auto 0}.hero{padding:2.5rem 0}.hero__grid{grid-template-columns:1fr;gap:2rem}.hero__title{font-size:2.25rem}.hero__actions{flex-direction:column;width:100%}.hero__actions .btn{width:100%}.hero__visual{padding:1.25rem}.dashboard-content{padding:1rem}.page-header{flex-direction:column;align-items:flex-start}.page-header__actions{width:100%}.page-header__actions .btn{flex:1 1}}.dashboard-layout{display:flex;min-height:100vh}.dashboard-sidebar{width:70px;background:var(--color-secondary,#1a1a2e);color:var(--color-text-inverse,#fafaf9);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:99;transition:width .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease;overflow-x:hidden;white-space:nowrap}.dashboard-sidebar:hover{width:260px;box-shadow:var(--shadow-lg);z-index:50;overflow:hidden}@media (min-width:769px) and (hover:hover){.dashboard-sidebar{width:var(--sidebar-collapsed-width);transition:width .28s cubic-bezier(.4,0,.2,1)}.dashboard-sidebar:hover{width:var(--sidebar-width);box-shadow:4px 0 24px rgba(0,0,0,.18)}.dashboard-main{margin-left:var(--sidebar-collapsed-width);transition:margin-left .28s cubic-bezier(.4,0,.2,1)}.dashboard-layout:has(.dashboard-sidebar:hover) .dashboard-main{margin-left:var(--sidebar-width)}.dashboard-sidebar__label{display:none;opacity:0;white-space:nowrap}.dashboard-sidebar:hover .dashboard-sidebar__label{display:inline;opacity:1}.dashboard-sidebar__restaurant{display:none;opacity:0;max-height:0;overflow:hidden;margin-top:0}.dashboard-sidebar:hover .dashboard-sidebar__restaurant{display:block;opacity:1;max-height:2.5rem;margin-top:.25rem}.dashboard-sidebar:not(:hover) .dashboard-sidebar__link{justify-content:flex-start;padding:.75rem 1.125rem;gap:0}.dashboard-sidebar:not(:hover) .dashboard-sidebar__brand{justify-content:flex-start}.dashboard-sidebar:not(:hover) .dashboard-sidebar__header{padding:1rem 1.125rem}.dashboard-sidebar__brand,.dashboard-sidebar__link{overflow:hidden}}.dashboard-sidebar__header{padding:1.25rem .75rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:.25rem;overflow:hidden}.dashboard-sidebar__restaurant{font-size:.8125rem;color:rgba(250,250,249,.6);margin-top:.25rem;opacity:0;transition:opacity .2s ease}.dashboard-sidebar:hover .dashboard-sidebar__restaurant{opacity:1}.dashboard-sidebar__nav{flex:1 1;padding:1rem .5rem;display:flex;flex-direction:column;gap:.25rem}.dashboard-sidebar__link{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:var(--radius-sm,8px);font-weight:500;font-size:.9375rem;color:rgba(250,250,249,.7)!important;transition:all .15s ease;text-decoration:none}.dashboard-sidebar__link:hover{background:rgba(255,255,255,.06);color:#ffffff!important}.dashboard-sidebar__link--active{background:var(--color-primary,#e85d04)!important;color:#ffffff!important}.dashboard-sidebar__link-icon{font-size:1.125rem;width:1.5rem;min-width:1.5rem;text-align:left;flex-shrink:0;display:inline-flex;align-items:center;justify-content:flex-start}.dashboard-sidebar__link-text,.dashboard-sidebar__logo-text{opacity:0;transition:opacity .2s ease;pointer-events:none}.dashboard-sidebar:hover .dashboard-sidebar__link-text,.dashboard-sidebar:hover .dashboard-sidebar__logo-text{opacity:1;pointer-events:auto}.dashboard-sidebar__footer{padding:1rem .5rem;border-top:1px solid rgba(255,255,255,.08)}.dashboard-main{flex:1 1;margin-left:70px;display:flex;flex-direction:column;min-height:100vh}.dashboard-topbar{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:40}.dashboard-topbar__title{font-size:1.125rem;font-weight:600}.dashboard-topbar__meta{display:flex;align-items:center;gap:1rem}.dashboard-content{flex:1 1;padding:1.5rem}@media (min-width:769px){.mobile-bottom-nav{display:none!important}}@media (max-width:768px){.dashboard-sidebar{display:none!important}.dashboard-main{margin-left:0!important;padding-bottom:70px}.mobile-bottom-nav{display:flex!important;position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--color-secondary,#1a1a2e);border-top:1px solid rgba(255,255,255,.1);z-index:999;align-items:center;justify-content:space-around;padding:0 .5rem}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;color:rgba(250,250,249,.7);font-size:.75rem;font-weight:500;gap:2px;text-decoration:none;flex:1 1;height:100%}.mobile-nav-item--active{color:var(--color-primary,#e85d04);font-weight:700}.mobile-nav-item span{font-size:1.25rem}.mobile-nav-item--logout{color:rgba(250,250,249,.55);background:none;border:none;cursor:pointer;font-family:inherit}.mobile-nav-item--logout:hover{color:var(--color-danger,#dc2626)}}.menu-admin-card,.menu-admin-cards{display:flex;flex-direction:column;gap:.75rem}.menu-admin-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem}.menu-admin-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.menu-admin-card__actions{display:flex;gap:.5rem;flex-wrap:wrap}.menu-admin-table{display:none}@media (min-width:769px){.menu-admin-cards{display:none}.menu-admin-table{display:block}}@media (max-width:768px){.page-header{flex-direction:column;align-items:stretch}.page-header__actions{flex-wrap:wrap}.page-header__actions .btn{flex:1 1 auto;min-width:0;font-size:.8125rem;padding:.5rem .625rem}}.card-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{min-width:600px}.table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:1rem;gap:1rem}.table-card{aspect-ratio:1;border-radius:var(--radius-md);border:2px solid var(--color-border);background:var(--color-surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;cursor:pointer;transition:all .15s ease;padding:1rem}.table-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.table-card-overlay{position:absolute;inset:0;background:rgba(26,26,46,.95);border-radius:var(--radius-md);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;opacity:0;visibility:hidden;transition:all .2s ease;z-index:10}@media (hover:hover){.table-card:hover .table-card-overlay{opacity:1;visibility:visible}}.table-card--disponible{border-color:var(--color-success);background:var(--color-success-light)}.table-card--ocupada{border-color:var(--color-warning);background:var(--color-warning-light)}.table-card--por_pagar{border-color:var(--color-danger);background:var(--color-danger-light)}.table-card--selected{box-shadow:0 0 0 3px var(--color-primary)}.table-card__number{font-size:1.75rem;font-weight:700}.table-card__capacity{font-size:.8125rem;color:var(--color-text-muted)}.menu-layout{display:grid;grid-template-columns:1fr 340px;grid-gap:1.5rem;gap:1.5rem;align-items:start}@media (max-width:1024px){.menu-layout{grid-template-columns:1fr}}.category-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.category-tab{padding:.5rem 1rem;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);font-weight:500;font-size:.875rem;cursor:pointer;transition:all .15s ease}.category-tab--active,.category-tab:hover{border-color:var(--color-primary)}.category-tab--active{background:var(--color-primary);color:white}.menu-item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1rem;gap:1rem}.menu-item-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem;cursor:pointer;transition:all .15s ease}.menu-item-card:hover:not(.menu-item-card--disabled){border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-3px)}.menu-item-card--disabled{opacity:.5;cursor:not-allowed}.menu-item-card__name{font-weight:600;margin-bottom:.25rem}.menu-item-card__desc{font-size:.8125rem;color:var(--color-text-muted);margin-bottom:.75rem}.menu-item-card__footer{display:flex;align-items:center;justify-content:space-between}.menu-item-card__price{font-weight:700;color:var(--color-primary)}.order-cart{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);position:-webkit-sticky;position:sticky;top:calc(var(--header-height) + 1.5rem)}.order-cart__header{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);font-weight:600}.order-cart__body{padding:1rem 1.25rem;max-height:400px;overflow-y:auto}.order-cart__empty{text-align:center;padding:2rem 1rem;color:var(--color-text-muted)}.order-line{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.order-line:last-child{border-bottom:none}.order-line__info{flex:1 1}.order-line__name{font-weight:500;font-size:.9375rem}.order-line__price{font-size:.8125rem;color:var(--color-text-muted)}.order-line__qty{gap:.375rem}.order-line__qty,.qty-btn{display:flex;align-items:center}.qty-btn{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);cursor:pointer;justify-content:center;font-weight:600}.qty-btn:hover{border-color:var(--color-primary)}.order-cart__footer{padding:1rem 1.25rem;border-top:1px solid var(--color-border)}.cash-layout{display:grid;grid-template-columns:1fr 400px;grid-gap:1.5rem;gap:1.5rem}@media (max-width:1024px){.cash-layout{grid-template-columns:1fr}}@media (max-width:768px){.cash-layout{gap:1rem}.cash-layout .card{padding:1rem}.cash-layout .data-table{min-width:480px}}.bill-summary__row{display:flex;justify-content:space-between;padding:.5rem 0}.bill-summary__row--total{font-size:1.25rem;font-weight:700;border-top:2px solid var(--color-border);margin-top:.5rem;padding-top:1rem}.payment-methods{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem;margin:1rem 0}.payment-method{padding:1rem;border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:all .15s ease;background:var(--color-surface)}.payment-method--selected,.payment-method:hover{border-color:var(--color-primary)}.payment-method--selected{background:var(--color-primary-light)}.payment-method__icon{font-size:1.5rem;margin-bottom:.25rem}.payment-method__label{font-size:.8125rem;font-weight:600}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem}.stat-card__label{font-size:.875rem;color:var(--color-text-muted);margin-bottom:.5rem}.stat-card__value{font-size:1.75rem;font-weight:700}.stat-card__change{font-size:.8125rem;margin-top:.375rem;color:var(--color-success)}.chart-bars{display:flex;align-items:flex-end;gap:.5rem;height:200px;padding-top:1rem}.chart-bar{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.375rem}.chart-bar__fill{width:100%;background:var(--color-primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-height:4px;transition:height .3s ease}.chart-bar__label{font-size:.6875rem;color:var(--color-text-muted)}.data-table{width:100%;border-collapse:collapse}.data-table td,.data-table th{padding:.875rem 1rem;text-align:left;border-bottom:1px solid var(--color-border)}.data-table th{font-size:.8125rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);font-weight:600}.data-table th,.data-table tr:hover td{background:var(--color-bg)}.modal-overlay{position:fixed;inset:0;background:rgba(28,25,23,.5);display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.modal{background:var(--color-surface);border-radius:var(--radius-lg);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border)}.modal__title{font-size:1.125rem;font-weight:600}.modal__body{padding:1.5rem}.modal__footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border)}.hero{padding:5rem 0 4rem;background:linear-gradient(135deg,var(--color-primary-light) 0,var(--color-bg) 50%,#fef3c7 100%)}.hero__grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;align-items:center}.hero__title{font-size:clamp(2.5rem,5vw,3.5rem);margin-bottom:1.25rem}.hero__subtitle{font-size:1.125rem;color:var(--color-text-muted);margin-bottom:2rem;max-width:480px}.hero__actions{display:flex;gap:1rem;flex-wrap:wrap}.hero__visual{background:var(--color-surface);border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-lg);border:1px solid var(--color-border)}.hero__mock-dashboard{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem}.hero__mock-table{aspect-ratio:1;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem}@media (max-width:768px){.hero__grid{grid-template-columns:1fr}.hero{padding:3rem 0}}.section{padding:4rem 0}.section__header{text-align:center;max-width:600px;margin:0 auto 3rem}.section__title{font-size:2.25rem;margin-bottom:.75rem}.roles-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:0;gap:0;margin-top:2.5rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg)}.role-card{display:flex;flex-direction:column;background:var(--color-surface);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);transition:background .25s ease}.role-card:nth-child(2n){border-right:none}.role-card:nth-last-child(-n+2){border-bottom:none}.role-card:hover{background:var(--color-primary-light)}.role-card__icon{display:flex;align-items:center;justify-content:center;min-height:140px;padding:1.25rem 1rem .5rem;background:linear-gradient(180deg,var(--color-primary-light) 0,transparent 100%)}.role-card__body{padding:1rem 1.25rem 1.5rem;flex:1 1}.role-card__badge{background-color:#1f2937!important;color:#ffffff!important;font-weight:600!important}.role-card__title{font-size:1.25rem;margin-bottom:.5rem;color:var(--color-secondary);line-height:1.3}.role-card__desc{font-size:.9375rem;line-height:1.5;margin:0}.role-icon{max-width:120px;aspect-ratio:1}.role-icon,.role-icon__scene{width:100%;display:flex;align-items:center;justify-content:center}.role-icon__scene{position:relative;height:100%;font-size:2.5rem}@media (max-width:768px){.roles-grid{grid-template-columns:1fr}.role-card{border-right:none}.role-card:not(:last-child),.role-card:nth-last-child(-n+2){border-bottom:1px solid var(--color-border)}.role-card:last-child{border-bottom:none}.role-card__icon{min-height:110px}.role-card__title{font-size:1.125rem}}@media (min-width:769px) and (max-width:1024px){.role-card__icon{min-height:120px}}.role-section-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;align-items:center}@media (max-width:768px){.role-section-row{grid-template-columns:1fr;gap:1.5rem}}.benefits-alternating{display:flex;flex-direction:column;gap:2rem;max-width:900px;margin:0 auto}.benefits-alternating__row{display:flex;gap:2rem;align-items:stretch}.benefits-alternating__row--left{justify-content:flex-start}.benefits-alternating__row--right{justify-content:flex-end}.feature-card{padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1),border-color .3s ease;width:100%;max-width:380px;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-primary-light) 0,transparent 60%);opacity:0;transition:opacity .4s ease;pointer-events:none}.feature-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 24px 48px -12px rgba(232,93,4,.18),0 12px 24px -8px rgba(0,0,0,.08);border-color:var(--color-primary)}.feature-card:hover:before{opacity:1}.feature-card__icon{width:72px;height:72px;background:var(--color-primary-light);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:2.25rem;margin-bottom:1.25rem;transition:transform .4s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}.feature-card:hover .feature-card__icon{transform:scale(1.12) rotate(-4deg)}.feature-card__title{font-weight:600;font-size:1.125rem;margin-bottom:.625rem;position:relative;z-index:1}.feature-card__desc{font-size:.9375rem;color:var(--color-text-muted);line-height:1.55;position:relative;z-index:1}@media (max-width:640px){.benefits-alternating__row{justify-content:center!important}.feature-card{max-width:100%;aspect-ratio:auto;min-height:220px}}.service-list{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem}.service-row-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem 1.5rem;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1),border-color .3s ease;overflow:hidden;position:relative}.service-row-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.4,0,.2,1)}.service-row-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px -12px rgba(232,93,4,.15);border-color:var(--color-primary)}.service-row-card:hover:after{transform:scaleX(1)}.service-row-card__icon{font-size:3.5rem;margin-bottom:1.25rem;line-height:1;transition:transform .4s cubic-bezier(.4,0,.2,1)}.service-row-card:hover .service-row-card__icon{transform:scale(1.15)}.service-row-card__title{font-weight:600;font-size:1.0625rem;margin-bottom:.5rem;color:var(--color-secondary)}.service-row-card__desc{font-size:.875rem;color:var(--color-text-muted);line-height:1.5}@media (max-width:900px){.service-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:540px){.service-list{grid-template-columns:1fr}.service-row-card{aspect-ratio:auto;min-height:240px}}.service-list .scroll-reveal{min-height:100%}.service-list .scroll-reveal .service-row-card{height:100%}.scroll-reveal{opacity:0;transform:translateX(-40px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}.scroll-reveal--visible{opacity:1;transform:translateX(0)}.square-card-grid{flex-wrap:wrap;gap:1.5rem}.square-card,.square-card-grid{display:flex;justify-content:center}.square-card{width:280px;aspect-ratio:1;flex-direction:column;align-items:flex-start;padding:1.75rem;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.square-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}@media (max-width:640px){.square-card{width:100%;max-width:320px;aspect-ratio:auto;min-height:240px}}.reports-scroll-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.reports-scroll-wrapper .data-table{min-width:400px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;align-items:start}@media (max-width:900px){.pricing-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}.pricing-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.pricing-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 30px -10px rgba(0,0,0,.12);border-color:var(--color-primary)}.pricing-card--highlighted{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:scale(1.03)}.pricing-card--highlighted:hover{transform:translateY(-8px) scale(1.05);box-shadow:0 25px 35px -10px rgba(0,0,0,.18)}.pricing-card__badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--color-primary);color:white;padding:.25rem 1rem;border-radius:999px;font-size:.75rem;font-weight:600}.pricing-card__name{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.pricing-card__price{font-size:2.5rem;font-weight:700;margin:1rem 0}.pricing-card__price span{font-size:1rem;font-weight:400;color:var(--color-text-muted)}.pricing-card__features{list-style:none;margin:1.5rem 0}.pricing-card__features li{padding:.5rem 0;font-size:.9375rem;display:flex;align-items:flex-start;gap:.625rem}.pricing-card__features li:before{content:"✓";color:var(--color-success);font-weight:700;flex-shrink:0}.auth-page{min-height:calc(100vh - var(--header-height));display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.auth-card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md)}.auth-card__title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.auth-card__subtitle{color:var(--color-text-muted);margin-bottom:1.5rem}.auth-card__divider{text-align:center;margin:1.5rem 0;color:var(--color-text-muted);font-size:.875rem;position:relative}.auth-card__divider:after,.auth-card__divider:before{content:"";position:absolute;top:50%;width:40%;height:1px;background:var(--color-border)}.auth-card__divider:before{left:0}.auth-card__divider:after{right:0}.toggle{position:relative;width:44px;height:24px;background:var(--color-border);border-radius:999px;cursor:pointer;transition:background .15s ease;border:none}.toggle--on{background:var(--color-success)}.toggle__knob{position:absolute;top:2px;left:2px;width:20px;height:20px;background:white;border-radius:50%;transition:transform .15s ease;box-shadow:var(--shadow-sm)}.toggle--on .toggle__knob{transform:translateX(20px)}.empty-state{text-align:center;padding:3rem 1.5rem;color:var(--color-text-muted)}.empty-state__icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state__title{font-weight:600;color:var(--color-text);margin-bottom:.5rem}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.page-header__title{font-size:1.5rem;font-weight:600}.page-header__actions{display:flex;gap:.75rem}.legend{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.legend__item{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.legend__dot{width:12px;height:12px;border-radius:50%}.legend__dot--disponible{background:var(--color-success)}.legend__dot--ocupada{background:var(--color-warning)}.legend__dot--por_pagar{background:var(--color-danger)}.public-header{position:fixed;top:0;left:0;right:0;height:80px;background:rgba(255,255,255,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.06);z-index:100;transition:background-color .3s ease,border-color .3s ease}.mobile-burger-btn{display:none;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.375rem .625rem;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--color-secondary);margin-left:.5rem;flex-shrink:0;transition:background .15s ease,border-color .15s ease}.mobile-burger-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.public-mobile-drawer{position:fixed;top:80px;left:0;right:0;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:var(--shadow-md);padding:1.25rem;z-index:99;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),visibility .3s ease}.public-mobile-drawer--open{opacity:1;visibility:visible;transform:translateY(0)}.public-mobile-nav{display:flex;flex-direction:column;gap:.75rem}.public-mobile-nav__link{padding:.625rem .875rem;border-radius:var(--radius-sm);font-weight:600;font-size:1rem;color:var(--color-text);transition:background .15s ease}.public-mobile-nav__link--active,.public-mobile-nav__link:hover{background:var(--color-primary-light);color:var(--color-primary)}@media (max-width:768px){.mobile-burger-btn{display:block}.hide-mobile{display:none!important}.dashboard-content{padding:1rem;overflow-x:auto}.dashboard-topbar{padding:0 1rem}.dashboard-topbar__title{font-size:1rem}.mobile-bottom-nav{overflow-x:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start;gap:0;padding:0}.mobile-nav-item{flex:0 0 auto;min-width:56px;padding:0 .375rem;font-size:.6875rem}}.import-dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:2.5rem 1.5rem;text-align:center;background:var(--color-bg);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1.5rem}.import-dropzone--active,.import-dropzone:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.import-dropzone__icon{font-size:2.5rem}.import-dropzone__title{font-weight:600;font-size:1rem;color:var(--color-text)}.import-dropzone__subtitle{font-size:.8125rem;color:var(--color-text-muted)}.import-preview-container{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface);margin-bottom:1rem}.import-preview-header{padding:.75rem 1rem;background:var(--color-bg);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:.875rem}.import-preview-table-wrapper{max-height:250px;overflow-y:auto;overflow-x:auto;-webkit-overflow-scrolling:touch}.import-preview-table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}.import-preview-table th{background:var(--color-bg);font-weight:600;color:var(--color-text-muted);position:-webkit-sticky;position:sticky;top:0;z-index:10}.import-preview-table td,.import-preview-table th{padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.import-preview-table td{vertical-align:top}.import-preview-table tr:last-child td{border-bottom:none}.import-preview-badge{display:inline-flex;padding:.125rem .375rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.import-preview-badge--valido{background:var(--color-success-light);color:var(--color-success)}.import-preview-badge--error{background:var(--color-danger-light);color:var(--color-danger)}