:root{--espresso: #2e1b10;--crema: #f5ece0;--tarjeta: #fffbf3;--dorado: #d99a2b;--dorado-suave: #f3e3c3;--caramelo: #b85c16;--accent: #b85c16;--accent-ink: #f5ece0;--texto: #2e1b10;--texto-suave: #7a6a5c;--linea: #e5d9c9;--exito: #3e7c4f;--error: #b3402a;--radius: 12px;--font-display: "Archivo", system-ui, sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--crema);color:var(--texto);font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}input,select,textarea,button{font-family:inherit}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:16px;height:16px;cursor:pointer}h1,h2,h3{margin:0}.display{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:.02em}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--texto-suave)}.muted{color:var(--texto-suave);font-size:13px}.topbar{background:var(--espresso);color:var(--crema);padding:10px 20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:16px}.brand .star{color:var(--dorado)}.topbar select{background:#f5ece01f;color:var(--crema);border:1px solid rgba(245,236,224,.25);border-radius:8px;padding:6px 10px;font-size:13px}.topbar select option{background:#fff;color:var(--texto)}.topbar .spacer{flex:1}.nav{background:var(--tarjeta);border-bottom:1px solid var(--linea);padding:0 12px;display:flex;gap:4px;overflow-x:auto}.nav a{padding:11px 14px;color:var(--texto-suave);text-decoration:none;font-size:13.5px;font-weight:600;border-bottom:2px solid transparent;white-space:nowrap}.nav a.active{color:var(--accent);border-bottom-color:var(--accent)}.brand .brand-logo{height:26px;width:26px;border-radius:6px;object-fit:cover;background:#f5ece026}.page{max-width:960px;margin:0 auto;padding:24px 20px 48px;display:grid;gap:16px}.card{background:var(--tarjeta);border:1px solid var(--linea);border-radius:var(--radius);padding:18px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.stat .n{font-family:var(--font-display);font-weight:800;font-size:28px;font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--accent);color:var(--accent-ink);border:0;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:transparent;color:var(--texto-suave);border:1px solid var(--linea)}.btn.danger{background:var(--error)}.btn.small{padding:6px 12px;font-size:12.5px;border-radius:8px}.field{display:grid;gap:4px;align-content:start}.field input,.field textarea,.field select{background:#fff;border:1px solid var(--linea);border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.4;color:var(--texto);width:100%;height:42px}.field textarea{resize:vertical;height:auto;min-height:64px}.field select,.topbar select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%237a6a5c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px;padding-right:38px}.topbar select{background-color:#f5ece01f;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23f5ece0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");height:auto}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;align-items:end}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:700}.badge.ok{background:#e2efe5;color:var(--exito)}.badge.warn{background:var(--dorado-suave);color:var(--caramelo)}.badge.off{background:var(--linea);color:var(--texto-suave)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--texto-suave);padding:8px 10px;border-bottom:1px solid var(--linea)}.table td{padding:10px;border-bottom:1px solid var(--linea)}.table tr:last-child td{border-bottom:0}.error-text{color:var(--error);font-size:13px}.success-text{color:var(--exito);font-size:13px}.center-page{min-height:100dvh;display:grid;place-items:center;padding:20px}.auth-card{width:100%;max-width:380px;display:grid;gap:14px}.code-input{font-family:var(--font-display);font-size:38px;font-weight:800;letter-spacing:.35em;text-align:center;text-transform:uppercase;background:#fff;border:2px solid var(--texto);border-radius:var(--radius);padding:14px 8px 14px calc(8px + .35em);width:100%;max-width:420px;margin:0 auto;color:var(--texto);font-variant-numeric:tabular-nums}.code-input:focus{outline:none;border-color:var(--dorado)}.code-input::placeholder{color:var(--linea)}.result{text-align:center;display:grid;gap:10px;padding:28px;justify-items:center}.result .icon{font-size:42px;line-height:1}.result.ok{border-color:var(--exito);background:#eef5ef}.result.ok .icon{color:var(--exito)}.result.warn{border-color:var(--dorado);background:var(--dorado-suave)}.hours-grid{display:grid;gap:6px}.hours-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:40px}.hours-day{width:84px;font-size:13.5px;font-weight:600}.hours-closed{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--texto-suave)}.hours-row input[type=time]{background:#fff;border:1px solid var(--linea);border-radius:8px;padding:6px 8px;font-size:13.5px;color:var(--texto)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.photo{margin:0;display:grid;gap:6px;justify-items:start}.photo img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:10px;border:1px solid var(--linea)}.logo-preview{width:84px;height:84px;flex-shrink:0;border:1px solid var(--linea);border-radius:16px;background:var(--crema);display:flex;align-items:center;justify-content:center;overflow:hidden}.logo-preview img{width:100%;height:100%;object-fit:cover}.qr-preview{width:240px;max-width:100%;border:1px solid var(--linea);border-radius:var(--radius);background:#fff;padding:8px}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.action-card{display:flex;align-items:center;gap:14px;background:var(--tarjeta);border:1px solid var(--linea);border-radius:var(--radius);padding:16px;text-decoration:none;color:var(--texto);transition:border-color .15s,box-shadow .15s}.action-card:hover{border-color:var(--dorado);box-shadow:0 4px 14px #2e1b1014}.action-card>span:nth-child(2){display:grid;gap:2px;flex:1}.action-icon{width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;border-radius:10px;background:var(--dorado-suave);color:var(--caramelo);font-size:18px}.action-arrow{color:var(--texto-suave);font-size:22px;line-height:1}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--linea);background:#fff;color:var(--texto-suave);border-radius:999px;padding:6px 14px;font-size:13px;cursor:pointer}.chip.on{background:var(--espresso);border-color:var(--espresso);color:var(--crema)}.reward-thumb{width:44px;height:44px;object-fit:cover;border-radius:8px;border:1px solid var(--linea);flex-shrink:0}.reward-thumb.lg{width:72px;height:72px}.pw-wrap{position:relative}.pw-wrap input{padding-right:42px}.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;background:none;border:0;padding:6px;color:var(--texto-suave);cursor:pointer;border-radius:6px}.pw-toggle:hover{color:var(--texto);background:var(--crema)}.suggest-list{position:absolute;top:100%;left:0;right:0;z-index:30;margin-top:4px;background:#fff;border:1px solid var(--linea);border-radius:8px;max-height:220px;overflow-y:auto;box-shadow:0 8px 24px #2e1b1024}.suggest-item{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--linea);padding:9px 12px;font-size:13px;color:var(--texto);cursor:pointer}.suggest-item:last-child{border-bottom:0}.suggest-item:hover{background:var(--crema)}.chart-tip{position:absolute;top:0;background:var(--espresso);color:var(--crema);border-radius:8px;padding:6px 10px;font-size:12px;line-height:1.45;pointer-events:none;white-space:nowrap;box-shadow:0 4px 14px #2e1b1040}code.invite-link{display:block;background:var(--crema);border:1px dashed var(--dorado);border-radius:8px;padding:10px;font-size:12px;word-break:break-all;margin:8px 0}.invite-send{display:flex;flex-wrap:wrap;gap:8px}.invite-send a.btn{text-decoration:none}.invite-live{background:var(--crema);border:1px solid var(--linea);border-radius:10px;padding:12px;display:grid;gap:4px}.owner-cell{display:grid;gap:3px}.owner-cell .badge{justify-self:start}.owner-cell-note{font-size:12px}.accrue-how{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.accrue-step{display:flex;align-items:center;gap:10px;font-size:13.5px}.accrue-step-n{width:26px;height:26px;flex-shrink:0;border-radius:999px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:13px}.accrue-list{display:grid;gap:12px}.accrue-card{display:grid;gap:12px;padding:16px;border:1px solid var(--linea);border-radius:var(--radius);background:#fff}.accrue-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.accrue-card-code{font-family:var(--font-display);font-weight:800;font-size:30px;letter-spacing:.16em;color:var(--espresso)}.accrue-card .ago{font-size:12px;color:var(--texto-suave);margin-top:2px}.accrue-card-stars{font-size:15px;color:var(--texto-suave);white-space:nowrap}.accrue-card-stars strong{font-family:var(--font-display);font-size:26px;color:var(--caramelo)}.accrue-card-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--linea);padding-top:12px}.accrue-amount{display:grid;gap:4px}.accrue-amount>.muted{font-size:12px}.accrue-amount-input{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--linea);border-radius:10px;padding:4px 12px}.accrue-amount-input .peso{color:var(--texto-suave);font-weight:700;font-size:18px}.accrue-amount-input input{width:130px;border:0;outline:none;background:none;padding:8px 0;font-size:20px;font-weight:700;color:var(--texto)}.accrue-card-foot .btn{min-height:44px}.segmented{display:flex;gap:8px;flex-wrap:wrap}.segmented .seg{flex:1;min-width:160px;text-align:left;border:1px solid var(--linea);border-radius:var(--radius);background:#fff;padding:12px 14px;cursor:pointer}.segmented .seg.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.segmented .seg .seg-title{font-weight:700;font-size:14px}.segmented .seg .seg-desc{font-size:12px;color:var(--texto-suave);margin-top:2px}.color-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.color-row input[type=color]{width:46px;height:46px;border:1px solid var(--linea);border-radius:10px;background:#fff;padding:2px;cursor:pointer}.color-swatches{display:flex;gap:8px;flex-wrap:wrap}.color-swatches button{width:30px;height:30px;border-radius:8px;border:2px solid transparent;cursor:pointer}.color-swatches button.on{border-color:var(--texto)}.alias-box{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--dorado-suave);border:1px solid var(--dorado);border-radius:var(--radius);padding:12px 16px}.alias-box .alias{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:.04em;color:var(--espresso)}.rank-list{display:grid;gap:8px}.rank-row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px}.rank-pos{font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--texto-suave);text-align:center}.rank-row.top .rank-pos{color:var(--accent)}.rank-bar-track{background:var(--crema);border-radius:999px;height:22px;overflow:hidden}.rank-bar{height:100%;border-radius:999px;background:var(--accent);opacity:.35;min-width:3px}.rank-row.top .rank-bar{opacity:1}.rank-value{font-variant-numeric:tabular-nums;font-weight:700;font-size:14px;min-width:96px;text-align:right}.logo-cell{width:30px;height:30px;flex-shrink:0;border-radius:7px;border:1px dashed var(--linea);background:var(--crema);display:grid;place-items:center;overflow:hidden;cursor:pointer;padding:0;color:var(--texto-suave);font-size:16px;line-height:1}.logo-cell img{width:100%;height:100%;object-fit:cover}.logo-cell:hover{border-color:var(--accent)}.logo-cell:disabled{opacity:.6;cursor:default}.photo-picker{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid var(--linea);border-radius:var(--radius);background:#fff;padding:12px}.photo-picker-thumb{width:72px;height:72px;flex-shrink:0;border-radius:10px;border:1px dashed var(--linea);background:var(--crema);display:grid;place-items:center;overflow:hidden;cursor:pointer;padding:0;color:var(--texto-suave);font-size:26px;line-height:1}.photo-picker-thumb img{width:100%;height:100%;object-fit:cover}.photo-picker-thumb:hover{border-color:var(--accent)}.photo-picker-actions{display:grid;gap:6px}.next-pay{display:grid;gap:2px;background:var(--dorado-suave);border:1px solid var(--dorado);border-radius:var(--radius);padding:10px 14px;justify-items:start}.next-pay strong{font-family:var(--font-display);font-size:18px;color:var(--espresso)}.icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;border:1px solid rgba(245,236,224,.25);background:#f5ece01f;color:var(--crema);cursor:pointer;flex-shrink:0}.icon-btn:hover{background:#f5ece038}.modal-overlay{position:fixed;inset:0;z-index:60;background:#2e1b1080;display:grid;place-items:center;padding:20px}.modal-card{width:100%;max-width:460px;max-height:calc(100dvh - 40px);overflow-y:auto;background:var(--tarjeta);border:1px solid var(--linea);border-radius:var(--radius);padding:20px;display:grid;gap:14px;box-shadow:0 18px 50px #2e1b104d}.field input:focus,.field select:focus,.field textarea:focus,.accrue-amount-input:focus-within{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.btn{transition:filter .15s ease,transform .05s ease,border-color .15s ease,color .15s ease}.btn:hover:not(:disabled){filter:brightness(1.06)}.btn:active:not(:disabled){transform:translateY(1px)}.btn.ghost:hover:not(:disabled){filter:none;border-color:var(--accent);color:var(--texto)}.chip{transition:border-color .15s ease,background .15s ease,color .15s ease}.chip:hover:not(.on){border-color:var(--accent);color:var(--texto)}.segmented .seg{transition:border-color .15s ease,box-shadow .15s ease}.segmented .seg:hover:not(.on){border-color:var(--accent)}.table tbody tr{transition:background .12s ease}.table tbody tr:hover td{background:var(--crema)}.icon-btn{transition:background .15s ease}.table th{white-space:nowrap}.chart-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.chart-scroll>div{min-width:600px}@media(max-width:520px){.accrue-card-foot{flex-direction:column;align-items:stretch}.accrue-amount-input input,.accrue-card-foot .btn{width:100%}.segmented{flex-direction:column}.segmented .seg{min-width:0}}@media(max-width:680px){.topbar{padding:10px 14px;gap:8px 10px}.topbar-email{display:none}.topbar select{order:9;width:100%}}
