:root{
  --dgaia-bg:#f3f7f7;
  --dgaia-surface:#ffffff;
  --dgaia-surface-soft:#eef5f4;
  --dgaia-ink:#15343a;
  --dgaia-ink-soft:#5c7175;
  --dgaia-ink-on-dark:#f7fbfc;
  --dgaia-ink-soft-on-dark:#c8d5d9;
  --dgaia-primary:#0aa39a;
  --dgaia-primary-dark:#087d78;
  --dgaia-accent:#18c37e;
  --dgaia-danger:#e54d67;
  --dgaia-dark:#0f1b2f;
  --dgaia-dark-2:#13233b;
  --dgaia-border:#d8e6e5;
  --dgaia-shadow:0 14px 34px rgba(17,36,42,.08);
  --dgaia-radius:18px;
  --dgaia-content:1460px;
}

html,body{
  background:var(--dgaia-bg);
  color:var(--dgaia-ink);
}

body.dgaia-v2{
  font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;
  line-height:1.45;
}

body.dgaia-v2 h1,
body.dgaia-v2 h2,
body.dgaia-v2 h3,
body.dgaia-v2 h4{
  color:var(--dgaia-ink);
  line-height:1.15;
}

body.dgaia-v2 p,
body.dgaia-v2 li,
body.dgaia-v2 small,
body.dgaia-v2 label,
body.dgaia-v2 span{
  color:inherit;
}

body.dgaia-v2 button,
body.dgaia-v2 .button,
body.dgaia-v2 .btn,
body.dgaia-v2 a.button{
  min-height:44px;
  border-radius:14px;
  font-weight:700;
}

body.dgaia-v2 input,
body.dgaia-v2 select,
body.dgaia-v2 textarea{
  border:1px solid var(--dgaia-border);
  border-radius:14px;
  color:var(--dgaia-ink);
  background:#fff;
}

body.dgaia-v2 main,
body.dgaia-v2 .main,
body.dgaia-v2 .content,
body.dgaia-v2 .dashboard,
body.dgaia-v2 .page-content{
  width:min(calc(100% - 40px), var(--dgaia-content));
  max-width:var(--dgaia-content);
  margin-inline:auto;
}

body.dgaia-v2 .card,
body.dgaia-v2 .panel,
body.dgaia-v2 section,
body.dgaia-v2 article{
  border-radius:var(--dgaia-radius);
  box-shadow:var(--dgaia-shadow);
}

/* ========= CAMARERO ========= */
body.dgaia-page-waiter{
  background:#eef4f4;
}

body.dgaia-page-waiter .dgaia-topbar,
body.dgaia-page-waiter header{
  background:#fff;
  border-bottom:1px solid var(--dgaia-border);
}

body.dgaia-page-waiter .hero,
body.dgaia-page-waiter [class*="hero"]{
  background:linear-gradient(90deg,var(--dgaia-dark),var(--dgaia-dark-2)) !important;
  color:var(--dgaia-ink-on-dark) !important;
  padding:28px 28px 24px 28px !important;
  border-radius:0 0 18px 18px;
}

body.dgaia-page-waiter .hero h1,
body.dgaia-page-waiter [class*="hero"] h1{
  color:#fff !important;
  font-size:clamp(2rem,3vw,3rem) !important;
  margin-bottom:10px !important;
}

body.dgaia-page-waiter .hero p,
body.dgaia-page-waiter [class*="hero"] p{
  color:var(--dgaia-ink-soft-on-dark) !important;
  font-size:1.05rem;
}

body.dgaia-page-waiter .card,
body.dgaia-page-waiter .panel,
body.dgaia-page-waiter section{
  background:var(--dgaia-dark) !important;
  color:var(--dgaia-ink-on-dark) !important;
  padding:22px !important;
  min-height:auto !important;
}

body.dgaia-page-waiter .card h2,
body.dgaia-page-waiter .card h3,
body.dgaia-page-waiter .panel h2,
body.dgaia-page-waiter .panel h3,
body.dgaia-page-waiter section h2,
body.dgaia-page-waiter section h3{
  color:#fff !important;
}

