:root{--amber:#f0a04b;--amber-2:#ffd08a;--serif:'Plus Jakarta Sans','Inter',sans-serif;--sans:'Plus Jakarta Sans','Inter',sans-serif;--mono:'Plus Jakarta Sans','Space Grotesk',sans-serif;}
/* ═══ BENTO 2.0 ═══ */
.app{padding-bottom:calc(104px + var(--safe-b));}
.bottomnav{left:12px;right:12px;bottom:calc(10px + var(--safe-b));max-width:536px;border-radius:34px;padding:7px 8px;gap:2px;overflow:visible;
  background:rgba(13,16,34,.88);border:1px solid var(--line-strong);box-shadow:0 18px 38px -12px rgba(0,0,0,.75);}
body.light .bottomnav{background:rgba(255,255,255,.92);}
.navitem{flex:1 1 0;min-width:0;padding:8px 2px;border-radius:26px;transition:all .22s cubic-bezier(.3,.8,.3,1);}
.navitem span{font-size:.7rem;font-weight:700;white-space:nowrap;}
.navitem:active{transform:scale(.92);}
.navitem.active{background:linear-gradient(135deg,var(--amber-2),var(--amber));color:#1a1006;box-shadow:0 8px 20px -6px rgba(240,160,75,.8);}
.navitem.active svg{stroke:#1a1006;}
.db-fab{bottom:calc(98px + env(safe-area-inset-bottom,0px));box-shadow:0 16px 30px -8px rgba(240,160,75,.85),0 0 0 4px rgba(255,208,138,.18);}
.card,.db-t{border-radius:24px;}
.db-t{border-color:var(--line-strong);box-shadow:0 14px 28px -18px #000;transition:transform .15s;}
.db-t:active{transform:scale(.985);}
.db-hd .v{font-weight:800;letter-spacing:-.03em;}
.db-hd .ch{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.08);}
.greet-card{border-radius:24px;}
.greet-hola{font-weight:800;}
.theme-toggle,.sync-dot{border-radius:14px;}
.brand-text .name{font-weight:800;}
.btn{border-radius:16px;}
.db-per{border-radius:18px;}.db-per button{border-radius:14px;}
/* bloques desplegables genéricos */
.cx-title{cursor:pointer;display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none;}
.cx-title .cx-ch{margin-left:auto;flex-shrink:0;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;font-size:.72rem;color:var(--text-3);font-style:normal;transition:transform .25s;}
.cx-closed .cx-title .cx-ch{transform:rotate(-90deg);}
.cx-body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .3s cubic-bezier(.3,.8,.3,1),opacity .25s;}
.cx-in{overflow:hidden;min-height:0;padding-top:2px;}
.cx-closed .cx-body{grid-template-rows:0fr;opacity:0;}
.cx-closed .cx-title{margin-bottom:0;}
/* ═══ Cotizador Letras Gigantes ═══ */
.cz-hero{text-align:center;padding:6px 0 16px;margin-bottom:6px;border-bottom:1px solid rgba(246,184,110,.28);}
.cz-h1{font-weight:800;font-size:1.45rem;letter-spacing:-.02em;color:var(--text);}
.cz-h2{font-size:.92rem;color:var(--text-3);margin-top:4px;}
.cz-lb{text-align:center;font-weight:800;font-size:.86rem;letter-spacing:.09em;text-transform:uppercase;color:var(--amber-2);margin:22px 0 12px;line-height:1.5;}
.cz-lb span{text-transform:none;letter-spacing:.02em;}
#crQuick input[type=text],#crQuick input[type=number]{border:2px solid rgba(246,184,110,.5);background:var(--wood);border-radius:20px;font-weight:700;}
#crQuick input.cz-big{font-size:1.5rem;letter-spacing:.14em;text-transform:uppercase;padding:18px 18px;min-height:68px;font-weight:800;}
#crQuick input.cz-big::placeholder{color:var(--text-3);}
#crQuick input:focus{border-color:var(--amber-2);box-shadow:0 0 0 4px rgba(246,184,110,.15);}
.cz-letras{margin:-4px 0 12px;text-align:center;}
.cz-tog{display:flex;align-items:center;gap:12px;background:var(--card-2);border:1px solid var(--line-strong);border-radius:20px;padding:16px 18px;margin:6px 0 4px;cursor:pointer;}
.cz-tog .tx{flex:1;min-width:0;}
.cz-tog .tt{font-weight:800;font-size:1.02rem;color:var(--text);}
.cz-tog .ts{font-size:.86rem;color:var(--text-3);margin-top:3px;font-weight:500;}
.cz-tog input{-webkit-appearance:none;appearance:none;flex-shrink:0;width:56px;height:32px;min-height:0;margin:0;border:none;border-radius:99px;background:#3b4058;position:relative;transition:background .2s;cursor:pointer;}
.cz-tog input::after{content:'';position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.4);transition:transform .2s;}
.cz-tog input:checked{background:linear-gradient(135deg,var(--amber-2),var(--amber));}
.cz-tog input:checked::after{transform:translateX(24px);}
.cz-note{text-align:center;font-size:.88rem;color:var(--text-3);line-height:1.7;margin:-4px 0 16px;}
#crQuick label:not(.cz-tog){text-align:center;}
.cz-empty{border:2px dashed var(--line-strong);border-radius:24px;padding:34px 16px;text-align:center;margin:18px 0 8px;}
.cz-empty .ic{font-size:2.6rem;}
.cz-empty .tx{color:var(--text-3);font-size:1.02rem;margin-top:10px;}
#crQuick .quote-box{margin-top:18px;border-radius:24px;}
.cz-wa{min-height:58px;font-size:1.05rem;border-radius:20px;}
.cz-foot{text-align:center;font-size:.86rem;color:var(--text-3);margin-top:14px;line-height:1.5;}
.cz-div{height:0;margin:0;}
body.light .cz-lb,body.light #crQuick .q-total .ql,body.light #crQuick .q-total .qv{color:#b4670f;}
.cr-acts #crReservar{order:-1;min-height:60px;font-size:1.08rem;font-weight:800;border-radius:20px;background:linear-gradient(135deg,var(--amber-2),var(--amber));color:#1a1006;box-shadow:0 14px 28px -10px rgba(240,160,75,.75);}
.cr-acts #crReservar:disabled{opacity:.45;box-shadow:none;}
