:root{--bg:#0b0b0b;--panel:#141414;--panel2:#1b1b1b;--line:#2b2b2b;--text:#f4f1eb;--muted:#a9a39b;--orange:#f47a1f;--cream:#f7f3eb;--danger:#de5d5d}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}.admin-header{max-width:1440px;margin:auto;padding:30px 34px 20px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.eyebrow,.step{font:700 14px/1 'Barlow Condensed',sans-serif;letter-spacing:.13em;color:var(--orange)}h1,h2{font-family:'Barlow Condensed',sans-serif;margin:0;text-transform:uppercase}h1{font-size:clamp(34px,5vw,58px)}h2{font-size:28px}.sub{color:var(--muted);margin:4px 0 0}.view-site,.primary,.secondary,.file-picker,.link-btn{font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.03em;text-decoration:none;cursor:pointer}.view-site{color:white;border:1px solid #555;padding:13px 18px}.layout{max-width:1440px;margin:0 auto;padding:26px 34px 120px;display:grid;grid-template-columns:minmax(320px,460px) minmax(0,1fr);gap:24px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px}.panel-title,.catalog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:22px}.hidden{display:none!important}form{display:grid;gap:16px}label{display:grid;gap:7px;font-size:13px;font-weight:600;color:#dcd7cf}input,select{width:100%;min-height:46px;border:1px solid #3a3a3a;background:#0d0d0d;color:white;border-radius:7px;padding:10px 12px;font:500 16px Inter,Arial,sans-serif;outline:none}input:focus,select:focus{border-color:var(--orange);box-shadow:0 0 0 2px rgba(244,122,31,.15)}small{color:var(--muted);font-weight:400;line-height:1.4}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.price-input{position:relative}.price-input span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--orange);font-weight:700}.price-input input{padding-left:28px}.photo-row{display:flex;align-items:center;gap:14px}.file-picker{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #555;padding:0 14px;border-radius:7px;color:white;white-space:nowrap}.file-picker input{display:none}.image-preview{width:88px;height:88px;background:#eee;border-radius:8px;overflow:hidden;display:grid;place-items:center;color:#777;font-size:11px;text-align:center}.image-preview img{width:100%;height:100%;object-fit:contain}.switches{display:grid;gap:10px;padding:6px 0}.switch-row{grid-template-columns:22px 1fr;align-items:center;gap:10px;font-weight:500}.switch-row input{width:18px;height:18px;min-height:0;accent-color:var(--orange)}.primary,.secondary{border:0;border-radius:7px;min-height:48px;padding:0 18px}.primary{background:var(--orange);color:#111}.primary.small{min-height:42px}.secondary{background:transparent;color:white;border:1px solid #4a4a4a}.link-btn{border:0;background:none;color:var(--orange);padding:4px}.catalog-head .search{display:flex;align-items:center;position:relative;width:min(280px,100%)}.search span{position:absolute;left:12px;color:#777}.search input{padding-left:34px}.product-list{display:grid;gap:10px}.product-row{display:grid;grid-template-columns:70px minmax(160px,1.6fr) minmax(110px,.8fr) 110px 90px 120px;align-items:center;gap:12px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#101010}.product-row.off{opacity:.5}.thumb{width:64px;height:64px;border-radius:7px;background:#f0ece5;overflow:hidden;display:grid;place-items:center;color:#888;font-size:10px;text-align:center}.thumb img{width:100%;height:100%;object-fit:contain}.prod-name{min-width:0}.prod-name strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prod-name span,.category,.status{color:var(--muted);font-size:12px}.row-price{font:700 18px 'Barlow Condensed',sans-serif;color:var(--orange)}.status.on{color:#75c777}.row-actions{display:flex;gap:8px;justify-content:flex-end}.icon-btn{border:1px solid #3c3c3c;background:#181818;color:white;border-radius:6px;min-width:42px;min-height:38px;cursor:pointer}.icon-btn.delete{color:#f08f8f}.publish-bar{position:fixed;bottom:0;left:0;right:0;background:#050505;border-top:1px solid #343434;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px max(34px,calc((100vw - 1440px)/2 + 34px));z-index:10}.publish-bar strong{display:block;font:700 18px 'Barlow Condensed',sans-serif;color:var(--orange)}.publish-bar span{color:var(--muted);font-size:12px}.publish-actions{display:flex;gap:10px}.toast{position:fixed;right:24px;bottom:94px;background:var(--cream);color:#111;padding:12px 16px;border-radius:8px;font-weight:600;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s;z-index:20}.toast.show{opacity:1;transform:translateY(0)}
@media(max-width:980px){.layout{grid-template-columns:1fr}.product-row{grid-template-columns:64px minmax(0,1fr) 100px 100px}.product-row .category,.product-row .status{display:none}}@media(max-width:640px){.admin-header,.layout{padding-left:16px;padding-right:16px}.admin-header{align-items:flex-start;flex-direction:column}.two-cols{grid-template-columns:1fr}.panel{padding:18px}.catalog-head{flex-direction:column}.catalog-head .search{width:100%}.product-row{grid-template-columns:58px minmax(0,1fr) 76px}.row-actions{grid-column:2/4;justify-content:flex-start}.thumb{width:56px;height:56px}.publish-bar{position:static;flex-direction:column;align-items:stretch;padding:16px}.publish-actions{display:grid;grid-template-columns:1fr 1fr}.layout{padding-bottom:26px}}

.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(430px,100%);background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:30px}.login-card h1{margin-bottom:4px}.login-form{margin-top:24px}.login-error{min-height:20px;color:#f08f8f;font-size:13px;margin:0}.header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.admin-user{color:var(--muted);font-size:12px}.logout{background:transparent;cursor:pointer}.login-screen.hidden{display:none!important}

.login-tech{margin:.35rem 0 0;color:#777;font-size:.78rem;line-height:1.35;overflow-wrap:anywhere}.login-tech strong{color:#444}


/* V6.7 · Administrador Club de Puntos */
.admin-tabs{max-width:1440px;margin:18px auto 0;padding:0 34px;display:flex;gap:8px}.admin-tab{border:1px solid #333;background:#121212;color:#aaa;border-radius:7px;padding:12px 20px;font:700 15px 'Barlow Condensed',sans-serif;cursor:pointer}.admin-tab.active{background:var(--orange);color:#111;border-color:var(--orange)}.admin-view{min-height:400px}.club-admin-wrap{max-width:1440px;margin:0 auto;padding:26px 34px 70px}.club-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}.club-kpis article{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px}.club-kpis span{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em}.club-kpis strong{display:block;color:var(--orange);font:800 30px 'Barlow Condensed',sans-serif;margin-top:5px}.club-kpis small{display:block}.club-admin-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.4fr);gap:22px;margin-bottom:22px}.client-results{display:grid;gap:6px;max-height:220px;overflow:auto}.client-hit,.club-client-row,.reward-admin-row{border:1px solid var(--line);background:#101010;border-radius:8px;padding:11px 12px}.client-hit{cursor:pointer;display:flex;justify-content:space-between;gap:10px}.client-hit:hover{border-color:var(--orange)}.client-hit small,.club-client-row small{color:var(--muted)}.selected-client{border:1px solid #5c3519;background:#17100b;border-radius:10px;padding:16px}.selected-client strong{font:800 28px 'Barlow Condensed',sans-serif;color:var(--orange)}.operation-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:4px}.op-tab{border:1px solid #393939;background:#111;color:#aaa;padding:10px;border-radius:6px;font:700 13px 'Barlow Condensed',sans-serif;cursor:pointer}.op-tab.active{border-color:var(--orange);color:white}.points-preview{background:#0b0b0b;border:1px solid #2f2f2f;border-radius:7px;padding:12px;color:var(--muted)}.points-preview strong{color:var(--orange)}.club-client-list{display:grid;gap:7px;margin-top:12px;max-height:620px;overflow:auto}.club-client-row{display:grid;grid-template-columns:minmax(0,1.4fr) 120px 90px;gap:10px;align-items:center}.club-client-row .balance{color:var(--orange);font:700 19px 'Barlow Condensed',sans-serif;text-align:right}.club-client-row button{justify-self:end}.search.wide{width:100%;margin-top:14px}.secondary.compact{min-height:38px;padding:0 12px}.new-client-wrap,.reward-form-wrap{background:#0e0e0e;border:1px solid #303030;border-radius:9px;padding:14px;margin:0 0 14px}.form-actions{display:flex;gap:8px}.rewards-admin-panel{margin-bottom:22px}.reward-form-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:10px}.reward-admin-list{display:grid;gap:7px}.reward-admin-row{display:grid;grid-template-columns:minmax(0,1.5fr) 120px 100px 90px 150px;gap:12px;align-items:center}.reward-admin-row .pts{font:700 20px 'Barlow Condensed',sans-serif;color:var(--orange)}.migration-panel{display:flex;align-items:center;justify-content:space-between;gap:24px}.migration-panel p{color:var(--muted);max-width:740px;line-height:1.45}.migration-actions{display:flex;gap:8px;flex:0 0 auto}.migration-status{font-size:12px!important}.club-op-form{margin-top:0}
@media(max-width:1000px){.club-kpis{grid-template-columns:repeat(2,1fr)}.club-admin-grid{grid-template-columns:1fr}.reward-form-grid{grid-template-columns:1fr 1fr}.migration-panel{align-items:stretch;flex-direction:column}.migration-actions{flex-wrap:wrap}}
@media(max-width:650px){.admin-tabs,.club-admin-wrap{padding-left:16px;padding-right:16px}.admin-tabs{overflow:auto}.club-kpis{grid-template-columns:1fr 1fr}.club-client-row{grid-template-columns:1fr 90px}.club-client-row button{grid-column:1/3;justify-self:start}.reward-admin-row{grid-template-columns:1fr 90px}.reward-admin-row>*:nth-child(3),.reward-admin-row>*:nth-child(4){display:none}.reward-admin-row .row-actions{grid-column:1/3}.reward-form-grid{grid-template-columns:1fr}.migration-actions{display:grid}.publish-bar{display:none}}

/* V6.8 · Historial y correcciones del Club */
.club-history-wrap{margin-top:14px;border:1px solid #303030;background:#0d0d0d;border-radius:10px;padding:14px}.history-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.history-head h3{margin:2px 0 0;font:700 20px 'Barlow Condensed',sans-serif;text-transform:uppercase}.club-history{display:grid;gap:7px;max-height:340px;overflow:auto}.history-row{display:grid;grid-template-columns:90px minmax(0,1fr) 100px 84px;gap:10px;align-items:center;border:1px solid #262626;background:#111;border-radius:8px;padding:10px}.history-row.void{opacity:.55}.history-date{font-size:11px;color:var(--muted);line-height:1.35}.history-detail b{display:block;font-size:13px}.history-detail small{display:block}.history-points{font:700 18px 'Barlow Condensed',sans-serif;text-align:right}.history-points.plus{color:#75c777}.history-points.minus{color:#f08f8f}.undo-move{min-height:34px;font-size:11px}.history-badge{font-size:10px;color:#d8a06d;border:1px solid #5c3519;border-radius:999px;padding:3px 7px;display:inline-block;margin-top:4px}.history-note{color:#777;font-size:10px;display:block;margin-top:3px}
@media(max-width:650px){.history-row{grid-template-columns:72px minmax(0,1fr) 76px}.history-row .undo-move{grid-column:2/4;justify-self:start}.history-head{align-items:flex-start}.history-head .secondary{min-width:auto}}


/* V6.9.3 · Datos completos del cliente */
.selected-client{align-items:flex-start!important}.selected-client-main{min-width:0;flex:1}.client-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin-top:12px}.client-data-grid span{display:grid;gap:2px;color:#d1cbc4;font-size:12px}.client-data-grid b{color:#817a73;font-size:9px;letter-spacing:.09em;text-transform:uppercase}@media(max-width:720px){.client-data-grid{grid-template-columns:1fr}.selected-client{flex-direction:column}.selected-client>strong{margin-top:12px}}


/* V6.9.4 · Rentabilidad interna de premios Wine Points */
.reward-form-grid{grid-template-columns:2fr 1fr 1.2fr 1fr 1fr}
.reward-cost-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:center;background:#0b0b0b;border:1px solid #2f2f2f;border-radius:8px;padding:12px;margin:2px 0 12px}
.reward-cost-preview>div{display:grid;gap:2px}.reward-cost-preview small,.reward-economics small{color:#817a73;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.reward-cost-preview strong{color:#fdfada;font:700 20px 'Barlow Condensed',sans-serif}
.reward-cost-preview>span:not(.reward-cost-badge){color:var(--muted);font-size:12px;grid-column:1/-1}
.reward-cost-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;border-radius:999px;padding:4px 8px;font:700 10px 'Inter',sans-serif;letter-spacing:.04em;white-space:nowrap}
.reward-cost-badge.good{color:#8ee6a7;background:#102417;border:1px solid #255f36}.reward-cost-badge.warn{color:#ffd68a;background:#261d0d;border:1px solid #6f5424}.reward-cost-badge.bad{color:#ff9e9e;background:#291111;border:1px solid #712d2d}.reward-cost-badge.neutral{color:#aaa;background:#171717;border:1px solid #383838}
.reward-admin-row{grid-template-columns:minmax(0,1.5fr) 120px 95px 125px 90px 75px 150px}.reward-economics{display:grid;gap:2px}.reward-economics b{font:700 16px 'Barlow Condensed',sans-serif}
@media(max-width:1000px){.reward-form-grid{grid-template-columns:1fr 1fr 1fr}.reward-admin-row{grid-template-columns:minmax(0,1.5fr) 120px 95px 125px 120px}.reward-admin-row>*:nth-child(6){display:none}.reward-admin-row .row-actions{grid-column:auto}}
@media(max-width:650px){.reward-form-grid{grid-template-columns:1fr}.reward-cost-preview{grid-template-columns:1fr 1fr}.reward-cost-preview .reward-cost-badge{grid-column:1/-1}.reward-admin-row{grid-template-columns:1fr 90px}.reward-admin-row>*:nth-child(3),.reward-admin-row>*:nth-child(4),.reward-admin-row>*:nth-child(5),.reward-admin-row>*:nth-child(6){display:none}.reward-admin-row .row-actions{grid-column:1/3}}

/* V6.9.7 · imágenes administrables */
.image-upload-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-2px 0 14px;padding:12px;border:1px dashed #3a3a3a;border-radius:8px;background:#0b0b0b}
.image-upload-box span,.media-config .muted,#mediaConfigStatus{font-size:12px;color:var(--muted)}
.media-panel{margin-bottom:18px}.media-config{border-top:1px solid #242424;padding-top:16px;margin-top:12px}
.media-config .form-grid{grid-template-columns:1fr 1fr}.media-config .primary{margin-top:8px}
@media(max-width:650px){.media-config .form-grid{grid-template-columns:1fr}.image-upload-box .secondary{width:100%}}

/* V6.9.8 · imágenes de premios */
.reward-image-preview{width:100%;max-width:280px;aspect-ratio:1/1;border:1px solid #2f2f2f;border-radius:10px;overflow:hidden;background:#111;margin:0 0 14px}
.reward-image-preview img{width:100%;height:100%;object-fit:cover;display:block}
