.login-page{background:radial-gradient(circle at top left, #ffe8f2 0%, transparent 45%), radial-gradient(circle at bottom right, #e8f8ee 0%, transparent 40%), var(--bg);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{text-align:center;background:#fff;border-radius:24px;width:min(100%,380px);padding:2rem 1.75rem 1.5rem;position:relative;overflow:hidden;box-shadow:0 18px 50px #00000014}.login-logo .logo-text{font-size:2rem;font-weight:900;line-height:1}.login-logo .c{color:var(--fucsia)}.login-logo .r{color:var(--amarillo)}.login-logo .a1{color:var(--verde)}.login-logo .y{color:#9b59b6}.login-logo .o{color:#ff8c42}.login-logo .a2{color:var(--fucsia)}.login-logo .r2{color:var(--amarillo)}.login-logo .t{color:var(--verde)}.login-logo .e{color:#9b59b6}.login-slogan{color:var(--muted);margin-top:.25rem;font-size:.7rem;font-style:italic}.login-card h1{color:#333;margin-top:1.25rem;font-size:1.15rem}.login-subtitle{color:var(--muted);margin-bottom:1.5rem;font-size:.85rem}.login-field{text-align:left;margin-bottom:.9rem}.login-field label{color:#555;margin-bottom:.3rem;font-size:.75rem;font-weight:600;display:block}.login-field input{background:#fafafa;border:1px solid #e5e5e5;border-radius:12px;width:100%;padding:.65rem .8rem}.login-field input:focus{outline:2px solid var(--fucsia-light);border-color:var(--fucsia);background:#fff}.login-error{color:var(--rojo);margin-bottom:.75rem;font-size:.8rem}.login-btn{background:var(--fucsia);color:#fff;cursor:pointer;border:none;border-radius:20px;width:100%;margin-top:.25rem;padding:.7rem 1rem;font-weight:700}.login-btn:hover:not(:disabled){background:var(--fucsia-dark)}.login-btn:disabled{opacity:.7;cursor:wait}.login-mascot{opacity:.85;margin-top:1.25rem;font-size:2rem}.sidebar{background:#fff;border-right:1px solid #eee;flex-direction:column;min-height:100vh;padding:1.25rem .9rem;display:flex}.logo-slot{text-align:center;margin-bottom:1.1rem}.logo-slot img{object-fit:contain;max-width:100%;max-height:72px}.logo-text{letter-spacing:-.02em;font-size:1.35rem;font-weight:900;line-height:1}.logo-text .c{color:var(--fucsia)}.logo-text .r{color:var(--amarillo)}.logo-text .a1{color:var(--verde)}.logo-text .y{color:#9b59b6}.logo-text .o{color:#ff8c42}.logo-text .a2{color:var(--fucsia)}.logo-text .r2{color:var(--amarillo)}.logo-text .t{color:var(--verde)}.logo-text .e{color:#9b59b6}.logo-slogan{color:var(--muted);margin-top:.15rem;font-size:.58rem;font-style:italic}.btn-nuevo{background:var(--fucsia);color:#fff;cursor:pointer;border:none;border-radius:20px;width:100%;margin-bottom:.6rem;padding:.55rem .9rem;font-size:.78rem;font-weight:700}.btn-nuevo:hover{background:var(--fucsia-dark)}.nav-item{color:#444;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:.45rem;width:100%;margin-bottom:.2rem;padding:.55rem .65rem;font-size:.8rem;display:flex}.nav-item:hover{background:#f5f5f5}.nav-item.active{background:#f5f5f5;font-weight:600}.nav-badge{background:var(--fucsia);color:#fff;border-radius:50%;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 .3rem;font-size:.65rem;font-weight:700;display:flex}.nav-badge.warn{background:var(--amarillo);color:var(--amarillo-text)}.sidebar-user{background:#fafafa;border-radius:10px;flex-direction:column;gap:.35rem;margin:.75rem 0;padding:.55rem .65rem;display:flex}.user-name{color:#555;font-size:.72rem;font-weight:600}.btn-logout{color:#666;cursor:pointer;background:#fff;border:1px solid #eee;border-radius:10px;padding:.35rem .5rem;font-size:.72rem}.btn-logout:hover{border-color:var(--fucsia);color:var(--fucsia)}.mascot-area{border-radius:0 0 0 12px;height:130px;margin:1rem -.9rem -1.25rem;position:relative;overflow:hidden}.mascot-wave{background:var(--morado-ola);border-radius:50% 50% 0 0/30% 30% 0 0;height:90px;position:absolute;bottom:0;left:0;right:0}.mascot-box{z-index:2;text-align:center;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.box-body{background:var(--turquesa-mascota);border-radius:8px;justify-content:center;align-items:center;width:58px;height:48px;margin:0 auto;font-size:1.1rem;display:flex;box-shadow:0 3px 8px #00000026}.crayons{justify-content:center;gap:3px;margin-top:-6px;display:flex}.crayon{border-radius:3px 3px 1px 1px;width:8px;height:28px}.order-card{border-radius:var(--radius);cursor:default;background:#fff;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1px 4px #0000000f}.order-card[role=button]{cursor:pointer;transition:box-shadow .15s,transform .15s}.order-card[role=button]:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.card-top{background:linear-gradient(#fff 60%,#fafafa 100%);border-bottom:1px solid #f0f0f0;padding:1rem 1rem .75rem;position:relative}.card-top .tag{position:absolute;top:.75rem;right:.75rem}.date-hero-block{padding-right:5.5rem}.necesita-line{color:var(--fucsia);letter-spacing:-.02em;font-size:1.35rem;font-weight:900;line-height:1.2}.enviar-antes-line{color:var(--turquesa);margin-top:.35rem;font-size:1.05rem;font-weight:700}.enviar-antes-line.urgente{color:var(--rojo)}.card-body{flex-direction:column;gap:.2rem;padding:.85rem 1rem .5rem;display:flex}.tag{white-space:nowrap;border-radius:12px;padding:.25rem .55rem;font-size:.62rem;font-weight:700}.tag.envio{background:var(--verde);color:#fff}.tag.retira{background:var(--amarillo);color:var(--amarillo-text)}.card-client{margin-top:.15rem;font-size:.9rem;font-weight:700}.card-phone{color:var(--muted);font-size:.78rem}.card-address{color:#555;margin:.25rem 0 .35rem;font-size:.75rem}.card-lines{color:#444;margin:.35rem 0 .15rem;font-size:.8rem;list-style:none}.card-lines li{padding:.15rem 0 .15rem .9rem;position:relative}.card-lines li:before{content:"•";color:var(--fucsia);font-weight:900;position:absolute;left:0}.card-money{background:#fafafa;border-top:1px solid #f0f0f0;grid-template-columns:1fr 1fr 1fr;gap:.5rem;margin-top:auto;padding:.75rem 1rem 1rem;display:grid}.money-col label{color:var(--muted);text-transform:uppercase;font-size:.6rem;font-weight:600;display:block}.money-col strong{font-size:.85rem}.money-col.abono{background:var(--morado-bg);border-radius:8px;padding:.3rem .5rem}.money-col.abono label,.money-col.abono strong{color:var(--morado)}.money-col.saldo{background:var(--rojo-bg);border-radius:8px;padding:.3rem .5rem}.money-col.saldo label,.money-col.saldo strong{color:var(--rojo)}.money-col.pagado strong{color:var(--verde);font-size:.78rem}.order-list-view .page-title{margin-bottom:1rem;font-size:1.4rem;font-weight:800}.tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:.85rem;display:flex}.tab{cursor:pointer;color:#555;background:#fff;border:none;border-radius:20px;padding:.35rem .75rem;font-size:.72rem;font-weight:700}.tab.active{background:var(--fucsia);color:#fff}.tab.envio-tab{color:var(--verde);border:1.5px solid var(--verde);background:#fff}.tab.envio-tab.active{background:var(--verde-bg);color:var(--verde)}.tab.retira-tab{color:var(--amarillo-text);border:1.5px solid var(--amarillo);background:#fff}.tab.retira-tab.active{background:var(--amarillo-bg);color:var(--amarillo-text)}.cards{flex-direction:column;gap:.75rem;display:flex}.empty-state{color:var(--muted);text-align:center;border-radius:var(--radius);background:#fff;padding:2rem}.order-detail{max-width:560px}.back-btn{cursor:pointer;background:#fff;border:1.5px solid #ddd;border-radius:10px;margin-bottom:1rem;padding:.45rem .9rem;font-size:.85rem;font-weight:600}.detail-card{border-radius:var(--radius);background:#fff;overflow:hidden;box-shadow:0 1px 6px #00000012}.detail-top{background:linear-gradient(#fff 60%,#fafafa 100%);border-bottom:1px solid #f0f0f0;padding:1rem 1rem .85rem;position:relative}.detail-top .tag{position:absolute;top:.75rem;right:.75rem}.detail-body{padding:1rem}.detail-body h3{text-transform:uppercase;letter-spacing:.06em;color:#999;margin:.75rem 0 .4rem;font-size:.72rem;font-weight:700}.detail-body h3:first-child{margin-top:0}.client-name{font-size:1rem;font-weight:800}.detail-money{background:#fafafa;border-top:1px solid #f0f0f0;grid-template-columns:1fr 1fr 1fr;gap:.5rem;padding:.75rem 1rem;display:grid}.btn-listo{background:var(--azul);color:#fff;cursor:pointer;border:none;border-radius:12px;width:calc(100% - 2rem);margin:0 1rem 1rem;padding:1rem;font-size:1rem;font-weight:800}.btn-listo:hover{background:var(--azul-dark)}.new-order-form{max-width:620px}.form-top{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.back{color:#aaa;cursor:pointer;background:0 0;border:none;font-size:1.1rem}.form-title{color:var(--fucsia);flex:1;font-size:1.1rem;font-weight:800}.heart{color:var(--fucsia)}.toggle{border:2px solid #eee;border-radius:12px;margin-bottom:1rem;display:flex;overflow:hidden}.toggle-btn{cursor:pointer;color:#888;background:#fff;border:none;flex:1;padding:.65rem;font-size:.78rem;font-weight:700}.toggle-btn.envio-sel{background:var(--fucsia);color:#fff}.toggle-btn.retira-sel{background:var(--amarillo);color:var(--amarillo-text)}.form-field{margin-bottom:.65rem}.form-field label{color:var(--muted);margin-bottom:.25rem;font-size:.7rem;font-weight:600;display:block}.form-field input{border:1.5px solid #e8e8e8;border-radius:10px;width:100%;padding:.55rem .75rem;font-size:.82rem}.products-title{color:var(--muted);text-transform:uppercase;margin:.85rem 0 .5rem;font-size:.72rem;font-weight:700}.products-table{border-collapse:collapse;width:100%;margin-bottom:.5rem;font-size:.75rem}.products-table th{text-align:left;color:var(--muted);text-transform:uppercase;padding:.3rem .4rem;font-size:.65rem;font-weight:600}.products-table td{padding:.3rem .4rem}.products-table input{border:1.5px solid #e8e8e8;border-radius:8px;width:100%;padding:.35rem .5rem;font-size:.75rem}.products-table input.qty{width:45px}.del{color:var(--fucsia);cursor:pointer;background:0 0;border:none;font-size:.85rem}.btn-add-line{border:2px dashed var(--fucsia);color:var(--fucsia);cursor:pointer;background:0 0;border-radius:8px;width:100%;margin-bottom:.85rem;padding:.4rem;font-size:.75rem;font-weight:700}.dates-row{grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.85rem;display:grid}.date-box{text-align:center;background:#fff;border:1.5px solid #e8e8e8;border-radius:12px;padding:.85rem .65rem}.date-box.hero{background:linear-gradient(135deg, var(--fucsia-light), #f3e8ff);border-color:#0000}.date-box.limite{background:linear-gradient(135deg,#e8faf8,#f0fffe);border-color:#0000}.date-box label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.35rem;font-size:.62rem;font-weight:700;display:block}.date-box.limite label{color:var(--turquesa)}.date-box input[type=date]{text-align:center;width:100%;color:var(--muted);background:0 0;border:none;font-size:.75rem}.date-big{color:var(--fucsia);margin-top:.25rem;font-size:1.25rem;font-weight:900}.date-box.limite .date-big{color:var(--turquesa);font-size:1.1rem}.summary-row{grid-template-columns:1fr 1fr 1fr;gap:.5rem;margin-bottom:1rem;display:grid}.summary-box{text-align:center;background:#fff;border:1.5px solid #e8e8e8;border-radius:10px;padding:.5rem}.summary-box label{color:var(--muted);font-size:.6rem;font-weight:600;display:block}.summary-box strong{font-size:.9rem}.summary-box.abono{background:var(--morado-bg);border-color:#d4c4f5}.summary-box.abono label,.summary-box.abono input{color:var(--morado)}.summary-box.abono input{text-align:center;background:0 0;border:none;width:100%;font-size:.9rem;font-weight:800}.summary-box.saldo{background:var(--rojo-bg);border-color:#ffcdd2}.summary-box.saldo label,.summary-box.saldo strong{color:var(--rojo)}.btn-save{background:var(--fucsia);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:.85rem;font-size:.95rem;font-weight:700}.btn-save:hover{background:var(--fucsia-dark)}@media (width<=600px){.dates-row,.summary-row{grid-template-columns:1fr}}.pending-list .page-title{margin-bottom:.5rem;font-size:1.4rem;font-weight:800}.pending-hint{color:var(--muted);margin-bottom:1rem;font-size:.9rem}.pending-row{flex-direction:column;gap:.5rem;display:flex}.pending-row .order-card{flex:1}.btn-listo.small{background:var(--azul);color:#fff;cursor:pointer;border:none;border-radius:10px;align-self:flex-end;padding:.55rem 1rem;font-size:.85rem;font-weight:700}.app-loading,.app-loading-screen{min-height:40vh;color:var(--muted);place-items:center;display:grid}.app-loading-screen{min-height:100vh}.app-error{text-align:center;color:var(--rojo);padding:2rem}.app-error button{background:var(--fucsia);color:#fff;cursor:pointer;border:none;border-radius:16px;margin-top:1rem;padding:.5rem 1rem}.app-shell{background:var(--bg);grid-template-columns:220px 1fr;min-height:100vh;display:grid}.main-content{padding:1.5rem 2rem;overflow-y:auto}@media (width<=760px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto}.mascot-area{display:none}.main-content{padding:1rem}}:root{--fucsia:#ff006e;--fucsia-dark:#c4005a;--fucsia-light:#ffe8f2;--amarillo:#ffd23f;--amarillo-text:#7a5f00;--amarillo-bg:#fff8e1;--rojo:#e53935;--rojo-bg:#ffebee;--verde:#3cb371;--verde-bg:#e8f8ee;--morado:#7b4fbf;--morado-bg:#f3eeff;--turquesa:#2ec4b6;--azul:#2563eb;--azul-dark:#1d4ed8;--morado-ola:#9b6b8f;--turquesa-mascota:#2ec4b6;--text:#2d2d2d;--muted:#888;--bg:#f4f5f7;--radius:14px;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh}button,input{font:inherit}