body.dgaia-page-waiter .card p,
body.dgaia-page-waiter .panel p,
body.dgaia-page-waiter section p,
body.dgaia-page-waiter .card span,
body.dgaia-page-waiter .panel span,
body.dgaia-page-waiter section span,
body.dgaia-page-waiter .card small,
body.dgaia-page-waiter .panel small,
body.dgaia-page-waiter section small{
  color:var(--dgaia-ink-soft-on-dark) !important;
}

body.dgaia-page-waiter .card .success,
body.dgaia-page-waiter .panel .success,
body.dgaia-page-waiter section .success,
body.dgaia-page-waiter .ok{
  color:#62efaa !important;
}

body.dgaia-page-waiter .card .error,
body.dgaia-page-waiter .panel .error,
body.dgaia-page-waiter section .error{
  color:#ff9fac !important;
}

body.dgaia-page-waiter nav a[href*="owner"],
body.dgaia-page-waiter a[href*="owner"],
body.dgaia-page-waiter nav a[href*="universidad"],
body.dgaia-page-waiter a[href*="universidad"]{
  display:none !important;
}

/* ========= DUEÑO ========= */
body.dgaia-page-owner{
  background:#edf3f3;
}

body.dgaia-page-owner header{
  background:#fff;
  border-bottom:1px solid var(--dgaia-border);
}

body.dgaia-page-owner header,
body.dgaia-page-owner .owner-header,
body.dgaia-page-owner .topbar{
  padding-block:16px;
}

body.dgaia-page-owner .owner-brand,
body.dgaia-page-owner .brand{
  display:flex;
  align-items:center;
  gap:14px;
}

body.dgaia-page-owner nav,
body.dgaia-page-owner .navigation,
body.dgaia-page-owner .main-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

body.dgaia-page-owner nav a,
body.dgaia-page-owner .navigation a,
body.dgaia-page-owner .main-nav a{
  background:#f5f9f9;
  border:1px solid var(--dgaia-border);
  border-radius:999px;
  padding:10px 14px;
  color:var(--dgaia-ink);
  text-decoration:none;
  font-weight:700;
}

body.dgaia-page-owner nav a[href*="implantacion"],
body.dgaia-page-owner .navigation a[href*="implantacion"]{
  background:#fff7ee;
  border-color:#f0d1a5;
}

body.dgaia-page-owner .hero,
body.dgaia-page-owner .executive-summary,
body.dgaia-page-owner [class*="informe"]{
  background:#fff !important;
  border:1px solid var(--dgaia-border);
  padding:22px 22px 18px 22px !important;
  border-radius:22px !important;
  box-shadow:var(--dgaia-shadow) !important;
}

body.dgaia-page-owner .hero h1,
body.dgaia-page-owner .executive-summary h1,
body.dgaia-page-owner [class*="informe"] h1,
body.dgaia-page-owner [class*="informe"] h2{
  color:var(--dgaia-ink) !important;
  font-size:clamp(2rem,2.6vw,2.7rem) !important;
}

body.dgaia-page-owner .hero p,
body.dgaia-page-owner .executive-summary p,
body.dgaia-page-owner [class*="informe"] p{
  color:var(--dgaia-ink-soft) !important;
}

body.dgaia-page-owner .card,
body.dgaia-page-owner .panel,
body.dgaia-page-owner section{
  background:#fff !important;
  border:1px solid var(--dgaia-border);
  padding:20px !important;
}

body.dgaia-page-owner .card .dark-chip,
body.dgaia-page-owner .panel .dark-chip,
body.dgaia-page-owner section .dark-chip,
body.dgaia-page-owner [class*="chip"],
body.dgaia-page-owner [class*="pill"]{
  border-radius:999px !important;
}

body.dgaia-page-owner .status-attention{
  color:#8a5a00 !important;
}

body.dgaia-page-owner .status-ok{
  color:#117a46 !important;
}

/* ========= COCINA ========= */
body.dgaia-page-kitchen{
  background:#eef4f4;
}

body.dgaia-page-kitchen header{
  background:#fff;
  border-bottom:1px solid var(--dgaia-border);
}

body.dgaia-page-kitchen .hero,
body.dgaia-page-kitchen [class*="hero"],
body.dgaia-page-kitchen .kitchen-head{
  background:#fff !important;
  border-bottom:1px solid var(--dgaia-border);
  padding:22px 24px !important;
  margin-bottom:18px !important;
}

