:root{--ink:#151618;--muted:#65676b;--beige:#f6f3ed;--paper:#fff;--gold:#b9935d;--line:#e3e1dc;--panel:#f7f7f6;--danger:#9b2828;--green:#17815e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--beige);color:var(--ink);font:15px/1.45 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-height:100dvh}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #d0a86f;outline-offset:2px}button:disabled{opacity:.48;cursor:not-allowed}.nav{min-height:72px;background:#121315;color:white;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(18px,calc((100vw - 1170px)/2));position:sticky;top:0;z-index:8;box-shadow:0 8px 26px #0002}.logo{text-decoration:none;display:grid;line-height:1}.logo strong{font:600 24px Georgia,serif;letter-spacing:.05em;color:#eee5d7}.logo small{margin-top:5px;color:#c6a15b;font-size:8px;letter-spacing:.28em}.nav-back{border:1px solid #ffffff3b;text-decoration:none;border-radius:11px;padding:10px 12px;font-size:12px;font-weight:700}.app-shell{width:min(1170px,calc(100% - 32px));margin:0 auto;padding:24px 0 55px;min-height:70dvh}.foot{text-align:center;color:#858180;font-size:10px;letter-spacing:.12em;padding:20px;border-top:1px solid #dedbd6}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.section-kicker{font-weight:800;font-size:11px;letter-spacing:.14em;color:#9c7850;text-transform:uppercase}.hero-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:10px 0 19px}.hero-head h1,.auth-copy h1,.admin-shell h1{font-size:clamp(29px,5.5vw,48px);line-height:1.04;letter-spacing:-.047em;margin:5px 0 10px;font-weight:850}.hero-head p,.muted{color:var(--muted)}.hero-head p{margin:0}.badge{display:inline-flex;gap:7px;align-items:center;background:#e8efe9;color:#217049;border-radius:80px;padding:7px 12px;font-size:11px;font-weight:850;white-space:nowrap}.badge.warn{background:#f5ece3;color:#956e35}.btn{border:1px solid #c8c8c8;color:var(--ink);background:white;padding:11px 16px;border-radius:12px;font-weight:750;text-decoration:none;display:inline-flex;align-items:center;gap:7px;justify-content:center;min-height:43px}.btn.primary{background:#171819;color:#fff;border-color:#171819}.btn.gold{background:#bd9b6a;color:#0d0d0d;border-color:#bd9b6a}.btn.soft{background:#f4f2ef;border-color:#e4e1dd}.btn.danger{border-color:#e2b4ad;color:#9b2828;background:#fff8f8}.btn.small{font-size:12px;padding:7px 10px;min-height:36px}.btn.wide{width:100%}.btnrow{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.space{display:flex;justify-content:space-between;align-items:center;gap:12px}.notice{background:#fff9ed;border:1px solid #ecdcc2;border-radius:12px;color:#735732;padding:12px 14px;font-size:12px;line-height:1.45}.notice.critical{background:#fff0f0;border-color:#f0c9c9;color:#9b2828}.notice.good{background:#eef7ef;border-color:#c8e9d5;color:#246744}.paper{background:#fff;border:1px solid var(--line);border-radius:20px;padding:21px;box-shadow:0 9px 24px #1c1c1b09}.paper h2{margin:0 0 16px;font-size:20px;letter-spacing:-.03em}.paper h3{margin:12px 0;font-size:15px}.layout-two{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.auth-layout{display:grid;grid-template-columns:1.1fr .8fr;gap:24px;margin-top:clamp(40px,7vw,110px);align-items:start}.auth-copy{padding-top:20px}.auth-copy h1{font-size:clamp(44px,6.4vw,72px)}.auth-copy p{max-width:470px;color:#666;line-height:1.55}.auth-perks{display:grid;gap:10px;margin-top:27px}.auth-perks>div{display:flex;gap:9px;align-items:center;font-size:14px;color:#484747}.auth-perks i{font-style:normal;color:#987340}.auth-card{padding:29px;border-radius:22px}.auth-card h2{font-size:26px;margin:0}.auth-card p{font-size:13px;color:#727272}.form-stack{display:grid;gap:14px}.form-stack label,.field{display:grid;gap:5px;font-size:12px;font-weight:760;color:#56585a}.form-stack input,.form-stack select,.form-stack textarea,.field input,.field select{width:100%;border:1px solid #d8d9d6;background:white;border-radius:11px;padding:12px 13px;color:#222;min-height:44px}.form-stack input:focus,.field input:focus{border-color:#bd9b6a;outline:2px solid #ead6b8}.helper{font-size:12px;color:#727477;margin:4px 0}.error{color:#ad3232;background:#fff0f0;border:1px solid #efcaca;padding:11px;border-radius:11px;font-size:12px;margin:9px 0}.hidden,[hidden]{display:none!important}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:22px 0 18px}.step{background:#fff;border:1px solid #dfdedb;border-radius:14px;padding:12px 10px;font-size:12px;font-weight:780;text-align:left;display:flex;align-items:center;justify-content:flex-start;gap:9px}.step b{display:grid;place-items:center;background:#eeece9;border-radius:50%;width:25px;height:25px;flex:none}.step.active{background:#161719;color:white;border-color:#161719}.step.active b{background:#c6a15b;color:#101011}.step.done{border-color:#d5bc96}.controls{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-top:19px;flex-wrap:wrap}.pill{background:#f5f4f1;border:1px solid #e3e1de;border-radius:99px;font-size:12px;padding:7px 10px;font-weight:700}.muted-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fields-grid .full{grid-column:1/-1}.avatar{width:120px;height:95px;border:1px dashed #c9c6be;border-radius:10px;background:#f5f4f1;object-fit:contain}.inline-note{padding:14px;border-radius:13px;background:#f5f4f1;font-size:12px;color:#555}.settings-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.settings-row .field input,.settings-row .field select{max-width:100%}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.choice{border:1px solid #d8d8d4;border-radius:15px;padding:14px 15px;display:flex;align-items:flex-start;gap:11px;cursor:pointer;background:#fff}.choice input{accent-color:#161718;width:18px;height:18px;flex:none;margin:3px 0 0}.choice strong{font-size:13px}.choice small{display:block;color:#777;font-size:11px;margin-top:4px}.choice:has(input:checked){border-color:#b18c57;background:#faf6ee;box-shadow:inset 0 0 0 1px #b18c57}.filterbar{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(120px,1fr);gap:10px;margin:15px 0}.filterbar input,.filterbar select{border:1px solid #dbdbd7;border-radius:12px;min-height:44px;padding:10px 12px;width:100%;background:white}.product-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-items:stretch;margin:15px 0}.product-tile{display:flex;gap:12px;background:white;border:1px solid #e0deda;border-radius:15px;padding:10px;min-height:116px;position:relative}.product-tile:has(.pick:checked){border-color:#bfa47c;background:#fffdfa}.product-tile img{width:95px;height:94px;object-fit:contain;background:#141414;border-radius:10px;flex:none}.product-tile .meta{display:flex;flex-direction:column;align-items:flex-start;min-width:0;flex:1}.product-tile .brand{font-size:9px;font-weight:850;color:#969087;letter-spacing:.05em}.product-tile .name{font-size:13px;line-height:1.24;font-weight:780;margin:3px 0 8px;overflow-wrap:anywhere}.product-tile .stock{font-size:10px;color:#8c8a85;margin-top:auto;font-weight:750}.product-tile .stock.out{color:#b03131}.product-tile .stock.ok{color:#17815e}.product-tile .pick{width:20px;height:20px;margin:3px 2px 0 0;accent-color:#161718}.product-tile .price-field{margin-top:auto;display:flex;gap:7px;align-items:center;width:100%}.product-tile .price-field input{border:1px solid #dededb;border-radius:9px;min-width:0;width:100%;padding:9px 7px;font-size:13px;font-weight:740;background:#fff}.product-tile .price-field small{color:#777;font-size:9px}.product-tile .price-field .reset{border:0;background:transparent;color:#a17d52;text-decoration:underline;padding:4px;font-size:10px}.price-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:17px 0}.metric{padding:18px;border:1px solid #e5e1dc;border-radius:14px;background:#fff}.metric strong{display:block;font-size:25px;letter-spacing:-.04em}.metric small{font-size:11px;color:#777}.download-panel{background:#151617;color:white;border-radius:18px;padding:20px}.download-panel h2{color:white}.download-panel p{color:#d1d1d1;font-size:13px}.download-panel .btn{background:#c6a15b;color:#161616;border-color:#c6a15b}.paper-preview{width:min(100%,570px);background:#fff;box-shadow:0 15px 42px #0002;margin:12px auto;border:1px solid #e0ded9;padding:24px;aspect-ratio:595 / 842;position:relative;color:#141515}.preview-top{display:flex;justify-content:space-between;gap:12px;font-size:9px;font-weight:800}.preview-title{font-size:clamp(32px,6.5vw,57px);font-weight:900;line-height:1.06;letter-spacing:-.05em;margin:19px 0 11px;white-space:normal;overflow-wrap:anywhere}.preview-rule{height:1px;background:#121212;margin-bottom:6px}.preview-sub{display:flex;justify-content:space-between;gap:8px;font-size:9px;font-weight:800}.preview-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,1fr);gap:12px 11px;margin-top:15px;height:calc(100% - 190px)}.preview-card{min-width:0;display:flex;flex-direction:column}.preview-photo{height:calc(100% - 62px);min-height:0;background:#101010;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.preview-photo img{width:100%;height:100%;object-fit:contain}.stock-badge{position:absolute;left:5px;top:5px;background:#f4f0e8;color:#181818;padding:3px 4px;font-size:8px;font-weight:900}.preview-card small{font-size:8px;font-weight:900;color:#888;line-height:1.25;margin-top:4px}.preview-card strong{font-size:10px;font-weight:800;line-height:1.12;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:3px 0 4px}.preview-bar{height:18px;background:#111;color:#fff;padding:1px 5px;font-size:10px;font-weight:900;margin-top:auto;display:flex;align-items:center}.preview-foot{position:absolute;left:24px;right:24px;bottom:17px;border-top:1px solid #181818;display:flex;align-items:center;justify-content:space-between;padding-top:7px;font-size:8px;font-weight:800;gap:15px}.preview-cover{text-align:left;display:flex;flex-direction:column;height:100%;gap:14px}.preview-cover h2{font-size:clamp(32px,8vw,57px);margin:32px 0 0;line-height:.98;letter-spacing:-.05em}.preview-cover h2 span{display:block}.preview-cover .subtitle{font-size:13px;font-weight:700}.cover-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cover-gallery img{width:100%;aspect-ratio:1.05;object-fit:contain;background:#131313}.cover-contact{margin-top:auto;padding:16px;background:#141515;color:#fff;border-radius:12px;font-size:12px}.cover-contact strong{display:block;font-size:20px;margin:8px 0}.cover-contact small{font-size:10px;color:#d5bd93}.preview-nav{display:flex;justify-content:center;align-items:center;gap:12px;margin:10px auto 20px}.page-counter{color:#747474;font-size:13px}.saving{color:#686868;font-size:11px}.saving.good{color:#15845b}.admin-shell{max-width:1040px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0}.users-list{display:grid;gap:10px}.user-item{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e8e5df;border-radius:14px;padding:12px 14px}.user-item strong,.user-item small{display:block}.user-item small{color:#888;margin-top:4px}.user-item .btnrow{justify-content:flex-end}.loader{width:28px;height:28px;border:3px solid #e3dccf;border-top-color:#121212;border-radius:50%;animation:spin .8s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}.loading-box{text-align:center;padding:90px 12px;color:#8a8580}.toast{position:fixed;bottom:20px;right:20px;background:#161718;color:white;border-radius:12px;padding:12px 18px;z-index:30;box-shadow:0 6px 22px #0003;max-width:min(400px,calc(100% - 20px))}
@media(max-width:800px){.layout-two,.auth-layout,.admin-grid{grid-template-columns:1fr}.auth-layout{margin-top:20px}.auth-copy{padding:0}.auth-copy h1{font-size:45px}.hero-head{align-items:start}.product-list{grid-template-columns:1fr}.steps{gap:5px}.step{font-size:10px;gap:5px;padding:9px 7px}.step b{width:21px;height:21px}.fields-grid{grid-template-columns:1fr}.settings-row{grid-template-columns:1fr 1fr 1fr}.paper{padding:17px}.paper-preview{padding:12px}.preview-cards{gap:7px 5px;height:calc(100% - 150px)}.preview-card strong{font-size:7px}.preview-card small{font-size:6px}.preview-sub,.preview-top{font-size:6px}.preview-foot{left:12px;right:12px;bottom:10px;font-size:6px}.preview-title{font-size:clamp(23px,7vw,39px)}.preview-photo{height:calc(100% - 43px)}.preview-bar{height:13px;font-size:8px}.preview-cover h2{font-size:clamp(31px,9vw,48px);margin:23px 0 0}.preview-cover .subtitle{font-size:10px}.cover-contact{padding:12px}}
@media(max-width:420px){.nav{min-height:64px}.logo strong{font-size:18px}.nav-back{font-size:10px;padding:8px}.app-shell{width:calc(100% - 22px);padding-top:17px}.choice-grid{grid-template-columns:1fr}.hero-head h1{font-size:32px}.hero-head .badge{font-size:9px}.settings-row{grid-template-columns:1fr}.controls{justify-content:stretch}.controls .btn{flex:1}.user-item{align-items:flex-start;flex-direction:column}.user-item .btnrow{justify-content:flex-start}}
/* Reserve a clean footer zone in the on-screen cover preview. */
.preview-cover{padding-bottom:24px}


/* Personalización compartida con el PDF. */
.paper-preview.personalized{container-type:inline-size;background:var(--catalog-bg);color:var(--catalog-ink)}
.personalized .preview-rule{background:var(--catalog-accent)}
.personalized .preview-foot{border-color:var(--catalog-accent)}
.personalized .subtitle,.personalized .cover-contact small{color:var(--catalog-accent)}
.personalized .preview-card small{color:var(--catalog-muted)}
.catalog-logo{object-fit:contain;max-width:100%;min-height:0;max-height:110px;margin-top:10px}
.form-stack select{min-height:44px;border:1px solid #dbdbd7;border-radius:10px;padding:10px;background:#fff;width:100%}
.form-stack input[type=color]{width:100%;height:44px;padding:4px;cursor:pointer}
.personalized .preview-cover{gap:10px}
.personalized .preview-cover h2{margin-top:14px}
