
:root{--navy:#1B3A4F;--teal:#285F6B;--lime:#C2DE1A;--cyan:#00C1DE;--orange:#F26A1B;--magenta:#EE1458;--gray:#F1F1F1;
--ink:#1B3A4F;--muted:#5C6E78;--line:#E2E6E3;--bg:#F1F1F1;--card:#fff;--ok:#2E9E5B;--warn:#E8A317;--bad:#D93B3B;
--wave:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='60'%3E%3Cpath d='M-10 30 Q20 -5 50 30 T110 30 T170 30' fill='none' stroke='%2300C1DE' stroke-width='12' stroke-linecap='round'/%3E%3C/svg%3E");
--geo:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Crect width='80' height='80' fill='%23F26A1B'/%3E%3Cpath d='M0 0h40v40A40 40 0 0 1 0 0z' fill='%23EE1458'/%3E%3Ccircle cx='60' cy='20' r='14' fill='%231B3A4F'/%3E%3Cpath d='M40 80a40 40 0 0 1 40-40v40z' fill='%23fff'/%3E%3Crect x='0' y='40' width='40' height='40' fill='%23EE1458'/%3E%3Ccircle cx='20' cy='60' r='8' fill='%23fff'/%3E%3C/svg%3E");
--stripes:linear-gradient(90deg,var(--navy) 0 16.6%,var(--teal) 0 33.3%,var(--lime) 0 50%,var(--cyan) 0 66.6%,var(--orange) 0 83.3%,var(--magenta) 0)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Barlow,"DIN Alternate","DIN",Arial,sans-serif;font-size:15px;line-height:1.45}
h1,h2,h3,.bebas{font-family:"Bebas Neue",Impact,sans-serif;letter-spacing:1px;font-weight:400;margin:0}
h2{font-size:34px}h3{font-size:24px;color:var(--magenta);letter-spacing:2px}
button{font-family:inherit;cursor:pointer}
input,select,textarea{font-family:inherit;font-size:15px;padding:10px 12px;border:2px solid var(--line);border-radius:12px;width:100%;background:#fff;color:var(--ink);transition:border-color .15s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cyan)}
textarea{min-height:64px;resize:vertical}
label{display:block;font-size:12px;font-weight:700;color:var(--teal);margin-bottom:4px;text-transform:uppercase;letter-spacing:.6px}
/* marca */
.wm{font-family:Unbounded,"Bebas Neue",sans-serif;font-weight:700;line-height:.98;letter-spacing:-.5px;text-transform:uppercase}
.wm span{display:block;white-space:nowrap}
.u{display:inline-block;width:1.05em;height:.5em;border:.15em solid currentColor;border-top:0;border-radius:0 0 .2em .2em;margin:0 .03em;vertical-align:baseline}
.mono{display:inline-flex;flex-direction:column;align-items:center;font-family:Unbounded,sans-serif;font-weight:700;line-height:.9}
.mono b{font-weight:700}
.mono .u{width:1.5em;height:.7em;margin-top:.12em}
.top{background:var(--gray);padding:14px 20px 14px 120px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;position:sticky;top:0;z-index:20;overflow:hidden;border-bottom:6px solid transparent;border-image:var(--stripes) 1}
.corner{position:absolute;left:-60px;top:-70px;width:160px;height:160px;border-radius:50%;background:var(--orange);display:flex;align-items:flex-end;justify-content:flex-end;padding:0 22px 26px 0}
.corner .mono{color:var(--magenta);font-size:20px}
.top .wm{font-size:24px;color:var(--magenta)}
.switch{margin-left:auto;display:flex;background:var(--navy);border-radius:999px;padding:5px}
.switch button{border:0;background:transparent;color:#fff;padding:9px 18px;border-radius:999px;font-weight:700}
.switch button.on{background:var(--lime);color:var(--navy)}
@media(max-width:640px){.top{padding-left:88px}.corner{left:-80px}.top .wm{font-size:18px}.switch{margin-left:0}}
.wrap{max-width:1180px;margin:0 auto;padding:22px 16px 40px}
.card{background:var(--card);border-radius:22px;padding:20px;border:0;margin-bottom:16px;box-shadow:0 1px 0 rgba(27,58,79,.06)}
.grid{display:grid;gap:12px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){.g2,.g3,.g4{grid-template-columns:1fr}}
.formlayout{display:grid;grid-template-columns:1fr 350px;gap:16px;align-items:start}
@media(max-width:900px){.formlayout{grid-template-columns:1fr}}
.sticky{position:sticky;top:96px}
.hero{display:grid;grid-template-columns:1fr 200px;padding:0;overflow:hidden;background:#fff}
.hero .in{padding:24px}
.hero .side{background:var(--geo);background-size:80px}
.hero .wm{font-size:38px;color:var(--magenta);margin:6px 0 12px}
.eyebrow{font-size:13px;letter-spacing:3px;color:var(--muted);font-weight:600}
.incl{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.incl span{background:var(--gray);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}
@media(max-width:640px){.hero{grid-template-columns:1fr}.hero .side{height:70px}.hero .wm{font-size:28px}}
.sec-title{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.num{width:34px;height:34px;border-radius:50%;background:var(--magenta);color:#fff;display:grid;place-items:center;font-family:"Bebas Neue";font-size:20px;flex:none}
.radio-row{display:flex;gap:10px;flex-wrap:wrap}
.opt{border:2px solid var(--line);border-radius:18px;padding:12px 16px;cursor:pointer;background:#fff;flex:1;min-width:150px;transition:all .15s}
.opt:hover{border-color:var(--cyan)}
.opt.on{border-color:var(--magenta);background:#FFF0F5;box-shadow:inset 0 0 0 1px var(--magenta)}
.opt b{display:block}
.modo{display:flex;align-items:center;gap:14px}
.dot{width:92px;height:92px;border-radius:50%;background:var(--lime);color:#fff;display:grid;place-items:center;font-weight:800;font-size:19px;flex:none;text-shadow:0 1px 0 rgba(0,0,0,.08)}
.opt.on .dot{background:var(--magenta)}
.modo .k{font-family:"Bebas Neue";font-size:26px;color:var(--magenta);letter-spacing:1.5px;line-height:1}
.cat{margin-bottom:16px}
.cat-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cat-h .bebas{font-size:24px;letter-spacing:3px}
.count{font-weight:800;font-size:13px;padding:4px 12px;border-radius:999px;background:var(--gray)}
.count.full{background:var(--lime);color:var(--navy)}
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chip{border:2px solid var(--line);background:#fff;border-radius:999px;padding:6px 13px;font-size:14px;color:var(--ink);font-weight:500}
.chip.on{color:#fff;border-color:transparent;font-weight:700}
.chip:disabled{opacity:.35;cursor:not-allowed}
.chip.out{text-decoration:line-through;opacity:.35}
.order{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.order:before{content:"";position:absolute;inset:0 0 auto 0;height:8px;background:var(--stripes)}
.order h3{color:var(--lime);font-size:30px}
.order .note{color:#BFD0D8}
.sum-row{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:14px}
.sum-total{border-top:2px solid rgba(255,255,255,.25);margin-top:8px;padding-top:12px;font-family:"Bebas Neue";font-size:34px;letter-spacing:1px}
.order .sum-total span:last-child{color:var(--lime)}
.email .sum-total{border-top-color:var(--navy)}
.btn{border:0;border-radius:999px;padding:12px 20px;font-weight:800;background:var(--magenta);color:#fff;letter-spacing:.3px}
.btn:hover{filter:brightness(1.07)}
.btn.sec{background:var(--gray);color:var(--navy)}
.btn.lime{background:var(--lime);color:var(--navy)}
.btn.teal{background:var(--teal);color:#fff}
.btn.sm{padding:7px 13px;font-size:13px}
.btn:disabled{opacity:.4;cursor:not-allowed}
.note{font-size:13px;color:var(--muted)}
.tag{display:inline-block;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:#FFF3D6;color:#8A5A00}
.prompt{background:var(--navy);color:#fff;border-radius:16px;padding:16px;font-size:13.5px;white-space:pre-wrap;font-family:ui-monospace,Menlo,monospace;border-left:8px solid var(--cyan)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.tabs button{border:2px solid transparent;background:#fff;padding:9px 16px;border-radius:999px;font-weight:700;color:var(--navy)}
.tabs button:hover{border-color:var(--cyan)}
.tabs button.on{background:var(--magenta);color:#fff}
.kpi{border-radius:22px;padding:18px;color:#fff;position:relative;overflow:hidden;min-height:118px}
.kpi .v{font-family:"Bebas Neue";font-size:46px;line-height:1;position:relative}
.kpi .l{font-size:13px;font-weight:700;position:relative;opacity:.95}
.kpi .mono{position:absolute;right:14px;bottom:10px;font-size:22px;opacity:.9}
.k-cyan{background:var(--cyan);color:var(--navy)}.k-cyan .mono{color:#fff}
.k-magenta{background:var(--magenta)}.k-magenta .mono{color:var(--lime)}
.k-orange{background:var(--orange)}.k-orange .mono{color:var(--magenta)}
.k-lime{background:var(--lime);color:var(--navy)}.k-lime .mono{color:var(--orange)}
.k-teal{background:var(--teal)}.k-teal .mono{color:var(--lime)}
.k-navy{background:var(--navy)}.k-navy .mono{color:var(--magenta)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;font-family:"Bebas Neue";font-size:17px;letter-spacing:1.5px;color:var(--teal);padding:8px;border-bottom:3px solid var(--navy);white-space:nowrap;font-weight:400}
td{padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:middle}
tr.click:hover{background:#F2FBFD;cursor:pointer}
.tbl{overflow-x:auto}
.pill{display:inline-block;font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;border:0;white-space:nowrap}
.p-ok{background:var(--lime);color:var(--navy)}.p-wait{background:#FFE3CF;color:#A2440A}.p-no{background:#FFD9E5;color:#B00D41}.p-na{background:var(--gray);color:var(--muted)}
.alert{display:flex;gap:10px;align-items:center;padding:11px 14px;border-radius:14px;background:#FFF1E6;margin-bottom:8px;font-size:14px;border-left:6px solid var(--orange)}
.alert.red{background:#FFE6EE;border-left-color:var(--magenta)}
.modal-bg{position:fixed;inset:0;background:rgba(27,58,79,.6);display:none;align-items:flex-start;justify-content:center;z-index:50;overflow-y:auto;padding:30px 12px}
.modal-bg.on{display:flex}
.modal{background:#fff;border-radius:24px;max-width:700px;width:100%;padding:26px 24px 22px;position:relative;overflow:hidden}
.modal:before{content:"";position:absolute;inset:0 0 auto 0;height:8px;background:var(--stripes)}
.modal h2{color:var(--magenta)}
.x{position:absolute;right:14px;top:14px;border:0;background:var(--gray);width:34px;height:34px;border-radius:50%;font-size:22px;line-height:1;color:var(--navy)}
.email{border:2px solid var(--line);border-radius:18px;overflow:hidden}
.email .eh{background:var(--orange);color:#fff;padding:18px 20px;display:flex;align-items:center;gap:14px}
.email .eh .mono{font-size:18px;color:var(--magenta)}
.email .eh.navy{background:var(--navy)}.email .eh.navy .mono{color:var(--lime)}
.email .eb{padding:18px}
.email .ef{background:var(--wave) repeat-x center/80px 40px var(--gray);height:40px}
.kv{display:grid;grid-template-columns:140px 1fr;gap:5px 10px;font-size:14px}
.kv div:nth-child(odd){color:var(--teal);font-weight:700}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.price-in{width:100px;padding:7px 9px}
.diff-up{color:var(--ok);font-weight:800}.diff-down{color:var(--bad);font-weight:800}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--magenta);color:#fff;padding:12px 20px;border-radius:999px;font-weight:700;display:none;z-index:60}
.banner{background:var(--navy);color:#fff;text-align:center;font-size:12px;font-weight:600;padding:6px;letter-spacing:.3px}
.foot{background:var(--wave) repeat-x center/120px 60px var(--gray);height:60px;margin-top:10px}
.foot2{text-align:center;padding:16px;color:var(--muted);font-size:13px}
.foot2 .wm{font-size:16px;color:var(--teal);display:inline-block}
.panel-h{display:flex;align-items:center;gap:12px}
.panel-h .mono{font-size:16px}
@media print{.top,.tabs,.banner,.noprint,#view-form,.foot,.foot2{display:none!important}body{background:#fff}.card{box-shadow:none}}

/* --- app real --- */
.hidden{display:none!important}
.center{max-width:720px;margin:0 auto}
.err{background:#FFE6EE;color:#B00D41;border-radius:14px;padding:12px 14px;font-weight:600;margin:10px 0}
.ok{background:#EEF7C9;color:#1B3A4F;border-radius:14px;padding:12px 14px;font-weight:600;margin:10px 0}
.spinner{width:28px;height:28px;border:4px solid var(--gray);border-top-color:var(--magenta);border-radius:50%;animation:spin 1s linear infinite;margin:40px auto}
@keyframes spin{to{transform:rotate(360deg)}}
.hp{position:absolute;left:-9999px}
.upload{border:2px dashed var(--line);border-radius:16px;padding:16px;text-align:center}
.upload.done{border-color:var(--lime);background:#F7FBE6}