body.dgaia-page-kitchen .hero h1,
body.dgaia-page-kitchen [class*="hero"] h1,
body.dgaia-page-kitchen .kitchen-head h1{
  color:var(--dgaia-ink) !important;
  margin-bottom:8px !important;
}

body.dgaia-page-kitchen .hero p,
body.dgaia-page-kitchen [class*="hero"] p,
body.dgaia-page-kitchen .kitchen-head p,
body.dgaia-page-kitchen .hero small,
body.dgaia-page-kitchen [class*="hero"] small{
  color:var(--dgaia-ink-soft) !important;
}

body.dgaia-page-kitchen .card,
body.dgaia-page-kitchen .panel,
body.dgaia-page-kitchen section{
  background:#fff !important;
  border:1px solid var(--dgaia-border);
  padding:20px !important;
}

body.dgaia-page-kitchen .planning-actions,
body.dgaia-page-kitchen .toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

body.dgaia-page-kitchen .secondary-text,
body.dgaia-page-kitchen [class*="description"],
body.dgaia-page-kitchen .muted{
  color:var(--dgaia-ink-soft) !important;
}

body.dgaia-page-kitchen .danger,
body.dgaia-page-kitchen .logout,
body.dgaia-page-kitchen a[href*="salir"]{
  background:#ffe6eb !important;
  color:#b12642 !important;
  border-color:#f4bfd0 !important;
}

/* ========= LOGIN ========= */
body.dgaia-page-login{
  background:#ecf2f2;
}

body.dgaia-page-login .login-shell,
body.dgaia-page-login .login-layout,
body.dgaia-page-login main{
  width:min(calc(100% - 32px), 1440px);
  max-width:1440px;
  margin-inline:auto;
}

body.dgaia-page-login .login-card,
body.dgaia-page-login form,
body.dgaia-page-login .auth-panel{
  background:#fff !important;
  border:1px solid var(--dgaia-border);
  border-radius:24px !important;
  box-shadow:var(--dgaia-shadow) !important;
}

body.dgaia-page-login .hero,
body.dgaia-page-login .login-visual,
body.dgaia-page-login .brand-visual{
  position:relative;
}

body.dgaia-page-login .hero::after,
body.dgaia-page-login .login-visual::after,
body.dgaia-page-login .brand-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(10,24,33,.10),rgba(10,24,33,.35));
  pointer-events:none;
}

body.dgaia-page-login .login-card button,
body.dgaia-page-login form button,
body.dgaia-page-login .auth-panel button{
  background:linear-gradient(180deg,var(--dgaia-primary),var(--dgaia-primary-dark)) !important;
  color:#fff !important;
  border:none !important;
}

body.dgaia-page-login .login-card h1,
body.dgaia-page-login form h1,
body.dgaia-page-login .auth-panel h1{
  color:var(--dgaia-ink) !important;
}

body.dgaia-page-login .login-card p,
body.dgaia-page-login form p,
body.dgaia-page-login .auth-panel p,
body.dgaia-page-login .login-card small,
body.dgaia-page-login form small{
  color:var(--dgaia-ink-soft) !important;
}

body.dgaia-page-login input{
  min-height:50px;
}

/* ========= RESPONSIVE ========= */
@media (max-width:1100px){
  body.dgaia-v2 main,
  body.dgaia-v2 .main,
  body.dgaia-v2 .content,
  body.dgaia-v2 .dashboard,
  body.dgaia-v2 .page-content{
    width:min(calc(100% - 24px),100%);
  }

  body.dgaia-page-owner nav,
  body.dgaia-page-owner .navigation,
  body.dgaia-page-owner .main-nav{
    justify-content:flex-start;
  }
}

@media (max-width:760px){
  body.dgaia-v2 main,
  body.dgaia-v2 .main,
  body.dgaia-v2 .content,
  body.dgaia-v2 .dashboard,
  body.dgaia-v2 .page-content{
    width:100%;
    padding-inline:12px;
  }

  body.dgaia-page-waiter .hero,
  body.dgaia-page-owner .hero,
  body.dgaia-page-kitchen .hero{
    padding:18px !important;
  }

  body.dgaia-v2 .card,
  body.dgaia-v2 .panel,
  body.dgaia-v2 section{
    padding:16px !important;
  }
}
